| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 13 | | adverbTagCount | 1 | | adverbTags | | 0 | "Silas moved back [back]" |
| | dialogueSentences | 43 | | tagDensity | 0.302 | | leniency | 0.605 | | rawRatio | 0.077 | | effectiveRatio | 0.047 | |
| 100.00% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1420 | | totalAiIsmAdverbs | 0 | | found | (empty) | | highlights | (empty) | |
| 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) | |
| 57.75% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1420 | | totalAiIsms | 12 | | found | | | highlights | | 0 | "flickered" | | 1 | "mosaic" | | 2 | "flicked" | | 3 | "weight" | | 4 | "unreadable" | | 5 | "eyebrow" | | 6 | "traced" | | 7 | "flicker" | | 8 | "shattered" | | 9 | "silence" | | 10 | "unspoken" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 1 | | maxInWindow | 1 | | found | | 0 | | label | "hung in the air" | | count | 1 |
|
| | highlights | | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 89 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 0 | | narrationSentences | 89 | | filterMatches | (empty) | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 118 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 65 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1418 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 9 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 21 | | wordCount | 1103 | | uniqueNames | 8 | | maxNameDensity | 0.73 | | worstName | "Silas" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Silas" | | discoveredNames | | Raven | 2 | | Nest | 2 | | Soho | 2 | | Carter | 1 | | Cardiff | 1 | | Silas | 8 | | Rory | 4 | | London | 1 |
| | persons | | 0 | "Raven" | | 1 | "Nest" | | 2 | "Carter" | | 3 | "Silas" | | 4 | "Rory" |
| | places | | 0 | "Soho" | | 1 | "Cardiff" | | 2 | "London" |
| | globalScore | 1 | | windowScore | 1 | |
| 71.88% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 64 | | glossingSentenceCount | 2 | | matches | | 0 | "felt like the inside of a memory" | | 1 | "as if looking too long would burn" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1418 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 118 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 58 | | mean | 24.45 | | std | 23.09 | | cv | 0.944 | | sampleLengths | | 0 | 99 | | 1 | 60 | | 2 | 20 | | 3 | 1 | | 4 | 11 | | 5 | 58 | | 6 | 2 | | 7 | 29 | | 8 | 46 | | 9 | 39 | | 10 | 4 | | 11 | 9 | | 12 | 43 | | 13 | 18 | | 14 | 46 | | 15 | 8 | | 16 | 25 | | 17 | 4 | | 18 | 23 | | 19 | 4 | | 20 | 5 | | 21 | 30 | | 22 | 83 | | 23 | 2 | | 24 | 2 | | 25 | 13 | | 26 | 7 | | 27 | 41 | | 28 | 2 | | 29 | 1 | | 30 | 54 | | 31 | 13 | | 32 | 31 | | 33 | 37 | | 34 | 2 | | 35 | 20 | | 36 | 10 | | 37 | 3 | | 38 | 20 | | 39 | 21 | | 40 | 86 | | 41 | 39 | | 42 | 34 | | 43 | 4 | | 44 | 4 | | 45 | 1 | | 46 | 34 | | 47 | 37 | | 48 | 21 | | 49 | 24 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 0 | | totalSentences | 89 | | matches | (empty) | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 1 | | totalVerbs | 174 | | matches | | |
| 100.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 2 | | semicolonCount | 0 | | flaggedSentences | 1 | | totalSentences | 118 | | ratio | 0.008 | | matches | | 0 | "He wanted to pull her into a hug, but the way she held herself—shoulders squared, weight on the balls of her feet, ready to move—stopped him." |
| |
| 94.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1113 | | adjectiveStacks | 1 | | stackExamples | | 0 | "small crescent-shaped scar" |
| | adverbCount | 24 | | adverbRatio | 0.0215633423180593 | | lyAdverbCount | 1 | | lyAdverbRatio | 0.0008984725965858042 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 118 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 118 | | mean | 12.02 | | std | 10.02 | | cv | 0.834 | | sampleLengths | | 0 | 22 | | 1 | 19 | | 2 | 11 | | 3 | 6 | | 4 | 41 | | 5 | 5 | | 6 | 19 | | 7 | 36 | | 8 | 3 | | 9 | 11 | | 10 | 6 | | 11 | 1 | | 12 | 11 | | 13 | 16 | | 14 | 12 | | 15 | 16 | | 16 | 14 | | 17 | 2 | | 18 | 10 | | 19 | 19 | | 20 | 21 | | 21 | 11 | | 22 | 14 | | 23 | 39 | | 24 | 4 | | 25 | 9 | | 26 | 6 | | 27 | 26 | | 28 | 11 | | 29 | 11 | | 30 | 7 | | 31 | 19 | | 32 | 19 | | 33 | 8 | | 34 | 8 | | 35 | 6 | | 36 | 13 | | 37 | 3 | | 38 | 3 | | 39 | 4 | | 40 | 10 | | 41 | 5 | | 42 | 8 | | 43 | 4 | | 44 | 5 | | 45 | 30 | | 46 | 3 | | 47 | 38 | | 48 | 20 | | 49 | 22 |
| |
| 42.09% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 12 | | diversityRatio | 0.3135593220338983 | | totalSentences | 118 | | uniqueOpeners | 37 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 3 | | totalSentences | 87 | | matches | | 0 | "Bright blue eyes, the same" | | 1 | "Then she smoothed her face" | | 2 | "Such a small thing." |
| | ratio | 0.034 | |
| 0.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 48 | | totalSentences | 87 | | matches | | 0 | "She blinked in the dim" | | 1 | "He polished a tumbler with" | | 2 | "He moved to set the" | | 3 | "He looked up." | | 4 | "His hazel eyes passed over" | | 5 | "She stepped into the light," | | 6 | "They flicked to the door" | | 7 | "She set the bag down" | | 8 | "Her left wrist caught the" | | 9 | "He had told her scars" | | 10 | "She had scrunched her nose" | | 11 | "He came around the bar," | | 12 | "He stopped a few feet" | | 13 | "He wanted to pull her" | | 14 | "She nodded at the maps" | | 15 | "He pulled a bottle of" | | 16 | "He slid the tumbler toward" | | 17 | "She wrapped her fingers around" | | 18 | "She didn't drink." | | 19 | "She held it." |
| | ratio | 0.552 | |
| 5.98% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 79 | | totalSentences | 87 | | matches | | 0 | "The green neon sign above" | | 1 | "Aurora Carter pushed through the" | | 2 | "The smell of lemon polish" | | 3 | "She blinked in the dim" | | 4 | "The walls were a mosaic" | | 5 | "Silas stood behind the bar." | | 6 | "He polished a tumbler with" | | 7 | "He moved to set the" | | 8 | "He looked up." | | 9 | "His hazel eyes passed over" | | 10 | "The cloth stilled against the" | | 11 | "The name hung in the" | | 12 | "She stepped into the light," | | 13 | "They flicked to the door" | | 14 | "She set the bag down" | | 15 | "Her left wrist caught the" | | 16 | "Silas remembered a girl with" | | 17 | "He had told her scars" | | 18 | "She had scrunched her nose" | | 19 | "He came around the bar," |
| | ratio | 0.908 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 87 | | matches | (empty) | | ratio | 0 | |
| 29.22% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 44 | | technicalSentenceCount | 7 | | matches | | 0 | "The walls were a mosaic of old maps and black-and-white photographs, coastlines of countries that had since changed names, faces of men who had since changed al…" | | 1 | "He moved to set the glass down, and the slight limp in his left leg made the motion uneven, a hitch in the step of a man who had learned to carry pain without s…" | | 2 | "Straight shoulder-length black hair framed a face that had lost its roundness." | | 3 | "He came around the bar, the limp slowing him just enough for her to see the grey streaks in his auburn hair, the neatly trimmed beard that hadn't been there the…" | | 4 | "He had been a man who could dismantle a government with a well-placed lie, and he had let a promise slip through his fingers." | | 5 | "He had seen it in soldiers, in agents, in women who walked into embassies with foundation covering bruises." | | 6 | "Rory tightened her grip on the key until the brass bit into her palm, feeling the edge of it, sharp and real, and she stood there in the dim light of the Raven'…" |
| |
| 48.08% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 13 | | uselessAdditionCount | 2 | | matches | | 0 | "The word came out, final" | | 1 | "He held up, the signet ring catching the light" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | |