| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 3 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 11 | | tagDensity | 0.273 | | leniency | 0.545 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 100.00% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1169 | | 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) | |
| 31.57% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1169 | | totalAiIsms | 16 | | found | | | highlights | | 0 | "weight" | | 1 | "familiar" | | 2 | "electric" | | 3 | "pulse" | | 4 | "whisper" | | 5 | "unravel" | | 6 | "flicker" | | 7 | "pounding" | | 8 | "silence" | | 9 | "flickered" | | 10 | "wavering" | | 11 | "etched" | | 12 | "stomach" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 1 | | maxInWindow | 1 | | found | | 0 | | label | "air was thick with" | | count | 1 |
|
| | highlights | | 0 | "The air was thick with" |
| |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 1 | | narrationSentences | 120 | | matches | | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 2 | | narrationSentences | 120 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 128 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 32 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 4 | | markdownWords | 5 | | totalWords | 1149 | | ratio | 0.004 | | matches | | 0 | "Why?" | | 1 | "wrong" | | 2 | "By whom?" | | 3 | "moved" |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 5 | | unquotedAttributions | 0 | | matches | (empty) | |
| 81.82% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 24 | | wordCount | 1100 | | uniqueNames | 6 | | maxNameDensity | 1.36 | | worstName | "Quinn" | | maxWindowNameDensity | 2 | | worstWindowName | "Quinn" | | discoveredNames | | Soho | 1 | | Quinn | 15 | | Glock | 3 | | Veil | 1 | | Market | 1 | | Herrera | 3 |
| | persons | | 0 | "Quinn" | | 1 | "Glock" | | 2 | "Herrera" |
| | places | | | globalScore | 0.818 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 76 | | glossingSentenceCount | 1 | | matches | | 0 | "herbs that seemed to pulse with life, bones carved into shapes that made her stomach twist" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1149 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 128 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 55 | | mean | 20.89 | | std | 20.53 | | cv | 0.983 | | sampleLengths | | 0 | 90 | | 1 | 42 | | 2 | 7 | | 3 | 65 | | 4 | 50 | | 5 | 10 | | 6 | 79 | | 7 | 12 | | 8 | 20 | | 9 | 31 | | 10 | 47 | | 11 | 2 | | 12 | 34 | | 13 | 29 | | 14 | 47 | | 15 | 4 | | 16 | 48 | | 17 | 6 | | 18 | 58 | | 19 | 23 | | 20 | 3 | | 21 | 37 | | 22 | 8 | | 23 | 3 | | 24 | 7 | | 25 | 23 | | 26 | 23 | | 27 | 9 | | 28 | 8 | | 29 | 5 | | 30 | 13 | | 31 | 6 | | 32 | 5 | | 33 | 34 | | 34 | 22 | | 35 | 8 | | 36 | 35 | | 37 | 43 | | 38 | 5 | | 39 | 29 | | 40 | 9 | | 41 | 5 | | 42 | 1 | | 43 | 1 | | 44 | 20 | | 45 | 6 | | 46 | 8 | | 47 | 20 | | 48 | 7 | | 49 | 7 |
| |
| 99.42% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 2 | | totalSentences | 120 | | matches | | |
| 68.64% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 4 | | totalVerbs | 203 | | matches | | 0 | "was leading" | | 1 | "was coming" | | 2 | "was holding" | | 3 | "was being" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 15 | | semicolonCount | 0 | | flaggedSentences | 11 | | totalSentences | 128 | | ratio | 0.086 | | matches | | 0 | "The suspect—a wiry man in a long coat, his collar pulled high—had vanished into the alley between two shuttered shops, but Quinn’s instincts told her he wasn’t gone." | | 1 | "A flicker of motion—there." | | 2 | "A loose stone gave way, and he yanked it free, revealing a narrow gap—just big enough for a man to squeeze through." | | 3 | "Then—distant dripping." | | 4 | "The beam caught something—a rusted iron grate, half-buried in the muck." | | 5 | "She holstered the Glock—it wouldn’t do her much good down there—and drew her baton instead." | | 6 | "Stalls lined the walls, their wares displayed under flickering lanterns—bottles of swirling liquid, bundles of herbs that seemed to pulse with life, bones carved into shapes that made her stomach twist." | | 7 | "They exchanged words—too low for her to hear—but the suspect’s posture shifted, his shoulders tensing." | | 8 | "And then—light." | | 9 | "The figure at the center let out a sound—half-laugh, half-scream—and the suspect staggered back, his eyes wide with terror." | | 10 | "Then—dust." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1120 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 44 | | adverbRatio | 0.039285714285714285 | | lyAdverbCount | 5 | | lyAdverbRatio | 0.004464285714285714 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 128 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 128 | | mean | 8.98 | | std | 5.87 | | cv | 0.654 | | sampleLengths | | 0 | 16 | | 1 | 24 | | 2 | 20 | | 3 | 28 | | 4 | 2 | | 5 | 9 | | 6 | 19 | | 7 | 5 | | 8 | 4 | | 9 | 5 | | 10 | 7 | | 11 | 12 | | 12 | 10 | | 13 | 10 | | 14 | 5 | | 15 | 15 | | 16 | 13 | | 17 | 4 | | 18 | 19 | | 19 | 12 | | 20 | 10 | | 21 | 5 | | 22 | 10 | | 23 | 17 | | 24 | 10 | | 25 | 15 | | 26 | 15 | | 27 | 22 | | 28 | 12 | | 29 | 9 | | 30 | 1 | | 31 | 2 | | 32 | 2 | | 33 | 3 | | 34 | 3 | | 35 | 10 | | 36 | 6 | | 37 | 15 | | 38 | 16 | | 39 | 13 | | 40 | 11 | | 41 | 7 | | 42 | 2 | | 43 | 4 | | 44 | 7 | | 45 | 5 | | 46 | 18 | | 47 | 15 | | 48 | 8 | | 49 | 6 |
| |
| 41.41% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 11 | | diversityRatio | 0.265625 | | totalSentences | 128 | | uniqueOpeners | 34 | |
| 31.75% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 105 | | matches | | | ratio | 0.01 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 31 | | totalSentences | 105 | | matches | | 0 | "She kept her hands low," | | 1 | "She pressed herself against the" | | 2 | "She kept her steps light," | | 3 | "He was leading her somewhere." | | 4 | "He knew she was close." | | 5 | "She skidded around a corner" | | 6 | "He twisted away, his shoulder" | | 7 | "She pressed her ear to" | | 8 | "Her radio crackled in her" | | 9 | "She followed the sound of" | | 10 | "She knew the rules." | | 11 | "It wasn’t supposed to exist." | | 12 | "She holstered the Glock—it wouldn’t" | | 13 | "She gripped the ladder and" | | 14 | "Her boots splashed into stagnant" | | 15 | "She coughed, waving a hand" | | 16 | "Their eyes tracked her as" | | 17 | "She ignored them." | | 18 | "Her suspect was ahead, weaving" | | 19 | "They exchanged words—too low for" |
| | ratio | 0.295 | |
| 36.19% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 89 | | totalSentences | 105 | | matches | | 0 | "The rain fell in sheets," | | 1 | "Harlow Quinn’s breath came sharp" | | 2 | "She kept her hands low," | | 3 | "The suspect—a wiry man in" | | 4 | "She pressed herself against the" | | 5 | "The city hummed around her," | | 6 | "A whisper of movement." | | 7 | "A breath held too long." | | 8 | "Quinn pushed off the wall" | | 9 | "The alley reeked of damp" | | 10 | "She kept her steps light," | | 11 | "The suspect had doubled back," | | 12 | "He was leading her somewhere." | | 13 | "A flicker of motion—there." | | 14 | "A figure darting between two" | | 15 | "Quinn broke into a run," | | 16 | "The suspect veered left, then" | | 17 | "He knew she was close." | | 18 | "She skidded around a corner" | | 19 | "He twisted away, his shoulder" |
| | ratio | 0.848 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 105 | | matches | (empty) | | ratio | 0 | |
| 100.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 53 | | technicalSentenceCount | 3 | | matches | | 0 | "Harlow Quinn’s breath came sharp and controlled, her boots splashing through puddles that glowed faintly under the sickly yellow glow of a flickering streetlamp…" | | 1 | "A figure darting between two stacked crates, the hem of his coat flaring like a flag in the wind." | | 2 | "Stalls lined the walls, their wares displayed under flickering lanterns—bottles of swirling liquid, bundles of herbs that seemed to pulse with life, bones carve…" |
| |
| 0.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 3 | | uselessAdditionCount | 1 | | matches | | 0 | "Quinn said, her voice low" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 2 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 11 | | tagDensity | 0.182 | | leniency | 0.364 | | rawRatio | 0 | | effectiveRatio | 0 | |