| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 20 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 41 | | tagDensity | 0.488 | | leniency | 0.976 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 89.09% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 2292 | | totalAiIsmAdverbs | 5 | | found | | | highlights | | 0 | "sharply" | | 1 | "lightly" | | 2 | "tightly" | | 3 | "slowly" | | 4 | "carefully" |
| |
| 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) | |
| 78.18% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 2292 | | totalAiIsms | 10 | | found | | | highlights | | 0 | "tension" | | 1 | "flickered" | | 2 | "stomach" | | 3 | "eyebrow" | | 4 | "silence" | | 5 | "silk" | | 6 | "perfect" | | 7 | "traced" | | 8 | "tenderness" | | 9 | "chill" |
| |
| 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 | 134 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 1 | | narrationSentences | 134 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 155 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 68 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 2276 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 28 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 50 | | wordCount | 1700 | | uniqueNames | 15 | | maxNameDensity | 0.71 | | worstName | "Lucien" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Lucien" | | discoveredNames | | Moreau | 1 | | Eva | 6 | | Silas | 1 | | Rory | 10 | | Lucien | 12 | | Marseille | 1 | | London | 2 | | Ptolemy | 6 | | French | 1 | | Avaros | 1 | | Brick | 2 | | Lane | 2 | | Cardiff | 1 | | Carter | 1 | | Later | 3 |
| | persons | | 0 | "Moreau" | | 1 | "Eva" | | 2 | "Silas" | | 3 | "Rory" | | 4 | "Lucien" | | 5 | "Ptolemy" | | 6 | "Carter" |
| | places | | 0 | "Marseille" | | 1 | "London" | | 2 | "Avaros" | | 3 | "Brick" | | 4 | "Lane" | | 5 | "Cardiff" |
| | globalScore | 1 | | windowScore | 1 | |
| 96.24% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 93 | | glossingSentenceCount | 2 | | matches | | 0 | "not quite a smile, something sharper" | | 1 | "as though memorizing territory he never wanted to surrender" | | 2 | "tasted like smoke and choice, how his han" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 2 | | per1kWords | 0.879 | | wordCount | 2276 | | matches | | 0 | "not in threat, but in protection" | | 1 | "no longer a barrier but" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 155 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 53 | | mean | 42.94 | | std | 25.69 | | cv | 0.598 | | sampleLengths | | 0 | 99 | | 1 | 50 | | 2 | 27 | | 3 | 72 | | 4 | 67 | | 5 | 3 | | 6 | 72 | | 7 | 50 | | 8 | 7 | | 9 | 62 | | 10 | 61 | | 11 | 56 | | 12 | 34 | | 13 | 98 | | 14 | 5 | | 15 | 66 | | 16 | 9 | | 17 | 54 | | 18 | 25 | | 19 | 67 | | 20 | 64 | | 21 | 74 | | 22 | 32 | | 23 | 8 | | 24 | 59 | | 25 | 82 | | 26 | 49 | | 27 | 6 | | 28 | 71 | | 29 | 26 | | 30 | 50 | | 31 | 55 | | 32 | 48 | | 33 | 35 | | 34 | 30 | | 35 | 73 | | 36 | 33 | | 37 | 64 | | 38 | 36 | | 39 | 4 | | 40 | 31 | | 41 | 37 | | 42 | 1 | | 43 | 8 | | 44 | 25 | | 45 | 72 | | 46 | 13 | | 47 | 3 | | 48 | 40 | | 49 | 54 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 2 | | totalSentences | 134 | | matches | | 0 | "being ignored" | | 1 | "was supposed" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 1 | | totalVerbs | 294 | | matches | | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 15 | | semicolonCount | 3 | | flaggedSentences | 15 | | totalSentences | 155 | | ratio | 0.097 | | matches | | 0 | "His mismatched eyes—one burning amber, the other depthless black—locked onto hers with the same unnerving focus that had once undone her in a rain-lashed alley behind Silas’s bar." | | 1 | "He leaned lightly on the ivory-handled cane, the one that hid a blade she had felt against her own ribs more than once—not in threat, but in protection." | | 2 | "Lucien’s mouth curved—not quite a smile, something sharper." | | 3 | "Her hands needed something to do; she filled the kettle, clicked it on." | | 4 | "Everything about him held—except, perhaps, the faint tightness at the corner of his mouth." | | 5 | "She remembered the night he’d first kissed her—how he’d tasted like smoke and choice, how his hands had mapped her body as though memorizing territory he never wanted to surrender." | | 6 | "“You could have stayed long enough to listen.” His eyes flared—amber bright, black deeper." | | 7 | "The scar on her wrist itched; she rubbed it without thinking." | | 8 | "She stared at him—at the impeccable suit now rumpled where Ptolemy had walked across it, at the cane resting against her research, at the man who had once offered her safety wrapped in danger and asked nothing in return but honesty." | | 9 | "Lucien made a low sound in his throat—half relief, half hunger—and lifted her onto the counter, sending a cascade of scrolls to the floor." | | 10 | "He answered in fluid French, the syllables sliding over her skin like silk, then switched to something older, rougher—words from Avaros that tasted of smoke and starlight." | | 11 | "But for this moment the only underworld that mattered was the one between them—the complicated, messy, aching space where attraction had refused to die and hurt had finally bent its knee to truth." | | 12 | "The amber eye caught the lamplight like molten coin; the black one held her reflection, small and fierce and no longer running." | | 13 | "Outside, Brick Lane hummed with evening life—laughter spilling from pubs, the sizzle of onions on hot woks, the distant wail of a siren that might or might not be headed toward supernatural trouble." | | 14 | "Rory Carter—delivery driver, reluctant law-school dropout, woman who thought too fast and loved too hard—closed her eyes and listened to the heartbeat of the only man who had ever matched her pace." |
| |
| 80.81% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1725 | | adjectiveStacks | 1 | | stackExamples | | 0 | "complicated, messy, aching space" |
| | adverbCount | 95 | | adverbRatio | 0.05507246376811594 | | lyAdverbCount | 22 | | lyAdverbRatio | 0.012753623188405797 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 155 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 155 | | mean | 14.68 | | std | 11.73 | | cv | 0.799 | | sampleLengths | | 0 | 16 | | 1 | 20 | | 2 | 35 | | 3 | 28 | | 4 | 7 | | 5 | 24 | | 6 | 19 | | 7 | 3 | | 8 | 8 | | 9 | 4 | | 10 | 1 | | 11 | 1 | | 12 | 10 | | 13 | 3 | | 14 | 23 | | 15 | 28 | | 16 | 18 | | 17 | 5 | | 18 | 24 | | 19 | 26 | | 20 | 12 | | 21 | 3 | | 22 | 8 | | 23 | 13 | | 24 | 3 | | 25 | 12 | | 26 | 36 | | 27 | 4 | | 28 | 3 | | 29 | 22 | | 30 | 9 | | 31 | 12 | | 32 | 7 | | 33 | 23 | | 34 | 13 | | 35 | 26 | | 36 | 17 | | 37 | 2 | | 38 | 14 | | 39 | 28 | | 40 | 3 | | 41 | 14 | | 42 | 27 | | 43 | 12 | | 44 | 15 | | 45 | 19 | | 46 | 4 | | 47 | 5 | | 48 | 16 | | 49 | 13 |
| |
| 44.95% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 12 | | diversityRatio | 0.3161290322580645 | | totalSentences | 155 | | uniqueOpeners | 49 | |
| 28.74% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 116 | | matches | | 0 | "Instead she stepped back, the" |
| | ratio | 0.009 | |
| 51.03% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 49 | | totalSentences | 116 | | matches | | 0 | "His mismatched eyes—one burning amber," | | 1 | "Her voice came out steadier" | | 2 | "He leaned lightly on the" | | 3 | "She wanted to slam it." | | 4 | "He entered, closing the door" | | 5 | "He had always done that," | | 6 | "He didn’t touch her." | | 7 | "She noticed that." | | 8 | "She moved to the kitchenette," | | 9 | "Her hands needed something to" | | 10 | "He set the cane against" | | 11 | "Her stomach flipped." | | 12 | "She kept her face blank," | | 13 | "His voice dropped" | | 14 | "She stared at him across" | | 15 | "She remembered the night he’d" | | 16 | "She remembered, too, the moment" | | 17 | "He took one step closer," | | 18 | "His eyes flared—amber bright, black" | | 19 | "He was around the bar" |
| | ratio | 0.422 | |
| 46.21% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 96 | | totalSentences | 116 | | matches | | 0 | "The door opened, and the" | | 1 | "Rory’s fingers stayed clenched on" | | 2 | "Lucien Moreau stood on the" | | 3 | "His mismatched eyes—one burning amber," | | 4 | "The scent of cumin and" | | 5 | "Ptolemy wound between Rory’s ankles," | | 6 | "Her voice came out steadier" | | 7 | "None of those traits had" | | 8 | "The Marseille accent curled around" | | 9 | "He leaned lightly on the" | | 10 | "She wanted to slam it." | | 11 | "The flat was a disaster" | | 12 | "Ptolemy promptly abandoned her for" | | 13 | "Lucien’s mouth curved—not quite a" | | 14 | "He entered, closing the door" | | 15 | "The room shrank." | | 16 | "He had always done that," | | 17 | "He didn’t touch her." | | 18 | "She noticed that." | | 19 | "She moved to the kitchenette," |
| | ratio | 0.828 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 116 | | matches | (empty) | | ratio | 0 | |
| 10.99% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 65 | | technicalSentenceCount | 12 | | matches | | 0 | "Lucien Moreau stood on the threshold of Eva’s cluttered flat as though he had every right to be there, platinum hair slicked back with ruthless precision, charc…" | | 1 | "His mismatched eyes—one burning amber, the other depthless black—locked onto hers with the same unnerving focus that had once undone her in a rain-lashed alley …" | | 2 | "Ptolemy wound between Rory’s ankles, purring as if the sudden tension were nothing more than an interesting new draft." | | 3 | "At five-eleven he was only five inches taller than her, but the presence of him, the half-demon fixer who spoke four languages and kept half of London’s underwo…" | | 4 | "She remembered the night he’d first kissed her—how he’d tasted like smoke and choice, how his hands had mapped her body as though memorizing territory he never …" | | 5 | "He didn’t reach for her, but his hands curled around the edge of the counter on either side of her hips, caging without touching." | | 6 | "She stared at him—at the impeccable suit now rumpled where Ptolemy had walked across it, at the cane resting against her research, at the man who had once offer…" | | 7 | "His hands slid under her shirt, palms hot against her spine, mapping her as though afraid she might vanish again." | | 8 | "He answered in fluid French, the syllables sliding over her skin like silk, then switched to something older, rougher—words from Avaros that tasted of smoke and…" | | 9 | "Outside, Brick Lane hummed with evening life—laughter spilling from pubs, the sizzle of onions on hot woks, the distant wail of a siren that might or might not …" | | 10 | "Lucien’s hand found the scar on her wrist, lifted it, and pressed a kiss to the crescent mark as though it were a sacred thing." | | 11 | "Rory Carter—delivery driver, reluctant law-school dropout, woman who thought too fast and loved too hard—closed her eyes and listened to the heartbeat of the on…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 20 | | uselessAdditionCount | 1 | | matches | | |
| 28.05% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 11 | | fancyCount | 5 | | fancyTags | | 0 | "Rory muttered (mutter)" | | 1 | "she whispered (whisper)" | | 2 | "he murmured (murmur)" | | 3 | "she whispered (whisper)" | | 4 | "she warned (warn)" |
| | dialogueSentences | 41 | | tagDensity | 0.268 | | leniency | 0.537 | | rawRatio | 0.455 | | effectiveRatio | 0.244 | |