# Mechanical Quality Gate Report

Patterns loaded: 209 (BANNED 102, CAP 8, WATCH 99)

Allowlist format: `relative/path.md|pattern-id|line`. Every allowlisted hit must be defended on the chapter card or in style_and_voice.md (dialogue hits may instead cite the speaking character's voice card).

| file | line | pattern | tier | status | evidence |
|---|---:|---|---|---|---|
| `output/chapters/chapter_16.md` | 0 | reddit1-repeated-descriptor | WATCH | WATCH | 42 occurrence(s); first: scene 1: against x3 |
| `output/chapters/chapter_16.md` | 1 | wp-aititlecase-headings | WATCH | WATCH | 1 occurrence(s); first: # Chapter Sixteen: What Your Partner Is Afraid Of |
| `output/chapters/chapter_16.md` | 7 | tells-2.1-hands-body-watch | WATCH | WATCH | 14 occurrence(s); first: hand |
| `output/chapters/chapter_16.md` | 23 | aiisms-2.10-temperature-watch | WATCH | WATCH | 1 occurrence(s); first: cold |
| `output/chapters/chapter_16.md` | 39 | ruleset-three-part-cadence | WATCH | WATCH | 1 occurrence(s); first: fill, sand, and paint |
| `output/chapters/chapter_16.md` | 47 | watch-qs-trailing-participle | WATCH | WATCH | 4 occurrence(s); first: , coming |
| `output/chapters/chapter_16.md` | 55 | aiisms-2.33-overused-verbs | WATCH | WATCH | 1 occurrence(s); first: aligned |
| `output/chapters/chapter_16.md` | 55 | watch-qs-and-but-start | WATCH | WATCH | 1 occurrence(s); first: And |
| `output/chapters/chapter_16.md` | 81 | qscan-25-familiar-usual-rhythm-routine-ritual | WATCH | WATCH | 1 occurrence(s); first: usual |
| `output/chapters/chapter_16.md` | 87 | legacy-uncontracted-casual-dialogue | WATCH | WATCH | 2 occurrence(s); first: they are |
| `output/chapters/chapter_18.md` | 0 | reddit1-repeated-descriptor | WATCH | WATCH | 6 occurrence(s); first: scene 1: crooked x3 |
| `output/chapters/chapter_18.md` | 1 | wp-aititlecase-headings | WATCH | WATCH | 1 occurrence(s); first: # Chapter Eighteen: Returned Scarf |
| `output/chapters/chapter_18.md` | 3 | aiisms-2.10-temperature-watch | WATCH | WATCH | 3 occurrence(s); first: Cold |
| `output/chapters/chapter_18.md` | 5 | watch-rt2-emdash-comma-list | WATCH | WATCH | 2 occurrence(s); first: — boxes, keys, the emptied rectangle — |
| `output/chapters/chapter_18.md` | 7 | tells-2.1-hands-body-watch | WATCH | WATCH | 2 occurrence(s); first: spine |
| `output/chapters/chapter_18.md` | 9 | qscan-02-throat | WATCH | WATCH | 2 occurrence(s); first: throat |
| `output/chapters/chapter_18.md` | 9 | tells-2.1-throat-breath-watch | WATCH | WATCH | 2 occurrence(s); first: throat |
| `output/chapters/chapter_18.md` | 13 | tells-2.1-heart-chest-watch | WATCH | WATCH | 1 occurrence(s); first: heart |
| `output/chapters/chapter_18.md` | 13 | watch-rt2-emdash-participial-absolute | WATCH | WATCH | 1 occurrence(s); first: — working |
| `output/chapters/chapter_18.md` | 63 | watch-qs-trailing-participle | WATCH | WATCH | 1 occurrence(s); first: , taking |
| `output/chapters/chapter_18.md` | 67 | aiisms-2.25-transition-verbs | WATCH | WATCH | 1 occurrence(s); first: settled |
| `output/chapters/chapter_18.md` | 73 | reddit2-emdash-dialogue-good | WATCH | WATCH | 2 occurrence(s); first: — |
| `output/chapters/chapter_18.md` | 89 | aiisms-2.3-default-emotion-watch | WATCH | WATCH | 1 occurrence(s); first: raw |
| `output/chapters/chapter_18.md` | 89 | qscan-05-raw | WATCH | WATCH | 1 occurrence(s); first: raw |
| `output/chapters/chapter_18.md` | 93 | ruleset-three-part-cadence | WATCH | WATCH | 1 occurrence(s); first: up, blank, and set |
| `output/chapters/chapter_19.md` | 0 | reddit1-repeated-descriptor | WATCH | WATCH | 32 occurrence(s); first: scene 1: against x4 |
| `output/chapters/chapter_19.md` | 1 | wp-aititlecase-headings | WATCH | WATCH | 1 occurrence(s); first: # Chapter Nineteen: Empty Side |
| `output/chapters/chapter_19.md` | 5 | writing-jargon-defaults | WATCH | WATCH | 1 occurrence(s); first: unlocked |
| `output/chapters/chapter_19.md` | 7 | aiisms-2.10-temperature-watch | WATCH | WATCH | 2 occurrence(s); first: cold |
| `output/chapters/chapter_19.md` | 11 | tells-2.1-hands-body-watch | WATCH | WATCH | 6 occurrence(s); first: spine |
| `output/chapters/chapter_19.md` | 13 | aiisms-2.25-transition-verbs | WATCH | WATCH | 2 occurrence(s); first: shifted |
| `output/chapters/chapter_19.md` | 13 | tells-2.1-heart-chest-watch | WATCH | WATCH | 2 occurrence(s); first: chest |
| `output/chapters/chapter_19.md` | 39 | watch-qs-and-but-start | WATCH | WATCH | 1 occurrence(s); first: But |
| `output/chapters/chapter_19.md` | 73 | watch-qs-trailing-participle | WATCH | WATCH | 2 occurrence(s); first: , leaning |
| `output/chapters/chapter_20.md` | 0 | reddit1-repeated-descriptor | WATCH | WATCH | 7 occurrence(s); first: scene 1: against x3 |
| `output/chapters/chapter_20.md` | 1 | wp-aititlecase-headings | WATCH | WATCH | 1 occurrence(s); first: # Chapter Twenty: No Advice / Keys Here |
| `output/chapters/chapter_20.md` | 3 | watch-qs-from-x-to-y | WATCH | WATCH | 2 occurrence(s); first: from the sink to the table |
| `output/chapters/chapter_20.md` | 29 | watch-qs-trailing-participle | WATCH | WATCH | 3 occurrence(s); first: , lifting |
| `output/chapters/chapter_20.md` | 31 | tells-2.1-hands-body-watch | WATCH | WATCH | 3 occurrence(s); first: hands |
| `output/chapters/chapter_20.md` | 37 | ruleset-three-part-cadence | WATCH | WATCH | 1 occurrence(s); first: time, knees, and carried |
| `output/chapters/chapter_20.md` | 39 | tells-2.1-eyes-watch | WATCH | WATCH | 1 occurrence(s); first: eyes |
| `output/chapters/chapter_20.md` | 91 | fieldguide-shopping-list | WATCH | WATCH | 1 occurrence(s); first: 980. DEC 15--W-9 KESSLER. JAN 2--KEYS. JAN 4--8 A. |
| `output/chapters/chapter_20.md` | 129 | legacy-uncontracted-casual-dialogue | WATCH | WATCH | 1 occurrence(s); first: It is |
| `output/chapters/chapter_20.md` | 135 | watch-qs-and-but-start | WATCH | WATCH | 1 occurrence(s); first: And |
| `output/chapters/chapter_20.md` | 151 | wp-aivocab-cluster | WATCH | WATCH | 2 occurrence(s); first: key |

Open findings: 0
Allowlisted: 0
WATCH hits (non-blocking, feed the judgment audits and tics tracker): 167
