| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 16 | | adverbTagCount | 2 | | adverbTags | | 0 | "Quinn spoke slowly [slowly]" | | 1 | "she said quietly [quietly]" |
| | dialogueSentences | 46 | | tagDensity | 0.348 | | leniency | 0.696 | | rawRatio | 0.125 | | effectiveRatio | 0.087 | |
| 87.14% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1166 | | totalAiIsmAdverbs | 3 | | found | | 0 | | adverb | "deliberately" | | count | 1 |
| | 1 | | | 2 | |
| | highlights | | 0 | "deliberately" | | 1 | "gently" | | 2 | "slowly" |
| |
| 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) | |
| 74.27% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1166 | | totalAiIsms | 6 | | found | | | highlights | | 0 | "mosaic" | | 1 | "traced" | | 2 | "etched" | | 3 | "quivered" | | 4 | "could feel" | | 5 | "flickered" |
| |
| 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 | 78 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 2 | | narrationSentences | 78 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 107 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 37 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 1 | | markdownWords | 2 | | totalWords | 1161 | | ratio | 0.002 | | matches | | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 14 | | unquotedAttributions | 0 | | matches | (empty) | |
| 16.67% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 42 | | wordCount | 765 | | uniqueNames | 7 | | maxNameDensity | 2.61 | | worstName | "Quinn" | | maxWindowNameDensity | 4.5 | | worstWindowName | "Cole" | | discoveredNames | | Harlow | 1 | | Quinn | 20 | | Tube | 1 | | Cole | 17 | | Veil | 1 | | Market | 1 | | Morris | 1 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Cole" | | 3 | "Morris" |
| | places | (empty) | | globalScore | 0.193 | | windowScore | 0.167 | |
| 0.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 50 | | glossingSentenceCount | 3 | | matches | | 0 | "not quite touching the air above it" | | 1 | "not quite a tattoo—more like a brand, healed over years into a pale, puckered swirl of scar tissue" | | 2 | "lines that seemed to shift when she looked at them directly" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.861 | | wordCount | 1161 | | matches | | 0 | "not north but directly back toward the body" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 107 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 47 | | mean | 24.7 | | std | 20.13 | | cv | 0.815 | | sampleLengths | | 0 | 5 | | 1 | 18 | | 2 | 70 | | 3 | 28 | | 4 | 38 | | 5 | 13 | | 6 | 26 | | 7 | 52 | | 8 | 5 | | 9 | 22 | | 10 | 15 | | 11 | 66 | | 12 | 10 | | 13 | 35 | | 14 | 8 | | 15 | 12 | | 16 | 12 | | 17 | 8 | | 18 | 3 | | 19 | 56 | | 20 | 14 | | 21 | 32 | | 22 | 39 | | 23 | 3 | | 24 | 15 | | 25 | 68 | | 26 | 14 | | 27 | 10 | | 28 | 44 | | 29 | 10 | | 30 | 16 | | 31 | 46 | | 32 | 16 | | 33 | 46 | | 34 | 5 | | 35 | 2 | | 36 | 47 | | 37 | 3 | | 38 | 2 | | 39 | 62 | | 40 | 3 | | 41 | 23 | | 42 | 38 | | 43 | 56 | | 44 | 5 | | 45 | 21 | | 46 | 19 |
| |
| 91.77% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 3 | | totalSentences | 78 | | matches | | 0 | "been sealed" | | 1 | "were dismantled" | | 2 | "was etched" |
| |
| 46.15% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 3 | | totalVerbs | 130 | | matches | | 0 | "wasn't looking" | | 1 | "was holding" | | 2 | "was forming" |
| |
| 9.35% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 5 | | semicolonCount | 0 | | flaggedSentences | 5 | | totalSentences | 107 | | ratio | 0.047 | | matches | | 0 | "Something else underneath—sweet and chemical, like burnt sugar someone had tried to mask with bleach." | | 1 | "The victim's forearm bore a faded mark, not quite a tattoo—more like a brand, healed over years into a pale, puckered swirl of scar tissue." | | 2 | "The wound was visible now—clean, surgical, exactly centred on the sternum." | | 3 | "She was holding a small object she'd found beneath the body—a bone token, carved into the shape of a key." | | 4 | "Cole's expression flickered between disbelief and something else—something Quinn recognised as the exact same look she'd seen in the mirror three years ago, when DS Morris had told her about the case that would kill him." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 771 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 20 | | adverbRatio | 0.02594033722438392 | | lyAdverbCount | 6 | | lyAdverbRatio | 0.007782101167315175 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 107 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 107 | | mean | 10.85 | | std | 7.93 | | cv | 0.731 | | sampleLengths | | 0 | 5 | | 1 | 2 | | 2 | 1 | | 3 | 15 | | 4 | 13 | | 5 | 30 | | 6 | 15 | | 7 | 12 | | 8 | 9 | | 9 | 12 | | 10 | 7 | | 11 | 9 | | 12 | 9 | | 13 | 20 | | 14 | 4 | | 15 | 9 | | 16 | 17 | | 17 | 9 | | 18 | 8 | | 19 | 12 | | 20 | 12 | | 21 | 11 | | 22 | 1 | | 23 | 8 | | 24 | 5 | | 25 | 4 | | 26 | 18 | | 27 | 6 | | 28 | 9 | | 29 | 3 | | 30 | 25 | | 31 | 17 | | 32 | 21 | | 33 | 5 | | 34 | 5 | | 35 | 15 | | 36 | 20 | | 37 | 4 | | 38 | 4 | | 39 | 9 | | 40 | 3 | | 41 | 12 | | 42 | 8 | | 43 | 2 | | 44 | 1 | | 45 | 26 | | 46 | 30 | | 47 | 10 | | 48 | 4 | | 49 | 27 |
| |
| 65.42% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 5 | | diversityRatio | 0.4205607476635514 | | totalSentences | 107 | | uniqueOpeners | 45 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 64 | | matches | (empty) | | ratio | 0 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 11 | | totalSentences | 64 | | matches | | 0 | "It had spread in a" | | 1 | "She studied the pattern without" | | 2 | "She followed the line of" | | 3 | "She moved past Cole toward" | | 4 | "She pulled it back." | | 5 | "She'd wrapped it in her" | | 6 | "She was holding a small" | | 7 | "It was lighter than bone" | | 8 | "She turned it over." | | 9 | "She looked at the clean" | | 10 | "she said quietly" |
| | ratio | 0.172 | |
| 38.13% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 54 | | totalSentences | 64 | | matches | | 0 | "The smell hit her first." | | 1 | "Something else underneath—sweet and chemical," | | 2 | "Detective Harlow Quinn ducked under" | | 3 | "The abandoned Tube station had" | | 4 | "Quinn stopped at the edge" | | 5 | "It had spread in a" | | 6 | "She studied the pattern without" | | 7 | "DS Cole stepped up beside" | | 8 | "Quinn tilted her head." | | 9 | "Cole said, and her tone" | | 10 | "Quinn crouched, keeping her hands" | | 11 | "The victim wore a navy" | | 12 | "The wound had bled through" | | 13 | "She followed the line of" | | 14 | "Cole flipped a page." | | 15 | "Quinn pointed at the blood" | | 16 | "Cole looked down." | | 17 | "The body lay on its" | | 18 | "Quinn traced the direction of" | | 19 | "Cole's pen stopped moving." |
| | ratio | 0.844 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 64 | | matches | (empty) | | ratio | 0 | |
| 71.43% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 30 | | technicalSentenceCount | 3 | | matches | | 0 | "The Veil Market, from what she'd gathered in her off-hours research, was a rotating underground bazaar that shifted locations every full moon." | | 1 | "She looked at the clean wound, the expensive coat, the empty pockets, the man who had stood still and accepted death." | | 2 | "Cole's expression flickered between disbelief and something else—something Quinn recognised as the exact same look she'd seen in the mirror three years ago, whe…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 16 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 8 | | fancyCount | 1 | | fancyTags | | 0 | "Quinn spoke slowly (speak)" |
| | dialogueSentences | 46 | | tagDensity | 0.174 | | leniency | 0.348 | | rawRatio | 0.125 | | effectiveRatio | 0.043 | |