| 0.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 15 | | adverbTagCount | 5 | | adverbTags | | 0 | "Eva's expression softened just [just]" | | 1 | "Eva said finally [finally]" | | 2 | "she said quietly [quietly]" | | 3 | "Eva said simply [simply]" | | 4 | "she said finally [finally]" |
| | dialogueSentences | 49 | | tagDensity | 0.306 | | leniency | 0.612 | | rawRatio | 0.333 | | effectiveRatio | 0.204 | |
| 72.02% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1251 | | totalAiIsmAdverbs | 7 | | found | | | highlights | | 0 | "carefully" | | 1 | "slightly" | | 2 | "really" | | 3 | "perfectly" |
| |
| 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) | |
| 56.04% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1251 | | totalAiIsms | 11 | | found | | 0 | | | 1 | | | 2 | | word | "practiced ease" | | count | 1 |
| | 3 | | | 4 | | | 5 | | | 6 | | | 7 | |
| | highlights | | 0 | "familiar" | | 1 | "weight" | | 2 | "practiced ease" | | 3 | "lilt" | | 4 | "silence" | | 5 | "flicked" | | 6 | "tracing" | | 7 | "flicker" |
| |
| 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 | 1 | | narrationSentences | 63 | | matches | | |
| 97.51% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 2 | | narrationSentences | 63 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 96 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 49 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1242 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 17 | | unquotedAttributions | 0 | | matches | (empty) | |
| 16.67% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 53 | | wordCount | 934 | | uniqueNames | 10 | | maxNameDensity | 2.25 | | worstName | "Aurora" | | maxWindowNameDensity | 4.5 | | worstWindowName | "Eva" | | discoveredNames | | Aurora | 21 | | Silas | 2 | | Eastern | 1 | | Europe | 1 | | Chinese | 1 | | Welsh | 3 | | Irish | 2 | | Cardiff | 3 | | London | 1 | | Eva | 18 |
| | persons | | | places | | 0 | "Eastern" | | 1 | "Europe" | | 2 | "Welsh" | | 3 | "Cardiff" | | 4 | "London" |
| | globalScore | 0.376 | | windowScore | 0.167 | |
| 98.98% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 49 | | glossingSentenceCount | 1 | | matches | | 0 | "something like recognition dawning" |
| |
| 38.97% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 2 | | per1kWords | 1.61 | | wordCount | 1242 | | matches | | 0 | "not just because of the expensive coat or the confident smile, but because of the way she held herself, the way she commanded a" | | 1 | "not apologies or explanations, but simply the chance to sit across from each other" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 96 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 53 | | mean | 23.43 | | std | 23.88 | | cv | 1.019 | | sampleLengths | | 0 | 102 | | 1 | 23 | | 2 | 1 | | 3 | 70 | | 4 | 13 | | 5 | 42 | | 6 | 28 | | 7 | 11 | | 8 | 22 | | 9 | 3 | | 10 | 29 | | 11 | 12 | | 12 | 12 | | 13 | 5 | | 14 | 70 | | 15 | 6 | | 16 | 3 | | 17 | 1 | | 18 | 59 | | 19 | 10 | | 20 | 16 | | 21 | 26 | | 22 | 41 | | 23 | 6 | | 24 | 5 | | 25 | 46 | | 26 | 11 | | 27 | 13 | | 28 | 13 | | 29 | 8 | | 30 | 30 | | 31 | 5 | | 32 | 19 | | 33 | 2 | | 34 | 77 | | 35 | 12 | | 36 | 2 | | 37 | 49 | | 38 | 25 | | 39 | 39 | | 40 | 2 | | 41 | 11 | | 42 | 61 | | 43 | 6 | | 44 | 2 | | 45 | 2 | | 46 | 26 | | 47 | 72 | | 48 | 7 | | 49 | 2 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 0 | | totalSentences | 63 | | matches | (empty) | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 1 | | totalVerbs | 170 | | matches | | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 9 | | semicolonCount | 0 | | flaggedSentences | 7 | | totalSentences | 96 | | ratio | 0.073 | | matches | | 0 | "The familiar weight of her messenger bag beside her chair grounded her—this was her life now, perched above a bar that doubled as an intelligence hub, delivering Chinese food by day and pretending she wasn't the daughter of a Welsh teacher and Irish barrister." | | 1 | "But it was the eyes that undid her—those same hazel-green eyes that had once crinkled with mischief when they'd skipped school together in Cardiff, sharing cigarettes behind the old cathedral." | | 2 | "The woman's smile faltered for just a fraction of a second—just enough for Aurora to see the calculation behind it, the practiced ease of someone who'd learned to read rooms and adapt." | | 3 | "Aurora studied her friend's face—the subtle changes that time had carved, the way her posture had shifted to something more assured, more guarded." | | 4 | "The woman across the table was someone she barely recognized—not just because of the expensive coat or the confident smile, but because of the way she held herself, the way she commanded attention without trying." | | 5 | "About the girl she'd been—naive, trusting, desperate to be seen as more than just the daughter of a Welsh teacher and Irish barrister—and the woman she'd become—cautious, guarded, building walls around her heart like fortresses." | | 6 | "Maybe that was what they both needed—not apologies or explanations, but simply the chance to sit across from each other and remember who they'd been, and maybe, just maybe, begin to understand who they were becoming." |
| |
| 81.78% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 945 | | adjectiveStacks | 1 | | stackExamples | | | adverbCount | 51 | | adverbRatio | 0.05396825396825397 | | lyAdverbCount | 16 | | lyAdverbRatio | 0.016931216931216932 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 96 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 96 | | mean | 12.94 | | std | 10.66 | | cv | 0.824 | | sampleLengths | | 0 | 26 | | 1 | 32 | | 2 | 44 | | 3 | 19 | | 4 | 4 | | 5 | 1 | | 6 | 17 | | 7 | 23 | | 8 | 30 | | 9 | 13 | | 10 | 32 | | 11 | 10 | | 12 | 24 | | 13 | 4 | | 14 | 6 | | 15 | 5 | | 16 | 12 | | 17 | 4 | | 18 | 6 | | 19 | 3 | | 20 | 24 | | 21 | 5 | | 22 | 7 | | 23 | 5 | | 24 | 7 | | 25 | 5 | | 26 | 5 | | 27 | 18 | | 28 | 23 | | 29 | 19 | | 30 | 10 | | 31 | 6 | | 32 | 3 | | 33 | 1 | | 34 | 12 | | 35 | 17 | | 36 | 10 | | 37 | 20 | | 38 | 10 | | 39 | 4 | | 40 | 12 | | 41 | 8 | | 42 | 15 | | 43 | 3 | | 44 | 23 | | 45 | 18 | | 46 | 6 | | 47 | 5 | | 48 | 13 | | 49 | 33 |
| |
| 70.49% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 4 | | diversityRatio | 0.4479166666666667 | | totalSentences | 96 | | uniqueOpeners | 43 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 4 | | totalSentences | 61 | | matches | | 0 | "Instead, her breath caught." | | 1 | "Then the smile snapped back" | | 2 | "Maybe that was what they" | | 3 | "Somewhere in the distance, a" |
| | ratio | 0.066 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 10 | | totalSentences | 61 | | matches | | 0 | "She'd been sitting there for" | | 1 | "She'd always been bold." | | 2 | "They sat in silence for" | | 3 | "Her mother's worried calls that" | | 4 | "she said quietly" | | 5 | "She'd always known Eva was" | | 6 | "They both smiled then, the" | | 7 | "She'd wanted to reach out" | | 8 | "she said finally" | | 9 | "They sat like that for" |
| | ratio | 0.164 | |
| 66.56% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 48 | | totalSentences | 61 | | matches | | 0 | "The amber glow from the" | | 1 | "She'd been sitting there for" | | 2 | "The familiar weight of her" | | 3 | "The bell above the door" | | 4 | "The woman approaching moved with" | | 5 | "Aurora's voice came out rough," | | 6 | "The woman's smile faltered for" | | 7 | "Eva's voice carried that same" | | 8 | "Aurora's fingers tightened around her" | | 9 | "Eva slid into the chair" | | 10 | "She'd always been bold." | | 11 | "Eva laughed, but it sounded" | | 12 | "Aurora felt heat rise in" | | 13 | "Eva's expression softened, just slightly" | | 14 | "They sat in silence for" | | 15 | "Aurora studied her friend's face—the" | | 16 | "Eva had always been the" | | 17 | "Aurora had been content to" | | 18 | "Eva said finally" | | 19 | "The question hung in the" |
| | ratio | 0.787 | |
| 100.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 2 | | totalSentences | 61 | | matches | | 0 | "Before I could tell you" | | 1 | "Before I could explain why" |
| | ratio | 0.033 | |
| 43.65% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 36 | | technicalSentenceCount | 5 | | matches | | 0 | "The familiar weight of her messenger bag beside her chair grounded her—this was her life now, perched above a bar that doubled as an intelligence hub, deliverin…" | | 1 | "The woman approaching moved with a confidence that seemed too large for the narrow space between tables." | | 2 | "But it was the eyes that undid her—those same hazel-green eyes that had once crinkled with mischief when they'd skipped school together in Cardiff, sharing ciga…" | | 3 | "The woman's smile faltered for just a fraction of a second—just enough for Aurora to see the calculation behind it, the practiced ease of someone who'd learned …" | | 4 | "Aurora studied her friend's face—the subtle changes that time had carved, the way her posture had shifted to something more assured, more guarded." |
| |
| 91.67% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 15 | | uselessAdditionCount | 1 | | matches | | 0 | "Eva slid, not waiting for invitation" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 7 | | fancyCount | 2 | | fancyTags | | 0 | "Eva laughed (laugh)" | | 1 | "Aurora admitted (admit)" |
| | dialogueSentences | 49 | | tagDensity | 0.143 | | leniency | 0.286 | | rawRatio | 0.286 | | effectiveRatio | 0.082 | |