| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 7 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 34 | | tagDensity | 0.206 | | leniency | 0.412 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 100.00% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1543 | | totalAiIsmAdverbs | 0 | | found | (empty) | | highlights | (empty) | |
| 100.00% | AI-ism character names | Target: 0 AI-default names (17 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 100.00% | AI-ism location names | Target: 0 AI-default location names (33 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 0.00% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1543 | | totalAiIsms | 31 | | found | | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 5 | | | 6 | | | 7 | | | 8 | | | 9 | | | 10 | | | 11 | | | 12 | | | 13 | | | 14 | | | 15 | | | 16 | | | 17 | | | 18 | | | 19 | | | 20 | |
| | highlights | | 0 | "flickered" | | 1 | "glint" | | 2 | "loomed" | | 3 | "charged" | | 4 | "gloom" | | 5 | "echoing" | | 6 | "footsteps" | | 7 | "echoes" | | 8 | "clandestine" | | 9 | "etched" | | 10 | "pulsed" | | 11 | "flicker" | | 12 | "echoed" | | 13 | "flicked" | | 14 | "glinting" | | 15 | "jaw clenched" | | 16 | "oppressive" | | 17 | "marble" | | 18 | "thundered" | | 19 | "shattered" | | 20 | "furrowed" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 1 | | maxInWindow | 1 | | found | | 0 | | label | "jaw/fists clenched" | | count | 1 |
|
| | highlights | | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 194 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 2 | | hedgeCount | 1 | | narrationSentences | 194 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 221 | | 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 | 0 | | markdownWords | 0 | | totalWords | 1529 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 7 | | unquotedAttributions | 0 | | matches | (empty) | |
| 66.67% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 40 | | wordCount | 1396 | | uniqueNames | 13 | | maxNameDensity | 1.5 | | worstName | "Quinn" | | maxWindowNameDensity | 3 | | worstWindowName | "Quinn" | | discoveredNames | | Quinn | 21 | | Dean | 1 | | Street | 1 | | Raven | 1 | | Nest | 1 | | Tomás | 6 | | Herrera | 1 | | London | 1 | | Metropolitan | 1 | | Council | 1 | | Eight | 1 | | Morris | 3 | | Christopher | 1 |
| | persons | | 0 | "Quinn" | | 1 | "Nest" | | 2 | "Tomás" | | 3 | "Herrera" | | 4 | "Eight" | | 5 | "Morris" | | 6 | "Christopher" |
| | places | | 0 | "Dean" | | 1 | "Street" | | 2 | "Raven" | | 3 | "London" |
| | globalScore | 0.748 | | windowScore | 0.667 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 108 | | glossingSentenceCount | 1 | | matches | | 0 | "looked like a raven in flight" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1529 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 221 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 55 | | mean | 27.8 | | std | 17.89 | | cv | 0.644 | | sampleLengths | | 0 | 45 | | 1 | 46 | | 2 | 51 | | 3 | 57 | | 4 | 36 | | 5 | 63 | | 6 | 66 | | 7 | 71 | | 8 | 54 | | 9 | 37 | | 10 | 45 | | 11 | 13 | | 12 | 3 | | 13 | 9 | | 14 | 24 | | 15 | 17 | | 16 | 4 | | 17 | 9 | | 18 | 15 | | 19 | 39 | | 20 | 10 | | 21 | 55 | | 22 | 37 | | 23 | 8 | | 24 | 20 | | 25 | 13 | | 26 | 41 | | 27 | 43 | | 28 | 12 | | 29 | 15 | | 30 | 26 | | 31 | 34 | | 32 | 28 | | 33 | 16 | | 34 | 30 | | 35 | 52 | | 36 | 10 | | 37 | 21 | | 38 | 43 | | 39 | 24 | | 40 | 10 | | 41 | 11 | | 42 | 29 | | 43 | 45 | | 44 | 23 | | 45 | 8 | | 46 | 17 | | 47 | 39 | | 48 | 23 | | 49 | 9 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 0 | | totalSentences | 194 | | matches | (empty) | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 290 | | matches | (empty) | |
| 52.36% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 8 | | semicolonCount | 0 | | flaggedSentences | 7 | | totalSentences | 221 | | ratio | 0.032 | | matches | | 0 | "She recognized the glint in his eyes—fear, or defiance, hard to tell under that brimmed cap." | | 1 | "She caught a flash of scarred forearm—Tomás’s handiwork sometimes left marks like that of a knife." | | 2 | "He pressed finger to scar on his forearm—a heartbeat’s signal." | | 3 | "Candle smoke coalesced into shapes—rats flitting across the floor, a tower of fire, a skeletal hand." | | 4 | "The suspect—he wore a mask carved from bone—took a step back, raising palms as if to plead." | | 5 | "Something approached—a train, ancient and shrouded in mist." | | 6 | "She slipped the pieces into her pocket and faced the entrance to the underground bazaar, knowing every step would take her deeper into the darkness that had swallowed her partner—and might now swallow her whole." |
| |
| 94.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1409 | | adjectiveStacks | 1 | | stackExamples | | 0 | "green over slick cobbles." |
| | adverbCount | 27 | | adverbRatio | 0.0191625266146203 | | lyAdverbCount | 1 | | lyAdverbRatio | 0.0007097232079489 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 221 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 221 | | mean | 6.92 | | std | 4.26 | | cv | 0.615 | | sampleLengths | | 0 | 8 | | 1 | 9 | | 2 | 10 | | 3 | 10 | | 4 | 8 | | 5 | 9 | | 6 | 7 | | 7 | 16 | | 8 | 5 | | 9 | 2 | | 10 | 7 | | 11 | 11 | | 12 | 16 | | 13 | 4 | | 14 | 8 | | 15 | 7 | | 16 | 5 | | 17 | 4 | | 18 | 10 | | 19 | 6 | | 20 | 18 | | 21 | 10 | | 22 | 5 | | 23 | 4 | | 24 | 6 | | 25 | 11 | | 26 | 5 | | 27 | 5 | | 28 | 9 | | 29 | 5 | | 30 | 11 | | 31 | 11 | | 32 | 3 | | 33 | 13 | | 34 | 10 | | 35 | 3 | | 36 | 4 | | 37 | 3 | | 38 | 3 | | 39 | 5 | | 40 | 7 | | 41 | 5 | | 42 | 8 | | 43 | 6 | | 44 | 17 | | 45 | 6 | | 46 | 9 | | 47 | 5 | | 48 | 5 | | 49 | 12 |
| |
| 55.35% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 6 | | diversityRatio | 0.34841628959276016 | | totalSentences | 221 | | uniqueOpeners | 77 | |
| 72.86% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 4 | | totalSentences | 183 | | matches | | 0 | "Instead, a single figure darted" | | 1 | "Somewhere beneath London, forgotten tracks" | | 2 | "Only his footsteps guided her" | | 3 | "Then he backed up, lifting" |
| | ratio | 0.022 | |
| 73.55% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 67 | | totalSentences | 183 | | matches | | 0 | "She sprinted down Dean Street," | | 1 | "He held a bone-white token" | | 2 | "She recognized the glint in" | | 3 | "She snatched for her radio." | | 4 | "He elbowed a side alley" | | 5 | "She caught a flash of" | | 6 | "She counted his breaths, matched" | | 7 | "He vaulted it, landing in" | | 8 | "She remounted and cleared the" | | 9 | "He’d popped through an iron" | | 10 | "She stumbled but stayed upright." | | 11 | "She followed echoes until she" | | 12 | "He slipped inside." | | 13 | "She’d chased criminals down every" | | 14 | "She tore at the chains" | | 15 | "She caught it, cold and" | | 16 | "She shoved at the gate." | | 17 | "It yielded with a shriek." | | 18 | "She could radio for backup," | | 19 | "She blocked that thought." |
| | ratio | 0.366 | |
| 14.64% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 163 | | totalSentences | 183 | | matches | | 0 | "Rain plastered Quinn’s leather coat" | | 1 | "She sprinted down Dean Street," | | 2 | "Neon from the Raven’s Nest" | | 3 | "Tonight, the bar’s usual hum" | | 4 | "He held a bone-white token" | | 5 | "The rain carved rivulets down" | | 6 | "She recognized the glint in" | | 7 | "She snatched for her radio." | | 8 | "He elbowed a side alley" | | 9 | "Quinn skidded through the narrow" | | 10 | "She caught a flash of" | | 11 | "The man ahead moved too" | | 12 | "She counted his breaths, matched" | | 13 | "Military precision commanded her limbs." | | 14 | "A chain-link fence loomed." | | 15 | "He vaulted it, landing in" | | 16 | "She remounted and cleared the" | | 17 | "He’d popped through an iron" | | 18 | "Quinn charged it, shoulder first." | | 19 | "The door groaned open." |
| | ratio | 0.891 | |
| 27.32% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 183 | | matches | | 0 | "Before she could cuff him," |
| | ratio | 0.005 | |
| 100.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 46 | | technicalSentenceCount | 2 | | matches | | 0 | "Men in dark coats were already regrouping at the far end of the hall, their silhouettes bleeding into shadow." | | 1 | "She slipped the pieces into her pocket and faced the entrance to the underground bazaar, knowing every step would take her deeper into the darkness that had swa…" |
| |
| 0.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 7 | | uselessAdditionCount | 2 | | matches | | 0 | "he said, voice low and cultured" | | 1 | "she said, voice steady" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 4 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 34 | | tagDensity | 0.118 | | leniency | 0.235 | | rawRatio | 0 | | effectiveRatio | 0 | |