| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 23 | | adverbTagCount | 2 | | adverbTags | | 0 | "He gestured vaguely [vaguely]" | | 1 | "He pushed away [away]" |
| | dialogueSentences | 50 | | tagDensity | 0.46 | | leniency | 0.92 | | rawRatio | 0.087 | | effectiveRatio | 0.08 | |
| 73.56% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1702 | | totalAiIsmAdverbs | 9 | | found | | | highlights | | 0 | "slightly" | | 1 | "lightly" | | 2 | "utterly" | | 3 | "carefully" | | 4 | "very" | | 5 | "completely" |
| |
| 100.00% | AI-ism character names | Target: 0 AI-default names (16 tracked, −20% each) | | codexExemptions | | | found | (empty) | |
| 100.00% | AI-ism location names | Target: 0 AI-default location names (33 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 53.00% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1702 | | totalAiIsms | 16 | | found | | | highlights | | 0 | "weight" | | 1 | "familiar" | | 2 | "silence" | | 3 | "echoes" | | 4 | "traced" | | 5 | "scanning" | | 6 | "flickered" | | 7 | "stomach" | | 8 | "determined" | | 9 | "calculated" | | 10 | "rhythmic" | | 11 | "warmth" |
| |
| 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 | 102 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 0 | | narrationSentences | 102 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 128 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 54 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 3 | | markdownWords | 5 | | totalWords | 1687 | | ratio | 0.003 | | matches | | 0 | "The Raven’s Nest" | | 1 | "click" | | 2 | "read" |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 21 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 22 | | wordCount | 1124 | | uniqueNames | 7 | | maxNameDensity | 0.98 | | worstName | "Silas" | | maxWindowNameDensity | 2 | | worstWindowName | "Silas" | | discoveredNames | | Soho | 1 | | Raven | 1 | | Evan | 2 | | Welsh | 1 | | Cardiff | 1 | | Silas | 11 | | Rory | 5 |
| | persons | | 0 | "Raven" | | 1 | "Evan" | | 2 | "Silas" | | 3 | "Rory" |
| | places | | 0 | "Soho" | | 1 | "Welsh" | | 2 | "Cardiff" |
| | globalScore | 1 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 73 | | glossingSentenceCount | 1 | | matches | | 0 | "felt like an interrogation technique" |
| |
| 81.45% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 2 | | per1kWords | 1.186 | | wordCount | 1687 | | matches | | 0 | "Not about school, but about what she *read*, what she thought about the news stori" | | 1 | "neither farewell nor" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 128 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 48 | | mean | 35.15 | | std | 26.45 | | cv | 0.753 | | sampleLengths | | 0 | 85 | | 1 | 52 | | 2 | 56 | | 3 | 33 | | 4 | 19 | | 5 | 46 | | 6 | 22 | | 7 | 25 | | 8 | 72 | | 9 | 21 | | 10 | 68 | | 11 | 11 | | 12 | 1 | | 13 | 1 | | 14 | 30 | | 15 | 82 | | 16 | 7 | | 17 | 4 | | 18 | 3 | | 19 | 22 | | 20 | 15 | | 21 | 21 | | 22 | 55 | | 23 | 40 | | 24 | 14 | | 25 | 7 | | 26 | 68 | | 27 | 61 | | 28 | 54 | | 29 | 35 | | 30 | 58 | | 31 | 32 | | 32 | 3 | | 33 | 4 | | 34 | 50 | | 35 | 43 | | 36 | 10 | | 37 | 19 | | 38 | 14 | | 39 | 12 | | 40 | 9 | | 41 | 45 | | 42 | 97 | | 43 | 8 | | 44 | 83 | | 45 | 33 | | 46 | 63 | | 47 | 74 |
| |
| 98.38% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 2 | | totalSentences | 102 | | matches | | 0 | "was supposed" | | 1 | "was gone" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 167 | | matches | | 0 | "was holding" | | 1 | "was pulling" |
| |
| 31.25% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 7 | | semicolonCount | 0 | | flaggedSentences | 5 | | totalSentences | 128 | | ratio | 0.039 | | matches | | 0 | "Rory pushed through the heavy door, the weight of her delivery bag—still faintly smelling of sesame oil and five-spice—slung across her body." | | 1 | "For a fraction of a second, something in them flickered—a rapid recalculation, like a satellite locking onto a new signal." | | 2 | "She remembered Silas from a handful of tense, polite dinners—a friend of her father’s from his own university days, a man with a quiet, watchful presence that made her adolescent self instinctively wary." | | 3 | "The old knee injury, the limp—they were just the visible parts." | | 4 | "She left a note under her glass—exact change, plus a tip—and slipped off the stool." |
| |
| 85.93% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1139 | | adjectiveStacks | 1 | | stackExamples | | | adverbCount | 53 | | adverbRatio | 0.046532045654082525 | | lyAdverbCount | 26 | | lyAdverbRatio | 0.0228270412642669 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 128 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 128 | | mean | 13.18 | | std | 10.49 | | cv | 0.796 | | sampleLengths | | 0 | 22 | | 1 | 3 | | 2 | 22 | | 3 | 9 | | 4 | 29 | | 5 | 6 | | 6 | 9 | | 7 | 32 | | 8 | 5 | | 9 | 19 | | 10 | 20 | | 11 | 17 | | 12 | 15 | | 13 | 18 | | 14 | 16 | | 15 | 3 | | 16 | 13 | | 17 | 20 | | 18 | 13 | | 19 | 4 | | 20 | 12 | | 21 | 6 | | 22 | 13 | | 23 | 8 | | 24 | 4 | | 25 | 17 | | 26 | 19 | | 27 | 9 | | 28 | 8 | | 29 | 19 | | 30 | 6 | | 31 | 9 | | 32 | 6 | | 33 | 11 | | 34 | 54 | | 35 | 3 | | 36 | 11 | | 37 | 1 | | 38 | 1 | | 39 | 7 | | 40 | 17 | | 41 | 6 | | 42 | 12 | | 43 | 33 | | 44 | 6 | | 45 | 19 | | 46 | 12 | | 47 | 7 | | 48 | 4 | | 49 | 3 |
| |
| 48.70% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 11 | | diversityRatio | 0.34375 | | totalSentences | 128 | | uniqueOpeners | 44 | |
| 35.84% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 93 | | matches | | | ratio | 0.011 | |
| 0.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 54 | | totalSentences | 93 | | matches | | 0 | "It smelled of old wood," | | 1 | "She wasn’t here for a" | | 2 | "She slid onto a stool" | | 3 | "She traced the line of" | | 4 | "she said to the broad" | | 5 | "He moved with a deliberate," | | 6 | "It was Silas." | | 7 | "His hazel eyes, usually scanning" | | 8 | "He set the glass down" | | 9 | "His voice was the same," | | 10 | "she confirmed, her own voice" | | 11 | "She wrapped her fingers around" | | 12 | "His gaze didn’t waver" | | 13 | "He leaned his forearms on" | | 14 | "It was an old-fashioned gesture," | | 15 | "It burned a clean, honest" | | 16 | "He gestured vaguely at the" | | 17 | "He said it lightly, but" | | 18 | "He pulled a cloth from" | | 19 | "She couldn’t keep the brittleness" |
| | ratio | 0.581 | |
| 3.01% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 85 | | totalSentences | 93 | | matches | | 0 | "The green neon sign hummed" | | 1 | "*The Raven’s Nest*." | | 2 | "Rory pushed through the heavy" | | 3 | "The familiar cloak of dimness" | | 4 | "It smelled of old wood," | | 5 | "She wasn’t here for a" | | 6 | "Yu-Fei had closed up early" | | 7 | "Rory was here because the" | | 8 | "The bar’s murmur was better." | | 9 | "She slid onto a stool" | | 10 | "The maps on the wall" | | 11 | "She traced the line of" | | 12 | "she said to the broad" | | 13 | "He moved with a deliberate," | | 14 | "It was Silas." | | 15 | "His hazel eyes, usually scanning" | | 16 | "He set the glass down" | | 17 | "His voice was the same," | | 18 | "she confirmed, her own voice" | | 19 | "She wrapped her fingers around" |
| | ratio | 0.914 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 93 | | matches | (empty) | | ratio | 0 | |
| 73.17% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 41 | | technicalSentenceCount | 4 | | matches | | 0 | "She remembered Silas from a handful of tense, polite dinners—a friend of her father’s from his own university days, a man with a quiet, watchful presence that m…" | | 1 | "The mind that used to dissect legal philosophies and historical paradoxes now mostly calculated tip percentages and bike routes." | | 2 | "The terrifying freedom of it, which felt too much like falling." | | 3 | "As she passed him, Silas didn’t look up from the pint he was pulling, but his hand, the one with the ring, lifted slightly in a gesture that was neither farewel…" |
| |
| 16.30% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 23 | | uselessAdditionCount | 5 | | matches | | 0 | "she confirmed, her own voice sounding strangely thin in the thick air" | | 1 | "He said, but his eyes were still doing that assessing thing, taking in her worn sneakers, the functional black trousers, the faint line of the crescent scar on her left wrist where it rested on the bar" | | 2 | "he corrected, his voice calm" | | 3 | "she said, finally" | | 4 | "He pushed away, his signet ring scraping lightly on the wood" |
| |
| 50.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 13 | | fancyCount | 5 | | fancyTags | | 0 | "she confirmed (confirm)" | | 1 | "Silas stated (state)" | | 2 | "he corrected (correct)" | | 3 | "she whispered (whisper)" | | 4 | "he agreed (agree)" |
| | dialogueSentences | 50 | | tagDensity | 0.26 | | leniency | 0.52 | | rawRatio | 0.385 | | effectiveRatio | 0.2 | |