| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 18 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 48 | | tagDensity | 0.375 | | leniency | 0.75 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 63.88% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 969 | | totalAiIsmAdverbs | 7 | | found | | | highlights | | 0 | "slightly" | | 1 | "softly" | | 2 | "really" | | 3 | "gently" | | 4 | "tenderly" |
| |
| 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) | |
| 32.92% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 969 | | totalAiIsms | 13 | | found | | | highlights | | 0 | "echoing" | | 1 | "familiar" | | 2 | "otherworldly" | | 3 | "echoed" | | 4 | "facade" | | 5 | "perfect" | | 6 | "whisper" | | 7 | "tension" | | 8 | "unspoken" | | 9 | "could feel" | | 10 | "magnetic" | | 11 | "racing" | | 12 | "reminder" |
| |
| 66.67% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 2 | | maxInWindow | 2 | | found | | 0 | | label | "eyes widened/narrowed" | | count | 1 |
| | 1 | | label | "clenched jaw/fists" | | count | 1 |
|
| | highlights | | 0 | "eyes widened" | | 1 | "clenched into fists" |
| |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 1 | | narrationSentences | 44 | | matches | | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 0 | | narrationSentences | 44 | | filterMatches | (empty) | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 72 | | 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 | 958 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 7 | | unquotedAttributions | 0 | | matches | (empty) | |
| 28.79% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 30 | | wordCount | 495 | | uniqueNames | 7 | | maxNameDensity | 2.42 | | worstName | "Rory" | | maxWindowNameDensity | 4 | | worstWindowName | "Rory" | | discoveredNames | | Eva | 2 | | Rory | 12 | | London | 1 | | Lucien | 12 | | Golden | 1 | | Empress | 1 | | Soho | 1 |
| | persons | | | places | | 0 | "London" | | 1 | "Golden" | | 2 | "Soho" |
| | globalScore | 0.288 | | windowScore | 0.333 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 34 | | 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 | 958 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 72 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 37 | | mean | 25.89 | | std | 14.14 | | cv | 0.546 | | sampleLengths | | 0 | 63 | | 1 | 34 | | 2 | 1 | | 3 | 11 | | 4 | 34 | | 5 | 13 | | 6 | 41 | | 7 | 23 | | 8 | 33 | | 9 | 22 | | 10 | 15 | | 11 | 11 | | 12 | 23 | | 13 | 25 | | 14 | 19 | | 15 | 26 | | 16 | 14 | | 17 | 14 | | 18 | 46 | | 19 | 39 | | 20 | 20 | | 21 | 63 | | 22 | 24 | | 23 | 36 | | 24 | 16 | | 25 | 50 | | 26 | 14 | | 27 | 36 | | 28 | 11 | | 29 | 36 | | 30 | 21 | | 31 | 30 | | 32 | 12 | | 33 | 11 | | 34 | 24 | | 35 | 30 | | 36 | 17 |
| |
| 97.29% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 44 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 78 | | matches | (empty) | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 6 | | semicolonCount | 0 | | flaggedSentences | 4 | | totalSentences | 72 | | ratio | 0.056 | | matches | | 0 | "His heterochromatic eyes—one amber, one black—fixed on her face, betraying nothing of his thoughts." | | 1 | "\"Still hiding behind Eva's research, I see.\" Lucien turned to face her, the faint scent of something otherworldly—like ozone and old parchment—surrounding him." | | 2 | "Rory could feel the pull of him, the same magnetic attraction that had drawn her in from the moment they'd met—her delivering takeout from Golden Empress to his office in that discreet building in Soho." | | 3 | "Lucien reached out, this time letting his fingers gently trace the small crescent-shaped scar on her left wrist—a reminder of her human fragility that he had once kissed so tenderly." |
| |
| 88.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 504 | | adjectiveStacks | 2 | | stackExamples | | 0 | "small crescent-shaped scar" | | 1 | "small crescent-shaped scar" |
| | adverbCount | 18 | | adverbRatio | 0.03571428571428571 | | lyAdverbCount | 7 | | lyAdverbRatio | 0.013888888888888888 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 72 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 72 | | mean | 13.31 | | std | 7.86 | | cv | 0.591 | | sampleLengths | | 0 | 16 | | 1 | 16 | | 2 | 17 | | 3 | 14 | | 4 | 1 | | 5 | 19 | | 6 | 14 | | 7 | 1 | | 8 | 6 | | 9 | 5 | | 10 | 16 | | 11 | 18 | | 12 | 6 | | 13 | 7 | | 14 | 19 | | 15 | 22 | | 16 | 23 | | 17 | 27 | | 18 | 6 | | 19 | 11 | | 20 | 11 | | 21 | 15 | | 22 | 3 | | 23 | 8 | | 24 | 19 | | 25 | 4 | | 26 | 15 | | 27 | 10 | | 28 | 7 | | 29 | 12 | | 30 | 20 | | 31 | 6 | | 32 | 3 | | 33 | 11 | | 34 | 7 | | 35 | 7 | | 36 | 10 | | 37 | 36 | | 38 | 13 | | 39 | 26 | | 40 | 13 | | 41 | 7 | | 42 | 14 | | 43 | 16 | | 44 | 33 | | 45 | 11 | | 46 | 13 | | 47 | 13 | | 48 | 23 | | 49 | 10 |
| |
| 71.76% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 5 | | diversityRatio | 0.4722222222222222 | | totalSentences | 72 | | uniqueOpeners | 34 | |
| 79.37% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 42 | | matches | | 0 | "Bright blue eyes widened in" |
| | ratio | 0.024 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 12 | | totalSentences | 42 | | matches | | 0 | "Her straight black hair was" | | 1 | "He stood there leaning slightly" | | 2 | "His heterochromatic eyes—one amber, one" | | 3 | "Her fingers tightened on the" | | 4 | "He gestured with his free" | | 5 | "Her breath hitched." | | 6 | "His voice was low, rough" | | 7 | "His voice echoed in the" | | 8 | "Her voice dropped to a" | | 9 | "she asked, her voice softer" | | 10 | "He leaned his cane against" | | 11 | "he said, his amber eye" |
| | ratio | 0.286 | |
| 0.00% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 40 | | totalSentences | 42 | | matches | | 0 | "The three deadbolts clicked open" | | 1 | "The door to Eva's flat" | | 2 | "Her straight black hair was" | | 3 | "He stood there leaning slightly" | | 4 | "His heterochromatic eyes—one amber, one" | | 5 | "Her fingers tightened on the" | | 6 | "He gestured with his free" | | 7 | "Rory stepped aside, her movements" | | 8 | "Lucien entered, his gaze sweeping" | | 9 | "Ptolemy, Eva's tabby cat, arched" | | 10 | "Lucien turned to face her," | | 11 | "Rory crossed her arms, the" | | 12 | "Lucien's lips curved into a" | | 13 | "The words slipped out, sharper" | | 14 | "The smile vanished." | | 15 | "Rory moved toward the tiny" | | 16 | "Lucien followed her, his cane" | | 17 | "Rory spun around, her blue" | | 18 | "Lucien stepped closer, close enough" | | 19 | "Her breath hitched." |
| | ratio | 0.952 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 42 | | matches | (empty) | | ratio | 0 | |
| 58.82% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 17 | | technicalSentenceCount | 2 | | matches | | 0 | "Lucien's lips curved into a smile that didn't reach his eyes." | | 1 | "Rory could feel the pull of him, the same magnetic attraction that had drawn her in from the moment they'd met—her delivering takeout from Golden Empress to his…" |
| |
| 13.89% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 18 | | uselessAdditionCount | 4 | | matches | | 0 | "Lucien followed, his cane tapping softly against the floorboards" | | 1 | "she asked, her voice softer now" | | 2 | "Lucien knelt, his voice low and urgent" | | 3 | "he said, his amber eye catching the light," |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 2 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 48 | | tagDensity | 0.042 | | leniency | 0.083 | | rawRatio | 0 | | effectiveRatio | 0 | |