| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 7 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 15 | | tagDensity | 0.467 | | leniency | 0.933 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 100.00% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1237 | | 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) | |
| 59.58% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1237 | | totalAiIsms | 10 | | found | | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 5 | | | 6 | | | 7 | | | 8 | | word | "the last thing" | | count | 1 |
| | 9 | |
| | highlights | | 0 | "glinting" | | 1 | "fleeting" | | 2 | "gloom" | | 3 | "glint" | | 4 | "silence" | | 5 | "scanned" | | 6 | "charm" | | 7 | "reminder" | | 8 | "the last thing" | | 9 | "unreadable" |
| |
| 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 | 1 | | narrationSentences | 86 | | matches | | |
| 76.41% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 2 | | hedgeCount | 2 | | narrationSentences | 86 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 95 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 41 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 4 | | markdownWords | 7 | | totalWords | 1226 | | ratio | 0.006 | | matches | | 0 | "Fleeting," | | 1 | "Like all her suspects." | | 2 | "No." | | 3 | "truth" |
| |
| 83.33% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 6 | | unquotedAttributions | 1 | | matches | | 0 | "A bone token, they said, was the key." |
| |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 26 | | wordCount | 1083 | | uniqueNames | 12 | | maxNameDensity | 0.83 | | worstName | "Quinn" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Quinn" | | discoveredNames | | Soho | 1 | | Harlow | 1 | | Quinn | 9 | | Tomás | 1 | | Herrera | 5 | | Saint | 1 | | Christopher | 1 | | Covent | 1 | | Garden | 1 | | Veil | 1 | | Market | 1 | | Morris | 3 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Tomás" | | 3 | "Herrera" | | 4 | "Saint" | | 5 | "Christopher" | | 6 | "Morris" |
| | places | | 0 | "Soho" | | 1 | "Covent" | | 2 | "Garden" |
| | globalScore | 1 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 66 | | glossingSentenceCount | 1 | | matches | | 0 | "something like calculation" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.816 | | wordCount | 1226 | | matches | | 0 | "not a police badge, but something similar, worn iron" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 95 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 29 | | mean | 42.28 | | std | 28.62 | | cv | 0.677 | | sampleLengths | | 0 | 84 | | 1 | 71 | | 2 | 80 | | 3 | 76 | | 4 | 39 | | 5 | 10 | | 6 | 25 | | 7 | 51 | | 8 | 5 | | 9 | 24 | | 10 | 54 | | 11 | 78 | | 12 | 111 | | 13 | 5 | | 14 | 78 | | 15 | 7 | | 16 | 11 | | 17 | 21 | | 18 | 19 | | 19 | 33 | | 20 | 10 | | 21 | 42 | | 22 | 46 | | 23 | 71 | | 24 | 56 | | 25 | 44 | | 26 | 38 | | 27 | 27 | | 28 | 10 |
| |
| 80.78% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 6 | | totalSentences | 86 | | matches | | 0 | "were lined" | | 1 | "was hidden" | | 2 | "was obscured" | | 3 | "was laced" | | 4 | "been scrawled" | | 5 | "was gone" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 1 | | totalVerbs | 177 | | matches | | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 9 | | semicolonCount | 0 | | flaggedSentences | 8 | | totalSentences | 95 | | ratio | 0.084 | | matches | | 0 | "She’d seen the way he’d flinched when her flashlight had cut across his face in the bar’s dim interior, the way his hand had instinctively drifted to the medallion beneath his shirt—a small Saint Christopher, the patron saint of travelers." | | 1 | "The city’s heartbeat was faint here—too faint." | | 2 | "She’d heard whispers about the Veil Market—the underground bazaar that traded in things the living shouldn’t have." | | 3 | "The descent was steep, the air growing thick with the scent of mildew and something else—ozone, maybe, or the faint metallic tang of old blood." | | 4 | "Lanterns hung at odd angles, their light shifting colors—blue one moment, amber the next—casting the figures who moved between the stalls in hues that didn’t belong to this world." | | 5 | "Behind him, a figure in a long coat turned, and Quinn caught the glint of a silver badge—not a police badge, but something similar, worn iron that spoke of old magics." | | 6 | "“Arrest for what?” His voice was laced with something she couldn’t place—mockery, maybe, or grief." | | 7 | "In his hands, he held a small, polished bone—white as bone, but carved with symbols she’d seen in Morris’s old case files." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 172 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 6 | | adverbRatio | 0.03488372093023256 | | lyAdverbCount | 1 | | lyAdverbRatio | 0.005813953488372093 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 95 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 95 | | mean | 12.91 | | std | 8.25 | | cv | 0.639 | | sampleLengths | | 0 | 18 | | 1 | 34 | | 2 | 32 | | 3 | 3 | | 4 | 3 | | 5 | 18 | | 6 | 40 | | 7 | 3 | | 8 | 4 | | 9 | 17 | | 10 | 15 | | 11 | 9 | | 12 | 21 | | 13 | 18 | | 14 | 7 | | 15 | 7 | | 16 | 3 | | 17 | 11 | | 18 | 9 | | 19 | 16 | | 20 | 23 | | 21 | 4 | | 22 | 4 | | 23 | 16 | | 24 | 15 | | 25 | 7 | | 26 | 3 | | 27 | 7 | | 28 | 18 | | 29 | 3 | | 30 | 17 | | 31 | 8 | | 32 | 6 | | 33 | 7 | | 34 | 10 | | 35 | 5 | | 36 | 11 | | 37 | 13 | | 38 | 5 | | 39 | 16 | | 40 | 8 | | 41 | 15 | | 42 | 10 | | 43 | 25 | | 44 | 15 | | 45 | 10 | | 46 | 28 | | 47 | 2 | | 48 | 15 | | 49 | 15 |
| |
| 56.84% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 1 | | diversityRatio | 0.3473684210526316 | | totalSentences | 95 | | uniqueOpeners | 33 | |
| 39.68% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 84 | | matches | | 0 | "Somewhere ahead, a bus hissed" |
| | ratio | 0.012 | |
| 67.62% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 32 | | totalSentences | 84 | | matches | | 0 | "She’d been tracking Tomás Herrera" | | 1 | "He was good." | | 2 | "She’d seen the way he’d" | | 3 | "She needed to lose him" | | 4 | "She paused beneath a flickering" | | 5 | "It was quieter, like the" | | 6 | "She’d learned long ago that" | | 7 | "She spun, eyes narrowing." | | 8 | "he rasped, nodding toward the" | | 9 | "she said, low and even" | | 10 | "She’d heard whispers about the" | | 11 | "She’d dismissed it as rumor" | | 12 | "She didn’t wait for more." | | 13 | "She hesitated, hand still on" | | 14 | "Her flashlight beam cut a" | | 15 | "She saw a woman bartering" | | 16 | "He wasn’t alone." | | 17 | "Her breath caught." | | 18 | "she called, her voice cutting" | | 19 | "He turned, surprise flickering across" |
| | ratio | 0.381 | |
| 79.05% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 64 | | totalSentences | 84 | | matches | | 0 | "The rain fell in sheets," | | 1 | "Detective Harlow Quinn moved like" | | 2 | "She’d been tracking Tomás Herrera" | | 3 | "He was good." | | 4 | "Quinn knew that." | | 5 | "A former paramedic, worked miracles" | | 6 | "She’d seen the way he’d" | | 7 | "The rain had eased to" | | 8 | "Quinn veered toward it, using" | | 9 | "She needed to lose him" | | 10 | "She paused beneath a flickering" | | 11 | "The city’s heartbeat was faint" | | 12 | "Something was off." | | 13 | "It was quieter, like the" | | 14 | "Quinn’s hand drifted to the" | | 15 | "She’d learned long ago that" | | 16 | "A creak behind her." | | 17 | "She spun, eyes narrowing." | | 18 | "A homeless man hunched in" | | 19 | "he rasped, nodding toward the" |
| | ratio | 0.762 | |
| 59.52% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 84 | | matches | | 0 | "Before she could respond, the" |
| | ratio | 0.012 | |
| 100.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 48 | | technicalSentenceCount | 2 | | matches | | 0 | "Lanterns hung at odd angles, their light shifting colors—blue one moment, amber the next—casting the figures who moved between the stalls in hues that didn’t be…" | | 1 | "Behind him, a figure in a long coat turned, and Quinn caught the glint of a silver badge—not a police badge, but something similar, worn iron that spoke of old …" |
| |
| 53.57% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 7 | | uselessAdditionCount | 1 | | matches | | 0 | "she called, her voice cutting through the market’s eerie silence" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 3 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 15 | | tagDensity | 0.2 | | leniency | 0.4 | | rawRatio | 0 | | effectiveRatio | 0 | |