| 78.79% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 12 | | adverbTagCount | 2 | | adverbTags | | 0 | "he said softly [softly]" | | 1 | "Lucien said instantly [instantly]" |
| | dialogueSentences | 33 | | tagDensity | 0.364 | | leniency | 0.727 | | rawRatio | 0.167 | | effectiveRatio | 0.121 | |
| 81.17% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1328 | | totalAiIsmAdverbs | 5 | | found | | | highlights | | 0 | "lightly" | | 1 | "softly" | | 2 | "very" | | 3 | "completely" |
| |
| 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) | |
| 35.99% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1328 | | totalAiIsms | 17 | | found | | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 5 | | | 6 | | | 7 | | | 8 | | | 9 | | | 10 | | word | "down her spine" | | count | 1 |
| | 11 | | | 12 | | | 13 | | | 14 | | | 15 | |
| | highlights | | 0 | "echoed" | | 1 | "gleaming" | | 2 | "shattered" | | 3 | "warmth" | | 4 | "familiar" | | 5 | "pulse" | | 6 | "effortless" | | 7 | "predator" | | 8 | "throbbed" | | 9 | "simmering" | | 10 | "down her spine" | | 11 | "electric" | | 12 | "intensity" | | 13 | "silence" | | 14 | "trembled" | | 15 | "tracing" |
| |
| 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 | 57 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 0 | | narrationSentences | 57 | | filterMatches | (empty) | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 78 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 60 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 2 | | markdownWords | 3 | | totalWords | 1325 | | ratio | 0.002 | | matches | | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 15 | | unquotedAttributions | 0 | | matches | (empty) | |
| 83.33% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 31 | | wordCount | 961 | | uniqueNames | 10 | | maxNameDensity | 1.25 | | worstName | "Lucien" | | maxWindowNameDensity | 2.5 | | worstWindowName | "Lucien" | | discoveredNames | | Eva | 3 | | Moreau | 1 | | Cardiff | 1 | | Marseille | 1 | | Mesopotamian | 1 | | Lucien | 12 | | Brick | 1 | | Lane | 1 | | Southwark | 1 | | Rory | 9 |
| | persons | | 0 | "Eva" | | 1 | "Moreau" | | 2 | "Mesopotamian" | | 3 | "Lucien" | | 4 | "Southwark" | | 5 | "Rory" |
| | places | | 0 | "Cardiff" | | 1 | "Marseille" | | 2 | "Brick" | | 3 | "Lane" |
| | globalScore | 0.876 | | windowScore | 0.833 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 50 | | 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 | 1325 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 78 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 33 | | mean | 40.15 | | std | 24.65 | | cv | 0.614 | | sampleLengths | | 0 | 45 | | 1 | 59 | | 2 | 32 | | 3 | 57 | | 4 | 67 | | 5 | 19 | | 6 | 8 | | 7 | 7 | | 8 | 69 | | 9 | 4 | | 10 | 33 | | 11 | 59 | | 12 | 44 | | 13 | 45 | | 14 | 4 | | 15 | 4 | | 16 | 72 | | 17 | 70 | | 18 | 38 | | 19 | 51 | | 20 | 66 | | 21 | 36 | | 22 | 79 | | 23 | 3 | | 24 | 3 | | 25 | 51 | | 26 | 94 | | 27 | 42 | | 28 | 43 | | 29 | 43 | | 30 | 35 | | 31 | 15 | | 32 | 28 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 0 | | totalSentences | 57 | | matches | (empty) | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 150 | | matches | | 0 | "was not holding" | | 1 | "were breathing" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 3 | | semicolonCount | 2 | | flaggedSentences | 5 | | totalSentences | 78 | | ratio | 0.064 | | matches | | 0 | "One amber eye caught the hallway light and flared with low, unnatural warmth; the other remained a pool of bottomless, ink-dark demon glass." | | 1 | "His voice carried that familiar, low cadence—Cardiff rain meeting the sharp, sun-baked edge of Marseille." | | 2 | "The scent of him invaded the small space before she could shut the door—petrichor, expensive wool, bitter almond, and the faint, dry heat of brimstone that always trailed his father’s bloodline." | | 3 | "His heterochromatic eyes bore into hers—the amber side burning with demonic hunger, the black side an endless, human void of longing." | | 4 | "The kiss was not gentle; it was the violent release of three weeks of silence, of anger disguised as indifference, of terror masquerading as pride." |
| |
| 76.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 972 | | adjectiveStacks | 4 | | stackExamples | | 0 | "bottomless, ink-dark demon" | | 1 | "sharp, sun-baked edge" | | 2 | "heavy orange tabby cat" | | 3 | "small, crescent-shaped scar" |
| | adverbCount | 28 | | adverbRatio | 0.02880658436213992 | | lyAdverbCount | 14 | | lyAdverbRatio | 0.01440329218106996 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 78 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 78 | | mean | 16.99 | | std | 10.11 | | cv | 0.595 | | sampleLengths | | 0 | 16 | | 1 | 29 | | 2 | 19 | | 3 | 17 | | 4 | 23 | | 5 | 11 | | 6 | 15 | | 7 | 6 | | 8 | 8 | | 9 | 22 | | 10 | 27 | | 11 | 9 | | 12 | 27 | | 13 | 31 | | 14 | 13 | | 15 | 6 | | 16 | 8 | | 17 | 7 | | 18 | 9 | | 19 | 9 | | 20 | 22 | | 21 | 29 | | 22 | 3 | | 23 | 1 | | 24 | 10 | | 25 | 13 | | 26 | 10 | | 27 | 14 | | 28 | 20 | | 29 | 25 | | 30 | 3 | | 31 | 27 | | 32 | 14 | | 33 | 24 | | 34 | 21 | | 35 | 4 | | 36 | 4 | | 37 | 58 | | 38 | 14 | | 39 | 14 | | 40 | 6 | | 41 | 15 | | 42 | 35 | | 43 | 5 | | 44 | 27 | | 45 | 6 | | 46 | 33 | | 47 | 5 | | 48 | 13 | | 49 | 3 |
| |
| 52.14% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 6 | | diversityRatio | 0.358974358974359 | | totalSentences | 78 | | uniqueOpeners | 28 | |
| 59.52% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 56 | | matches | | 0 | "Instead, Rory gripped the lapels" |
| | ratio | 0.018 | |
| 48.57% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 24 | | totalSentences | 56 | | matches | | 0 | "He leaned lightly on his" | | 1 | "he said softly" | | 2 | "His voice carried that familiar," | | 3 | "Her pulse spiked, a hard," | | 4 | "He stepped across the threshold" | | 5 | "He set his cane against" | | 6 | "He bent down, scratching the" | | 7 | "she said, crossing her arms" | | 8 | "Her thumb drifted unconsciously to" | | 9 | "He straightened to his full" | | 10 | "he said, his voice dropping" | | 11 | "Her bright blue eyes flashed" | | 12 | "He stopped barely a foot" | | 13 | "His skin was impossibly warm." | | 14 | "She hated how easily he" | | 15 | "she whispered, though her voice" | | 16 | "he murmured, his thumb finally" | | 17 | "His touch sent a shiver" | | 18 | "His heterochromatic eyes bore into" | | 19 | "He leaned in, slow enough" |
| | ratio | 0.429 | |
| 13.57% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 50 | | totalSentences | 56 | | matches | | 0 | "The third deadbolt gave way" | | 1 | "Rory pulled the door inward," | | 2 | "Lucien Moreau stood on the" | | 3 | "He leaned lightly on his" | | 4 | "he said softly" | | 5 | "His voice carried that familiar," | | 6 | "Rory’s hand remained frozen on" | | 7 | "Her pulse spiked, a hard," | | 8 | "Lucien didn't ask for permission" | | 9 | "He stepped across the threshold" | | 10 | "The scent of him invaded" | | 11 | "Rory slammed the door shut," | | 12 | "Lucien turned, unbuttoning his damp" | | 13 | "He set his cane against" | | 14 | "A heavy orange tabby cat" | | 15 | "A faint, infuriating smirk touched" | | 16 | "He bent down, scratching the" | | 17 | "she said, crossing her arms" | | 18 | "Her thumb drifted unconsciously to" | | 19 | "Lucien went still." |
| | ratio | 0.893 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 56 | | matches | (empty) | | ratio | 0 | |
| 65.64% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 37 | | technicalSentenceCount | 4 | | matches | | 0 | "He stepped across the threshold with the quiet, effortless grace of a predator who owned every room he entered, his cane clicking softly against the worn floorb…" | | 1 | "The light humor vanished from his features, leaving behind the severe, aristocratic lines of a face that belonged in a renaissance portrait or a medieval execut…" | | 2 | "Lucien made a low, strangled sound in his throat, his hands coming up to cradle the back of her head, his fingers tangling in her straight black hair." | | 3 | "Both of them were breathing hard, their breath mingling in the cool draft of the hallway." |
| |
| 0.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 12 | | uselessAdditionCount | 4 | | matches | | 0 | "she whispered, though her voice lacked the bite she wanted" | | 1 | "he murmured, his thumb finally brushing the curve of her cheekbone" | | 2 | "Lucien confessed, his voice rough, stripped of its smooth veneer" | | 3 | "she whispered, her thumb tracing the line of his lapel" |
| |
| 0.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 9 | | fancyCount | 5 | | fancyTags | | 0 | "Rory hissed (hiss)" | | 1 | "she whispered (whisper)" | | 2 | "he murmured (murmur)" | | 3 | "Lucien confessed (confess)" | | 4 | "she whispered (whisper)" |
| | dialogueSentences | 33 | | tagDensity | 0.273 | | leniency | 0.545 | | rawRatio | 0.556 | | effectiveRatio | 0.303 | |