| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 7 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 10 | | tagDensity | 0.7 | | leniency | 1 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 100.00% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1058 | | totalAiIsmAdverbs | 0 | | found | (empty) | | highlights | (empty) | |
| 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) | |
| 85.82% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1058 | | totalAiIsms | 3 | | found | | | highlights | | 0 | "pulse" | | 1 | "streaming" | | 2 | "footsteps" |
| |
| 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 | 59 | | matches | (empty) | |
| 94.43% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 1 | | narrationSentences | 59 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 64 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 55 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1049 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 12 | | unquotedAttributions | 0 | | matches | (empty) | |
| 99.44% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 26 | | wordCount | 989 | | uniqueNames | 13 | | maxNameDensity | 1.01 | | worstName | "Quinn" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Quinn" | | discoveredNames | | Raven | 1 | | Nest | 1 | | Dean | 1 | | Street | 3 | | Tonight | 1 | | Old | 2 | | Compton | 1 | | Wardour | 1 | | Quinn | 10 | | Soho | 1 | | Morris | 1 | | Tube | 2 | | Camden | 1 |
| | persons | | | places | | 0 | "Raven" | | 1 | "Dean" | | 2 | "Street" | | 3 | "Tonight" | | 4 | "Old" | | 5 | "Compton" | | 6 | "Wardour" | | 7 | "Soho" |
| | globalScore | 0.994 | | windowScore | 1 | |
| 93.18% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 44 | | glossingSentenceCount | 1 | | matches | | 0 | "faces that seemed to have too many angles, too many teeth, too much stillness in the eyes" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.953 | | wordCount | 1049 | | matches | | 0 | "Not running yet, but close to it" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 64 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 35 | | mean | 29.97 | | std | 23.77 | | cv | 0.793 | | sampleLengths | | 0 | 50 | | 1 | 49 | | 2 | 45 | | 3 | 5 | | 4 | 8 | | 5 | 67 | | 6 | 12 | | 7 | 7 | | 8 | 13 | | 9 | 2 | | 10 | 70 | | 11 | 13 | | 12 | 35 | | 13 | 1 | | 14 | 40 | | 15 | 37 | | 16 | 41 | | 17 | 63 | | 18 | 13 | | 19 | 30 | | 20 | 6 | | 21 | 25 | | 22 | 11 | | 23 | 5 | | 24 | 3 | | 25 | 72 | | 26 | 36 | | 27 | 58 | | 28 | 86 | | 29 | 38 | | 30 | 6 | | 31 | 48 | | 32 | 15 | | 33 | 3 | | 34 | 36 |
| |
| 99.32% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 59 | | matches | | |
| 87.01% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 3 | | totalVerbs | 177 | | matches | | 0 | "were trying" | | 1 | "wasn't losing" | | 2 | "was still deciding" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 9 | | semicolonCount | 0 | | flaggedSentences | 8 | | totalSentences | 64 | | ratio | 0.125 | | matches | | 0 | "She'd clocked him the moment he left—the way he moved like he expected to be followed, shoulders hunched, collar up, cutting across Dean Street instead of taking the straight line to the tube." | | 1 | "The rain made everything difficult—footing, visibility, the sound of her own boots slapping wet stone." | | 2 | "Then she saw it—a service hatch set into the cobbles near the wall, the kind used decades ago for coal deliveries, half-hidden under a dead patch of ivy." | | 3 | "Not faded—died, mid-syllable, the little bars on her phone screen blinking to nothing like something had reached out and pinched them off." | | 4 | "The ladder was old iron, slick with condensation, and it dropped her into a narrow brick passage that smelled of the underground the way the Tube did—dust and electricity and old stone—except colder, and threaded through with something that made the hair on her arms stand up." | | 5 | "Light pooled ahead, amber and unsteady, and voices drifted with it—dozens of them, low, overlapping, punctuated by something that might have been a bell or might have been laughter pitched too high to be entirely human." | | 6 | "Quinn's hand went to her hip out of habit, though she carried no weapon that would help her here—not that she knew that yet." | | 7 | "Her suspect stood forty feet away at a stall selling small dark bottles, exchanging something with the vendor—a coin, pale and irregular, that caught the lantern light like it was carved from bone rather than cut from it." |
| |
| 96.96% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 138 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 6 | | adverbRatio | 0.043478260869565216 | | lyAdverbCount | 0 | | lyAdverbRatio | 0 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 64 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 64 | | mean | 16.39 | | std | 13.1 | | cv | 0.799 | | sampleLengths | | 0 | 23 | | 1 | 27 | | 2 | 33 | | 3 | 2 | | 4 | 14 | | 5 | 17 | | 6 | 3 | | 7 | 25 | | 8 | 5 | | 9 | 8 | | 10 | 15 | | 11 | 17 | | 12 | 35 | | 13 | 5 | | 14 | 7 | | 15 | 7 | | 16 | 8 | | 17 | 5 | | 18 | 2 | | 19 | 24 | | 20 | 26 | | 21 | 20 | | 22 | 13 | | 23 | 9 | | 24 | 14 | | 25 | 6 | | 26 | 6 | | 27 | 1 | | 28 | 28 | | 29 | 12 | | 30 | 37 | | 31 | 13 | | 32 | 28 | | 33 | 4 | | 34 | 14 | | 35 | 23 | | 36 | 22 | | 37 | 10 | | 38 | 3 | | 39 | 24 | | 40 | 6 | | 41 | 6 | | 42 | 3 | | 43 | 22 | | 44 | 5 | | 45 | 6 | | 46 | 3 | | 47 | 2 | | 48 | 3 | | 49 | 47 |
| |
| 67.19% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 7 | | diversityRatio | 0.46875 | | totalSentences | 64 | | uniqueOpeners | 30 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 2 | | totalSentences | 56 | | matches | | 0 | "Then she saw it—a service" | | 1 | "Then he turned and walked," |
| | ratio | 0.036 | |
| 77.14% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 20 | | totalSentences | 56 | | matches | | 0 | "She'd clocked him the moment" | | 1 | "she muttered, and started walking" | | 2 | "She used it anyway, let" | | 3 | "He turned onto Old Compton" | | 4 | "He picked up his pace." | | 5 | "she called, no real hope" | | 6 | "She swore and broke into" | | 7 | "He was fast, younger than" | | 8 | "He cut down an alley" | | 9 | "She stopped, chest heaving, rain" | | 10 | "She thought of Morris." | | 11 | "She thought of" | | 12 | "she said out loud, to" | | 13 | "She called it in anyway," | | 14 | "She went down." | | 15 | "She only knew that every" | | 16 | "Her suspect stood forty feet" | | 17 | "He looked up." | | 18 | "He saw her." | | 19 | "she said, low, and started" |
| | ratio | 0.357 | |
| 93.93% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 41 | | totalSentences | 56 | | matches | | 0 | "Quinn kept to the shadows" | | 1 | "She'd clocked him the moment" | | 2 | "People who wanted to disappear" | | 3 | "Quinn had run his face" | | 4 | "Tonight, she wasn't losing him." | | 5 | "she muttered, and started walking" | | 6 | "The rain made everything difficult—footing," | | 7 | "She used it anyway, let" | | 8 | "He turned onto Old Compton" | | 9 | "He picked up his pace." | | 10 | "Quinn's pulse ticked up to" | | 11 | "she called, no real hope" | | 12 | "She swore and broke into" | | 13 | "He was fast, younger than" | | 14 | "He cut down an alley" | | 15 | "She stopped, chest heaving, rain" | | 16 | "The gate at the end" | | 17 | "The metal lid sat askew," | | 18 | "Quinn crouched, put her palm" | | 19 | "Every instinct she'd built over" |
| | ratio | 0.732 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 56 | | matches | (empty) | | ratio | 0 | |
| 34.63% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 33 | | technicalSentenceCount | 5 | | matches | | 0 | "Quinn crouched, put her palm against the cold iron, and looked down into darkness that smelled of damp stone and something underneath that, something sweetish a…" | | 1 | "The ladder was old iron, slick with condensation, and it dropped her into a narrow brick passage that smelled of the underground the way the Tube did—dust and e…" | | 2 | "Sound behaved strangely down here, her own footsteps arriving a half-second late, as though the tunnel was still deciding whether to let her hear them." | | 3 | "Light pooled ahead, amber and unsteady, and voices drifted with it—dozens of them, low, overlapping, punctuated by something that might have been a bell or migh…" | | 4 | "But the platform itself had become something else entirely: stalls built from scavenged doors and shopfronts, lanterns strung on wire overhead, a crowd moving b…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 7 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 50.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 5 | | fancyCount | 1 | | fancyTags | | | dialogueSentences | 10 | | tagDensity | 0.5 | | leniency | 1 | | rawRatio | 0.2 | | effectiveRatio | 0.2 | |