| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 20 | | adverbTagCount | 1 | | adverbTags | | | dialogueSentences | 54 | | tagDensity | 0.37 | | leniency | 0.741 | | rawRatio | 0.05 | | effectiveRatio | 0.037 | |
| 92.05% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1258 | | totalAiIsmAdverbs | 2 | | found | | | highlights | | |
| 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) | |
| 96.03% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1258 | | totalAiIsms | 1 | | found | | | highlights | | |
| 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 | 55 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 0 | | narrationSentences | 55 | | filterMatches | (empty) | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 86 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 46 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1261 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 15 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 16 | | wordCount | 679 | | uniqueNames | 7 | | maxNameDensity | 0.59 | | worstName | "Lucien" | | maxWindowNameDensity | 1 | | worstWindowName | "Aurora" | | discoveredNames | | Aurora | 3 | | Water | 1 | | Lucien | 4 | | Moreau | 1 | | Eva | 2 | | Said | 2 | | Ptolemy | 3 |
| | persons | | 0 | "Aurora" | | 1 | "Water" | | 2 | "Lucien" | | 3 | "Moreau" | | 4 | "Eva" | | 5 | "Said" | | 6 | "Ptolemy" |
| | places | (empty) | | globalScore | 1 | | windowScore | 1 | |
| 85.90% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 39 | | glossingSentenceCount | 1 | | matches | | |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1261 | | matches | (empty) | |
| 89.15% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 2 | | totalSentences | 86 | | matches | | 0 | "hated that she'd" | | 1 | "found that she" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 47 | | mean | 26.83 | | std | 23.1 | | cv | 0.861 | | sampleLengths | | 0 | 30 | | 1 | 6 | | 2 | 48 | | 3 | 48 | | 4 | 24 | | 5 | 7 | | 6 | 34 | | 7 | 4 | | 8 | 46 | | 9 | 73 | | 10 | 9 | | 11 | 3 | | 12 | 71 | | 13 | 10 | | 14 | 45 | | 15 | 26 | | 16 | 4 | | 17 | 1 | | 18 | 10 | | 19 | 9 | | 20 | 65 | | 21 | 1 | | 22 | 4 | | 23 | 22 | | 24 | 44 | | 25 | 14 | | 26 | 20 | | 27 | 11 | | 28 | 49 | | 29 | 27 | | 30 | 51 | | 31 | 2 | | 32 | 3 | | 33 | 85 | | 34 | 23 | | 35 | 14 | | 36 | 56 | | 37 | 5 | | 38 | 19 | | 39 | 31 | | 40 | 69 | | 41 | 5 | | 42 | 7 | | 43 | 60 | | 44 | 39 | | 45 | 6 | | 46 | 21 |
| |
| 98.88% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 55 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 106 | | matches | (empty) | |
| 43.19% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 2 | | semicolonCount | 1 | | flaggedSentences | 3 | | totalSentences | 86 | | ratio | 0.035 | | matches | | 0 | "The amber eye held her; the black one swallowed everything." | | 1 | "Aurora studied him — the careful composure, the way he held himself a fraction too straight, the cane planted like he needed it for more than affect tonight." | | 2 | "He met her eyes, both of his — the amber and the black, the human half and the other." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 678 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 17 | | adverbRatio | 0.025073746312684365 | | lyAdverbCount | 5 | | lyAdverbRatio | 0.007374631268436578 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 86 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 86 | | mean | 14.66 | | std | 11.55 | | cv | 0.788 | | sampleLengths | | 0 | 30 | | 1 | 6 | | 2 | 36 | | 3 | 12 | | 4 | 26 | | 5 | 22 | | 6 | 3 | | 7 | 21 | | 8 | 7 | | 9 | 14 | | 10 | 10 | | 11 | 10 | | 12 | 4 | | 13 | 24 | | 14 | 22 | | 15 | 14 | | 16 | 28 | | 17 | 14 | | 18 | 17 | | 19 | 9 | | 20 | 3 | | 21 | 15 | | 22 | 5 | | 23 | 7 | | 24 | 10 | | 25 | 34 | | 26 | 3 | | 27 | 7 | | 28 | 39 | | 29 | 6 | | 30 | 20 | | 31 | 6 | | 32 | 4 | | 33 | 1 | | 34 | 10 | | 35 | 6 | | 36 | 3 | | 37 | 19 | | 38 | 46 | | 39 | 1 | | 40 | 4 | | 41 | 9 | | 42 | 13 | | 43 | 25 | | 44 | 2 | | 45 | 3 | | 46 | 14 | | 47 | 14 | | 48 | 13 | | 49 | 7 |
| |
| 67.05% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 4 | | diversityRatio | 0.43023255813953487 | | totalSentences | 86 | | uniqueOpeners | 37 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 2 | | totalSentences | 46 | | matches | | 0 | "Only the crescent scar on" | | 1 | "Then he set the gloves" |
| | ratio | 0.043 | |
| 28.70% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 22 | | totalSentences | 46 | | matches | | 0 | "She didn't move." | | 1 | "He tipped his head, the" | | 2 | "She had spent six weeks" | | 3 | "She stepped back and let" | | 4 | "He did, with theatrical precision," | | 5 | "She shut the door, threw" | | 6 | "He set the cane against" | | 7 | "She folded her arms" | | 8 | "He laid the gloves over" | | 9 | "She laughed, a short ugly" | | 10 | "He took a step and" | | 11 | "His jaw tightened, the only" | | 12 | "He shook his head, slow" | | 13 | "He looked away then, the" | | 14 | "She didn't decide to let" | | 15 | "They simply unfolded, the way" | | 16 | "He picked the gloves back" | | 17 | "He met her eyes, both" | | 18 | "She stood there in the" | | 19 | "She pushed her hair back" |
| | ratio | 0.478 | |
| 25.22% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 40 | | totalSentences | 46 | | matches | | 0 | "The deadbolts gave one at" | | 1 | "Aurora kept one hand on" | | 2 | "Water beaded on the ivory" | | 3 | "She didn't move." | | 4 | "Ptolemy wound between her ankles," | | 5 | "He tipped his head, the" | | 6 | "The amber eye held her;" | | 7 | "A faint pull at the" | | 8 | "The rain found its rhythm" | | 9 | "Aurora studied him — the" | | 10 | "She had spent six weeks" | | 11 | "She stepped back and let" | | 12 | "He did, with theatrical precision," | | 13 | "Books stacked to hip height." | | 14 | "Scrolls in a basket meant" | | 15 | "The lamp she'd left burning" | | 16 | "Lucien took it in with" | | 17 | "She shut the door, threw" | | 18 | "He set the cane against" | | 19 | "The amber eye never left" |
| | ratio | 0.87 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 46 | | matches | (empty) | | ratio | 0 | |
| 63.49% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 18 | | technicalSentenceCount | 2 | | matches | | 0 | "Ptolemy leapt onto the back of the sofa and settled there, tail flicking, watching them both as though they were the evening's entertainment." | | 1 | "Then he set the gloves down again, lowered himself onto the edge of the sofa, careful of the books, and Ptolemy descended at once into his lap as though they we…" |
| |
| 75.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 20 | | uselessAdditionCount | 2 | | matches | | 0 | "He tipped, the platinum hair catching the weak hallway light" | | 1 | "He shook, slow" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 5 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 54 | | tagDensity | 0.093 | | leniency | 0.185 | | rawRatio | 0 | | effectiveRatio | 0 | |