| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 15 | | adverbTagCount | 1 | | adverbTags | | 0 | "Eva's voice cracked just [just]" |
| | dialogueSentences | 42 | | tagDensity | 0.357 | | leniency | 0.714 | | rawRatio | 0.067 | | effectiveRatio | 0.048 | |
| 90.32% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 2067 | | totalAiIsmAdverbs | 4 | | found | | | highlights | | 0 | "quickly" | | 1 | "really" | | 2 | "slowly" | | 3 | "slightly" |
| |
| 80.00% | AI-ism character names | Target: 0 AI-default names (16 tracked, −20% each) | |
| 100.00% | AI-ism location names | Target: 0 AI-default location names (33 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 68.55% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 2067 | | totalAiIsms | 13 | | found | | | highlights | | 0 | "weight" | | 1 | "silence" | | 2 | "unspoken" | | 3 | "traced" | | 4 | "stomach" | | 5 | "pulse" | | 6 | "measured" | | 7 | "tension" |
| |
| 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 | 97 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 1 | | narrationSentences | 97 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 124 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 88 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 2084 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 19 | | unquotedAttributions | 0 | | matches | (empty) | |
| 33.33% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 72 | | wordCount | 1589 | | uniqueNames | 17 | | maxNameDensity | 1.51 | | worstName | "Eva" | | maxWindowNameDensity | 4 | | worstWindowName | "Eva" | | discoveredNames | | Tuesday | 2 | | Thursday | 2 | | London | 2 | | Carter | 1 | | Raven | 1 | | Nest | 1 | | Silas | 10 | | Rory | 19 | | Prague | 1 | | Marrakech | 1 | | Cardiff | 1 | | University | 1 | | Taff | 1 | | Eva | 24 | | Morley | 1 | | Evan | 2 | | Soho | 2 |
| | persons | | 0 | "Carter" | | 1 | "Raven" | | 2 | "Silas" | | 3 | "Rory" | | 4 | "Eva" | | 5 | "Morley" | | 6 | "Evan" |
| | places | | 0 | "London" | | 1 | "Prague" | | 2 | "Marrakech" | | 3 | "Cardiff" | | 4 | "Soho" |
| | globalScore | 0.745 | | windowScore | 0.333 | |
| 0.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 67 | | glossingSentenceCount | 5 | | matches | | 0 | "sounded like it was trying to remember a m" | | 1 | "seemed wrong on Eva, whose natural state had always been motion" | | 2 | "quite believe were real" | | 3 | "not quite relief, but something adjacent, a loosening of a tension she'd been carrying for so long it had calcified" | | 4 | "something like surprise, something like the" | | 5 | "something like the beginning of being found" |
| |
| 56.05% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 3 | | per1kWords | 1.44 | | wordCount | 2084 | | matches | | 0 | "not in the way of someone who'd been careful about it, but in the way" | | 1 | "not quite relief, but something adjacent, a loosening of a tension she'd been carr" | | 2 | "not in her face or her posture but in the way her eyes lit with something" |
| |
| 86.02% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 3 | | totalSentences | 124 | | matches | | 0 | "knew that gesture" | | 1 | "had that instinct" | | 2 | "recognised that tone" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 51 | | mean | 40.86 | | std | 30.6 | | cv | 0.749 | | sampleLengths | | 0 | 96 | | 1 | 21 | | 2 | 71 | | 3 | 71 | | 4 | 77 | | 5 | 21 | | 6 | 7 | | 7 | 64 | | 8 | 62 | | 9 | 111 | | 10 | 33 | | 11 | 21 | | 12 | 1 | | 13 | 45 | | 14 | 7 | | 15 | 2 | | 16 | 43 | | 17 | 65 | | 18 | 5 | | 19 | 18 | | 20 | 32 | | 21 | 57 | | 22 | 33 | | 23 | 25 | | 24 | 40 | | 25 | 3 | | 26 | 32 | | 27 | 58 | | 28 | 89 | | 29 | 69 | | 30 | 1 | | 31 | 58 | | 32 | 98 | | 33 | 39 | | 34 | 41 | | 35 | 72 | | 36 | 50 | | 37 | 2 | | 38 | 54 | | 39 | 2 | | 40 | 6 | | 41 | 86 | | 42 | 24 | | 43 | 48 | | 44 | 13 | | 45 | 1 | | 46 | 1 | | 47 | 79 | | 48 | 45 | | 49 | 79 |
| |
| 83.56% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 6 | | totalSentences | 97 | | matches | | 0 | "were annoyed" | | 1 | "being invited" | | 2 | "were bitten" | | 3 | "was hidden" | | 4 | "been rearranged" | | 5 | "being found" |
| |
| 70.30% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 5 | | totalVerbs | 257 | | matches | | 0 | "was polishing" | | 1 | "wasn't reading" | | 2 | "was trying" | | 3 | "was daring" | | 4 | "was confirming" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 13 | | semicolonCount | 0 | | flaggedSentences | 11 | | totalSentences | 124 | | ratio | 0.089 | | matches | | 0 | "His hazel eyes moved over Rory's face in that quick, cataloguing way he had — a habit she suspected came from years of reading rooms and exits and the weight of a person's silences." | | 1 | "She knew most of them by now — Silas in Prague with a woman whose name he wouldn't say, a street market in Marrakech, a coastline she'd never identified." | | 2 | "She'd seen it a thousand times — in the cafeteria at Cardiff University, outside the lecture halls, on the bench by the Taff where they used to sit and plan lives they hadn't lived yet." | | 3 | "She was thinner — not in the way of someone who'd been careful about it, but in the way that suggested meals skipped out of indifference rather than intention." | | 4 | "And something passed across her face — a tremor, quick, quickly buried." | | 5 | "Eva's mouth twitched — not a smile, something closer to an acknowledgement." | | 6 | "She gave him a slight nod — the kind of shorthand that had developed between them over months of shared evenings and unspoken understandings — and he poured Eva a gin without asking what she wanted." | | 7 | "The gin was good — Silas didn't stock anything else." | | 8 | "Eva nodded slowly, and something shifted in her face — not quite relief, but something adjacent, a loosening of a tension she'd been carrying for so long it had calcified." | | 9 | "Rory looked at her old friend — at the rust-coloured hair and the bitten nails and the coat that didn't fit and the eyes that were the same green but rearranged — and she felt the weight of all the years between them, the phone calls unanswered, the emails swallowed by silence." | | 10 | "And for a moment, just a moment, the old Eva was there — not in her face or her posture but in the way her eyes lit with something that hadn't been there before, something like surprise, something like the beginning of being found." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1582 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 54 | | adverbRatio | 0.03413400758533502 | | lyAdverbCount | 13 | | lyAdverbRatio | 0.008217446270543615 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 124 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 124 | | mean | 16.81 | | std | 15.1 | | cv | 0.898 | | sampleLengths | | 0 | 7 | | 1 | 44 | | 2 | 45 | | 3 | 10 | | 4 | 11 | | 5 | 19 | | 6 | 34 | | 7 | 18 | | 8 | 28 | | 9 | 29 | | 10 | 14 | | 11 | 7 | | 12 | 16 | | 13 | 11 | | 14 | 43 | | 15 | 3 | | 16 | 2 | | 17 | 1 | | 18 | 15 | | 19 | 7 | | 20 | 4 | | 21 | 25 | | 22 | 35 | | 23 | 13 | | 24 | 6 | | 25 | 26 | | 26 | 17 | | 27 | 23 | | 28 | 29 | | 29 | 33 | | 30 | 26 | | 31 | 18 | | 32 | 3 | | 33 | 12 | | 34 | 5 | | 35 | 3 | | 36 | 13 | | 37 | 1 | | 38 | 20 | | 39 | 25 | | 40 | 7 | | 41 | 2 | | 42 | 12 | | 43 | 25 | | 44 | 6 | | 45 | 11 | | 46 | 36 | | 47 | 4 | | 48 | 14 | | 49 | 5 |
| |
| 42.74% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 17 | | diversityRatio | 0.3387096774193548 | | totalSentences | 124 | | uniqueOpeners | 42 | |
| 76.63% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 2 | | totalSentences | 87 | | matches | | 0 | "Then Eva walked over, and" | | 1 | "Maybe it came from the" |
| | ratio | 0.023 | |
| 95.86% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 27 | | totalSentences | 87 | | matches | | 0 | "His hazel eyes moved over" | | 1 | "She did, and when she" | | 2 | "She knew most of them" | | 3 | "She ordered her usual and" | | 4 | "She knew that gesture." | | 5 | "She'd seen it a thousand" | | 6 | "She'd worn her red hair" | | 7 | "She was thinner — not" | | 8 | "She wore a grey coat" | | 9 | "They stood like that for" | | 10 | "She sat down on the" | | 11 | "She gave him a slight" | | 12 | "He had that instinct." | | 13 | "She took a drink instead." | | 14 | "Her nails were bitten to" | | 15 | "She said it without self-pity," | | 16 | "She'd used it herself, in" | | 17 | "Her eyes were the same" | | 18 | "She thought about the flat" | | 19 | "She thought about the delivery" |
| | ratio | 0.31 | |
| 40.46% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 73 | | totalSentences | 87 | | matches | | 0 | "The rain hadn't let up" | | 1 | "Aurora Carter pushed through the" | | 2 | "Silas looked up from the" | | 3 | "His hazel eyes moved over" | | 4 | "She did, and when she" | | 5 | "She knew most of them" | | 6 | "She ordered her usual and" | | 7 | "The bar was quiet for" | | 8 | "A couple near the window," | | 9 | "A man in the corner" | | 10 | "The rain made its own" | | 11 | "The door opened." | | 12 | "A woman stepping inside, shaking" | | 13 | "Rory's hand stopped halfway to" | | 14 | "She knew that gesture." | | 15 | "The particular way of shaking" | | 16 | "She'd seen it a thousand" | | 17 | "That Eva had been bright-edged" | | 18 | "She'd worn her red hair" | | 19 | "This woman had let the" |
| | ratio | 0.839 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 87 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 50 | | technicalSentenceCount | 14 | | matches | | 0 | "By Thursday evening it had settled into that particular London persistence that felt less like weather and more like a condition of existence, the kind that soa…" | | 1 | "A woman stepping inside, shaking water from her sleeves, blinking against the dim interior light." | | 2 | "That Eva had been bright-edged and kinetic, all sharp laughter and opinions delivered like verdicts, the kind of person who entered a room already in motion." | | 3 | "She was thinner — not in the way of someone who'd been careful about it, but in the way that suggested meals skipped out of indifference rather than intention." | | 4 | "There were shadows under her eyes that had settled in so deeply they looked less like fatigue and more like a permanent feature, like the lines old maps used to…" | | 5 | "She wore a grey coat that didn't fit and carried herself with a stillness that seemed wrong on Eva, whose natural state had always been motion." | | 6 | "She sat down on the stool beside Rory without being invited, in the way that people who've known each other long enough sometimes still carry." | | 7 | "She gave him a slight nod — the kind of shorthand that had developed between them over months of shared evenings and unspoken understandings — and he poured Eva…" | | 8 | "The crescent scar on her left wrist was hidden under her sleeve, but she felt it pulse with the memory of how she'd gotten it, a childhood accident that had not…" | | 9 | "She said it without self-pity, in the flat, measured tone of someone who'd had to practice saying it, probably to herself, probably in the dark." | | 10 | "She'd used it herself, in the months after Evan, when she'd narrated her own damage to a counsellor in Soho on Tuesday mornings, recounting events that had happ…" | | 11 | "Rory looked at her old friend — at the rust-coloured hair and the bitten nails and the coat that didn't fit and the eyes that were the same green but rearranged…" | | 12 | "She felt her own guilt for not looking harder, for building a life in London that had filled in the space Eva used to occupy, for the way she'd let the absence …" | | 13 | "And for a moment, just a moment, the old Eva was there — not in her face or her posture but in the way her eyes lit with something that hadn't been there before…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 15 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 8 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 42 | | tagDensity | 0.19 | | leniency | 0.381 | | rawRatio | 0 | | effectiveRatio | 0 | |