| 75.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 16 | | adverbTagCount | 2 | | adverbTags | | 0 | "But she stepped back [back]" | | 1 | "she said quietly [quietly]" |
| | dialogueSentences | 31 | | tagDensity | 0.516 | | leniency | 1 | | rawRatio | 0.125 | | effectiveRatio | 0.125 | |
| 82.47% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1141 | | totalAiIsmAdverbs | 4 | | found | | | highlights | | 0 | "precisely" | | 1 | "slowly" | | 2 | "slightly" | | 3 | "suddenly" |
| |
| 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) | |
| 86.85% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1141 | | totalAiIsms | 3 | | found | | | highlights | | |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 1 | | maxInWindow | 1 | | found | | 0 | | label | "hung in the air" | | count | 1 |
|
| | highlights | | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 52 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 0 | | narrationSentences | 52 | | filterMatches | (empty) | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 66 | | 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 | 1148 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 21 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 22 | | wordCount | 919 | | uniqueNames | 8 | | maxNameDensity | 0.76 | | worstName | "Lucien" | | maxWindowNameDensity | 2 | | worstWindowName | "Lucien" | | discoveredNames | | Rory | 3 | | Ptolemy | 3 | | Lucien | 7 | | Eva | 4 | | Evan | 2 | | Avaros | 1 | | Vasilenko | 1 | | Looked | 1 |
| | persons | | 0 | "Rory" | | 1 | "Ptolemy" | | 2 | "Lucien" | | 3 | "Eva" | | 4 | "Evan" |
| | places | | | globalScore | 1 | | windowScore | 1 | |
| 71.88% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 32 | | glossingSentenceCount | 1 | | matches | | 0 | "felt like the only defensible position" |
| |
| 25.78% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 2 | | per1kWords | 1.742 | | wordCount | 1148 | | matches | | 0 | "not by his hand, but by hers" | | 1 | "not at her, she thought, but at himself, at being caught, at being known so precisely by" |
| |
| 15.15% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 3 | | totalSentences | 66 | | matches | | 0 | "knew that patience" | | 1 | "chose that moment" | | 2 | "fold that fear" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 31 | | mean | 37.03 | | std | 28.73 | | cv | 0.776 | | sampleLengths | | 0 | 59 | | 1 | 19 | | 2 | 5 | | 3 | 54 | | 4 | 12 | | 5 | 36 | | 6 | 68 | | 7 | 45 | | 8 | 7 | | 9 | 77 | | 10 | 35 | | 11 | 82 | | 12 | 4 | | 13 | 4 | | 14 | 72 | | 15 | 15 | | 16 | 128 | | 17 | 8 | | 18 | 18 | | 19 | 25 | | 20 | 47 | | 21 | 19 | | 22 | 27 | | 23 | 27 | | 24 | 7 | | 25 | 52 | | 26 | 76 | | 27 | 20 | | 28 | 44 | | 29 | 26 | | 30 | 30 |
| |
| 71.52% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 5 | | totalSentences | 52 | | matches | | 0 | "was gone" | | 1 | "was, chose" | | 2 | "been made" | | 3 | "being caught" | | 4 | "being known" | | 5 | "being ignored" |
| |
| 0.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 6 | | totalVerbs | 166 | | matches | | 0 | "was doing" | | 1 | "was knocking" | | 2 | "were reading" | | 3 | "were doing" | | 4 | "was trying" | | 5 | "was cataloguing" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 6 | | semicolonCount | 0 | | flaggedSentences | 6 | | totalSentences | 66 | | ratio | 0.091 | | matches | | 0 | "He rose, and followed her in, and she heard the click of the lock behind him — not by his hand, but by hers, and she wasn't sure why that detail felt so significant, standing there in Eva's cluttered sitting room with scrolls stacked on the coffee table and a half-drunk cup of chamomile tea going cold by the sofa." | | 1 | "\"It's about the Vasilenko contract.\" He said it smoothly, professionally, the voice of a man delivering information and nothing more — and she almost believed it, almost let herself relax into the comfort of business, except that his eyes were doing something else entirely, moving over her face like he was trying to memorize a thing he'd once known by heart and had since been made to forget." | | 2 | "And the whole time, some traitorous part of her brain was cataloguing the details it had missed — the new scar along his jaw, thin and pale, the slight fray at his cuff that a man as fastidious as Lucien would never have allowed himself before, as though something in his careful architecture had slipped since she'd last seen him." | | 3 | "For a moment he looked almost angry — not at her, she thought, but at himself, at being caught, at being known so precisely by someone he'd spent four months trying to convince himself he could forget." | | 4 | "She thought of Evan, of course — the way even Lucien's silences had once felt, in the aftermath, like they might be traps." | | 5 | "Somewhere down the hall, a floorboard creaked — Eva, turning over in her sleep, oblivious." |
| |
| 87.39% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 919 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 50 | | adverbRatio | 0.0544069640914037 | | lyAdverbCount | 16 | | lyAdverbRatio | 0.017410228509249184 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 66 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 66 | | mean | 17.39 | | std | 16.43 | | cv | 0.944 | | sampleLengths | | 0 | 20 | | 1 | 4 | | 2 | 35 | | 3 | 4 | | 4 | 15 | | 5 | 5 | | 6 | 38 | | 7 | 5 | | 8 | 11 | | 9 | 12 | | 10 | 11 | | 11 | 18 | | 12 | 7 | | 13 | 49 | | 14 | 19 | | 15 | 23 | | 16 | 22 | | 17 | 7 | | 18 | 17 | | 19 | 60 | | 20 | 7 | | 21 | 19 | | 22 | 9 | | 23 | 68 | | 24 | 14 | | 25 | 4 | | 26 | 4 | | 27 | 4 | | 28 | 68 | | 29 | 15 | | 30 | 3 | | 31 | 58 | | 32 | 2 | | 33 | 5 | | 34 | 60 | | 35 | 8 | | 36 | 2 | | 37 | 12 | | 38 | 4 | | 39 | 6 | | 40 | 19 | | 41 | 37 | | 42 | 10 | | 43 | 10 | | 44 | 9 | | 45 | 27 | | 46 | 11 | | 47 | 10 | | 48 | 6 | | 49 | 7 |
| |
| 71.72% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 6 | | diversityRatio | 0.48484848484848486 | | totalSentences | 66 | | uniqueOpeners | 32 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 4 | | totalSentences | 46 | | matches | | 0 | "Of course she had." | | 1 | "Then it passed, and something" | | 2 | "Just fact, laid down like" | | 3 | "Somewhere down the hall, a" |
| | ratio | 0.087 | |
| 11.30% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 24 | | totalSentences | 46 | | matches | | 0 | "It was gone midnight." | | 1 | "She knew that patience." | | 2 | "She knew it the way" | | 3 | "She opened the door anyway." | | 4 | "His amber eye was warm." | | 5 | "he said, which from Lucien" | | 6 | "She hadn't meant to use" | | 7 | "It came out before she" | | 8 | "He tilted his head, studying" | | 9 | "He rose, and followed her" | | 10 | "she said, crossing her arms" | | 11 | "It felt like the only" | | 12 | "He said it smoothly, professionally," | | 13 | "She'd changed it the week" | | 14 | "she said, because it was" | | 15 | "He told her." | | 16 | "She made the appropriate noises." | | 17 | "she said, when he finished" | | 18 | "It was the first unguarded" | | 19 | "She nodded at it" |
| | ratio | 0.522 | |
| 57.83% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 37 | | totalSentences | 46 | | matches | | 0 | "The three deadbolts took Rory" | | 1 | "It was gone midnight." | | 2 | "Eva had already gone to" | | 3 | "She knew that patience." | | 4 | "She knew it the way" | | 5 | "She opened the door anyway." | | 6 | "Lucien stood on the landing" | | 7 | "His amber eye was warm." | | 8 | "The black one gave nothing" | | 9 | "he said, which from Lucien" | | 10 | "She hadn't meant to use" | | 11 | "It came out before she" | | 12 | "He tilted his head, studying" | | 13 | "Ptolemy, traitor that he was," | | 14 | "Lucien crouched, unfolding with the" | | 15 | "He rose, and followed her" | | 16 | "she said, crossing her arms" | | 17 | "It felt like the only" | | 18 | "He said it smoothly, professionally," | | 19 | "She'd changed it the week" |
| | ratio | 0.804 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 46 | | matches | (empty) | | ratio | 0 | |
| 53.57% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 24 | | technicalSentenceCount | 3 | | matches | | 0 | "She'd changed it the week after she left his flat at four in the morning, her shoes in her hand so she wouldn't wake him, because staying to say goodbye properl…" | | 1 | "Something about a shipment of grave-dust from the Avaros side of the veil, about the Vasilenko brothers double-crossing a client who was not a person you wanted…" | | 2 | "And the whole time, some traitorous part of her brain was cataloguing the details it had missed — the new scar along his jaw, thin and pale, the slight fray at …" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 16 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 85.48% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 10 | | fancyCount | 2 | | fancyTags | | 0 | "The words came out (come out)" | | 1 | "he agreed (agree)" |
| | dialogueSentences | 31 | | tagDensity | 0.323 | | leniency | 0.645 | | rawRatio | 0.2 | | effectiveRatio | 0.129 | |