| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 9 | | adverbTagCount | 1 | | adverbTags | | 0 | "Quinn said quietly [quietly]" |
| | dialogueSentences | 23 | | tagDensity | 0.391 | | leniency | 0.783 | | rawRatio | 0.111 | | effectiveRatio | 0.087 | |
| 95.09% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1019 | | totalAiIsmAdverbs | 1 | | 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) | |
| 65.65% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1019 | | totalAiIsms | 7 | | found | | | highlights | | 0 | "echoed" | | 1 | "silence" | | 2 | "etched" | | 3 | "scanning" | | 4 | "flickered" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 1 | | maxInWindow | 1 | | found | | 0 | | label | "eyes widened/narrowed" | | count | 1 |
|
| | highlights | | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 77 | | matches | (empty) | |
| 68.65% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 2 | | hedgeCount | 2 | | narrationSentences | 77 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 91 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 40 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1005 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 12 | | unquotedAttributions | 0 | | matches | (empty) | |
| 48.08% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 51 | | wordCount | 834 | | uniqueNames | 15 | | maxNameDensity | 2.04 | | worstName | "Quinn" | | maxWindowNameDensity | 3.5 | | worstWindowName | "Quinn" | | discoveredNames | | Tube | 2 | | Camden | 1 | | Veil | 3 | | Market | 2 | | Quinn | 17 | | Kowalski | 2 | | Oxford | 2 | | Varro | 7 | | Eva | 7 | | Compass | 1 | | Shade | 1 | | Bone | 1 | | British | 1 | | Museum | 1 | | Morris | 3 |
| | persons | | 0 | "Tube" | | 1 | "Market" | | 2 | "Quinn" | | 3 | "Kowalski" | | 4 | "Varro" | | 5 | "Eva" | | 6 | "Compass" | | 7 | "Museum" | | 8 | "Morris" |
| | places | | | globalScore | 0.481 | | windowScore | 0.5 | |
| 53.85% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 52 | | glossingSentenceCount | 2 | | matches | | 0 | "as if following invisible channels etched into the concrete" | | 1 | "ink that seemed to shift: Bone token exchange" |
| |
| 0.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 3 | | per1kWords | 2.985 | | wordCount | 1005 | | matches | | 0 | "not north but downward" | | 1 | "not chaos, not robbery, but precision" | | 2 | "not robbery, but precision" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 91 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 26 | | mean | 38.65 | | std | 30.27 | | cv | 0.783 | | sampleLengths | | 0 | 90 | | 1 | 65 | | 2 | 41 | | 3 | 79 | | 4 | 5 | | 5 | 4 | | 6 | 3 | | 7 | 63 | | 8 | 9 | | 9 | 9 | | 10 | 59 | | 11 | 43 | | 12 | 8 | | 13 | 4 | | 14 | 48 | | 15 | 50 | | 16 | 5 | | 17 | 77 | | 18 | 9 | | 19 | 67 | | 20 | 11 | | 21 | 53 | | 22 | 8 | | 23 | 30 | | 24 | 82 | | 25 | 83 |
| |
| 87.04% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 4 | | totalSentences | 77 | | matches | | 0 | "been pulled" | | 1 | "were arranged" | | 2 | "was clenched" | | 3 | "were followed" |
| |
| 61.11% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 3 | | totalVerbs | 144 | | matches | | 0 | "was asking" | | 1 | "was beginning" | | 2 | "was finally seeing" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 14 | | semicolonCount | 0 | | flaggedSentences | 11 | | totalSentences | 91 | | ratio | 0.121 | | matches | | 0 | "Below Camden, the Veil Market breathed differently—tunnels humming with suppressed energy, lantern light bleeding violet through smoke." | | 1 | "Eva Kowalski's satchel spilled across the platform—books on ritual practice, ancient seals, a master’s thesis stamped Oxford." | | 2 | "A single incision across the throat—clean, precise, too surgical for a struggle." | | 3 | "The stone was cold, but there—faint, raised patterns beneath the grime—protective sigils, nearly worn away." | | 4 | "The books were arranged too carefully for chaos—one open to a page depicting a brass instrument with an etched needle." | | 5 | "She noted the absence of footprints other than Eva's own worn leather shoes—impossible in a place that moved every full moon, impossible unless the killer had arrived by means that left no trace on stone." | | 6 | "In the fingers—barely visible—a slip of paper." | | 7 | "Her partner, DS Morris, had died three years ago on a case with unexplained origins—supernatural, the reports said, though she'd never understood how." | | 8 | "A small brass compass rested against her palm, its needle frozen, pointing not north but downward—straight at the fissure in the platform tiles where the blood had gathered most thickly." | | 9 | "Quinn signaled for the scene to be secured—knowing it wouldn't be—not in a place that moved, not with evidence that defied physics." | | 10 | "The Veil Market breathed around them, violet and secret, and Quinn walked toward the tunnel's mouth where the needle pointed, carrying the dead woman's compass and the growing certainty that some murders weren't solved—they were followed into the dark." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 850 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 28 | | adverbRatio | 0.03294117647058824 | | lyAdverbCount | 13 | | lyAdverbRatio | 0.015294117647058824 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 91 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 91 | | mean | 11.04 | | std | 8.35 | | cv | 0.756 | | sampleLengths | | 0 | 20 | | 1 | 22 | | 2 | 17 | | 3 | 16 | | 4 | 6 | | 5 | 9 | | 6 | 18 | | 7 | 2 | | 8 | 13 | | 9 | 17 | | 10 | 15 | | 11 | 12 | | 12 | 10 | | 13 | 19 | | 14 | 3 | | 15 | 14 | | 16 | 12 | | 17 | 5 | | 18 | 1 | | 19 | 21 | | 20 | 8 | | 21 | 15 | | 22 | 5 | | 23 | 2 | | 24 | 2 | | 25 | 3 | | 26 | 5 | | 27 | 2 | | 28 | 20 | | 29 | 2 | | 30 | 4 | | 31 | 19 | | 32 | 3 | | 33 | 8 | | 34 | 6 | | 35 | 3 | | 36 | 7 | | 37 | 2 | | 38 | 16 | | 39 | 35 | | 40 | 8 | | 41 | 5 | | 42 | 9 | | 43 | 7 | | 44 | 7 | | 45 | 12 | | 46 | 3 | | 47 | 6 | | 48 | 2 | | 49 | 4 |
| |
| 54.95% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 5 | | diversityRatio | 0.3626373626373626 | | totalSentences | 91 | | uniqueOpeners | 33 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 64 | | matches | (empty) | | ratio | 0 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 14 | | totalSentences | 64 | | matches | | 0 | "She adjusted the worn leather" | | 1 | "He was young, eager, holding" | | 2 | "She knelt beside the body," | | 3 | "It hadn't pooled so much" | | 4 | "She touched the platform edge" | | 5 | "She stood, scanning the alcove." | | 6 | "She recognized the patina in" | | 7 | "She noted the absence of" | | 8 | "She returned to the body." | | 9 | "She'd known what she was" | | 10 | "Her partner, DS Morris, had" | | 11 | "She thought of Morris, of" | | 12 | "She slid the brass compass" | | 13 | "She left the alcove with" |
| | ratio | 0.219 | |
| 61.56% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 51 | | totalSentences | 64 | | matches | | 0 | "Quinn's boots echoed against the" | | 1 | "The bone token in her" | | 2 | "She adjusted the worn leather" | | 3 | "The place moved every full" | | 4 | "Tonight it had stayed still" | | 5 | "The body lay in a" | | 6 | "Eva Kowalski's satchel spilled across" | | 7 | "The red curls had been" | | 8 | "He was young, eager, holding" | | 9 | "Quinn didn't answer." | | 10 | "She knelt beside the body," | | 11 | "A single incision across the" | | 12 | "It hadn't pooled so much" | | 13 | "She touched the platform edge" | | 14 | "The stone was cold, but" | | 15 | "She stood, scanning the alcove." | | 16 | "The books were arranged too" | | 17 | "Quinn's brown eyes narrowed." | | 18 | "She recognized the patina in" | | 19 | "The Veil Compass." |
| | ratio | 0.797 | |
| 100.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 2 | | totalSentences | 64 | | matches | | 0 | "Now she was beginning to." | | 1 | "Now the freckled face was" |
| | ratio | 0.031 | |
| 56.28% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 33 | | technicalSentenceCount | 4 | | matches | | 0 | "It hadn't pooled so much as crept outward in thin, branching lines, as if following invisible channels etched into the concrete." | | 1 | "She noted the absence of footprints other than Eva's own worn leather shoes—impossible in a place that moved every full moon, impossible unless the killer had a…" | | 2 | "Eva Kowalski had been her childhood friend, her best friend, the only person who'd written after Morris died." | | 3 | "And a detective who was finally ready to understand the world she'd been policing blindly." |
| |
| 69.44% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 9 | | uselessAdditionCount | 1 | | matches | | 0 | "Quinn walked, her bearing precise, military" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 5 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 23 | | tagDensity | 0.217 | | leniency | 0.435 | | rawRatio | 0 | | effectiveRatio | 0 | |