| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 17 | | adverbTagCount | 2 | | adverbTags | | 0 | "she said carefully [carefully]" | | 1 | "he said simply [simply]" |
| | dialogueSentences | 44 | | tagDensity | 0.386 | | leniency | 0.773 | | rawRatio | 0.118 | | effectiveRatio | 0.091 | |
| 71.19% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1215 | | totalAiIsmAdverbs | 7 | | found | | | highlights | | 0 | "suddenly" | | 1 | "very" | | 2 | "gently" | | 3 | "slightly" | | 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) | |
| 71.19% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1215 | | totalAiIsms | 7 | | found | | | highlights | | 0 | "comfortable" | | 1 | "absolutely" | | 2 | "treacherous" | | 3 | "affection" | | 4 | "weight" | | 5 | "familiar" | | 6 | "measured" |
| |
| 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 | 65 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 1 | | narrationSentences | 65 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 93 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 74 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1220 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 20 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 25 | | wordCount | 876 | | uniqueNames | 8 | | maxNameDensity | 0.68 | | worstName | "Rory" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Eva" | | discoveredNames | | Eva | 5 | | Moreau | 1 | | Rory | 6 | | Lucien | 5 | | Ptolemy | 5 | | Reset | 1 | | Brick | 1 | | Lane | 1 |
| | persons | | 0 | "Eva" | | 1 | "Moreau" | | 2 | "Rory" | | 3 | "Lucien" | | 4 | "Ptolemy" |
| | places | | | globalScore | 1 | | windowScore | 1 | |
| 0.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 36 | | glossingSentenceCount | 3 | | matches | | 0 | "as though cataloguing the room before committing to it" | | 1 | "quite name" | | 2 | "quite decided what to do with yet" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1220 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 93 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 58 | | mean | 21.03 | | std | 23.92 | | cv | 1.137 | | sampleLengths | | 0 | 70 | | 1 | 8 | | 2 | 83 | | 3 | 3 | | 4 | 7 | | 5 | 5 | | 6 | 7 | | 7 | 55 | | 8 | 14 | | 9 | 3 | | 10 | 6 | | 11 | 7 | | 12 | 9 | | 13 | 37 | | 14 | 35 | | 15 | 9 | | 16 | 3 | | 17 | 4 | | 18 | 97 | | 19 | 8 | | 20 | 6 | | 21 | 3 | | 22 | 10 | | 23 | 64 | | 24 | 13 | | 25 | 8 | | 26 | 45 | | 27 | 3 | | 28 | 47 | | 29 | 13 | | 30 | 13 | | 31 | 3 | | 32 | 10 | | 33 | 52 | | 34 | 24 | | 35 | 6 | | 36 | 8 | | 37 | 82 | | 38 | 22 | | 39 | 6 | | 40 | 8 | | 41 | 15 | | 42 | 40 | | 43 | 6 | | 44 | 2 | | 45 | 5 | | 46 | 2 | | 47 | 7 | | 48 | 7 | | 49 | 64 |
| |
| 83.67% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 4 | | totalSentences | 65 | | matches | | 0 | "was slicked" | | 1 | "been invited" | | 2 | "was designed" | | 3 | "been invited" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 159 | | matches | | 0 | "was watching" | | 1 | "was producing" |
| |
| 19.97% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 5 | | semicolonCount | 0 | | flaggedSentences | 4 | | totalSentences | 93 | | ratio | 0.043 | | matches | | 0 | "Rory had to lean into it with her shoulder, the metal groaning in protest before finally surrendering, and by the time she swung the door open she had already rehearsed the excuse she'd give Eva for being late — the message had only said urgent, flat, now, which in Eva's vocabulary could mean anything from a crumbling ward to a broken nail." | | 1 | "He nudged Ptolemy gently aside with one foot — not unkindly — and met her eyes." | | 2 | "He moved through the flat the way he always moved through spaces that were not his — with a careful, observant stillness, as though cataloguing the room before committing to it." | | 3 | "Outside, Brick Lane carried on being itself — loud and lit and indifferent to anyone's complicated history." |
| |
| 77.18% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 681 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 45 | | adverbRatio | 0.06607929515418502 | | lyAdverbCount | 13 | | lyAdverbRatio | 0.01908957415565345 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 93 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 93 | | mean | 13.12 | | std | 14.04 | | cv | 1.07 | | sampleLengths | | 0 | 8 | | 1 | 62 | | 2 | 8 | | 3 | 37 | | 4 | 27 | | 5 | 11 | | 6 | 8 | | 7 | 3 | | 8 | 7 | | 9 | 5 | | 10 | 7 | | 11 | 23 | | 12 | 32 | | 13 | 6 | | 14 | 8 | | 15 | 3 | | 16 | 6 | | 17 | 7 | | 18 | 3 | | 19 | 6 | | 20 | 25 | | 21 | 12 | | 22 | 15 | | 23 | 16 | | 24 | 4 | | 25 | 9 | | 26 | 3 | | 27 | 4 | | 28 | 31 | | 29 | 35 | | 30 | 4 | | 31 | 27 | | 32 | 8 | | 33 | 6 | | 34 | 3 | | 35 | 10 | | 36 | 29 | | 37 | 30 | | 38 | 5 | | 39 | 6 | | 40 | 7 | | 41 | 8 | | 42 | 10 | | 43 | 33 | | 44 | 2 | | 45 | 3 | | 46 | 47 | | 47 | 13 | | 48 | 13 | | 49 | 3 |
| |
| 58.78% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 7 | | diversityRatio | 0.3978494623655914 | | totalSentences | 93 | | uniqueOpeners | 37 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 2 | | totalSentences | 51 | | matches | | 0 | "Just turning the word over." | | 1 | "Somewhere below them a kitchen" |
| | ratio | 0.039 | |
| 0.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 30 | | totalSentences | 51 | | matches | | 0 | "It was not Eva standing" | | 1 | "His platinum hair was slicked" | | 2 | "He looked up." | | 3 | "She crossed her arms" | | 4 | "He nudged Ptolemy gently aside" | | 5 | "She stepped back anyway." | | 6 | "He moved through the flat" | | 7 | "His gaze traveled over Eva's" | | 8 | "He didn't touch anything." | | 9 | "He never touched anything he" | | 10 | "She leaned against the kitchen" | | 11 | "She reached past him to" | | 12 | "He didn't move out of" | | 13 | "He was quiet for a" | | 14 | "She heard the kettle begin" | | 15 | "She'd expected something oblique, an" | | 16 | "She turned around." | | 17 | "He was watching her with" | | 18 | "she said carefully" | | 19 | "She hadn't meant to say" |
| | ratio | 0.588 | |
| 9.02% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 46 | | totalSentences | 51 | | matches | | 0 | "The third deadbolt was always" | | 1 | "Rory had to lean into" | | 2 | "It was not Eva standing" | | 3 | "Lucien Moreau stood with one" | | 4 | "His platinum hair was slicked" | | 5 | "The amber eye caught the" | | 6 | "The black one gave nothing" | | 7 | "Rory did not move from" | | 8 | "The smell of curry drifted" | | 9 | "Ptolemy appeared from somewhere behind" | | 10 | "Lucien looked down at the" | | 11 | "Something shifted at the corner" | | 12 | "He looked up." | | 13 | "She crossed her arms" | | 14 | "The almost-smile became a real" | | 15 | "He nudged Ptolemy gently aside" | | 16 | "She stepped back anyway." | | 17 | "He moved through the flat" | | 18 | "His gaze traveled over Eva's" | | 19 | "He didn't touch anything." |
| | ratio | 0.902 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 51 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 24 | | technicalSentenceCount | 9 | | matches | | 0 | "Lucien Moreau stood with one hand resting on the ivory handle of his cane and the other tucked into the pocket of his charcoal jacket, as though he had simply m…" | | 1 | "His platinum hair was slicked back in that careful, deliberate way that had always suggested he'd spent considerable time before a mirror and would absolutely d…" | | 2 | "Ptolemy appeared from somewhere behind her ankles, wound once around her calf, and then padded directly toward Lucien with the specific, treacherous affection t…" | | 3 | "He moved through the flat the way he always moved through spaces that were not his — with a careful, observant stillness, as though cataloguing the room before …" | | 4 | "His gaze traveled over Eva's stacked research notes, the scrolls pinned to the walls with drawing pins and stubborn hope, the pillar of paperbacks that had been…" | | 5 | "He didn't move out of her way and she had to pass close enough that she caught the faint cedar-and-smoke scent of him, which was unfair and she resented it." | | 6 | "She'd expected something oblique, an information request dressed in pleasantries, the particular brand of sideways communication he'd perfected over however man…" | | 7 | "She recognized it because she knew his face, which was its own kind of problem." | | 8 | "Inside, the only sound was Lucien moving around her borrowed kitchen with quiet, careful competence, as though this too was something he'd been invited to do." |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 17 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 13 | | fancyCount | 1 | | fancyTags | | | dialogueSentences | 44 | | tagDensity | 0.295 | | leniency | 0.591 | | rawRatio | 0.077 | | effectiveRatio | 0.045 | |