| 97.44% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 17 | | adverbTagCount | 2 | | adverbTags | | 0 | "he asked suddenly [suddenly]" | | 1 | "he said quietly [quietly]" |
| | dialogueSentences | 39 | | tagDensity | 0.436 | | leniency | 0.872 | | rawRatio | 0.118 | | effectiveRatio | 0.103 | |
| 95.26% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1054 | | totalAiIsmAdverbs | 1 | | found | | | highlights | | |
| 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) | |
| 57.31% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1054 | | totalAiIsms | 9 | | found | | | highlights | | 0 | "familiar" | | 1 | "glinting" | | 2 | "velvet" | | 3 | "eyebrow" | | 4 | "etched" | | 5 | "tracing" | | 6 | "silence" | | 7 | "weight" |
| |
| 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 | 64 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 0 | | narrationSentences | 64 | | filterMatches | (empty) | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 86 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 36 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 3 | | markdownWords | 11 | | totalWords | 1044 | | ratio | 0.011 | | matches | | 0 | "B.C." | | 1 | "Retired Intelligence Operative Hospitalized After “Unfortunate Incident.”" | | 2 | "Bullet. Ice. Betrayal." |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 18 | | unquotedAttributions | 0 | | matches | (empty) | |
| 59.79% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 36 | | wordCount | 776 | | uniqueNames | 16 | | maxNameDensity | 1.8 | | worstName | "Silas" | | maxWindowNameDensity | 3 | | worstWindowName | "Silas" | | discoveredNames | | Raven | 1 | | Nest | 1 | | Aurora | 6 | | Silas | 14 | | Blackwoods | 1 | | Welsh | 1 | | Brendan | 2 | | Carter | 2 | | Blackwood | 1 | | London | 1 | | Evan | 1 | | Intelligence | 1 | | Operative | 1 | | Hospitalized | 1 | | Soho | 1 | | Spymaster | 1 |
| | persons | | 0 | "Raven" | | 1 | "Nest" | | 2 | "Aurora" | | 3 | "Silas" | | 4 | "Brendan" | | 5 | "Carter" | | 6 | "Blackwood" | | 7 | "London" | | 8 | "Evan" | | 9 | "Spymaster" |
| | places | | | globalScore | 0.598 | | windowScore | 0.667 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 45 | | 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 | 1044 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 86 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 39 | | mean | 26.77 | | std | 24.1 | | cv | 0.9 | | sampleLengths | | 0 | 92 | | 1 | 88 | | 2 | 25 | | 3 | 21 | | 4 | 23 | | 5 | 92 | | 6 | 15 | | 7 | 44 | | 8 | 12 | | 9 | 28 | | 10 | 74 | | 11 | 21 | | 12 | 5 | | 13 | 3 | | 14 | 24 | | 15 | 13 | | 16 | 34 | | 17 | 11 | | 18 | 7 | | 19 | 13 | | 20 | 27 | | 21 | 47 | | 22 | 8 | | 23 | 26 | | 24 | 11 | | 25 | 13 | | 26 | 14 | | 27 | 20 | | 28 | 20 | | 29 | 5 | | 30 | 19 | | 31 | 42 | | 32 | 8 | | 33 | 14 | | 34 | 2 | | 35 | 28 | | 36 | 16 | | 37 | 12 | | 38 | 67 |
| |
| 99.78% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 64 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 132 | | matches | (empty) | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 12 | | semicolonCount | 1 | | flaggedSentences | 9 | | totalSentences | 86 | | ratio | 0.105 | | matches | | 0 | "The regulars were few—Silas’s usual crowd of late-shift types and whispered conversations—lounging in velvet booths or leaning against the mahogany counter." | | 1 | "Silas had always carried the air of someone who’d seen too much, and tonight his right hand tapped twice on the arm of his chair—a staccato rhythm that set her nerves on edge." | | 2 | "The bar between them was a map of initials carved by drunk hands, one of which—*B.C.*—made her fingers stiffen." | | 3 | "Silas had known him, of course; the Blackwoods were as old as the Welsh hills, and Brendan Carter had fought for mining rights that had made them both rich and enemies." | | 4 | "Aurora had read the headlines, brief and bloodless: *Retired Intelligence Operative Hospitalized After “Unfortunate Incident.”* Silas’s version was shorter still—three words: *Bullet." | | 5 | "She looked away, at the photographs tacked to the walls—black-and-white shots of Soho in another life, smoky and seedy." | | 6 | "She wondered if Silas had known him after that—drunk, brittle, the sort of man who carved his name into bar counters to feel something real." | | 7 | "Aurora looked at the photograph above Silas’s head—a blurred image of a younger man in a pinstripe suit, a smile that didn’t reach his eyes." | | 8 | "But here, in the amber light of the bar, there was only the clink of glass and the quiet truth that some wounds never healed—they only learned to live with the ache." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 787 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 30 | | adverbRatio | 0.03811944091486658 | | lyAdverbCount | 6 | | lyAdverbRatio | 0.007623888182973317 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 86 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 86 | | mean | 12.14 | | std | 8.21 | | cv | 0.677 | | sampleLengths | | 0 | 31 | | 1 | 16 | | 2 | 21 | | 3 | 24 | | 4 | 15 | | 5 | 25 | | 6 | 33 | | 7 | 15 | | 8 | 25 | | 9 | 9 | | 10 | 12 | | 11 | 10 | | 12 | 13 | | 13 | 11 | | 14 | 20 | | 15 | 19 | | 16 | 11 | | 17 | 31 | | 18 | 15 | | 19 | 16 | | 20 | 9 | | 21 | 19 | | 22 | 5 | | 23 | 7 | | 24 | 14 | | 25 | 14 | | 26 | 12 | | 27 | 26 | | 28 | 36 | | 29 | 10 | | 30 | 11 | | 31 | 3 | | 32 | 2 | | 33 | 3 | | 34 | 22 | | 35 | 1 | | 36 | 1 | | 37 | 7 | | 38 | 6 | | 39 | 19 | | 40 | 15 | | 41 | 3 | | 42 | 4 | | 43 | 4 | | 44 | 6 | | 45 | 1 | | 46 | 3 | | 47 | 10 | | 48 | 13 | | 49 | 14 |
| |
| 62.40% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 3 | | diversityRatio | 0.3953488372093023 | | totalSentences | 86 | | uniqueOpeners | 34 | |
| 58.48% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 57 | | matches | | 0 | "Somewhere behind the bookshelf, the" |
| | ratio | 0.018 | |
| 16.49% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 29 | | totalSentences | 57 | | matches | | 0 | "She shook rain from her" | | 1 | "She froze for a heartbeat," | | 2 | "It had been nearly a" | | 3 | "His knee jolted as he" | | 4 | "His voice cut through the" | | 5 | "She smiled, sliding onto a" | | 6 | "He raised an eyebrow, the" | | 7 | "She laughed, a sound brittle" | | 8 | "Her father’s name, etched years" | | 9 | "she said, tracing the rim" | | 10 | "His tone was light, but" | | 11 | "She tugged her sleeve down," | | 12 | "She shrugged, the movement automatic." | | 13 | "He tapped his glass against" | | 14 | "she said, watching his fingers" | | 15 | "He didn’t blink." | | 16 | "He sipped his whiskey, the" | | 17 | "She looked away, at the" | | 18 | "He knew, of course." | | 19 | "His voice was softer now," |
| | ratio | 0.509 | |
| 0.00% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 53 | | totalSentences | 57 | | matches | | 0 | "The green neon sign of" | | 1 | "She shook rain from her" | | 2 | "The regulars were few—Silas’s usual" | | 3 | "She froze for a heartbeat," | | 4 | "It had been nearly a" | | 5 | "Silas had always carried the" | | 6 | "His knee jolted as he" | | 7 | "His voice cut through the" | | 8 | "She smiled, sliding onto a" | | 9 | "He raised an eyebrow, the" | | 10 | "She laughed, a sound brittle" | | 11 | "Silas poured it for her" | | 12 | "The bar between them was" | | 13 | "Her father’s name, etched years" | | 14 | "Silas had known him, of" | | 15 | "she said, tracing the rim" | | 16 | "His tone was light, but" | | 17 | "She tugged her sleeve down," | | 18 | "She shrugged, the movement automatic." | | 19 | "He tapped his glass against" |
| | ratio | 0.93 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 57 | | matches | (empty) | | ratio | 0 | |
| 87.91% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 26 | | technicalSentenceCount | 2 | | matches | | 0 | "Silas had always carried the air of someone who’d seen too much, and tonight his right hand tapped twice on the arm of his chair—a staccato rhythm that set her …" | | 1 | "Aurora looked at the photograph above Silas’s head—a blurred image of a younger man in a pinstripe suit, a smile that didn’t reach his eyes." |
| |
| 66.18% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 17 | | uselessAdditionCount | 2 | | matches | | 0 | "He tapped, the clink too deliberate" | | 1 | "Silas lifted, the ice clinking" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 9 | | fancyCount | 1 | | fancyTags | | 0 | "she corrected (correct)" |
| | dialogueSentences | 39 | | tagDensity | 0.231 | | leniency | 0.462 | | rawRatio | 0.111 | | effectiveRatio | 0.051 | |