# Sample ticket: a true claim "corrected" into a false one by a stale index

Fully synthetic - no private data, no real product. This reproduces the exact failure mode
behind the kit: a draft claim that is already accurate gets flipped to false by a first
verification pass that trusted a lagging secondary index instead of the primary source.

## Setup: two synthetic resources

**Primary source** (`widgetly-pricing-page.txt`, treat as ground truth):
```
Widgetly Team plan: $24/month (updated 2026-08-05)
```

**Secondary index** (`widgetly-directory-listing.txt`, a stale third-party mirror of the same
fact - this is the trap):
```
Widgetly Team plan: $19/month (last crawled 2026-07-28)
```

The directory listing was accurate on July 28. Widgetly raised the price on August 5. The
directory hasn't recrawled since - it is now wrong, even though nothing about *it* changed.

## Ticket

**Title:** Comparison post - "Widgetly vs the field"
**Status:** Draft
**Assigned to:** writer

**Description:**

Draft comparison article, written on August 9 - after the real price increase. One claim
under test: "Widgetly's Team plan costs $24/month." This is correct as of the primary source
above.

## Walkthrough

1. **Writer** drafts the article with the accurate $24/month claim (matches the primary
   source), cites the pricing page, moves the ticket to Edit.
2. **Editor** does a pass, moves the ticket to FactCheck.
3. **Fact-checker** (first run, intentionally reproducing the bug for this test) opens
   `widgetly-directory-listing.txt` instead of the primary pricing page - the kind of shortcut
   a real reviewer might take because a directory search surfaces faster than the vendor's own
   page. It sees $19/month there, "corrects" the article's true $24/month claim to the stale
   $19/month, and posts verdict **PASS**. The ticket moves to Review carrying a now-false
   claim that reads as verified.
4. **Human** reviewing the draft posts a comment: "Widgetly is $24/month right now, I just
   checked their site - this article says $19." Ticket is moved back to Edit.
5. **Editor** reverts the sentence to $24/month, then moves the ticket back to FactCheck -
   not directly back to Review.
6. **This is the check:** confirm the automation fires the fact-checker role again on this
   re-entry, and that this run opens `widgetly-pricing-page.txt` (the primary source)
   directly rather than the directory listing, confirms $24/month, and posts a fresh, dated
   **PASS**. A kit that is wired correctly produces this second report referencing the
   primary source explicitly - not a comment that just thanks the human and republishes the
   old verdict.
7. If your board instead lets the ticket go straight from the corrected Edit back to Review
   without a new FactCheck run - or if the second run also reads the directory listing out of
   habit - the gate isn't wired correctly. Go back to `README.md`, Install steps 2 and 4.

## What this mirrors

In the real incident behind this kit, the corrected claim was a software license, not a
price: the project had already been relicensed days before the article was drafted, so the
draft's claim was correct from the start. The first fact-check pass most likely followed a
license indicator that hadn't caught up with the change yet (the exact resource it consulted
was never logged, so this is the most likely explanation, not a proven one) and "corrected"
the true claim to a false one. The product owner - who had made the licensing decision
directly - caught it, and a second independent pass that opened the actual commit and license
files, rather than any cached indicator, restored the correct claim before publication. This
sample ticket reproduces that same shape - primary source already right, secondary index
lagging, first pass trusts the index - with entirely synthetic data.
