| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 7 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 44 | | tagDensity | 0.159 | | leniency | 0.318 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 83.63% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1222 | | totalAiIsmAdverbs | 4 | | found | | 0 | | | 1 | | adverb | "passionately" | | count | 1 |
| | 2 | |
| | highlights | | 0 | "slowly" | | 1 | "passionately" | | 2 | "slightly" |
| |
| 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) | |
| 54.99% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1222 | | totalAiIsms | 11 | | found | | | highlights | | 0 | "methodical" | | 1 | "flicked" | | 2 | "stark" | | 3 | "chilled" | | 4 | "scanning" | | 5 | "potential" | | 6 | "traced" | | 7 | "throb" | | 8 | "silence" | | 9 | "stomach" | | 10 | "warmth" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 1 | | maxInWindow | 1 | | found | | 0 | | label | "stomach dropped/sank" | | count | 1 |
|
| | highlights | | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 43 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 0 | | narrationSentences | 43 | | filterMatches | (empty) | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 82 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 40 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1222 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 11 | | unquotedAttributions | 0 | | matches | (empty) | |
| 63.17% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 46 | | wordCount | 691 | | uniqueNames | 18 | | maxNameDensity | 1.74 | | worstName | "Callum" | | maxWindowNameDensity | 2.5 | | worstWindowName | "Callum" | | discoveredNames | | Golden | 1 | | Empress | 1 | | Cardiff | 1 | | Callum | 12 | | Price | 1 | | Italian | 1 | | Silas | 7 | | Blackwood | 1 | | Rory | 9 | | Raven | 2 | | Nest | 3 | | Soho | 1 | | Tuesday | 1 | | Slowly | 1 | | Underground | 1 | | Canary | 1 | | Wharf | 1 | | London | 1 |
| | persons | | 0 | "Callum" | | 1 | "Price" | | 2 | "Silas" | | 3 | "Blackwood" | | 4 | "Rory" | | 5 | "Raven" | | 6 | "Nest" | | 7 | "Underground" |
| | places | | 0 | "Golden" | | 1 | "Cardiff" | | 2 | "Soho" | | 3 | "Slowly" | | 4 | "London" |
| | globalScore | 0.632 | | windowScore | 0.833 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 38 | | glossingSentenceCount | 0 | | matches | (empty) | |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1222 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 82 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 59 | | mean | 20.71 | | std | 20.85 | | cv | 1.007 | | sampleLengths | | 0 | 8 | | 1 | 33 | | 2 | 1 | | 3 | 4 | | 4 | 100 | | 5 | 2 | | 6 | 2 | | 7 | 10 | | 8 | 12 | | 9 | 55 | | 10 | 63 | | 11 | 36 | | 12 | 4 | | 13 | 9 | | 14 | 32 | | 15 | 6 | | 16 | 59 | | 17 | 8 | | 18 | 3 | | 19 | 5 | | 20 | 20 | | 21 | 12 | | 22 | 17 | | 23 | 31 | | 24 | 12 | | 25 | 2 | | 26 | 22 | | 27 | 10 | | 28 | 11 | | 29 | 7 | | 30 | 12 | | 31 | 21 | | 32 | 14 | | 33 | 19 | | 34 | 39 | | 35 | 95 | | 36 | 9 | | 37 | 15 | | 38 | 6 | | 39 | 31 | | 40 | 26 | | 41 | 5 | | 42 | 5 | | 43 | 37 | | 44 | 9 | | 45 | 7 | | 46 | 38 | | 47 | 1 | | 48 | 33 | | 49 | 3 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 0 | | totalSentences | 43 | | matches | (empty) | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 108 | | matches | (empty) | |
| 100.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 0 | | semicolonCount | 0 | | flaggedSentences | 0 | | totalSentences | 82 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 500 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 6 | | adverbRatio | 0.012 | | lyAdverbCount | 4 | | lyAdverbRatio | 0.008 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 82 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 82 | | mean | 14.9 | | std | 10.08 | | cv | 0.677 | | sampleLengths | | 0 | 8 | | 1 | 19 | | 2 | 14 | | 3 | 1 | | 4 | 4 | | 5 | 32 | | 6 | 7 | | 7 | 26 | | 8 | 22 | | 9 | 13 | | 10 | 2 | | 11 | 2 | | 12 | 10 | | 13 | 12 | | 14 | 17 | | 15 | 14 | | 16 | 24 | | 17 | 6 | | 18 | 27 | | 19 | 30 | | 20 | 20 | | 21 | 16 | | 22 | 4 | | 23 | 9 | | 24 | 17 | | 25 | 15 | | 26 | 6 | | 27 | 17 | | 28 | 12 | | 29 | 30 | | 30 | 8 | | 31 | 3 | | 32 | 5 | | 33 | 20 | | 34 | 12 | | 35 | 17 | | 36 | 31 | | 37 | 12 | | 38 | 2 | | 39 | 22 | | 40 | 10 | | 41 | 11 | | 42 | 7 | | 43 | 12 | | 44 | 21 | | 45 | 14 | | 46 | 19 | | 47 | 39 | | 48 | 33 | | 49 | 3 |
| |
| 97.15% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 2 | | diversityRatio | 0.5975609756097561 | | totalSentences | 82 | | uniqueOpeners | 49 | |
| 79.37% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 42 | | matches | | 0 | "Slowly, Callum slid the card" |
| | ratio | 0.024 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 9 | | totalSentences | 42 | | matches | | 0 | "She set the helmet down" | | 1 | "His hazel eyes flicked from" | | 2 | "He took a slow sip" | | 3 | "He looked older than twenty-six." | | 4 | "he said, his voice dropping" | | 5 | "He set his tumbler down" | | 6 | "He trailed off, gesturing vaguely" | | 7 | "She set her glass down," | | 8 | "She glanced toward the green" |
| | ratio | 0.214 | |
| 67.14% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 33 | | totalSentences | 42 | | matches | | 0 | "Rory froze, her wet black" | | 1 | "A man sat on the" | | 2 | "She set the helmet down" | | 3 | "Callum spun slowly on the" | | 4 | "The man watching her now" | | 5 | "A heavy gold watch caught" | | 6 | "Callum winced, the polished mask" | | 7 | "His hazel eyes flicked from" | | 8 | "The Raven's Nest swallowed noise" | | 9 | "Rory crossed the room and" | | 10 | "Silas limped over, his left" | | 11 | "Callum said, pulling a sleek" | | 12 | "Callum met the older man's" | | 13 | "Silas poured the soda, dropped" | | 14 | "Rory wrapped her chilled fingers" | | 15 | "He took a slow sip" | | 16 | "Rory's thumb traced the raised" | | 17 | "Callum stared into his glass," | | 18 | "Silence stretched between them, punctuated" | | 19 | "Callum's jaw worked." |
| | ratio | 0.786 | |
| 100.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 42 | | matches | | 0 | "Before Rory could touch the" |
| | ratio | 0.024 | |
| 37.04% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 27 | | technicalSentenceCount | 4 | | matches | | 0 | "She set the helmet down on an empty table, shaking off the smell of fried garlic and soy sauce that clung to her waterproof jacket from her shift at the Golden …" | | 1 | "His hazel eyes flicked from Callum's immaculate tailoring to Rory's stiff shoulders, his silver signet ring clicking once against the rim of the glass." | | 2 | "The slick Canary Wharf veneer cracked, revealing the boy who used to share lukewarm chips with her on the steps of the museum, terrified of failing his parents,…" | | 3 | "She set her glass down, her spine straightening as the cool-headed instinct that kept her alive in London clicked into gear." |
| |
| 53.57% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 7 | | uselessAdditionCount | 1 | | matches | | 0 | "he said, his voice dropping an octave" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 4 | | fancyCount | 1 | | fancyTags | | | dialogueSentences | 44 | | tagDensity | 0.091 | | leniency | 0.182 | | rawRatio | 0.25 | | effectiveRatio | 0.045 | |