| 4.35% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 39 | | adverbTagCount | 9 | | adverbTags | | 0 | "She turned then [then]" | | 1 | "He finished gently [gently]" | | 2 | "she echoed sarcastically [sarcastically]" | | 3 | "Lucien stood then [then]" | | 4 | "Lucien turned back [back]" | | 5 | "Lucien approached once [once]" | | 6 | "Lucien smiled then [then]" | | 7 | "she said softly [softly]" | | 8 | "she acknowledged softly [softly]" |
| | dialogueSentences | 92 | | tagDensity | 0.424 | | leniency | 0.848 | | rawRatio | 0.231 | | effectiveRatio | 0.196 | |
| 62.62% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1739 | | totalAiIsmAdverbs | 13 | | found | | | highlights | | 0 | "slightly" | | 1 | "carefully" | | 2 | "sharply" | | 3 | "gently" | | 4 | "precisely" | | 5 | "very" | | 6 | "really" | | 7 | "truly" | | 8 | "softly" |
| |
| 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) | |
| 36.75% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1739 | | totalAiIsms | 22 | | found | | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 5 | | | 6 | | | 7 | | | 8 | | | 9 | | | 10 | | | 11 | | | 12 | | | 13 | | | 14 | | word | "layers of complexity" | | count | 1 |
| | 15 | | | 16 | | | 17 | |
| | highlights | | 0 | "scanned" | | 1 | "measured" | | 2 | "tension" | | 3 | "flickered" | | 4 | "navigate" | | 5 | "whisper" | | 6 | "echoed" | | 7 | "fluttered" | | 8 | "reminder" | | 9 | "comfortable" | | 10 | "grave" | | 11 | "could feel" | | 12 | "warmth" | | 13 | "eyebrow" | | 14 | "layers of complexity" | | 15 | "resolved" | | 16 | "chaotic" | | 17 | "unspoken" |
| |
| 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 | 0 | | narrationSentences | 68 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 1 | | narrationSentences | 68 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 120 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 38 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1731 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 25 | | unquotedAttributions | 0 | | matches | (empty) | |
| 7.65% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 53 | | wordCount | 843 | | uniqueNames | 8 | | maxNameDensity | 2.85 | | worstName | "Lucien" | | maxWindowNameDensity | 4 | | worstWindowName | "Lucien" | | discoveredNames | | Eva | 5 | | Moreau | 1 | | Ptolemy | 3 | | Lucien | 24 | | Aurora | 17 | | Alias | 1 | | Sharp | 1 | | Vergangenheit | 1 |
| | persons | | 0 | "Eva" | | 1 | "Moreau" | | 2 | "Lucien" | | 3 | "Aurora" |
| | places | | | globalScore | 0.077 | | windowScore | 0.333 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 52 | | 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 | 1731 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 120 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 64 | | mean | 27.05 | | std | 15.79 | | cv | 0.584 | | sampleLengths | | 0 | 29 | | 1 | 1 | | 2 | 27 | | 3 | 64 | | 4 | 31 | | 5 | 33 | | 6 | 35 | | 7 | 11 | | 8 | 28 | | 9 | 33 | | 10 | 31 | | 11 | 51 | | 12 | 15 | | 13 | 41 | | 14 | 25 | | 15 | 10 | | 16 | 52 | | 17 | 31 | | 18 | 33 | | 19 | 13 | | 20 | 37 | | 21 | 43 | | 22 | 38 | | 23 | 31 | | 24 | 34 | | 25 | 48 | | 26 | 4 | | 27 | 52 | | 28 | 21 | | 29 | 47 | | 30 | 25 | | 31 | 20 | | 32 | 33 | | 33 | 40 | | 34 | 24 | | 35 | 28 | | 36 | 12 | | 37 | 28 | | 38 | 15 | | 39 | 52 | | 40 | 44 | | 41 | 11 | | 42 | 5 | | 43 | 6 | | 44 | 20 | | 45 | 7 | | 46 | 30 | | 47 | 26 | | 48 | 4 | | 49 | 6 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 68 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 151 | | matches | (empty) | |
| 23.81% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 7 | | semicolonCount | 0 | | flaggedSentences | 5 | | totalSentences | 120 | | ratio | 0.042 | | matches | | 0 | "\"I had matters to attend to in Marseille.\" The words were simple, the statement calm, though something flickered in his heterochromatic eyes—amber and black—than fell back to a carefully neutral expression." | | 1 | "\"You said you'd always protect me.\" Aurora studied his face—Sharp angles, intelligent eyes, lips that were both cruel and tender." | | 2 | "She weighed his words—his history, his well-honed skills, the Vergangenheit they shared, the present danger Eva faced, and her undeniable connection to Lucien despite the hurt." | | 3 | "Lucien's features transformed into one of pure delight—a rare, dazzling smile that transformed his usually austere face into something almost too beautiful to gaze upon." | | 4 | "But as she watched Lucien prepare to face danger once again beside her, she found herself strangely comforted by his presence—even his complicated, inconvenient one—and answered unspoken sentiments that hovered between them like a physical object." |
| |
| 76.82% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 854 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 54 | | adverbRatio | 0.06323185011709602 | | lyAdverbCount | 20 | | lyAdverbRatio | 0.0234192037470726 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 120 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 120 | | mean | 14.43 | | std | 8.02 | | cv | 0.556 | | sampleLengths | | 0 | 15 | | 1 | 14 | | 2 | 1 | | 3 | 18 | | 4 | 9 | | 5 | 24 | | 6 | 23 | | 7 | 17 | | 8 | 18 | | 9 | 13 | | 10 | 25 | | 11 | 8 | | 12 | 23 | | 13 | 12 | | 14 | 3 | | 15 | 8 | | 16 | 18 | | 17 | 10 | | 18 | 25 | | 19 | 8 | | 20 | 31 | | 21 | 37 | | 22 | 14 | | 23 | 4 | | 24 | 11 | | 25 | 18 | | 26 | 23 | | 27 | 13 | | 28 | 12 | | 29 | 4 | | 30 | 6 | | 31 | 19 | | 32 | 18 | | 33 | 15 | | 34 | 13 | | 35 | 18 | | 36 | 20 | | 37 | 13 | | 38 | 3 | | 39 | 10 | | 40 | 13 | | 41 | 24 | | 42 | 25 | | 43 | 18 | | 44 | 20 | | 45 | 18 | | 46 | 8 | | 47 | 23 | | 48 | 24 | | 49 | 10 |
| |
| 66.11% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 4 | | diversityRatio | 0.4166666666666667 | | totalSentences | 120 | | uniqueOpeners | 50 | |
| 50.51% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 66 | | matches | | 0 | "Bright blue eyes scanned the" |
| | ratio | 0.015 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 17 | | totalSentences | 66 | | matches | | 0 | "She turned then, and the" | | 1 | "He finished gently" | | 2 | "she echoed sarcastically" | | 3 | "He stopped just inches from" | | 4 | "She hated how her body" | | 5 | "she said, stepping back until" | | 6 | "He’d used the rarely used" | | 7 | "she said, trying to ignore" | | 8 | "she said, watching him" | | 9 | "She considered him, the flawlessly" | | 10 | "she said softly" | | 11 | "His thumb slid from her" | | 12 | "She weighed his words—his history," | | 13 | "she finally asked" | | 14 | "He raised an eyebrow in" | | 15 | "She nodded without turning around." | | 16 | "she acknowledged softly as they" |
| | ratio | 0.258 | |
| 0.00% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 63 | | totalSentences | 66 | | matches | | 0 | "The door opened three inches," | | 1 | "Lucien Moreau offered a slight" | | 2 | "The crescent-shaped scar on her" | | 3 | "The door opened wider, revealing" | | 4 | "Ptolemy, the tabby cat, wound" | | 5 | "Lucien stepped over the threshold," | | 6 | "Aurora crossed her arms, the" | | 7 | "Lucien unbuttoned his charcoal suit" | | 8 | "Aurora's eyes flashed." | | 9 | "Lucien leaned forward, resting his" | | 10 | "Aurora moved to the window," | | 11 | "The words were simple, the" | | 12 | "She turned then, and the" | | 13 | "He finished gently" | | 14 | "Aurora stamped her foot, causing" | | 15 | "Lucien said, his voice dropping" | | 16 | "she echoed sarcastically" | | 17 | "Lucien stood then, crossing the" | | 18 | "He stopped just inches from" | | 19 | "Aurora's breath hitched as his" |
| | ratio | 0.955 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 66 | | matches | (empty) | | ratio | 0 | |
| 23.81% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 18 | | technicalSentenceCount | 3 | | matches | | 0 | "She considered him, the flawlessly tailored suit, the carefully controlled demeanor that hid layers of complexity." | | 1 | "Lucien's features transformed into one of pure delight—a rare, dazzling smile that transformed his usually austere face into something almost too beautiful to g…" | | 2 | "But as she watched Lucien prepare to face danger once again beside her, she found herself strangely comforted by his presence—even his complicated, inconvenient…" |
| |
| 86.54% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 39 | | uselessAdditionCount | 3 | | matches | | 0 | "Lucien said, his voice dropping almost to a whisper" | | 1 | "Aurora said, understanding dawning" | | 2 | "she said, trying to ignore how her heartbeat accelerated in his presence" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 10 | | fancyCount | 4 | | fancyTags | | 0 | "Aurora conceded (concede)" | | 1 | "he agreed (agree)" | | 2 | "Lucien agreed (agree)" | | 3 | "she acknowledged softly (acknowledge)" |
| | dialogueSentences | 92 | | tagDensity | 0.109 | | leniency | 0.217 | | rawRatio | 0.4 | | effectiveRatio | 0.087 | |