| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 8 | | adverbTagCount | 1 | | adverbTags | | 0 | "He I stepped aside [aside]" |
| | dialogueSentences | 28 | | tagDensity | 0.286 | | leniency | 0.571 | | rawRatio | 0.125 | | effectiveRatio | 0.071 | |
| 93.81% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 808 | | totalAiIsmAdverbs | 1 | | found | | | highlights | | |
| 60.00% | AI-ism character names | Target: 0 AI-default names (17 tracked, −20% each) | | codexExemptions | (empty) | | found | | |
| 100.00% | AI-ism location names | Target: 0 AI-default location names (33 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 62.87% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 808 | | totalAiIsms | 6 | | found | | | highlights | | 0 | "flicked" | | 1 | "pulse" | | 2 | "silence" | | 3 | "wavered" | | 4 | "flicker" | | 5 | "constructed" |
| |
| 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 | 57 | | matches | (empty) | |
| 92.73% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 2 | | hedgeCount | 0 | | narrationSentences | 57 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 73 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 83 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 819 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 8 | | unquotedAttributions | 0 | | matches | (empty) | |
| 66.67% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 24 | | wordCount | 628 | | uniqueNames | 16 | | maxNameDensity | 0.96 | | worstName | "Protect" | | maxWindowNameDensity | 3 | | worstWindowName | "Protect" | | discoveredNames | | Moreau | 1 | | Silas | 1 | | Silence | 1 | | HisThe | 1 | | Ptolemy | 2 | | TheFor | 1 | | Protect | 6 | | Evans | 1 | | Blackwood | 1 | | Elevate | 1 | | Lucy | 1 | | TheI | 1 | | You | 2 | | TheEvan | 1 | | Evan | 2 | | Hunt | 1 |
| | persons | | 0 | "Moreau" | | 1 | "Silas" | | 2 | "Silence" | | 3 | "Evans" | | 4 | "Blackwood" | | 5 | "Lucy" | | 6 | "TheI" | | 7 | "Evan" |
| | places | (empty) | | globalScore | 1 | | windowScore | 0.667 | |
| 14.86% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 37 | | glossingSentenceCount | 2 | | matches | | 0 | "smelled like old wood and whatever Silas w" | | 1 | "quite anger, wasn't quite hurt" | | 2 | "quite hurt" |
| |
| 77.90% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 1.221 | | wordCount | 819 | | matches | | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 73 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 46 | | mean | 17.8 | | std | 17.23 | | cv | 0.968 | | sampleLengths | | 0 | 10 | | 1 | 53 | | 2 | 1 | | 3 | 9 | | 4 | 4 | | 5 | 5 | | 6 | 41 | | 7 | 9 | | 8 | 56 | | 9 | 14 | | 10 | 6 | | 11 | 15 | | 12 | 4 | | 13 | 8 | | 14 | 48 | | 15 | 25 | | 16 | 18 | | 17 | 2 | | 18 | 33 | | 19 | 4 | | 20 | 1 | | 21 | 2 | | 22 | 10 | | 23 | 31 | | 24 | 4 | | 25 | 3 | | 26 | 56 | | 27 | 21 | | 28 | 5 | | 29 | 45 | | 30 | 5 | | 31 | 20 | | 32 | 13 | | 33 | 20 | | 34 | 3 | | 35 | 13 | | 36 | 67 | | 37 | 17 | | 38 | 14 | | 39 | 35 | | 40 | 30 | | 41 | 11 | | 42 | 10 | | 43 | 14 | | 44 | 2 | | 45 | 2 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 0 | | totalSentences | 57 | | matches | (empty) | |
| 91.60% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 123 | | matches | | 0 | "was cooking" | | 1 | "was bluffing" |
| |
| 64.58% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 2 | | semicolonCount | 1 | | flaggedSentences | 2 | | totalSentences | 73 | | ratio | 0.027 | | matches | | 0 | "- Because blackmail. Blackmail! Protect yourself? Protect someone? The Because Evans's Blackwood got around doing that distribute the threats, Elevate? Four're you's supply? Someone who abandon the and could want me protect her, we think Lucy. Could just. hear me turning him back against WED either TheI can at trust his deflected protect him from damaging her He's. The kill, threaten him, we discover him?Recovering? Recovering? The - Because the I can't trust me after I I've the I can't repay. can't trust me," | | 1 | "The Even one where't've answered his -Protect who; things Evan knows about not this is She She - Hunt me?" |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 496 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 16 | | adverbRatio | 0.03225806451612903 | | lyAdverbCount | 3 | | lyAdverbRatio | 0.006048387096774193 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 73 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 73 | | mean | 11.22 | | std | 11.95 | | cv | 1.065 | | sampleLengths | | 0 | 10 | | 1 | 28 | | 2 | 25 | | 3 | 1 | | 4 | 9 | | 5 | 4 | | 6 | 5 | | 7 | 9 | | 8 | 21 | | 9 | 11 | | 10 | 9 | | 11 | 6 | | 12 | 23 | | 13 | 10 | | 14 | 17 | | 15 | 14 | | 16 | 6 | | 17 | 11 | | 18 | 4 | | 19 | 4 | | 20 | 8 | | 21 | 9 | | 22 | 22 | | 23 | 1 | | 24 | 16 | | 25 | 25 | | 26 | 9 | | 27 | 9 | | 28 | 2 | | 29 | 4 | | 30 | 10 | | 31 | 12 | | 32 | 7 | | 33 | 4 | | 34 | 1 | | 35 | 2 | | 36 | 10 | | 37 | 5 | | 38 | 11 | | 39 | 15 | | 40 | 7 | | 41 | 15 | | 42 | 41 | | 43 | 21 | | 44 | 4 | | 45 | 1 | | 46 | 30 | | 47 | 11 | | 48 | 4 | | 49 | 5 |
| |
| 93.15% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 5 | | diversityRatio | 0.6301369863013698 | | totalSentences | 73 | | uniqueOpeners | 46 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 50 | | matches | (empty) | | ratio | 0 | |
| 92.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 16 | | totalSentences | 50 | | matches | | 0 | "His heterochromatic eyes, one amber" | | 1 | "His gaze flicked past my" | | 2 | "I recognised it because I'd" | | 3 | "I didn't move from the" | | 4 | "He adjusted his grip on" | | 5 | "I studied his face for" | | 6 | "His expression held that same" | | 7 | "My fingers brushed the crescent" | | 8 | "It lived and died fast" | | 9 | "He I stepped aside" | | 10 | "My bedroom. a sitting room," | | 11 | "She snap the shut." | | 12 | "He moved through the flat" | | 13 | "I wanted me be unourageded" | | 14 | "I need to" | | 15 | "I wasn't the you Something" |
| | ratio | 0.32 | |
| 100.00% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 35 | | totalSentences | 50 | | matches | | 0 | "Thedoor swung open before I" | | 1 | "Lucien Moreau stood in my" | | 2 | "His heterochromatic eyes, one amber" | | 3 | "His gaze flicked past my" | | 4 | "The movement was subtle, practised," | | 5 | "I recognised it because I'd" | | 6 | "I didn't move from the" | | 7 | "The narrow corridor behind me" | | 8 | "He adjusted his grip on" | | 9 | "The words landed like stones" | | 10 | "I studied his face for" | | 11 | "His expression held that same" | | 12 | "My fingers brushed the crescent" | | 13 | "Silence stretched between us." | | 14 | "Someone laughed, the sound thin" | | 15 | "Lucien's attention never wavered from" | | 16 | "Something shifted behind his eyes." | | 17 | "A flicker of something that" | | 18 | "It lived and died fast" | | 19 | "He I stepped aside" |
| | ratio | 0.7 | |
| 100.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 5 | | totalSentences | 50 | | matches | | 0 | "Now I kept my hand" | | 1 | "- Because blackmail. Blackmail! Protect" | | 2 | "- And a half weeks?" | | 3 | "- But you made it?" | | 4 | "- Because they was?" |
| | ratio | 0.1 | |
| 40.82% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 21 | | technicalSentenceCount | 3 | | matches | | 0 | "The movement was subtle, practised, the kind of quick assessment that came from years of reading rooms for exits and threats." | | 1 | "He moved through the flat like fast, sweeping past the bank to signs and Ptolemy wound the who launcheded an waiting for he be on one eye on meet mine." | | 2 | "- Because blackmail. Blackmail! Protect yourself? Protect someone? The Because Evans's Blackwood got around doing that distribute the threats, Elevate? Four're …" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 7 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | |