| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 31 | | adverbTagCount | 2 | | adverbTags | | 0 | "Harlow stood abruptly [abruptly]" | | 1 | "She stepped back [back]" |
| | dialogueSentences | 65 | | tagDensity | 0.477 | | leniency | 0.954 | | rawRatio | 0.065 | | effectiveRatio | 0.062 | |
| 84.92% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1658 | | totalAiIsmAdverbs | 5 | | found | | | highlights | | 0 | "sharply" | | 1 | "really" | | 2 | "very" |
| |
| 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) | |
| 24.61% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1658 | | totalAiIsms | 25 | | found | | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 5 | | | 6 | | | 7 | | | 8 | | | 9 | | | 10 | | | 11 | | | 12 | | | 13 | | | 14 | | | 15 | | | 16 | | | 17 | | | 18 | | | 19 | |
| | highlights | | 0 | "gloom" | | 1 | "familiar" | | 2 | "weight" | | 3 | "glinting" | | 4 | "scanning" | | 5 | "intensity" | | 6 | "etched" | | 7 | "intricate" | | 8 | "wavered" | | 9 | "furrowed" | | 10 | "raced" | | 11 | "stomach" | | 12 | "flickered" | | 13 | "vibrated" | | 14 | "pulse" | | 15 | "jaw clenched" | | 16 | "whisper" | | 17 | "could feel" | | 18 | "echoed" | | 19 | "flicker" |
| |
| 66.67% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 2 | | maxInWindow | 2 | | found | | 0 | | label | "stomach dropped/sank" | | count | 1 |
| | 1 | | label | "jaw/fists clenched" | | count | 1 |
|
| | highlights | | 0 | "stomach dropped" | | 1 | "jaw clenched" |
| |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 113 | | matches | (empty) | |
| 92.29% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 2 | | hedgeCount | 2 | | narrationSentences | 113 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 127 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 72 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 14 | | markdownWords | 14 | | totalWords | 1650 | | ratio | 0.008 | | matches | | 0 | "die" | | 1 | "took" | | 2 | "what" | | 3 | "magic" | | 4 | "happen" | | 5 | "very" | | 6 | "something" | | 7 | "out" | | 8 | "sacrifice" | | 9 | "happen" | | 10 | "evidence" | | 11 | "paying" | | 12 | "message" | | 13 | "very" |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 11 | | unquotedAttributions | 0 | | matches | (empty) | |
| 33.33% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 61 | | wordCount | 1364 | | uniqueNames | 10 | | maxNameDensity | 1.98 | | worstName | "Harlow" | | maxWindowNameDensity | 4 | | worstWindowName | "Harlow" | | discoveredNames | | Tube | 1 | | Camden | 1 | | Harlow | 27 | | Quinn | 1 | | Morris | 2 | | Eva | 25 | | Kowalski | 1 | | Rifts | 1 | | Veil | 1 | | Market | 1 |
| | persons | | 0 | "Camden" | | 1 | "Harlow" | | 2 | "Quinn" | | 3 | "Morris" | | 4 | "Eva" | | 5 | "Kowalski" |
| | places | (empty) | | globalScore | 0.51 | | windowScore | 0.333 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 63 | | glossingSentenceCount | 0 | | matches | (empty) | |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.606 | | wordCount | 1650 | | matches | | 0 | "Not with the flicker of the light, but with purpose" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 127 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 63 | | mean | 26.19 | | std | 18.08 | | cv | 0.69 | | sampleLengths | | 0 | 85 | | 1 | 46 | | 2 | 72 | | 3 | 56 | | 4 | 8 | | 5 | 38 | | 6 | 21 | | 7 | 21 | | 8 | 43 | | 9 | 46 | | 10 | 6 | | 11 | 20 | | 12 | 3 | | 13 | 34 | | 14 | 24 | | 15 | 9 | | 16 | 27 | | 17 | 30 | | 18 | 40 | | 19 | 18 | | 20 | 46 | | 21 | 17 | | 22 | 71 | | 23 | 5 | | 24 | 17 | | 25 | 7 | | 26 | 42 | | 27 | 46 | | 28 | 5 | | 29 | 34 | | 30 | 9 | | 31 | 16 | | 32 | 17 | | 33 | 4 | | 34 | 24 | | 35 | 39 | | 36 | 44 | | 37 | 17 | | 38 | 29 | | 39 | 35 | | 40 | 13 | | 41 | 13 | | 42 | 13 | | 43 | 8 | | 44 | 51 | | 45 | 13 | | 46 | 14 | | 47 | 30 | | 48 | 12 | | 49 | 40 |
| |
| 86.63% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 6 | | totalSentences | 113 | | matches | | 0 | "been dragged" | | 1 | "was frozen" | | 2 | "were curled" | | 3 | "been dragged" | | 4 | "was clenched" | | 5 | "been taken" |
| |
| 58.76% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 5 | | totalVerbs | 236 | | matches | | 0 | "was trying" | | 1 | "was going" | | 2 | "was *paying" | | 3 | "were starting" | | 4 | "was watching" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 8 | | semicolonCount | 0 | | flaggedSentences | 8 | | totalSentences | 127 | | ratio | 0.063 | | matches | | 0 | "The beam of her torch cut through the gloom, illuminating the peeling posters on the walls—faded advertisements for long-forgotten plays and products, their edges curled with decades of neglect." | | 1 | "Harlow’s mind raced. The station was abandoned, sure, but it wasn’t exactly a secret. Urban explorers, junkies, the occasional homeless person—plenty of people knew about it. But a supernatural black market? That was a different level of secrecy. “You think this is connected to the Market?”" | | 2 | "Harlow crouched again, this time examining the ground around the body. The dust was disturbed, but not in the way she’d expect from a struggle. The patterns were… wrong. Too smooth, too deliberate. Like something had been dragged, but not by human hands. And then there were the marks on the walls—faint, but unmistakable. Symbols, etched into the grime. She ran her fingers over them, feeling the grooves beneath the dirt." | | 3 | "Harlow pushed. Nothing. She pushed harder. Still nothing. Then, on a whim, she pressed her ear to the wall. A faint hum vibrated against her skull, like the distant thrum of machinery—or a heartbeat." | | 4 | "She turned back to the body, her sharp eyes missing nothing. The man’s pockets were empty—no wallet, no phone, no bone token. But his left hand was clenched around something. She pried his fingers open." | | 5 | "The torchlight flickered again, and for a heartbeat, the wall in front of them seemed to shimmer, like heat rising off pavement. Harlow’s grip on the bone chip tightened. She could feel it—pressure, like the air before a storm. The compass needle spun, then pointed at the chip in her hand." | | 6 | "A sound echoed through the station—a scuff of a shoe, the faintest rustle of fabric. Harlow’s hand went to her sidearm, her body coiling like a spring. “We’re not alone.”" | | 7 | "The figure tilted their head, and for the first time, Harlow saw their eyes—black, depthless, like the void between stars. Then they smiled, and the torchlight dimmed, as if the very air had grown thicker." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 617 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 19 | | adverbRatio | 0.03079416531604538 | | lyAdverbCount | 5 | | lyAdverbRatio | 0.008103727714748784 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 127 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 127 | | mean | 12.99 | | std | 12.85 | | cv | 0.989 | | sampleLengths | | 0 | 24 | | 1 | 16 | | 2 | 29 | | 3 | 16 | | 4 | 16 | | 5 | 2 | | 6 | 25 | | 7 | 3 | | 8 | 23 | | 9 | 14 | | 10 | 5 | | 11 | 30 | | 12 | 10 | | 13 | 23 | | 14 | 13 | | 15 | 10 | | 16 | 2 | | 17 | 6 | | 18 | 24 | | 19 | 14 | | 20 | 3 | | 21 | 4 | | 22 | 8 | | 23 | 6 | | 24 | 4 | | 25 | 17 | | 26 | 6 | | 27 | 6 | | 28 | 2 | | 29 | 17 | | 30 | 8 | | 31 | 4 | | 32 | 7 | | 33 | 26 | | 34 | 5 | | 35 | 8 | | 36 | 3 | | 37 | 3 | | 38 | 14 | | 39 | 6 | | 40 | 3 | | 41 | 10 | | 42 | 24 | | 43 | 6 | | 44 | 18 | | 45 | 2 | | 46 | 7 | | 47 | 25 | | 48 | 2 | | 49 | 1 |
| |
| 46.46% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 6 | | diversityRatio | 0.30708661417322836 | | totalSentences | 127 | | uniqueOpeners | 39 | |
| 73.26% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 2 | | totalSentences | 91 | | matches | | 0 | "Just the unnatural pallor of" | | 1 | "Maybe he stumbled onto something" |
| | ratio | 0.022 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 16 | | totalSentences | 91 | | matches | | 0 | "She adjusted the worn leather" | | 1 | "His face was frozen in" | | 2 | "Her satchel, a worn leather" | | 3 | "She didn’t like riddles." | | 4 | "She liked facts, evidence, things" | | 5 | "She didn’t believe in the" | | 6 | "She knelt beside Eva, her" | | 7 | "She reached into her satchel" | | 8 | "It wavered, then settled on" | | 9 | "She stepped back, her pulse" | | 10 | "He was the" | | 11 | "it’s cleaner than" | | 12 | "She turned back to the" | | 13 | "He was *paying* for" | | 14 | "She met Eva’s gaze." | | 15 | "She didn’t think. She fired." |
| | ratio | 0.176 | |
| 31.43% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 78 | | totalSentences | 91 | | matches | | 0 | "The abandoned Tube station beneath" | | 1 | "Detective Harlow Quinn stepped over" | | 2 | "The beam of her torch" | | 3 | "The air was thick, stale," | | 4 | "She adjusted the worn leather" | | 5 | "The body lay sprawled near" | | 6 | "His face was frozen in" | | 7 | "Eva Kowalski stepped into the" | | 8 | "Her satchel, a worn leather" | | 9 | "Eva crouched beside the body," | | 10 | "Harlow’s jaw tightened." | | 11 | "She didn’t like riddles." | | 12 | "She liked facts, evidence, things" | | 13 | "Eva hesitated, then nodded." | | 14 | "Harlow exhaled sharply through her" | | 15 | "She didn’t believe in the" | | 16 | "She knelt beside Eva, her" | | 17 | "She reached into her satchel" | | 18 | "The needle didn’t point north." | | 19 | "It wavered, then settled on" |
| | ratio | 0.857 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 91 | | matches | (empty) | | ratio | 0 | |
| 93.60% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 29 | | technicalSentenceCount | 2 | | matches | | 0 | "The abandoned Tube station beneath Camden reeked of damp concrete and something older, something that clung to the back of the throat like rust." | | 1 | "The figure tilted their head, and for the first time, Harlow saw their eyes—black, depthless, like the void between stars. Then they smiled, and the torchlight …" |
| |
| 79.55% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 11 | | uselessAdditionCount | 1 | | matches | | 0 | "she said, her voice unsteady," |
| |
| 73.08% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 7 | | fancyCount | 5 | | fancyTags | | 0 | "Eva murmured (murmur)" | | 1 | "she muttered (mutter)" | | 2 | "Eva whispered (whisper)" | | 3 | "Harlow’s jaw clenched. (clench)" | | 4 | "her arm didn’t (do)" |
| | dialogueSentences | 65 | | tagDensity | 0.108 | | leniency | 0.215 | | rawRatio | 0.714 | | effectiveRatio | 0.154 | |