| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 13 | | adverbTagCount | 1 | | adverbTags | | 0 | "she said quietly [quietly]" |
| | dialogueSentences | 26 | | tagDensity | 0.5 | | leniency | 1 | | rawRatio | 0.077 | | effectiveRatio | 0.077 | |
| 87.12% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1165 | | 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) | |
| 74.25% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1165 | | totalAiIsms | 6 | | found | | | highlights | | 0 | "chill" | | 1 | "sentinels" | | 2 | "pristine" | | 3 | "silence" | | 4 | "flickered" | | 5 | "pulse" |
| |
| 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 | 64 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 0 | | narrationSentences | 64 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 77 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 57 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1153 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 9 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 20 | | wordCount | 840 | | uniqueNames | 8 | | maxNameDensity | 0.95 | | worstName | "Quinn" | | maxWindowNameDensity | 2 | | worstWindowName | "Quinn" | | discoveredNames | | Harlow | 1 | | Quinn | 8 | | Town | 1 | | Disused | 1 | | Aldridge | 5 | | Thames | 1 | | Morris | 2 | | Northern | 1 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Aldridge" | | 3 | "Morris" |
| | places | | 0 | "Town" | | 1 | "Disused" | | 2 | "Thames" |
| | globalScore | 1 | | windowScore | 1 | |
| 98.98% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 49 | | glossingSentenceCount | 1 | | matches | | 0 | "quite hold it, and then steadied" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1153 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 77 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 30 | | mean | 38.43 | | std | 27.17 | | cv | 0.707 | | sampleLengths | | 0 | 56 | | 1 | 79 | | 2 | 55 | | 3 | 24 | | 4 | 44 | | 5 | 61 | | 6 | 37 | | 7 | 6 | | 8 | 1 | | 9 | 71 | | 10 | 11 | | 11 | 50 | | 12 | 82 | | 13 | 5 | | 14 | 2 | | 15 | 56 | | 16 | 17 | | 17 | 42 | | 18 | 65 | | 19 | 7 | | 20 | 96 | | 21 | 4 | | 22 | 15 | | 23 | 76 | | 24 | 44 | | 25 | 44 | | 26 | 5 | | 27 | 42 | | 28 | 22 | | 29 | 34 |
| |
| 94.30% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 2 | | totalSentences | 64 | | matches | | 0 | "been dragged" | | 1 | "been dropped" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 1 | | totalVerbs | 142 | | matches | | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 6 | | semicolonCount | 2 | | flaggedSentences | 6 | | totalSentences | 77 | | ratio | 0.078 | | matches | | 0 | "She filed the number away the same way she filed everything—precisely, without comment." | | 1 | "The pathologist's people hadn't moved him yet; numbered evidence markers stood around him like little yellow sentinels." | | 2 | "But beneath him—she leaned in, breathing through her mouth against the smell—beneath him, the dust was wrong." | | 3 | "\"Came down the eastern stairs and called it in from the top. Their prints are on the steps. They never approached.\" Quinn had read the first responder's notes in the car; she remembered everything she read." | | 4 | "She turned the body's wrist over with two fingers—gently, gently—and there it was." | | 5 | "On the body of a man pulled from the Thames in a case that had no answers, the case that had taken DS Morris from her—Morris, who had gone to follow a lead alone and come back wrong, came back not at all, and the file had closed itself the way water closes over a stone." |
| |
| 88.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 848 | | adjectiveStacks | 2 | | stackExamples | | 0 | "closed, sealed behind hoardings" | | 1 | "grey lay over everything" |
| | adverbCount | 31 | | adverbRatio | 0.036556603773584904 | | lyAdverbCount | 8 | | lyAdverbRatio | 0.009433962264150943 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 77 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 77 | | mean | 14.97 | | std | 11.78 | | cv | 0.786 | | sampleLengths | | 0 | 23 | | 1 | 19 | | 2 | 1 | | 3 | 13 | | 4 | 10 | | 5 | 27 | | 6 | 7 | | 7 | 18 | | 8 | 17 | | 9 | 15 | | 10 | 23 | | 11 | 17 | | 12 | 24 | | 13 | 20 | | 14 | 7 | | 15 | 17 | | 16 | 12 | | 17 | 49 | | 18 | 3 | | 19 | 15 | | 20 | 19 | | 21 | 6 | | 22 | 1 | | 23 | 54 | | 24 | 17 | | 25 | 3 | | 26 | 8 | | 27 | 32 | | 28 | 14 | | 29 | 4 | | 30 | 16 | | 31 | 10 | | 32 | 17 | | 33 | 12 | | 34 | 3 | | 35 | 1 | | 36 | 23 | | 37 | 5 | | 38 | 2 | | 39 | 30 | | 40 | 26 | | 41 | 6 | | 42 | 8 | | 43 | 3 | | 44 | 36 | | 45 | 6 | | 46 | 13 | | 47 | 16 | | 48 | 3 | | 49 | 2 |
| |
| 85.71% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 4 | | diversityRatio | 0.5454545454545454 | | totalSentences | 77 | | uniqueOpeners | 42 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 58 | | matches | (empty) | | ratio | 0 | |
| 75.17% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 21 | | totalSentences | 58 | | matches | | 0 | "She filed the number away" | | 1 | "He was young, eager, the" | | 2 | "She was looking at the" | | 3 | "Her own left wrist itched" | | 4 | "She rose and moved along" | | 5 | "She crouched beside the body" | | 6 | "It coated the rails, the" | | 7 | "It was smooth." | | 8 | "She gestured at the unbroken" | | 9 | "She turned the body's wrist" | | 10 | "It made the small hairs" | | 11 | "She had seen a mark" | | 12 | "She had photographed it." | | 13 | "She would not say it" | | 14 | "She angled her body to" | | 15 | "She thought of the gap" | | 16 | "she said, standing, brushing grey" | | 17 | "she said quietly" | | 18 | "She climbed back up to" | | 19 | "She didn't need to." |
| | ratio | 0.362 | |
| 46.21% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 48 | | totalSentences | 58 | | matches | | 0 | "The stairwell smelled of damp" | | 1 | "Detective Harlow Quinn descended it" | | 2 | "She filed the number away" | | 3 | "The abandoned platform opened below" | | 4 | "Floodlights had been dragged down" | | 5 | "Camden Town Disused, the maps" | | 6 | "A station that had closed" | | 7 | "DS Aldridge came up the" | | 8 | "He was young, eager, the" | | 9 | "Quinn snapped a fresh pair" | | 10 | "The victim lay on the" | | 11 | "The pathologist's people hadn't moved" | | 12 | "Quinn said nothing." | | 13 | "She was looking at the" | | 14 | "Her own left wrist itched" | | 15 | "She rose and moved along" | | 16 | "Aldridge's torch faltered." | | 17 | "Quinn climbed down onto the" | | 18 | "She crouched beside the body" | | 19 | "A film of grey lay" |
| | ratio | 0.828 | |
| 86.21% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 58 | | matches | | 0 | "As though the body had" |
| | ratio | 0.017 | |
| 75.89% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 32 | | technicalSentenceCount | 3 | | matches | | 0 | "A station that had closed before Quinn was born and stayed closed, sealed behind hoardings and bureaucratic forgetting." | | 1 | "Burned or branded into the skin in a fine, deliberate line, a looping geometry that resembled no tattoo she'd ever catalogued." | | 2 | "On the body of a man pulled from the Thames in a case that had no answers, the case that had taken DS Morris from her—Morris, who had gone to follow a lead alon…" |
| |
| 48.08% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 13 | | uselessAdditionCount | 2 | | matches | | 0 | "DS Aldridge came up, his torch beam bobbing" | | 1 | "Quinn climbed, her boots finding the sleepers" |
| |
| 73.08% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 6 | | fancyCount | 2 | | fancyTags | | 0 | "Quinn snapped (snap)" | | 1 | "she murmured (murmur)" |
| | dialogueSentences | 26 | | tagDensity | 0.231 | | leniency | 0.462 | | rawRatio | 0.333 | | effectiveRatio | 0.154 | |