| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 12 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 29 | | tagDensity | 0.414 | | leniency | 0.828 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 76.42% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1060 | | totalAiIsmAdverbs | 5 | | found | | | highlights | | 0 | "really" | | 1 | "precisely" | | 2 | "slowly" | | 3 | "carefully" | | 4 | "quickly" |
| |
| 100.00% | AI-ism character names | Target: 0 AI-default names (16 tracked, −20% each) | | codexExemptions | | | found | (empty) | |
| 100.00% | AI-ism location names | Target: 0 AI-default location names (33 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 76.42% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1060 | | totalAiIsms | 5 | | found | | | highlights | | 0 | "silence" | | 1 | "weight" | | 2 | "flickered" | | 3 | "flicker" |
| |
| 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 | 1 | | narrationSentences | 36 | | matches | | 0 | "the flicker of surprise" |
| |
| 63.49% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 1 | | narrationSentences | 36 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 52 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 56 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 2 | | markdownWords | 7 | | totalWords | 1050 | | ratio | 0.007 | | matches | | 0 | "country" | | 1 | "that's nothing to be ashamed of" |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 13 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 18 | | wordCount | 813 | | uniqueNames | 14 | | maxNameDensity | 0.37 | | worstName | "Tom" | | maxWindowNameDensity | 1 | | worstWindowName | "Rory" | | discoveredNames | | Rory | 2 | | Chinatown | 1 | | Raven | 1 | | Nest | 1 | | Silas | 2 | | Carter | 1 | | Aurora | 1 | | Thames | 1 | | Tom | 3 | | Whitfield | 1 | | Canton | 1 | | Malphora | 1 | | Professor | 1 | | Alcott | 1 |
| | persons | | 0 | "Rory" | | 1 | "Raven" | | 2 | "Nest" | | 3 | "Silas" | | 4 | "Carter" | | 5 | "Aurora" | | 6 | "Tom" | | 7 | "Whitfield" | | 8 | "Alcott" |
| | places | | 0 | "Chinatown" | | 1 | "Thames" | | 2 | "Canton" |
| | globalScore | 1 | | windowScore | 1 | |
| 66.67% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 30 | | glossingSentenceCount | 1 | | matches | | 0 | "r for a while, apparently, waiting for someon" |
| |
| 9.52% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 2 | | per1kWords | 1.905 | | wordCount | 1050 | | matches | | 0 | "not Rory, not Carter, but the full weight of it, Aurora, said the way it used to be sa" | | 1 | "not Carter, but the full weight of it, Aurora, said the way it used to be sa" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 52 | | matches | | 0 | "understood that whatever" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 29 | | mean | 36.21 | | std | 31.67 | | cv | 0.875 | | sampleLengths | | 0 | 51 | | 1 | 100 | | 2 | 47 | | 3 | 2 | | 4 | 78 | | 5 | 1 | | 6 | 46 | | 7 | 44 | | 8 | 43 | | 9 | 28 | | 10 | 54 | | 11 | 26 | | 12 | 5 | | 13 | 2 | | 14 | 29 | | 15 | 15 | | 16 | 5 | | 17 | 2 | | 18 | 53 | | 19 | 33 | | 20 | 47 | | 21 | 6 | | 22 | 62 | | 23 | 52 | | 24 | 12 | | 25 | 8 | | 26 | 142 | | 27 | 21 | | 28 | 36 |
| |
| 95.52% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 36 | | matches | | |
| 25.71% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 4 | | totalVerbs | 153 | | matches | | 0 | "was polishing" | | 1 | "was sitting" | | 2 | "was willing" | | 3 | "was looking" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 7 | | semicolonCount | 0 | | flaggedSentences | 6 | | totalSentences | 52 | | ratio | 0.115 | | matches | | 0 | "It smelled the way it always did—whisky and beeswax, old paper going soft at the edges." | | 1 | "She was three steps toward the stairs to her flat when she heard her name—not Rory, not Carter, but the full weight of it, Aurora, said the way it used to be said, with the stress falling wrong, like a foreign coin spent in the wrong currency." | | 2 | "He ordered for both of them without thinking, the way old friends do, and got it wrong—she didn't drink gin anymore, hadn't in years, not since a night in a flat in Canton that she didn't like to remember—but she let it sit in front of her anyway, sweating a ring onto the table." | | 3 | "The name landed between them like a dropped glass, and she watched Tom immediately regret it, watched him replay whatever he'd heard secondhand—the version that had reached him through some chain of mutual friends, sanded down and rearranged until it was a story about a bad breakup instead of what it actually was." | | 4 | "\"I deliver food.\" She watched his face carefully, cataloguing the small, involuntary things it did—the flicker of surprise, quickly smoothed over, the reflexive kindness of *that's nothing to be ashamed of* forming and dying behind his eyes before he could say it aloud." | | 5 | "She could have told him about the back room behind the bookshelf upstairs, about Silas and the things she'd learned to do with information, with silence, with the particular skill of becoming someone else entirely when a situation called for it—Malphora, when the job required a name with no history attached to it." |
| |
| 97.74% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 822 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 35 | | adverbRatio | 0.04257907542579075 | | lyAdverbCount | 14 | | lyAdverbRatio | 0.0170316301703163 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 52 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 52 | | mean | 20.19 | | std | 16.42 | | cv | 0.813 | | sampleLengths | | 0 | 22 | | 1 | 29 | | 2 | 16 | | 3 | 33 | | 4 | 38 | | 5 | 9 | | 6 | 4 | | 7 | 47 | | 8 | 2 | | 9 | 40 | | 10 | 38 | | 11 | 1 | | 12 | 24 | | 13 | 3 | | 14 | 3 | | 15 | 16 | | 16 | 26 | | 17 | 12 | | 18 | 6 | | 19 | 30 | | 20 | 13 | | 21 | 3 | | 22 | 25 | | 23 | 54 | | 24 | 10 | | 25 | 16 | | 26 | 5 | | 27 | 2 | | 28 | 29 | | 29 | 15 | | 30 | 5 | | 31 | 2 | | 32 | 53 | | 33 | 33 | | 34 | 12 | | 35 | 35 | | 36 | 6 | | 37 | 14 | | 38 | 48 | | 39 | 43 | | 40 | 9 | | 41 | 8 | | 42 | 4 | | 43 | 3 | | 44 | 5 | | 45 | 6 | | 46 | 53 | | 47 | 30 | | 48 | 53 | | 49 | 14 |
| |
| 73.08% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 7 | | diversityRatio | 0.5192307692307693 | | totalSentences | 52 | | uniqueOpeners | 27 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 33 | | matches | | 0 | "Then he smiled, and it" |
| | ratio | 0.03 | |
| 0.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 24 | | totalSentences | 33 | | matches | | 0 | "She ducked beneath the green" | | 1 | "It smelled the way it" | | 2 | "She lifted a hand to" | | 3 | "He nodded back, and that" | | 4 | "It was usually enough." | | 5 | "She was three steps toward" | | 6 | "He was sitting in the" | | 7 | "He stood, and she saw" | | 8 | "She let him hug her," | | 9 | "He smelled of cologne that" | | 10 | "He laughed, but there was" | | 11 | "She hadn't meant to say" | | 12 | "He ordered for both of" | | 13 | "She smiled instead of answering," | | 14 | "he asked, retreating to safer" | | 15 | "she said, and left it" | | 16 | "He nodded slowly, as if" | | 17 | "He turned his glass in" | | 18 | "She watched his face carefully," | | 19 | "She could have told him" |
| | ratio | 0.727 | |
| 0.00% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 31 | | totalSentences | 33 | | matches | | 0 | "The rain had followed Rory" | | 1 | "She ducked beneath the green" | | 2 | "It smelled the way it" | | 3 | "The maps on the walls" | | 4 | "She lifted a hand to" | | 5 | "He nodded back, and that" | | 6 | "It was usually enough." | | 7 | "She was three steps toward" | | 8 | "He was sitting in the" | | 9 | "He stood, and she saw" | | 10 | "A good coat." | | 11 | "A wedding ring." | | 12 | "She let him hug her," | | 13 | "He smelled of cologne that" | | 14 | "He laughed, but there was" | | 15 | "She hadn't meant to say" | | 16 | "He ordered for both of" | | 17 | "Tom stopped, seemed to reconsider" | | 18 | "She smiled instead of answering," | | 19 | "he asked, retreating to safer" |
| | ratio | 0.939 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 33 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 17 | | technicalSentenceCount | 5 | | matches | | 0 | "The maps on the walls had absorbed decades of cigarette smoke that no longer existed, and the black-and-white photographs watched her from their frames like a j…" | | 1 | "She lifted a hand to Silas, who was polishing a glass behind the bar with the patient, unhurried motion of a man who had learned long ago that most problems sol…" | | 2 | "The name landed between them like a dropped glass, and she watched Tom immediately regret it, watched him replay whatever he'd heard secondhand—the version that…" | | 3 | "She could have told him that the girl who tore apart Professor Alcott's argument hadn't disappeared so much as she'd been repurposed, sharpened into something w…" | | 4 | "But he was looking at her the way you look at a photograph of someone you used to know, trying to find the original face beneath the one in front of you, and sh…" |
| |
| 83.33% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 12 | | uselessAdditionCount | 1 | | matches | | 0 | "Tom stopped, seemed to reconsider the sentence entirely" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 6 | | fancyCount | 1 | | fancyTags | | | dialogueSentences | 29 | | tagDensity | 0.207 | | leniency | 0.414 | | rawRatio | 0.167 | | effectiveRatio | 0.069 | |