| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 4 | | adverbTagCount | 1 | | adverbTags | | 0 | "he gestured vaguely [vaguely]" |
| | dialogueSentences | 68 | | tagDensity | 0.059 | | leniency | 0.118 | | rawRatio | 0.25 | | effectiveRatio | 0.029 | |
| 79.94% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1745 | | totalAiIsmAdverbs | 7 | | found | | | highlights | | 0 | "slightly" | | 1 | "suddenly" | | 2 | "gently" | | 3 | "very" | | 4 | "really" |
| |
| 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) | |
| 68.48% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1745 | | totalAiIsms | 11 | | found | | | highlights | | 0 | "flickered" | | 1 | "stark" | | 2 | "weight" | | 3 | "comforting" | | 4 | "throbbed" | | 5 | "silence" | | 6 | "charged" | | 7 | "tension" | | 8 | "footsteps" |
| |
| 33.33% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 3 | | maxInWindow | 3 | | found | | 0 | | label | "knuckles turned white" | | count | 1 |
| | 1 | | label | "hung in the air" | | count | 1 |
| | 2 | | label | "sent a shiver through" | | count | 1 |
|
| | highlights | | 0 | "knuckles turned white" | | 1 | "hung in the air" | | 2 | "sent a jolt through" |
| |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 111 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 2 | | narrationSentences | 111 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 175 | | 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 | 0 | | markdownWords | 0 | | totalWords | 1741 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 9 | | unquotedAttributions | 0 | | matches | (empty) | |
| 83.33% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 30 | | wordCount | 1226 | | uniqueNames | 10 | | maxNameDensity | 0.98 | | worstName | "Aurora" | | maxWindowNameDensity | 2.5 | | worstWindowName | "Lucien" | | discoveredNames | | Eva | 2 | | Brick | 1 | | Lane | 1 | | City | 1 | | Soho | 1 | | Moreau | 1 | | French | 1 | | Lucien | 8 | | Ptolemy | 2 | | Aurora | 12 |
| | persons | | 0 | "Eva" | | 1 | "Moreau" | | 2 | "Lucien" | | 3 | "Aurora" |
| | places | | 0 | "Brick" | | 1 | "Lane" | | 2 | "City" | | 3 | "Soho" |
| | globalScore | 1 | | windowScore | 0.833 | |
| 30.95% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 84 | | glossingSentenceCount | 4 | | matches | | 0 | "felt like a comforting blanket of chaos" | | 1 | "felt like clutter" | | 2 | "quite a laugh" | | 3 | "seemed stronger now, cloying and heavy, but underneath it, she could still smell the sandalwood" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.574 | | wordCount | 1741 | | matches | | 0 | "not violent, but relentless" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 175 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 101 | | mean | 17.24 | | std | 17.59 | | cv | 1.021 | | sampleLengths | | 0 | 66 | | 1 | 58 | | 2 | 16 | | 3 | 55 | | 4 | 2 | | 5 | 15 | | 6 | 4 | | 7 | 56 | | 8 | 4 | | 9 | 8 | | 10 | 8 | | 11 | 3 | | 12 | 15 | | 13 | 26 | | 14 | 31 | | 15 | 65 | | 16 | 3 | | 17 | 5 | | 18 | 8 | | 19 | 58 | | 20 | 38 | | 21 | 3 | | 22 | 25 | | 23 | 11 | | 24 | 17 | | 25 | 18 | | 26 | 16 | | 27 | 18 | | 28 | 4 | | 29 | 19 | | 30 | 35 | | 31 | 8 | | 32 | 44 | | 33 | 4 | | 34 | 4 | | 35 | 11 | | 36 | 3 | | 37 | 8 | | 38 | 75 | | 39 | 3 | | 40 | 8 | | 41 | 13 | | 42 | 2 | | 43 | 5 | | 44 | 21 | | 45 | 22 | | 46 | 8 | | 47 | 34 | | 48 | 12 | | 49 | 33 |
| |
| 95.78% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 3 | | totalSentences | 111 | | matches | | 0 | "was slicked" | | 1 | "was broken" | | 2 | "was tangled" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 205 | | matches | | 0 | "was suffocating" | | 1 | "was sleeping" |
| |
| 100.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 2 | | semicolonCount | 0 | | flaggedSentences | 2 | | totalSentences | 175 | | ratio | 0.011 | | matches | | 0 | "His platinum blond hair was slicked back, highlighting the stark contrast of his eyes—one amber, one void black." | | 1 | "The scent of him hit her—sandalwood and ozone and something metallic, like the air before a storm." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1230 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 40 | | adverbRatio | 0.032520325203252036 | | lyAdverbCount | 16 | | lyAdverbRatio | 0.013008130081300813 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 175 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 175 | | mean | 9.95 | | std | 6.78 | | cv | 0.682 | | sampleLengths | | 0 | 17 | | 1 | 26 | | 2 | 23 | | 3 | 16 | | 4 | 13 | | 5 | 29 | | 6 | 6 | | 7 | 10 | | 8 | 22 | | 9 | 18 | | 10 | 15 | | 11 | 2 | | 12 | 15 | | 13 | 4 | | 14 | 7 | | 15 | 17 | | 16 | 10 | | 17 | 16 | | 18 | 6 | | 19 | 4 | | 20 | 8 | | 21 | 8 | | 22 | 3 | | 23 | 15 | | 24 | 2 | | 25 | 3 | | 26 | 8 | | 27 | 10 | | 28 | 3 | | 29 | 6 | | 30 | 14 | | 31 | 11 | | 32 | 5 | | 33 | 26 | | 34 | 14 | | 35 | 20 | | 36 | 3 | | 37 | 5 | | 38 | 8 | | 39 | 11 | | 40 | 28 | | 41 | 19 | | 42 | 6 | | 43 | 19 | | 44 | 13 | | 45 | 3 | | 46 | 3 | | 47 | 13 | | 48 | 9 | | 49 | 11 |
| |
| 37.43% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 22 | | diversityRatio | 0.25142857142857145 | | totalSentences | 175 | | uniqueOpeners | 44 | |
| 30.86% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 108 | | matches | | 0 | "Then she walked to the" |
| | ratio | 0.009 | |
| 23.70% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 53 | | totalSentences | 108 | | matches | | 0 | "He didn’t belong in the" | | 1 | "He belonged in a high-rise" | | 2 | "Her breath hitched, a sharp" | | 3 | "His platinum blond hair was" | | 4 | "He leaned slightly on an" | | 5 | "His voice was a low" | | 6 | "She moved fast, but he" | | 7 | "She threw her weight against" | | 8 | "He pushed back, inexorable and" | | 9 | "He was right." | | 10 | "She’d left her phone charging" | | 11 | "He stepped inside, forcing her" | | 12 | "He closed the door with" | | 13 | "He engaged the deadbolts, one" | | 14 | "He smoothed the lapel of" | | 15 | "He avoided a pile of" | | 16 | "He scooped the cat up" | | 17 | "She turned away, marching into" | | 18 | "She needed water." | | 19 | "She needed air." |
| | ratio | 0.491 | |
| 0.00% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 103 | | totalSentences | 108 | | matches | | 0 | "Thethree deadbolts grated against the" | | 1 | "The curry house downstairs had" | | 2 | "Aurora turned the final lock" | | 3 | "The hallway light flickered, casting" | | 4 | "He didn’t belong in the" | | 5 | "He belonged in a high-rise" | | 6 | "Aurora’s hand froze on the" | | 7 | "Her breath hitched, a sharp" | | 8 | "Lucien Moreau stood there, immaculate" | | 9 | "His platinum blond hair was" | | 10 | "He leaned slightly on an" | | 11 | "His voice was a low" | | 12 | "Aurora slammed the door." | | 13 | "She moved fast, but he" | | 14 | "The ivory tip of his" | | 15 | "A splinter of wood cracked" | | 16 | "She threw her weight against" | | 17 | "He pushed back, inexorable and" | | 18 | "He was right." | | 19 | "She’d left her phone charging" |
| | ratio | 0.954 | |
| 46.30% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 108 | | matches | | 0 | "Now, with Lucien standing in" |
| | ratio | 0.009 | |
| 89.95% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 54 | | technicalSentenceCount | 4 | | matches | | 0 | "Looking at him brought back the nights in the archives, the way his amber eye would soften when he looked at her, the feeling of his hand on the small of her ba…" | | 1 | "He raised a hand, his fingers hovering near her face, as if to touch her cheek, but stopped inches from her skin." | | 2 | "She remembered the way he looked in the rain that night, the water dripping from his hair, the blood on his knuckles that wasn't his own." | | 3 | "Aurora listened to his footsteps crossing the living room, the tap of the cane growing fainter." |
| |
| 0.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 4 | | uselessAdditionCount | 2 | | matches | | 0 | "Aurora crossed, her fingers digging into her biceps" | | 1 | "he said, his voice coming from the doorway" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 2 | | fancyCount | 1 | | fancyTags | | 0 | "Aurora muttered (mutter)" |
| | dialogueSentences | 68 | | tagDensity | 0.029 | | leniency | 0.059 | | rawRatio | 0.5 | | effectiveRatio | 0.029 | |