| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 24 | | adverbTagCount | 2 | | adverbTags | | 0 | "Quinn spun around [around]" | | 1 | "Quinn walked back [back]" |
| | dialogueSentences | 45 | | tagDensity | 0.533 | | leniency | 1 | | rawRatio | 0.083 | | effectiveRatio | 0.083 | |
| 93.32% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1497 | | 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) | |
| 9.82% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1497 | | totalAiIsms | 27 | | found | | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 5 | | | 6 | | | 7 | | | 8 | | | 9 | | | 10 | | | 11 | | | 12 | | | 13 | | | 14 | | | 15 | | | 16 | | | 17 | | | 18 | | | 19 | | | 20 | | | 21 | | | 22 | | | 23 | | | 24 | | | 25 | |
| | highlights | | 0 | "stark" | | 1 | "intricate" | | 2 | "scanned" | | 3 | "chaotic" | | 4 | "perfect" | | 5 | "shimmered" | | 6 | "reminder" | | 7 | "weight" | | 8 | "chill" | | 9 | "traced" | | 10 | "warmth" | | 11 | "vibrated" | | 12 | "silence" | | 13 | "resolved" | | 14 | "standard" | | 15 | "firmly" | | 16 | "pulse" | | 17 | "raced" | | 18 | "eyebrow" | | 19 | "pristine" | | 20 | "etched" | | 21 | "trembled" | | 22 | "intensity" | | 23 | "flickered" | | 24 | "gloom" | | 25 | "rhythmic" |
| |
| 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 | 116 | | matches | (empty) | |
| 81.28% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 4 | | narrationSentences | 116 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 138 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 34 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1492 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 13 | | unquotedAttributions | 0 | | matches | (empty) | |
| 50.81% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 44 | | wordCount | 1109 | | uniqueNames | 11 | | maxNameDensity | 1.98 | | worstName | "Quinn" | | maxWindowNameDensity | 3 | | worstWindowName | "Quinn" | | discoveredNames | | Camden | 2 | | Lock | 1 | | Harlow | 1 | | Quinn | 22 | | Friday | 1 | | London | 2 | | Miller | 11 | | Morris | 1 | | Veil | 1 | | Compass | 1 | | North | 1 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Miller" | | 3 | "Morris" |
| | places | | 0 | "Camden" | | 1 | "Lock" | | 2 | "London" |
| | globalScore | 0.508 | | windowScore | 0.667 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 84 | | glossingSentenceCount | 1 | | matches | | 0 | "shadows that seemed to move independently of the objects casting them" |
| |
| 65.95% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 2 | | per1kWords | 1.34 | | wordCount | 1492 | | matches | | 0 | "Not the residual heat of the day, but an active, generating warmth" | | 1 | "Not random swirls, but geometric shapes" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 138 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 44 | | mean | 33.91 | | std | 19.42 | | cv | 0.573 | | sampleLengths | | 0 | 78 | | 1 | 29 | | 2 | 27 | | 3 | 60 | | 4 | 26 | | 5 | 10 | | 6 | 59 | | 7 | 17 | | 8 | 59 | | 9 | 29 | | 10 | 28 | | 11 | 52 | | 12 | 36 | | 13 | 22 | | 14 | 61 | | 15 | 28 | | 16 | 53 | | 17 | 18 | | 18 | 14 | | 19 | 57 | | 20 | 46 | | 21 | 12 | | 22 | 31 | | 23 | 48 | | 24 | 6 | | 25 | 22 | | 26 | 79 | | 27 | 39 | | 28 | 44 | | 29 | 9 | | 30 | 43 | | 31 | 6 | | 32 | 1 | | 33 | 27 | | 34 | 24 | | 35 | 62 | | 36 | 35 | | 37 | 15 | | 38 | 15 | | 39 | 12 | | 40 | 46 | | 41 | 37 | | 42 | 28 | | 43 | 42 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 116 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 188 | | matches | (empty) | |
| 100.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 1 | | semicolonCount | 1 | | flaggedSentences | 2 | | totalSentences | 138 | | ratio | 0.014 | | matches | | 0 | "The ash wasn't just dust; it clung to the fabric in intricate, swirling patterns that looked deliberate." | | 1 | "The memory of DS Morris flashed behind her eyes—his confused expression, the way the shadows in that warehouse had seemed to detach themselves from the walls, the silence before the scream." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 695 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 13 | | adverbRatio | 0.01870503597122302 | | lyAdverbCount | 4 | | lyAdverbRatio | 0.0057553956834532375 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 138 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 138 | | mean | 10.81 | | std | 6.65 | | cv | 0.615 | | sampleLengths | | 0 | 24 | | 1 | 15 | | 2 | 17 | | 3 | 10 | | 4 | 1 | | 5 | 11 | | 6 | 17 | | 7 | 12 | | 8 | 12 | | 9 | 15 | | 10 | 5 | | 11 | 13 | | 12 | 17 | | 13 | 7 | | 14 | 18 | | 15 | 6 | | 16 | 16 | | 17 | 4 | | 18 | 10 | | 19 | 15 | | 20 | 17 | | 21 | 10 | | 22 | 7 | | 23 | 10 | | 24 | 9 | | 25 | 8 | | 26 | 3 | | 27 | 5 | | 28 | 14 | | 29 | 18 | | 30 | 6 | | 31 | 13 | | 32 | 8 | | 33 | 13 | | 34 | 8 | | 35 | 5 | | 36 | 23 | | 37 | 15 | | 38 | 13 | | 39 | 24 | | 40 | 15 | | 41 | 4 | | 42 | 17 | | 43 | 15 | | 44 | 7 | | 45 | 9 | | 46 | 2 | | 47 | 31 | | 48 | 2 | | 49 | 17 |
| |
| 62.77% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 9 | | diversityRatio | 0.41605839416058393 | | totalSentences | 137 | | uniqueOpeners | 57 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 4 | | totalSentences | 105 | | matches | | 0 | "Too quiet for a Friday" | | 1 | "Instead, a fine, grey ash" | | 2 | "Then died, plunging the alley" | | 3 | "Only the faint, bruised purple" |
| | ratio | 0.038 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 25 | | totalSentences | 105 | | matches | | 0 | "She checked the worn leather" | | 1 | "He kicked a discarded takeaway" | | 2 | "His clothes were dry despite" | | 3 | "She pulled a pair of" | | 4 | "She reached out, hovering a" | | 5 | "She scanned the alley walls." | | 6 | "It shimmered with a bruised" | | 7 | "Her knees popped, a reminder" | | 8 | "She moved toward the wall," | | 9 | "She traced the edge of" | | 10 | "She turned back to the" | | 11 | "They matched the sigils she'd" | | 12 | "She sketched the symbol on" | | 13 | "She knelt, pressing her palm" | | 14 | "She looked at the wall" | | 15 | "Her mind raced through the" | | 16 | "She noticed something she had" | | 17 | "she repeated, louder this time" | | 18 | "She reached into her pocket" | | 19 | "She had confiscated it from" |
| | ratio | 0.238 | |
| 26.67% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 91 | | totalSentences | 105 | | matches | | 0 | "Rain slicked the cobblestones of" | | 1 | "Detective Harlow Quinn ducked under" | | 2 | "The air smelled of stale" | | 3 | "She checked the worn leather" | | 4 | "Sergeant Miller stood over the" | | 5 | "He kicked a discarded takeaway" | | 6 | "Miller said, rubbing the back" | | 7 | "Quinn crouched beside the body." | | 8 | "The young man lay on" | | 9 | "His clothes were dry despite" | | 10 | "Quinn repeated, her voice flat" | | 11 | "She pulled a pair of" | | 12 | "Quinn leaned closer" | | 13 | "The ash wasn't just dust;" | | 14 | "She reached out, hovering a" | | 15 | "The hair on her arm" | | 16 | "A static charge prickled against" | | 17 | "Miller pointed to the victim's" | | 18 | "Quinn ignored him." | | 19 | "She scanned the alley walls." |
| | ratio | 0.867 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 105 | | matches | (empty) | | ratio | 0 | |
| 23.81% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 48 | | technicalSentenceCount | 8 | | matches | | 0 | "Rain slicked the cobblestones of the alley behind the Camden Lock market, turning the grime into a black slurry that clung to boot soles." | | 1 | "The ash wasn't just dust; it clung to the fabric in intricate, swirling patterns that looked deliberate." | | 2 | "Not the residual heat of the day, but an active, generating warmth that vibrated against her fingertips." | | 3 | "Three years of digging through cold cases and dead ends, searching for a logic that didn't exist." | | 4 | "Not random swirls, but geometric shapes that hurt the eyes if she focused too long." | | 5 | "Spongy, as if the concrete had lost its structural integrity." | | 6 | "The casing bore a patina of verdigris, and the face was etched with protective sigils that matched the ash on the victim's jacket." | | 7 | "Only the faint, bruised purple glow from the wall remained, casting long, distorted shadows that seemed to move independently of the objects casting them." |
| |
| 0.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 24 | | uselessAdditionCount | 6 | | matches | | 0 | "Quinn repeated, her voice flat" | | 1 | "Quinn stepped, her boots crunching on the grit" | | 2 | "Miller said, his tone dipping into that patronizing register she hated" | | 3 | "Quinn said, her voice low and dangerous" | | 4 | "They matched, a case filed under 'Vandalism' but marked 'Unexplained Disappearance'" | | 5 | "Quinn said, her voice cutting through the damp air" |
| |
| 0.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 14 | | fancyCount | 7 | | fancyTags | | 0 | "Quinn repeated (repeat)" | | 1 | "Quinn ordered (order)" | | 2 | "she muttered (mutter)" | | 3 | "Miller called out (call out)" | | 4 | "Quinn whispered (whisper)" | | 5 | "she repeated (repeat)" | | 6 | "Quinn ordered (order)" |
| | dialogueSentences | 45 | | tagDensity | 0.311 | | leniency | 0.622 | | rawRatio | 0.5 | | effectiveRatio | 0.311 | |