| 94.74% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 19 | | adverbTagCount | 2 | | adverbTags | | 0 | "she said quietly [quietly]" | | 1 | "he said finally [finally]" |
| | dialogueSentences | 33 | | tagDensity | 0.576 | | leniency | 1 | | rawRatio | 0.105 | | effectiveRatio | 0.105 | |
| 83.58% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1218 | | totalAiIsmAdverbs | 4 | | found | | | highlights | | 0 | "cautiously" | | 1 | "loosely" | | 2 | "precisely" | | 3 | "really" |
| |
| 80.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) | |
| 50.74% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1218 | | totalAiIsms | 12 | | found | | | highlights | | 0 | "silence" | | 1 | "stomach" | | 2 | "traced" | | 3 | "intensity" | | 4 | "weight" | | 5 | "sense of" | | 6 | "flicker" | | 7 | "intrigue" | | 8 | "desire" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 1 | | maxInWindow | 1 | | found | | 0 | | label | "hung in the air" | | count | 1 |
|
| | highlights | | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 71 | | matches | (empty) | |
| 82.49% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 3 | | hedgeCount | 0 | | narrationSentences | 71 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 87 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 44 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1203 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 15 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 33 | | wordCount | 932 | | uniqueNames | 10 | | maxNameDensity | 0.97 | | worstName | "Rory" | | maxWindowNameDensity | 2 | | worstWindowName | "Eva" | | discoveredNames | | Reunion | 1 | | Thursday | 1 | | Eva | 7 | | Rory | 9 | | London | 2 | | Silence | 1 | | French | 1 | | Lucien | 8 | | Moreau | 2 | | Ptolemy | 1 |
| | persons | | 0 | "Eva" | | 1 | "Rory" | | 2 | "Lucien" | | 3 | "Moreau" |
| | places | | | globalScore | 1 | | windowScore | 1 | |
| 0.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 48 | | glossingSentenceCount | 3 | | matches | | 0 | "felt like six minutes, and others like" | | 1 | "quite remember how to position" | | 2 | "quite touch, but they might as well have—the air between them crackled with all the things that had been left unsaid" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.831 | | wordCount | 1203 | | matches | | 0 | "not to, specifically, but Eva had never been good at following orders" |
| |
| 0.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 5 | | totalSentences | 87 | | matches | | 0 | "open that door" | | 1 | "screaming that truth" | | 2 | "had that cane" | | 3 | "had that control" | | 4 | "relive that night" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 37 | | mean | 32.51 | | std | 25 | | cv | 0.769 | | sampleLengths | | 0 | 3 | | 1 | 78 | | 2 | 40 | | 3 | 5 | | 4 | 17 | | 5 | 2 | | 6 | 52 | | 7 | 45 | | 8 | 4 | | 9 | 80 | | 10 | 19 | | 11 | 31 | | 12 | 4 | | 13 | 4 | | 14 | 62 | | 15 | 67 | | 16 | 21 | | 17 | 1 | | 18 | 75 | | 19 | 11 | | 20 | 43 | | 21 | 6 | | 22 | 44 | | 23 | 4 | | 24 | 57 | | 25 | 30 | | 26 | 67 | | 27 | 37 | | 28 | 6 | | 29 | 58 | | 30 | 61 | | 31 | 15 | | 32 | 37 | | 33 | 48 | | 34 | 16 | | 35 | 45 | | 36 | 8 |
| |
| 80.55% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 5 | | totalSentences | 71 | | matches | | 0 | "was scheduled" | | 1 | "was slicked" | | 2 | "was sprawled" | | 3 | "been left" | | 4 | "been struck" |
| |
| 41.27% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 4 | | totalVerbs | 168 | | matches | | 0 | "was screaming" | | 1 | "was always holding" | | 2 | "was cataloguing" | | 3 | "was like watching" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 15 | | semicolonCount | 0 | | flaggedSentences | 13 | | totalSentences | 87 | | ratio | 0.149 | | matches | | 0 | "The knock was firm, insistent—not Eva's rhythm, which was always three quick taps followed by her voice calling out." | | 1 | "She knew that voice—the slight rasp beneath the refined accent, the way he curled his r's just barely French enough to be interesting." | | 2 | "Her fingers traced the crescent scar on her left wrist—an old habit, a grounding thing—before she stopped herself." | | 3 | "But it was his eyes that stopped her—heterochromatic, one amber and one black, and both of them fixed on her with an intensity that made her chest feel too small." | | 4 | "Her flat was a disaster—Eva's research materials had migrated into the sitting area, books stacked on the coffee table, and Ptolemy the tabby was sprawled across the armchair like he owned it." | | 5 | "That was one of the things that had drawn her to him initially—the sense that he was always holding something back, some private joke or dark observation locked behind those mismatched eyes." | | 6 | "When she handed him the mug, their fingers didn't quite touch, but they might as well have—the air between them crackled with all the things that had been left unsaid." | | 7 | "Eva must have mentioned it—Eva, who had no sense of discretion and even less fear of Lucien's reputation in London's supernatural underground." | | 8 | "\"Eva talks precisely the right amount.\" He took a sip of tea, and something in the domesticity of the gesture—Lucien Moreau, half-demon fixer, drinking tea in her flat—made her throat feel tight." | | 9 | "He'd definitely had that cane before—or at least, not the last time they'd been in a room together." | | 10 | "\"No. It isn't.\" Lucien set down his tea with careful precision, the kind of control he applied to everything except her—he'd never had that control when it came to her." | | 11 | "She didn't want to relive that night—finding him in Silas' back office, the moment she'd realized that the man she'd been sleeping with for three months was half-demon, that his entire background was a careful construct of information brokering and supernatural intrigue." | | 12 | "The look he gave her then—it was like watching someone unlock a door and let you see what's on the other side." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 356 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 13 | | adverbRatio | 0.03651685393258427 | | lyAdverbCount | 3 | | lyAdverbRatio | 0.008426966292134831 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 87 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 87 | | mean | 13.83 | | std | 10.07 | | cv | 0.728 | | sampleLengths | | 0 | 42 | | 1 | 20 | | 2 | 19 | | 3 | 13 | | 4 | 2 | | 5 | 4 | | 6 | 2 | | 7 | 3 | | 8 | 16 | | 9 | 5 | | 10 | 1 | | 11 | 16 | | 12 | 2 | | 13 | 10 | | 14 | 23 | | 15 | 19 | | 16 | 12 | | 17 | 18 | | 18 | 5 | | 19 | 10 | | 20 | 4 | | 21 | 32 | | 22 | 18 | | 23 | 30 | | 24 | 7 | | 25 | 2 | | 26 | 6 | | 27 | 4 | | 28 | 19 | | 29 | 7 | | 30 | 5 | | 31 | 4 | | 32 | 4 | | 33 | 2 | | 34 | 3 | | 35 | 25 | | 36 | 32 | | 37 | 15 | | 38 | 20 | | 39 | 32 | | 40 | 21 | | 41 | 1 | | 42 | 27 | | 43 | 18 | | 44 | 30 | | 45 | 7 | | 46 | 4 | | 47 | 4 | | 48 | 22 | | 49 | 17 |
| |
| 61.69% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 8 | | diversityRatio | 0.42528735632183906 | | totalSentences | 87 | | uniqueOpeners | 37 | |
| 54.64% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 61 | | matches | | 0 | "Then, a voice that made" |
| | ratio | 0.016 | |
| 23.28% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 30 | | totalSentences | 61 | | matches | | 0 | "She'd been in London for" | | 1 | "She checked the peephole and" | | 2 | "She knew that voice—the slight" | | 3 | "She hadn't heard it in" | | 4 | "Her fingers traced the crescent" | | 5 | "She shouldn't open that door." | | 6 | "She opened it anyway." | | 7 | "His platinum blond hair was" | | 8 | "He held an ivory-handled cane" | | 9 | "She didn't remember him having" | | 10 | "She stepped aside anyway, because" | | 11 | "Her flat was a disaster—Eva's" | | 12 | "He surveyed the chaos with" | | 13 | "she offered, because the alternative" | | 14 | "She made the tea in" | | 15 | "he said without preamble" | | 16 | "It wasn't a question." | | 17 | "He took a sip of" | | 18 | "He shifted his weight, and" | | 19 | "He'd definitely had that cane" |
| | ratio | 0.492 | |
| 33.77% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 52 | | totalSentences | 61 | | matches | | 0 | "# The Reunion The knock" | | 1 | "She'd been in London for" | | 2 | "The knock was firm, insistent—not" | | 3 | "Rory moved toward the door" | | 4 | "Nothing was scheduled." | | 5 | "She checked the peephole and" | | 6 | "The words hung there, suspended" | | 7 | "She knew that voice—the slight" | | 8 | "She hadn't heard it in" | | 9 | "Rory's hand was on the" | | 10 | "Her fingers traced the crescent" | | 11 | "She shouldn't open that door." | | 12 | "Every sensible part of her" | | 13 | "She opened it anyway." | | 14 | "Lucien stood in the narrow" | | 15 | "His platinum blond hair was" | | 16 | "Something sharper, more necessary." | | 17 | "He held an ivory-handled cane" | | 18 | "She didn't remember him having" | | 19 | "Rory's lips thinned." |
| | ratio | 0.852 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 61 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 33 | | technicalSentenceCount | 8 | | matches | | 0 | "The knock was firm, insistent—not Eva's rhythm, which was always three quick taps followed by her voice calling out." | | 1 | "Then, a voice that made her stomach drop like she'd missed a step on the stairs." | | 2 | "But it was his eyes that stopped her—heterochromatic, one amber and one black, and both of them fixed on her with an intensity that made her chest feel too smal…" | | 3 | "That was one of the things that had drawn her to him initially—the sense that he was always holding something back, some private joke or dark observation locked…" | | 4 | "Lucien had a way of taking up emotional space that had nothing to do with his physical size." | | 5 | "Eva must have mentioned it—Eva, who had no sense of discretion and even less fear of Lucien's reputation in London's supernatural underground." | | 6 | "Rory felt heat rise in her cheeks, a flush that was anger and something else, something that twisted low in her stomach." | | 7 | "And underneath it all, something that looked uncomfortably like love." |
| |
| 72.37% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 19 | | uselessAdditionCount | 2 | | matches | | 0 | "she offered, because the alternative was to acknowledge why he was actually here, and she wasn't ready for that yet" | | 1 | "He stopped, jaw tightening" |
| |
| 89.39% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 9 | | fancyCount | 2 | | fancyTags | | 0 | "Rory whispered (whisper)" | | 1 | "he admitted (admit)" |
| | dialogueSentences | 33 | | tagDensity | 0.273 | | leniency | 0.545 | | rawRatio | 0.222 | | effectiveRatio | 0.121 | |