| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 20 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 54 | | tagDensity | 0.37 | | leniency | 0.741 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 90.32% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1549 | | totalAiIsmAdverbs | 3 | | found | | | highlights | | 0 | "really" | | 1 | "carefully" | | 2 | "slowly" |
| |
| 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) | |
| 70.95% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1549 | | totalAiIsms | 9 | | found | | | highlights | | 0 | "pulse" | | 1 | "silence" | | 2 | "calculate" | | 3 | "weight" | | 4 | "comfortable" | | 5 | "traced" |
| |
| 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 | 100 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 2 | | narrationSentences | 100 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 134 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 51 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1561 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 23 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 30 | | wordCount | 1282 | | uniqueNames | 17 | | maxNameDensity | 0.47 | | worstName | "Rory" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Rory" | | discoveredNames | | Raven | 1 | | Nest | 1 | | Carter | 1 | | Soho | 2 | | Ordnance | 1 | | Survey | 1 | | Rory | 6 | | Eva | 5 | | Cardiff | 2 | | Whitchurch | 1 | | Road | 1 | | Silas | 3 | | Cornwall | 1 | | Evan | 1 | | Cathays | 1 | | Prague | 1 | | Tuesday | 1 |
| | persons | | 0 | "Raven" | | 1 | "Nest" | | 2 | "Carter" | | 3 | "Survey" | | 4 | "Rory" | | 5 | "Eva" | | 6 | "Silas" | | 7 | "Evan" |
| | places | | 0 | "Soho" | | 1 | "Cardiff" | | 2 | "Whitchurch" | | 3 | "Road" | | 4 | "Cornwall" | | 5 | "Cathays" | | 6 | "Prague" |
| | globalScore | 1 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 62 | | glossingSentenceCount | 1 | | matches | | |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1561 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 134 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 63 | | mean | 24.78 | | std | 27.35 | | cv | 1.104 | | sampleLengths | | 0 | 70 | | 1 | 3 | | 2 | 72 | | 3 | 7 | | 4 | 94 | | 5 | 27 | | 6 | 3 | | 7 | 6 | | 8 | 57 | | 9 | 68 | | 10 | 4 | | 11 | 42 | | 12 | 12 | | 13 | 8 | | 14 | 81 | | 15 | 4 | | 16 | 15 | | 17 | 2 | | 18 | 53 | | 19 | 24 | | 20 | 30 | | 21 | 5 | | 22 | 9 | | 23 | 78 | | 24 | 10 | | 25 | 6 | | 26 | 4 | | 27 | 2 | | 28 | 23 | | 29 | 18 | | 30 | 3 | | 31 | 13 | | 32 | 10 | | 33 | 34 | | 34 | 8 | | 35 | 5 | | 36 | 12 | | 37 | 23 | | 38 | 3 | | 39 | 6 | | 40 | 28 | | 41 | 12 | | 42 | 1 | | 43 | 91 | | 44 | 17 | | 45 | 23 | | 46 | 5 | | 47 | 5 | | 48 | 1 | | 49 | 1 |
| |
| 91.23% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 4 | | totalSentences | 100 | | matches | | 0 | "were papered" | | 1 | "been nineteen" | | 2 | "been seven" | | 3 | "was made" | | 4 | "been made" |
| |
| 73.02% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 4 | | totalVerbs | 210 | | matches | | 0 | "was drying" | | 1 | "was favouring" | | 2 | "was resting" | | 3 | "was already turning" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 10 | | semicolonCount | 0 | | flaggedSentences | 9 | | totalSentences | 134 | | ratio | 0.067 | | matches | | 0 | "The place smelled of wood polish and something older - the ghost of pipe tobacco, or candle wax, or just time." | | 1 | "She hated the way her name sounded in his mouth - small, girlish, a thing from another country." | | 2 | "\"Old news.\" He came around the end of the bar, and she saw it - the slight hitch in his left leg, the way he favoured it without quite admitting he was favouring it." | | 3 | "He looked at her then, really looked, and she saw him calculate - the weight of her rucksack, the shadows under her eyes, the way her fingers wrapped around the glass like she might need to throw it." | | 4 | "Rory traced the small crescent scar on her left wrist with her thumb - white against the blue veins, a thing from a swing set in the park by her grandmother's house, the summer she'd been seven and thought she was made of something that couldn't be broken." | | 5 | "Rory laughed - a short, sharp sound, more breath than voice." | | 6 | "He moved to the other end of the bar then, to serve a customer who'd appeared from somewhere - a man in a damp coat who wanted a pint of mild and paid in cash and didn't look at either of them." | | 7 | "She wanted to ask what he saw when he looked at her - the girl from the chip shop with vinegar on her chin, or the woman standing in front of him now, with her bitten nails and her dead phone and the crescent scar she kept touching like a rosary." | | 8 | "She locked the door behind her - twice, three times, until the bolt slid home - and sat on the edge of the mattress in her coat." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 949 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 26 | | adverbRatio | 0.0273972602739726 | | lyAdverbCount | 5 | | lyAdverbRatio | 0.005268703898840885 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 134 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 134 | | mean | 11.65 | | std | 10.94 | | cv | 0.939 | | sampleLengths | | 0 | 16 | | 1 | 26 | | 2 | 16 | | 3 | 5 | | 4 | 4 | | 5 | 3 | | 6 | 3 | | 7 | 21 | | 8 | 21 | | 9 | 15 | | 10 | 12 | | 11 | 3 | | 12 | 7 | | 13 | 3 | | 14 | 5 | | 15 | 34 | | 16 | 16 | | 17 | 13 | | 18 | 3 | | 19 | 20 | | 20 | 27 | | 21 | 3 | | 22 | 5 | | 23 | 1 | | 24 | 18 | | 25 | 30 | | 26 | 9 | | 27 | 17 | | 28 | 51 | | 29 | 4 | | 30 | 34 | | 31 | 8 | | 32 | 12 | | 33 | 7 | | 34 | 1 | | 35 | 2 | | 36 | 9 | | 37 | 36 | | 38 | 4 | | 39 | 17 | | 40 | 13 | | 41 | 4 | | 42 | 2 | | 43 | 10 | | 44 | 3 | | 45 | 2 | | 46 | 38 | | 47 | 15 | | 48 | 6 | | 49 | 8 |
| |
| 49.00% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 16 | | diversityRatio | 0.3656716417910448 | | totalSentences | 134 | | uniqueOpeners | 49 | |
| 78.43% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 2 | | totalSentences | 85 | | matches | | 0 | "Of course he was older." | | 1 | "Just the name." |
| | ratio | 0.024 | |
| 31.76% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 40 | | totalSentences | 85 | | matches | | 0 | "You'll be safe." | | 1 | "She pushed inside." | | 2 | "He looked up." | | 3 | "He was older." | | 4 | "She had been nineteen the" | | 5 | "His beard was trimmed close" | | 6 | "He was taller than her" | | 7 | "He set the glass down." | | 8 | "She hated the way her" | | 9 | "She was twenty-five, her blue" | | 10 | "She had not been Rory" | | 11 | "he said, which was absurd," | | 12 | "He was the one who" | | 13 | "He came around the end" | | 14 | "He gestured to a stool" | | 15 | "She remembered the ring." | | 16 | "He looked at her then," | | 17 | "He leaned against the back" | | 18 | "She hadn't been made of" | | 19 | "She said it before she" |
| | ratio | 0.471 | |
| 54.12% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 69 | | totalSentences | 85 | | matches | | 0 | "The green neon sign above" | | 1 | "Aurora Carter stood beneath it" | | 2 | "Eva had written the address" | | 3 | "A friend of mine." | | 4 | "You'll be safe." | | 5 | "She pushed inside." | | 6 | "The place smelled of wood" | | 7 | "The walls were papered in" | | 8 | "He looked up." | | 9 | "He was older." | | 10 | "She had been nineteen the" | | 11 | "The auburn of his hair" | | 12 | "His beard was trimmed close" | | 13 | "Hazel eyes, though." | | 14 | "The hazel eyes she remembered," | | 15 | "He was taller than her" | | 16 | "He set the glass down." | | 17 | "She hated the way her" | | 18 | "She was twenty-five, her blue" | | 19 | "She had not been Rory" |
| | ratio | 0.812 | |
| 58.82% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 85 | | matches | | 0 | "As if he'd been waiting" |
| | ratio | 0.012 | |
| 94.16% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 44 | | technicalSentenceCount | 3 | | matches | | 0 | "Aurora Carter stood beneath it for a long moment, the strap of her rucksack cutting into her shoulder, watching the light pulse through the Soho drizzle." | | 1 | "Rory traced the small crescent scar on her left wrist with her thumb - white against the blue veins, a thing from a swing set in the park by her grandmother's h…" | | 2 | "He moved to the other end of the bar then, to serve a customer who'd appeared from somewhere - a man in a damp coat who wanted a pint of mild and paid in cash a…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 20 | | uselessAdditionCount | 1 | | matches | | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 15 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 54 | | tagDensity | 0.278 | | leniency | 0.556 | | rawRatio | 0 | | effectiveRatio | 0 | |