| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 16 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 38 | | tagDensity | 0.421 | | leniency | 0.842 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 84.66% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1630 | | totalAiIsmAdverbs | 5 | | found | | | highlights | | 0 | "quickly" | | 1 | "precisely" | | 2 | "eagerly" | | 3 | "gently" | | 4 | "carefully" |
| |
| 60.00% | AI-ism character names | Target: 0 AI-default names (17 tracked, −20% each) | | codexExemptions | (empty) | | found | | |
| 100.00% | AI-ism location names | Target: 0 AI-default location names (33 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 75.46% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1630 | | totalAiIsms | 8 | | found | | | highlights | | 0 | "resolved" | | 1 | "processed" | | 2 | "etched" | | 3 | "weight" | | 4 | "familiar" | | 5 | "pulse" | | 6 | "pounding" | | 7 | "echoed" |
| |
| 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 | 104 | | matches | (empty) | |
| 87.91% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 3 | | narrationSentences | 104 | | filterMatches | | | hedgeMatches | | 0 | "seemed to" | | 1 | "happened to" | | 2 | "tended to" |
| |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 125 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 58 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 1 | | markdownWords | 13 | | totalWords | 1622 | | ratio | 0.008 | | matches | | 0 | "The Market moves with the moon. Bring the compass if you want answers." |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 12 | | unquotedAttributions | 1 | | matches | | 0 | "First body in an unusual location, Quinn guessed." |
| |
| 33.33% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 54 | | wordCount | 1237 | | uniqueNames | 16 | | maxNameDensity | 1.54 | | worstName | "Quinn" | | maxWindowNameDensity | 4 | | worstWindowName | "Quinn" | | discoveredNames | | Tube | 1 | | Harlow | 2 | | Quinn | 19 | | Marcus | 1 | | Webb | 8 | | Road | 1 | | London | 1 | | Patel | 8 | | Eastern | 1 | | European | 1 | | Morris | 3 | | Whitechapel | 2 | | August | 1 | | Camden | 2 | | Lock | 1 | | Market | 2 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Marcus" | | 3 | "Webb" | | 4 | "Patel" | | 5 | "Morris" | | 6 | "Market" |
| | places | | 0 | "Road" | | 1 | "London" | | 2 | "Eastern" | | 3 | "Camden" | | 4 | "Lock" |
| | globalScore | 0.732 | | windowScore | 0.333 | |
| 0.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 80 | | glossingSentenceCount | 5 | | matches | | 0 | "quite blood—too dark, too viscous" | | 1 | "his curiosity apparently overcoming his nerv" | | 2 | "shadows that seemed to stretch too far, reach too eagerly toward the tunnel mouths on either end" | | 3 | "seemed thicker that night" | | 4 | "looked like bone fragments, and a card pr" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.617 | | wordCount | 1622 | | matches | | 0 | "Not just the physical impossibilities Patel had described, but something deeper, something" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 125 | | matches | | 0 | "overwhelming, that she'd" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 48 | | mean | 33.79 | | std | 22.89 | | cv | 0.677 | | sampleLengths | | 0 | 67 | | 1 | 51 | | 2 | 22 | | 3 | 33 | | 4 | 84 | | 5 | 7 | | 6 | 41 | | 7 | 8 | | 8 | 49 | | 9 | 41 | | 10 | 12 | | 11 | 6 | | 12 | 17 | | 13 | 6 | | 14 | 64 | | 15 | 6 | | 16 | 33 | | 17 | 42 | | 18 | 62 | | 19 | 11 | | 20 | 62 | | 21 | 65 | | 22 | 47 | | 23 | 15 | | 24 | 20 | | 25 | 69 | | 26 | 21 | | 27 | 5 | | 28 | 66 | | 29 | 27 | | 30 | 66 | | 31 | 42 | | 32 | 10 | | 33 | 16 | | 34 | 6 | | 35 | 5 | | 36 | 51 | | 37 | 32 | | 38 | 49 | | 39 | 61 | | 40 | 38 | | 41 | 49 | | 42 | 3 | | 43 | 12 | | 44 | 45 | | 45 | 11 | | 46 | 56 | | 47 | 11 |
| |
| 98.52% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 2 | | totalSentences | 104 | | matches | | 0 | "was clipped" | | 1 | "was etched" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 192 | | matches | | 0 | "was pounding" | | 1 | "wasn't losing" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 7 | | semicolonCount | 0 | | flaggedSentences | 7 | | totalSentences | 125 | | ratio | 0.056 | | matches | | 0 | "Camden Road station had closed before she was born, relegated to the kind of forgotten urban space that collected the city's castoffs—both animate and otherwise." | | 1 | "His clothes were expensive—a tailored wool coat over a cashmere sweater, dark trousers, leather shoes that probably cost more than Quinn's monthly rent." | | 2 | "The white fabric was stained with something that wasn't quite blood—too dark, too viscous." | | 3 | "The victim's fingernails were clean—no defensive DNA, no blood, no trace evidence." | | 4 | "The position of the body—precisely centered on the platform, arms at his sides, legs straight." | | 5 | "The beam caught something on the tunnel wall—a symbol painted in something dark and old, the same angular markings from the stairs." | | 6 | "Whatever waited for her there, she'd find it alone—because some answers weren't meant to be shared, and some evidence didn't add up because it was never meant to follow the rules she'd spent eighteen years learning." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1248 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 39 | | adverbRatio | 0.03125 | | lyAdverbCount | 13 | | lyAdverbRatio | 0.010416666666666666 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 125 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 125 | | mean | 12.98 | | std | 9.44 | | cv | 0.728 | | sampleLengths | | 0 | 33 | | 1 | 20 | | 2 | 8 | | 3 | 6 | | 4 | 26 | | 5 | 6 | | 6 | 8 | | 7 | 11 | | 8 | 14 | | 9 | 4 | | 10 | 4 | | 11 | 6 | | 12 | 27 | | 13 | 19 | | 14 | 25 | | 15 | 14 | | 16 | 26 | | 17 | 7 | | 18 | 22 | | 19 | 19 | | 20 | 8 | | 21 | 19 | | 22 | 21 | | 23 | 9 | | 24 | 1 | | 25 | 13 | | 26 | 27 | | 27 | 5 | | 28 | 7 | | 29 | 6 | | 30 | 11 | | 31 | 6 | | 32 | 6 | | 33 | 15 | | 34 | 18 | | 35 | 8 | | 36 | 23 | | 37 | 6 | | 38 | 16 | | 39 | 17 | | 40 | 12 | | 41 | 14 | | 42 | 12 | | 43 | 4 | | 44 | 8 | | 45 | 17 | | 46 | 37 | | 47 | 8 | | 48 | 3 | | 49 | 6 |
| |
| 56.53% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 11 | | diversityRatio | 0.392 | | totalSentences | 125 | | uniqueOpeners | 49 | |
| 68.73% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 2 | | totalSentences | 97 | | matches | | 0 | "Just a man who had" | | 1 | "Instead, she found a small" |
| | ratio | 0.021 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 27 | | totalSentences | 97 | | matches | | 0 | "She ducked beneath the yellow" | | 1 | "She'd been awake for thirty-one" | | 2 | "He looked green around the" | | 3 | "She allowed herself a small," | | 4 | "He gestured toward the platform" | | 5 | "She left him at the" | | 6 | "She looked up as Quinn" | | 7 | "His eyes were open, staring" | | 8 | "His clothes were expensive—a tailored" | | 9 | "She pulled back the coat" | | 10 | "His pockets yielded a wallet" | | 11 | "It was a compass, small" | | 12 | "She surveyed the platform, letting" | | 13 | "She thought of Morris." | | 14 | "Her partner's body found in" | | 15 | "She'd spent three years trying" | | 16 | "She turned to Webb" | | 17 | "She walked for approximately forty" | | 18 | "She stopped, pulling it out." | | 19 | "She approached carefully, one hand" |
| | ratio | 0.278 | |
| 32.16% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 83 | | totalSentences | 97 | | matches | | 0 | "The abandoned Tube station smelled" | | 1 | "She ducked beneath the yellow" | | 2 | "The time on its face" | | 3 | "She'd been awake for thirty-one" | | 4 | "DC Marcus Webb stood near" | | 5 | "He looked green around the" | | 6 | "The rookies always struggled when" | | 7 | "She allowed herself a small," | | 8 | "Webb didn't return it." | | 9 | "He gestured toward the platform" | | 10 | "Quinn started down the stairs," | | 11 | "Camden Road station had closed" | | 12 | "The walls bore layers of" | | 13 | "Someone had stenciled a series" | | 14 | "Webb hesitated at the bottom" | | 15 | "She left him at the" | | 16 | "The station's original tile work" | | 17 | "A ghost of London, preserved" | | 18 | "Amishi Patel, the on-call pathologist," | | 19 | "She looked up as Quinn" |
| | ratio | 0.856 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 97 | | matches | (empty) | | ratio | 0 | |
| 44.82% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 51 | | technicalSentenceCount | 7 | | matches | | 0 | "Camden Road station had closed before she was born, relegated to the kind of forgotten urban space that collected the city's castoffs—both animate and otherwise…" | | 1 | "Someone had stenciled a series of strange symbols near the bottom of the stairs, angular markings that looked almost like script but resolved into nothing recog…" | | 2 | "She looked up as Quinn approached, her expression professionally neutral in a way that told Quinn everything she needed to know about what lay beneath the sheet…" | | 3 | "The white fabric was stained with something that wasn't quite blood—too dark, too viscous." | | 4 | "And tucked into his inner jacket pocket, something that made her pause." | | 5 | "The brass casing had weathered to a greenish verdigris, and the face was etched with markings that matched the stenciled symbols on the stairs." | | 6 | "Not just the physical impossibilities Patel had described, but something deeper, something that scratched at the back of Quinn's brain with familiar insistence." |
| |
| 62.50% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 16 | | uselessAdditionCount | 2 | | matches | | 0 | "Patel continued, her voice dropping" | | 1 | "Webb had, his curiosity apparently overcoming his nerves" |
| |
| 97.37% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 4 | | fancyCount | 2 | | fancyTags | | 0 | "Patel continued (continue)" | | 1 | "she called back (call back)" |
| | dialogueSentences | 38 | | tagDensity | 0.105 | | leniency | 0.211 | | rawRatio | 0.5 | | effectiveRatio | 0.105 | |