| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 22 | | adverbTagCount | 2 | | adverbTags | | 0 | "Quinn crouched again [again]" | | 1 | "she said finally [finally]" |
| | dialogueSentences | 59 | | tagDensity | 0.373 | | leniency | 0.746 | | rawRatio | 0.091 | | effectiveRatio | 0.068 | |
| 82.04% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1949 | | totalAiIsmAdverbs | 7 | | found | | 0 | | adverb | "deliberately" | | count | 2 |
| | 1 | | | 2 | | | 3 | | | 4 | |
| | highlights | | 0 | "deliberately" | | 1 | "lazily" | | 2 | "slightly" | | 3 | "very" | | 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) | |
| 64.08% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1949 | | totalAiIsms | 14 | | found | | | highlights | | 0 | "stomach" | | 1 | "comfortable" | | 2 | "weight" | | 3 | "pristine" | | 4 | "tracing" | | 5 | "etched" | | 6 | "silk" | | 7 | "standard" | | 8 | "familiar" | | 9 | "whisper" | | 10 | "resolved" | | 11 | "database" | | 12 | "silence" |
| |
| 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 | 100 | | matches | (empty) | |
| 71.43% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 4 | | narrationSentences | 100 | | filterMatches | | | hedgeMatches | | 0 | "appeared to" | | 1 | "happened to" | | 2 | "seemed to" |
| |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 137 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 42 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1934 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 19 | | unquotedAttributions | 0 | | matches | (empty) | |
| 68.58% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 59 | | wordCount | 1351 | | uniqueNames | 19 | | maxNameDensity | 1.63 | | worstName | "Quinn" | | maxWindowNameDensity | 2.5 | | worstWindowName | "Quinn" | | discoveredNames | | Detective | 1 | | Harlow | 1 | | Quinn | 22 | | London | 1 | | Tube | 1 | | Chen | 14 | | Camden | 1 | | Google | 1 | | Patek | 2 | | Philippe | 2 | | Fine | 1 | | Webb | 3 | | Italian | 1 | | Morris | 3 | | Victorian | 1 | | Kowalski | 1 | | British | 1 | | Museum | 1 | | Three | 1 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Chen" | | 3 | "Patek" | | 4 | "Philippe" | | 5 | "Webb" | | 6 | "Morris" | | 7 | "Kowalski" | | 8 | "Museum" |
| | places | | | globalScore | 0.686 | | windowScore | 0.833 | |
| 59.64% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 83 | | glossingSentenceCount | 3 | | matches | | 0 | "as if searching for stars that had never shone down here" | | 1 | "as if warding something off" | | 2 | "patterns that seemed to shift in her peripheral vision" |
| |
| 96.59% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 2 | | per1kWords | 1.034 | | wordCount | 1934 | | matches | | 0 | "not pain, not the slack absence of death, but terror" | | 1 | "not the slack absence of death, but terror" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 137 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 61 | | mean | 31.7 | | std | 23.3 | | cv | 0.735 | | sampleLengths | | 0 | 49 | | 1 | 23 | | 2 | 63 | | 3 | 59 | | 4 | 50 | | 5 | 25 | | 6 | 8 | | 7 | 4 | | 8 | 19 | | 9 | 41 | | 10 | 80 | | 11 | 15 | | 12 | 3 | | 13 | 26 | | 14 | 59 | | 15 | 26 | | 16 | 56 | | 17 | 6 | | 18 | 2 | | 19 | 50 | | 20 | 61 | | 21 | 3 | | 22 | 13 | | 23 | 2 | | 24 | 7 | | 25 | 39 | | 26 | 17 | | 27 | 37 | | 28 | 38 | | 29 | 51 | | 30 | 5 | | 31 | 37 | | 32 | 5 | | 33 | 33 | | 34 | 56 | | 35 | 45 | | 36 | 18 | | 37 | 7 | | 38 | 3 | | 39 | 71 | | 40 | 47 | | 41 | 5 | | 42 | 31 | | 43 | 56 | | 44 | 18 | | 45 | 36 | | 46 | 71 | | 47 | 5 | | 48 | 2 | | 49 | 2 |
| |
| 94.74% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 3 | | totalSentences | 100 | | matches | | 0 | "been closed" | | 1 | "been chosen" | | 2 | "was pierced" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 246 | | matches | (empty) | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 9 | | semicolonCount | 0 | | flaggedSentences | 9 | | totalSentences | 137 | | ratio | 0.066 | | matches | | 0 | "Webb's hands were clean—too clean for a man who'd supposedly been dead in a filthy tunnel for days." | | 1 | "Except—" | | 2 | "The face bore markings she didn't recognize—angular symbols that looked almost like runes, etched into the brass with precision that spoke of craftsmanship beyond mere decoration." | | 3 | "The compass didn't match Webb's aesthetic—his Patek Philippe, his Italian leather shoes, his silk tie." | | 4 | "But tucked into the waistband, nearly invisible against the dark fabric—" | | 5 | "\"Or someone. He had whatever this is—\" she held up the bone token, \"—which suggests he knew how to find this place. But he came alone, or his companion abandoned him. And whatever happened to him wasn't natural.\"" | | 6 | "The face held an expression that the harsh forensic lights rendered in terrible detail—not pain, not the slack absence of death, but terror." | | 7 | "Could see, too, where the graffiti gave way to older marks—scratches in the brick that formed patterns, symbols, the same angular script that adorned the compass and the bone." | | 8 | "The station had its own sounds—water dripping somewhere in the distance, the creak of ancient infrastructure settling, the faint rumble of modern trains passing through tunnels far overhead." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1045 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 31 | | adverbRatio | 0.02966507177033493 | | lyAdverbCount | 15 | | lyAdverbRatio | 0.014354066985645933 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 137 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 137 | | mean | 14.12 | | std | 8.59 | | cv | 0.608 | | sampleLengths | | 0 | 29 | | 1 | 20 | | 2 | 13 | | 3 | 10 | | 4 | 6 | | 5 | 31 | | 6 | 26 | | 7 | 18 | | 8 | 20 | | 9 | 21 | | 10 | 16 | | 11 | 18 | | 12 | 16 | | 13 | 14 | | 14 | 11 | | 15 | 8 | | 16 | 4 | | 17 | 2 | | 18 | 17 | | 19 | 4 | | 20 | 17 | | 21 | 14 | | 22 | 6 | | 23 | 20 | | 24 | 18 | | 25 | 14 | | 26 | 28 | | 27 | 7 | | 28 | 8 | | 29 | 3 | | 30 | 26 | | 31 | 7 | | 32 | 19 | | 33 | 33 | | 34 | 13 | | 35 | 13 | | 36 | 29 | | 37 | 27 | | 38 | 6 | | 39 | 2 | | 40 | 22 | | 41 | 28 | | 42 | 14 | | 43 | 20 | | 44 | 12 | | 45 | 15 | | 46 | 3 | | 47 | 8 | | 48 | 5 | | 49 | 2 |
| |
| 72.51% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 4 | | diversityRatio | 0.45255474452554745 | | totalSentences | 137 | | uniqueOpeners | 62 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 95 | | matches | (empty) | | ratio | 0 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 19 | | totalSentences | 95 | | matches | | 0 | "She ducked under the police" | | 1 | "His eyes were open, fixed" | | 2 | "He stood near the body," | | 3 | "She leaned closer to the" | | 4 | "His fingernails showed no defensive" | | 5 | "She'd felt older lately, the" | | 6 | "She could see the forensic" | | 7 | "He joined her, tablet tucked" | | 8 | "She turned her attention back" | | 9 | "It was pierced at one" | | 10 | "She'd learned three years ago" | | 11 | "she said finally" | | 12 | "she held up the bone" | | 13 | "She walked the perimeter again," | | 14 | "He disappeared toward the maintenance" | | 15 | "She stood very still, listening." | | 16 | "Her hand went to her" | | 17 | "She climbed down, already pulling" | | 18 | "She turned back toward the" |
| | ratio | 0.2 | |
| 75.79% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 73 | | totalSentences | 95 | | matches | | 0 | "The abandoned platform still held" | | 1 | "She ducked under the police" | | 2 | "Quinn's boots found the puddle" | | 3 | "The body lay between the" | | 4 | "His eyes were open, fixed" | | 5 | "The voice belonged to DS" | | 6 | "He stood near the body," | | 7 | "Quinn crouched beside the body," | | 8 | "Quinn filed that away." | | 9 | "The station had been closed" | | 10 | "This place had been chosen" | | 11 | "She leaned closer to the" | | 12 | "Webb's hands were clean—too clean" | | 13 | "His fingernails showed no defensive" | | 14 | "The expensive watch on his" | | 15 | "Chen said, following her gaze" | | 16 | "Quinn stood, her knees protesting" | | 17 | "She'd felt older lately, the" | | 18 | "Chen shrugged, making a note" | | 19 | "Quinn walked the perimeter of" |
| | ratio | 0.768 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 95 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 58 | | technicalSentenceCount | 14 | | matches | | 0 | "Harsh white beams cut through darkness that had gone undisturbed for half a century, illuminating graffiti tags that looked older than some of her junior office…" | | 1 | "The body lay between the rusted tracks, positioned with an almost theatrical precision that made Quinn's stomach tighten." | | 2 | "His eyes were open, fixed on the vaulted ceiling above as if searching for stars that had never shone down here." | | 3 | "Finding it required knowledge that didn't come from Google searches or urban exploration forums." | | 4 | "Webb's hands were clean—too clean for a man who'd supposedly been dead in a filthy tunnel for days." | | 5 | "The expensive watch on his wrist remained intact, a Patek Philippe that would have fetched enough on the black market to keep a desperate man comfortable for mo…" | | 6 | "Quinn moved toward the tunnel, her flashlight beam catching something that made her stop." | | 7 | "Old, judging by the verdigris that crusted its casing, but well-crafted." | | 8 | "The face bore markings she didn't recognize—angular symbols that looked almost like runes, etched into the brass with precision that spoke of craftsmanship beyo…" | | 9 | "Could see, too, where the graffiti gave way to older marks—scratches in the brick that formed patterns, symbols, the same angular script that adorned the compas…" | | 10 | "Eva Kowalski's number sat near the top, a remnant of the informal consultations that had become increasingly frequent since Morris's death." | | 11 | "She turned back toward the tunnel entrance, her flashlight beam cutting a path through darkness that felt thicker than it should." | | 12 | "Behind her, the forensic team continued their careful work, documenting a scene that would never make sense in any official report." | | 13 | "The compass sat heavy in its evidence bag, its needle still spinning, pointing toward something that existed beyond the maps." |
| |
| 34.09% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 22 | | uselessAdditionCount | 4 | | matches | | 0 | "Quinn walked, her flashlight sweeping across the platform's edges" | | 1 | "Quinn crouched again, this time examining the dust itself" | | 2 | "Chen offered, but his voice had lost its certainty" | | 3 | "Quinn stood, knees aching" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 4 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 59 | | tagDensity | 0.068 | | leniency | 0.136 | | rawRatio | 0 | | effectiveRatio | 0 | |