> ## Documentation Index
> Fetch the complete documentation index at: https://docs.yournarrative.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Repairs and Fixes

> How technical findings become work you can hand out, track, and watch close itself: one Repair per family of issues, one Fix per page

A crawl can surface hundreds of findings. Fixing them one row at a time, with
nobody sure what is done, is how technical SEO stalls. Repairs and Fixes give
that work the same shape as content work in Narrative: a container you can
name and track, and a line item per page that knows its own state.

## The two objects

```
Repair    one family of issues, for one brand, named by a person
└── Fix   one problem on one page, inside that repair
```

**A Repair** is to technical SEO what a campaign is to content. It holds
exactly one family from the [audit library](https://docs.yournarrative.ai/technical-seo/audit-library.md):
Metadata, Link hygiene, Indexability, Renderability, and so on. Mixing
families in one repair is refused, because the people, the steps and the
template changes differ between them. You can have several open repairs on
the same family, for instance one per section of the site, which is why a
repair carries a name you give it.

**A Fix** is one problem on one page: this URL fails this check. It belongs to
exactly one repair for its whole life and never moves between them. A fix is
checked independently of the others, so a repair with forty pages can be
half done and say so.

Repairs appear under **Work → Projects** beside your campaigns, in their own
table with open and done tabs.

## Opening a repair

**1. Start from Site Health**

Group Site Health by issue, pick the finding you want to work on, and
choose **Start a repair**. You can take every affected page or a
selection of them.

**2. Name it**

The family is derived from the checks you picked. You supply the name,
so "Fix duplicate titles on product pages" and "Fix duplicate titles on
the blog" can run side by side.

**3. Read the explanation**

A repair explains the problem, why it matters, and the steps to take in
plain language written for a marketer, not an auditor. The words that
carry the point are emphasised. For example, the Link hygiene repair
opens with: some of your pages are **hard to find by following links**,
because engines and AI assistants find pages the way a person would, and
a page nothing links to gets looked at rarely or not at all.

**4. Work the fixes**

Each page is a row. A fix says what to do on that page and what the
problem is costing it: where the page stands in internal authority and
click depth against your site's best and typical page, so you can start
with the pages that matter.

Site Health shows a banner of the repairs you already have open, so the
diagnosis page links to its own consequences.

## How a fix closes

You never mark a fix done by hand. The next crawl does it.

| After the next crawl | What happens to the fix |
| - | - |
| The check no longer fails on that page | Closed as **done**, stamped with the audit's time. |
| The check still fails | Stays **open**, and the sighting is recorded with its date, so you can see how long a problem has persisted. |
| The page was not judged this time (not reached, or the check stood down) | Stays **open**. Silence is not evidence of a fix. |
| The page breaks again later | A **new fix** opens in the same repair. The old one stays done, because it was. |

Two rules keep the record honest:

* **One open fix per problem.** The same page and check cannot be open in two
  repairs at once, so two people cannot be chasing the same problem without
  knowing.
* **A decision a person made stands.** A fix you mark as **won't do** stays
  that way through every later crawl. Closing a repair turns its remaining
  open fixes to won't do rather than pretending they were fixed.

## Verifying a fix

Run a crawl from Site Health once the change is live. Every open fix is judged
against that crawl's audit, so one crawl verifies all of them at once. Checks
that read the link graph (orphans, depth, duplicates, redirect chains) need the
whole site crawled to be judged at all, which is why verification is a crawl
rather than a single-page fetch; the library marks these as whole-site checks.

## In the API

Repairs and fixes are available to integrations under your brand:

```
POST   /repairs                               open a repair (409 on an open duplicate, 422 on mixed families)
GET    /repairs?status=open|closed
GET    /repairs/{id}                          with its fixes
GET    /repairs/{id}/fixes/{fix_id}
POST   /repairs/{id}/fixes/{fix_id}/refuse    mark a fix won't do
POST   /repairs/{id}/close                    open fixes become won't do
GET    /criteria/{key}/pages                  every page behind a library row
```

## What a repair is not

* Not a campaign. The two share a list under Projects because they are both
  work in flight, but a repair never drafts copy and a campaign never edits
  markup.
* Not automatic. Narrative tells you what to change and verifies it changed.
  Applying technical changes to your site is yours, or your developer's, and
  where an action connector such as Webflow can apply a specific change, the
  fix says so.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.