| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 3 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 8 | | tagDensity | 0.375 | | leniency | 0.75 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 81.97% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1109 | | totalAiIsmAdverbs | 4 | | found | | | highlights | | 0 | "slowly" | | 1 | "slightly" | | 2 | "carefully" |
| |
| 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) | |
| 50.41% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1109 | | totalAiIsms | 11 | | found | | 0 | | | 1 | | word | "down her spine" | | count | 1 |
| | 2 | | | 3 | | | 4 | | | 5 | | | 6 | | | 7 | | | 8 | |
| | highlights | | 0 | "tension" | | 1 | "down her spine" | | 2 | "footsteps" | | 3 | "could feel" | | 4 | "weight" | | 5 | "stomach" | | 6 | "pulse" | | 7 | "whisper" | | 8 | "electric" |
| |
| 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 | 100 | | matches | | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 2 | | hedgeCount | 0 | | narrationSentences | 100 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 105 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 39 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 2 | | markdownWords | 14 | | totalWords | 1101 | | ratio | 0.013 | | matches | | 0 | "Morris would’ve known what to do here." | | 1 | "You’re not alone, Harlow. You never were." |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 5 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 26 | | wordCount | 1062 | | uniqueNames | 10 | | maxNameDensity | 0.75 | | worstName | "Quinn" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Herrera" | | discoveredNames | | Raven | 3 | | Nest | 3 | | Quinn | 8 | | Wardour | 1 | | Street | 1 | | Herrera | 4 | | Morris | 3 | | Veil | 1 | | Market | 1 | | Harlow | 1 |
| | persons | | 0 | "Raven" | | 1 | "Nest" | | 2 | "Quinn" | | 3 | "Herrera" | | 4 | "Morris" |
| | places | | | globalScore | 1 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 65 | | 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 | 1101 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 105 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 32 | | mean | 34.41 | | std | 32.38 | | cv | 0.941 | | sampleLengths | | 0 | 86 | | 1 | 60 | | 2 | 94 | | 3 | 103 | | 4 | 26 | | 5 | 74 | | 6 | 72 | | 7 | 4 | | 8 | 113 | | 9 | 14 | | 10 | 25 | | 11 | 11 | | 12 | 3 | | 13 | 44 | | 14 | 30 | | 15 | 15 | | 16 | 7 | | 17 | 12 | | 18 | 63 | | 19 | 26 | | 20 | 3 | | 21 | 3 | | 22 | 51 | | 23 | 10 | | 24 | 47 | | 25 | 7 | | 26 | 48 | | 27 | 4 | | 28 | 22 | | 29 | 5 | | 30 | 13 | | 31 | 6 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 100 | | matches | | |
| 55.86% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 4 | | totalVerbs | 185 | | matches | | 0 | "were going" | | 1 | "was coming" | | 2 | "was looking" | | 3 | "was coming" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 9 | | semicolonCount | 0 | | flaggedSentences | 9 | | totalSentences | 105 | | ratio | 0.086 | | matches | | 0 | "She’d lost the suspect at the corner of Wardour Street, but the trail hadn’t vanished—it had doubled back, sharp and deliberate, like someone who knew exactly where they were going." | | 1 | "The alley behind the pub was a maze of rusted metal and peeling paint, the air thick with the scent of damp stone and something older, something metallic and faintly sweet—like old blood left too long in the sun." | | 2 | "She could hear him now—light footsteps, quick and sure, moving with the ease of someone who owned the dark." | | 3 | "The air was thick with the scent of whiskey and something else—something sharp, like ozone after a storm." | | 4 | "She could feel it—the weight of something unseen pressing down on her, like the breath of a sleeping beast." | | 5 | "She’d seen his photo in the files—former paramedic, disbarred, rumored to be dealing in things that weren’t supposed to exist." | | 6 | "The air from below was thick with the scent of damp earth and something else—something electric, like the moment before a storm breaks." | | 7 | "The scent of the underground market hit her like a physical blow—enchanted goods, alchemical substances, the sharp tang of something forbidden." | | 8 | "She could feel it—the weight of the past pressing down on her, the ghost of Morris’s voice in her ear, *You’re not alone, Harlow." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1074 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 38 | | adverbRatio | 0.035381750465549346 | | lyAdverbCount | 11 | | lyAdverbRatio | 0.010242085661080074 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 105 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 105 | | mean | 10.49 | | std | 7.42 | | cv | 0.708 | | sampleLengths | | 0 | 32 | | 1 | 3 | | 2 | 26 | | 3 | 18 | | 4 | 7 | | 5 | 30 | | 6 | 4 | | 7 | 7 | | 8 | 4 | | 9 | 15 | | 10 | 39 | | 11 | 15 | | 12 | 13 | | 13 | 19 | | 14 | 8 | | 15 | 7 | | 16 | 12 | | 17 | 18 | | 18 | 14 | | 19 | 3 | | 20 | 6 | | 21 | 4 | | 22 | 17 | | 23 | 6 | | 24 | 16 | | 25 | 15 | | 26 | 11 | | 27 | 18 | | 28 | 19 | | 29 | 13 | | 30 | 11 | | 31 | 8 | | 32 | 5 | | 33 | 15 | | 34 | 4 | | 35 | 2 | | 36 | 19 | | 37 | 13 | | 38 | 19 | | 39 | 4 | | 40 | 19 | | 41 | 3 | | 42 | 9 | | 43 | 9 | | 44 | 2 | | 45 | 3 | | 46 | 20 | | 47 | 11 | | 48 | 17 | | 49 | 20 |
| |
| 34.76% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 16 | | diversityRatio | 0.2761904761904762 | | totalSentences | 105 | | uniqueOpeners | 29 | |
| 68.73% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 2 | | totalSentences | 97 | | matches | | 0 | "Then she saw him." | | 1 | "Then she stepped forward, her" |
| | ratio | 0.021 | |
| 59.18% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 39 | | totalSentences | 97 | | matches | | 0 | "She didn’t slow." | | 1 | "Her breath came sharp and" | | 2 | "She’d lost the suspect at" | | 3 | "It was a front." | | 4 | "She crouched low, pressing her" | | 5 | "She could hear him now—light" | | 6 | "She stayed to the shadows," | | 7 | "She could walk in, call" | | 8 | "She pressed her palm against" | | 9 | "They all turned as she" | | 10 | "They knew she was coming." | | 11 | "She didn’t draw it." | | 12 | "She moved toward the back" | | 13 | "She could feel it—the weight" | | 14 | "He wasn’t alone." | | 15 | "She’d seen his photo in" | | 16 | "He was warm brown eyes" | | 17 | "He was the kind of" | | 18 | "he said, his voice smooth" | | 19 | "She didn’t answer." |
| | ratio | 0.402 | |
| 57.94% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 78 | | totalSentences | 97 | | matches | | 0 | "The rain came down in" | | 1 | "She didn’t slow." | | 2 | "The leather of her watch" | | 3 | "Her breath came sharp and" | | 4 | "*Morris would’ve known what to" | | 5 | "She’d lost the suspect at" | | 6 | "The Raven’s Nest wasn’t just" | | 7 | "It was a front." | | 8 | "A place where the city’s" | | 9 | "The alley behind the pub" | | 10 | "She crouched low, pressing her" | | 11 | "The rain hammered against her" | | 12 | "She could hear him now—light" | | 13 | "A man who didn’t belong" | | 14 | "Quinn exhaled through her nose," | | 15 | "She stayed to the shadows," | | 16 | "The entrance to the Raven’s" | | 17 | "She could walk in, call" | | 18 | "A place where the clique" | | 19 | "A place where things happened" |
| | ratio | 0.804 | |
| 51.55% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 97 | | matches | | 0 | "Because she knew what waited" |
| | ratio | 0.01 | |
| 80.75% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 46 | | technicalSentenceCount | 4 | | matches | | 0 | "The rain came down in sheets, a relentless drumming that turned the pavement into a slick mirror, reflecting the neon glow of the Raven’s Nest’s green sign as Q…" | | 1 | "She’d lost the suspect at the corner of Wardour Street, but the trail hadn’t vanished—it had doubled back, sharp and deliberate, like someone who knew exactly w…" | | 2 | "She could hear him now—light footsteps, quick and sure, moving with the ease of someone who owned the dark." | | 3 | "She’d seen his photo in the files—former paramedic, disbarred, rumored to be dealing in things that weren’t supposed to exist." |
| |
| 0.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 3 | | uselessAdditionCount | 3 | | matches | | 0 | "he said, his voice smooth as aged whiskey" | | 1 | "Herrera said, his voice low" | | 2 | "Herrera said, his voice coming from behind her" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 3 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 8 | | tagDensity | 0.375 | | leniency | 0.75 | | rawRatio | 0 | | effectiveRatio | 0 | |