| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 13 | | adverbTagCount | 1 | | adverbTags | | 0 | "she asked quietly [quietly]" |
| | dialogueSentences | 31 | | tagDensity | 0.419 | | leniency | 0.839 | | rawRatio | 0.077 | | effectiveRatio | 0.065 | |
| 89.87% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1481 | | totalAiIsmAdverbs | 3 | | found | | | highlights | | |
| 100.00% | AI-ism character names | Target: 0 AI-default names (17 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 100.00% | AI-ism location names | Target: 0 AI-default location names (33 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 76.37% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1481 | | totalAiIsms | 7 | | found | | | highlights | | 0 | "tension" | | 1 | "weight" | | 2 | "etched" | | 3 | "magnetic" | | 4 | "database" | | 5 | "trembled" | | 6 | "perfect" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 0 | | maxInWindow | 0 | | found | (empty) | | highlights | (empty) | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 87 | | matches | (empty) | |
| 93.60% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 2 | | hedgeCount | 1 | | narrationSentences | 87 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 104 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 77 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1495 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 15 | | unquotedAttributions | 0 | | matches | (empty) | |
| 50.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 46 | | wordCount | 1170 | | uniqueNames | 11 | | maxNameDensity | 1.79 | | worstName | "Quinn" | | maxWindowNameDensity | 3.5 | | worstWindowName | "Quinn" | | discoveredNames | | Camden | 1 | | Underground | 1 | | Tube | 2 | | Morris | 1 | | Brennan | 7 | | Quinn | 21 | | London | 1 | | Transport | 1 | | Eva | 6 | | Kowalski | 4 | | Tupperware | 1 |
| | persons | | 0 | "Underground" | | 1 | "Tube" | | 2 | "Morris" | | 3 | "Brennan" | | 4 | "Quinn" | | 5 | "Eva" | | 6 | "Kowalski" |
| | places | | | globalScore | 0.603 | | windowScore | 0.5 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 58 | | glossingSentenceCount | 0 | | matches | (empty) | |
| 0.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 3 | | per1kWords | 2.007 | | wordCount | 1495 | | matches | | 0 | "Not with paint or chalk but with something burned into the surface in overlapping rings" | | 1 | "not toward magnetic north, not toward any wall or door, but down toward the floor" | | 2 | "not toward any wall or door, but down toward the floor" |
| |
| 38.46% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 4 | | totalSentences | 104 | | matches | | 0 | "pushed that thought" | | 1 | "bruising that Quinn" | | 2 | "learned that witnesses" | | 3 | "radiating that sweetness" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 47 | | mean | 31.81 | | std | 26.31 | | cv | 0.827 | | sampleLengths | | 0 | 65 | | 1 | 14 | | 2 | 87 | | 3 | 39 | | 4 | 40 | | 5 | 11 | | 6 | 61 | | 7 | 8 | | 8 | 12 | | 9 | 88 | | 10 | 64 | | 11 | 4 | | 12 | 76 | | 13 | 47 | | 14 | 53 | | 15 | 42 | | 16 | 12 | | 17 | 15 | | 18 | 36 | | 19 | 4 | | 20 | 1 | | 21 | 3 | | 22 | 7 | | 23 | 46 | | 24 | 11 | | 25 | 17 | | 26 | 5 | | 27 | 41 | | 28 | 59 | | 29 | 7 | | 30 | 37 | | 31 | 8 | | 32 | 22 | | 33 | 103 | | 34 | 48 | | 35 | 10 | | 36 | 27 | | 37 | 12 | | 38 | 17 | | 39 | 13 | | 40 | 18 | | 41 | 64 | | 42 | 16 | | 43 | 13 | | 44 | 69 | | 45 | 32 | | 46 | 11 |
| |
| 89.13% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 4 | | totalSentences | 87 | | matches | | 0 | "being asked" | | 1 | "been rigged" | | 2 | "was positioned" | | 3 | "was buttoned" |
| |
| 0.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 7 | | totalVerbs | 195 | | matches | | 0 | "was waiting" | | 1 | "was lying" | | 2 | "was standing was hugging" | | 3 | "was doing" | | 4 | "was standing" | | 5 | "was resting" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 12 | | semicolonCount | 0 | | flaggedSentences | 10 | | totalSentences | 104 | | ratio | 0.096 | | matches | | 0 | "The call had come in at half past two in the morning — a body, Camden Underground, decommissioned stretch below the Tube lines that hadn't seen a passenger since 1968." | | 1 | "No — this was something sharper." | | 2 | "The abandoned platform stretched away from them, the ghost of its signage still visible on cracked tiling — faded letters that spelled CAMDEN ROAD in the London Transport font of a different era." | | 3 | "The woman was lying on her back with her arms at her sides — not thrown, not curled, not contorted." | | 4 | "Around her — and this was the detail that had made Brennan lose his words — the concrete floor was marked." | | 5 | "She was doing it again as Quinn approached — that small unconscious gesture, pressing a curl back into place, though it fell forward immediately." | | 6 | "It was old leather, worn at the corners, and it was full — she could see the spines of several books pressing against the flap." | | 7 | "And in the inside pocket, loose among pens and receipts — a small brass compass, no larger than a pocket watch." | | 8 | "The needle swung immediately, not toward magnetic north, not toward any wall or door, but down toward the floor — toward, Quinn registered with a cold sliding sensation in her chest, the platform where the body lay." | | 9 | "The sigils on its face were identical — she looked back at the floor, at the burned rings around the dead woman, and confirmed it with the certainty of someone who had spent eighteen years training herself to see what was actually in front of her rather than what was convenient — identical to the markings on the body's right palm, which she had noted and said nothing about to Brennan because she needed more data before she spoke." |
| |
| 88.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1166 | | adjectiveStacks | 2 | | stackExamples | | 0 | "small, curly-haired woman" | | 1 | "north-south-east-west." |
| | adverbCount | 34 | | adverbRatio | 0.029159519725557463 | | lyAdverbCount | 11 | | lyAdverbRatio | 0.009433962264150943 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 104 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 104 | | mean | 14.38 | | std | 13.22 | | cv | 0.919 | | sampleLengths | | 0 | 30 | | 1 | 35 | | 2 | 14 | | 3 | 9 | | 4 | 18 | | 5 | 6 | | 6 | 29 | | 7 | 5 | | 8 | 3 | | 9 | 17 | | 10 | 29 | | 11 | 8 | | 12 | 2 | | 13 | 9 | | 14 | 24 | | 15 | 7 | | 16 | 5 | | 17 | 6 | | 18 | 33 | | 19 | 28 | | 20 | 8 | | 21 | 12 | | 22 | 20 | | 23 | 1 | | 24 | 18 | | 25 | 2 | | 26 | 15 | | 27 | 32 | | 28 | 21 | | 29 | 18 | | 30 | 1 | | 31 | 24 | | 32 | 4 | | 33 | 19 | | 34 | 32 | | 35 | 25 | | 36 | 41 | | 37 | 6 | | 38 | 11 | | 39 | 16 | | 40 | 2 | | 41 | 24 | | 42 | 5 | | 43 | 8 | | 44 | 26 | | 45 | 3 | | 46 | 10 | | 47 | 2 | | 48 | 15 | | 49 | 2 |
| |
| 62.50% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 10 | | diversityRatio | 0.4326923076923077 | | totalSentences | 104 | | uniqueOpeners | 45 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 3 | | totalSentences | 72 | | matches | | 0 | "Then she walked toward the" | | 1 | "More like calculation." | | 2 | "Then Eva unsnapped the buckle" |
| | ratio | 0.042 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 19 | | totalSentences | 72 | | matches | | 0 | "She ducked under the blue-and-white" | | 1 | "She'd smelled it once before." | | 2 | "She pushed that thought back" | | 3 | "He handed her a torch" | | 4 | "he said, falling into step" | | 5 | "He knew when description was" | | 6 | "Her dark coat was buttoned" | | 7 | "She looked, more than anything," | | 8 | "She was doing it again" | | 9 | "She didn't add her rank" | | 10 | "She'd learned that witnesses who" | | 11 | "It was old leather, worn" | | 12 | "It was also, she noticed," | | 13 | "she asked quietly" | | 14 | "He had a tablet in" | | 15 | "She looked at Eva Kowalski." | | 16 | "She left it there, not" | | 17 | "She kept her voice level" | | 18 | "She looked back at the" |
| | ratio | 0.264 | |
| 71.11% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 56 | | totalSentences | 72 | | matches | | 0 | "The call had come in" | | 1 | "Quinn had driven over in" | | 2 | "She ducked under the blue-and-white" | | 3 | "The first thing that hit" | | 4 | "She'd smelled it once before." | | 5 | "She pushed that thought back" | | 6 | "DC Brennan met her at" | | 7 | "He handed her a torch" | | 8 | "he said, falling into step" | | 9 | "Quinn appreciated that about Brennan." | | 10 | "He knew when description was" | | 11 | "The abandoned platform stretched away" | | 12 | "Emergency lighting had been rigged" | | 13 | "The body was positioned near" | | 14 | "Quinn walked to it and" | | 15 | "The woman was lying on" | | 16 | "Her dark coat was buttoned" | | 17 | "She looked, more than anything," | | 18 | "Quinn didn't know the word" | | 19 | "Brennan pointed toward the far" |
| | ratio | 0.778 | |
| 69.44% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 72 | | matches | | 0 | "Even from forty feet away," |
| | ratio | 0.014 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 40 | | technicalSentenceCount | 10 | | matches | | 0 | "Sulfurous and sweet at the same time, the way she imagined a struck match might smell if you could set fire to something that didn't have a physical form." | | 1 | "The abandoned platform stretched away from them, the ghost of its signage still visible on cracked tiling — faded letters that spelled CAMDEN ROAD in the London…" | | 2 | "Emergency lighting had been rigged by the first response team, casting the space in a flat white glow that threw everything into planes of light and deep shadow…" | | 3 | "She looked, more than anything, like someone who had decided to lie down on an abandoned Tube platform and go to sleep, and had done so with great care and cons…" | | 4 | "A uniformed officer was standing beside a small, curly-haired woman in a canvas coat, who was hugging a leather satchel to her chest with both arms as though it…" | | 5 | "Quinn took one more careful look at the body, at the position of the hands, at the floor around it, at the unmarked dust that should have shown footprints leadi…" | | 6 | "She'd learned that witnesses who were already frightened clammed up faster when you announced the full institutional weight of what was standing in front of the…" | | 7 | "Then Eva unsnapped the buckle and opened the satchel and held it toward Quinn with the posture of someone who has decided the game is up and is now betting that…" | | 8 | "Something etched on its face that was not north-south-east-west." | | 9 | "The sigils on its face were identical — she looked back at the floor, at the burned rings around the dead woman, and confirmed it with the certainty of someone …" |
| |
| 86.54% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 13 | | uselessAdditionCount | 1 | | matches | | 0 | "Quinn said, not turning around" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 9 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 31 | | tagDensity | 0.29 | | leniency | 0.581 | | rawRatio | 0 | | effectiveRatio | 0 | |