| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 29 | | adverbTagCount | 1 | | adverbTags | | | dialogueSentences | 81 | | tagDensity | 0.358 | | leniency | 0.716 | | rawRatio | 0.034 | | effectiveRatio | 0.025 | |
| 100.00% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 2003 | | 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) | |
| 67.55% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 2003 | | totalAiIsms | 13 | | found | | | highlights | | 0 | "familiar" | | 1 | "gloom" | | 2 | "scanning" | | 3 | "weight" | | 4 | "silence" | | 5 | "traced" | | 6 | "measured" | | 7 | "unspoken" | | 8 | "coded" | | 9 | "crystal" |
| |
| 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 | 113 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 1 | | narrationSentences | 113 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 164 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 59 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1993 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 15 | | unquotedAttributions | 0 | | matches | (empty) | |
| 98.63% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 31 | | wordCount | 1168 | | uniqueNames | 11 | | maxNameDensity | 1.03 | | worstName | "Silas" | | maxWindowNameDensity | 2 | | worstWindowName | "Silas" | | discoveredNames | | Carter | 1 | | Raven | 1 | | Nest | 1 | | Blackwood | 1 | | Silas | 12 | | Silence | 1 | | Soho | 1 | | Prague | 1 | | Rory | 10 | | Anhalt | 1 | | Cardiff | 1 |
| | persons | | 0 | "Carter" | | 1 | "Raven" | | 2 | "Blackwood" | | 3 | "Silas" | | 4 | "Silence" | | 5 | "Rory" |
| | places | | 0 | "Soho" | | 1 | "Prague" | | 2 | "Cardiff" |
| | globalScore | 0.986 | | windowScore | 1 | |
| 88.27% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 81 | | glossingSentenceCount | 2 | | matches | | 0 | "looked like a monument to every wrong cho" | | 1 | "felt like a gulf" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.502 | | wordCount | 1993 | | matches | | 0 | "no longer a barrier but" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 164 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 73 | | mean | 27.3 | | std | 16.65 | | cv | 0.61 | | sampleLengths | | 0 | 55 | | 1 | 27 | | 2 | 1 | | 3 | 12 | | 4 | 1 | | 5 | 40 | | 6 | 3 | | 7 | 15 | | 8 | 17 | | 9 | 17 | | 10 | 4 | | 11 | 33 | | 12 | 8 | | 13 | 26 | | 14 | 28 | | 15 | 31 | | 16 | 26 | | 17 | 11 | | 18 | 3 | | 19 | 9 | | 20 | 26 | | 21 | 26 | | 22 | 62 | | 23 | 34 | | 24 | 19 | | 25 | 2 | | 26 | 40 | | 27 | 52 | | 28 | 18 | | 29 | 22 | | 30 | 23 | | 31 | 3 | | 32 | 15 | | 33 | 20 | | 34 | 52 | | 35 | 30 | | 36 | 31 | | 37 | 43 | | 38 | 5 | | 39 | 43 | | 40 | 25 | | 41 | 48 | | 42 | 23 | | 43 | 14 | | 44 | 34 | | 45 | 64 | | 46 | 19 | | 47 | 5 | | 48 | 22 | | 49 | 25 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 0 | | totalSentences | 113 | | matches | (empty) | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 201 | | matches | (empty) | |
| 38.33% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 10 | | semicolonCount | 0 | | flaggedSentences | 6 | | totalSentences | 164 | | ratio | 0.037 | | matches | | 0 | "The height difference had always been there—six-foot-one to her five-six—but now it felt like a gulf." | | 1 | "Silas's hazel eyes measured the new angles of her face—the set of her jaw, the stillness that had replaced the restless energy of twenty-three." | | 2 | "Rory's straight black hair fell across one shoulder as she looked down at her hands—the same hands that used to flip through case files and now gripped bicycle handlebars in traffic." | | 3 | "Silas's ring tapped the counter again—soft, deliberate." | | 4 | "Rory reached across and covered the back of his right hand with her left—scar against silver—for one Anhalt of a second before withdrawing." | | 5 | "Between them the air hummed with every conversation they might have had across the missing years—coffee on wet Cardiff mornings, coded updates from the field, the simple habit of knowing the other still existed in the same city—and with every one they would never recover now that the shape of who they had become blocked the doorstances." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1184 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 38 | | adverbRatio | 0.03209459459459459 | | lyAdverbCount | 4 | | lyAdverbRatio | 0.0033783783783783786 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 164 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 164 | | mean | 12.15 | | std | 8.34 | | cv | 0.687 | | sampleLengths | | 0 | 16 | | 1 | 13 | | 2 | 14 | | 3 | 12 | | 4 | 16 | | 5 | 5 | | 6 | 6 | | 7 | 1 | | 8 | 6 | | 9 | 6 | | 10 | 1 | | 11 | 25 | | 12 | 15 | | 13 | 3 | | 14 | 12 | | 15 | 3 | | 16 | 13 | | 17 | 4 | | 18 | 17 | | 19 | 4 | | 20 | 8 | | 21 | 9 | | 22 | 16 | | 23 | 8 | | 24 | 21 | | 25 | 5 | | 26 | 15 | | 27 | 13 | | 28 | 11 | | 29 | 13 | | 30 | 7 | | 31 | 3 | | 32 | 13 | | 33 | 10 | | 34 | 4 | | 35 | 7 | | 36 | 3 | | 37 | 9 | | 38 | 7 | | 39 | 19 | | 40 | 19 | | 41 | 2 | | 42 | 5 | | 43 | 7 | | 44 | 9 | | 45 | 11 | | 46 | 22 | | 47 | 13 | | 48 | 9 | | 49 | 25 |
| |
| 54.47% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 4 | | diversityRatio | 0.34146341463414637 | | totalSentences | 164 | | uniqueOpeners | 56 | |
| 93.46% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 3 | | totalSentences | 107 | | matches | | 0 | "Just the weight of them." | | 1 | "Instead she said," | | 2 | "Just the quiet click of" |
| | ratio | 0.028 | |
| 62.99% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 42 | | totalSentences | 107 | | matches | | 0 | "She moved toward the bar," | | 1 | "His hazel eyes locked on" | | 2 | "She froze halfway across the" | | 3 | "He straightened on the stool," | | 4 | "She crossed the remaining distance" | | 5 | "He poured whiskey into a" | | 6 | "She left it untouched." | | 7 | "His voice carried the rough" | | 8 | "He wore the same quiet" | | 9 | "She glanced up, as if" | | 10 | "He tapped a finger against" | | 11 | "She traced a circle on" | | 12 | "He snorted, a short burst" | | 13 | "He had been the one" | | 14 | "His voice dropped" | | 15 | "She kept her eyes on" | | 16 | "He emptied his glass and" | | 17 | "He flexed the fingers of" | | 18 | "She turned her wrist so" | | 19 | "She set the glass down" |
| | ratio | 0.393 | |
| 39.44% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 90 | | totalSentences | 107 | | matches | | 0 | "Aurora Carter pushed open the" | | 1 | "Dust motes drifted in the" | | 2 | "She moved toward the bar," | | 3 | "A figure slumped at the" | | 4 | "Silas Blackwood lifted his head." | | 5 | "His hazel eyes locked on" | | 6 | "She froze halfway across the" | | 7 | "The name hit like cold" | | 8 | "He straightened on the stool," | | 9 | "The slight hitch in his" | | 10 | "She crossed the remaining distance" | | 11 | "He poured whiskey into a" | | 12 | "She left it untouched." | | 13 | "His voice carried the rough" | | 14 | "Silas nodded once, eyes never" | | 15 | "The neat beard framed a" | | 16 | "He wore the same quiet" | | 17 | "She glanced up, as if" | | 18 | "He tapped a finger against" | | 19 | "She traced a circle on" |
| | ratio | 0.841 | |
| 100.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 3 | | totalSentences | 107 | | matches | | 0 | "Now he watched her like" | | 1 | "Because the man she remembered" | | 2 | "Because this version with the" |
| | ratio | 0.028 | |
| 74.83% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 42 | | technicalSentenceCount | 4 | | matches | | 0 | "Now he watched her like she was a stranger who knew his secrets." | | 1 | "Silas's hazel eyes measured the new angles of her face—the set of her jaw, the stillness that had replaced the restless energy of twenty-three." | | 2 | "Rory's straight black hair fell across one shoulder as she looked down at her hands—the same hands that used to flip through case files and now gripped bicycle …" | | 3 | "Just the quiet click of crystal, then the drink that tasted of all the time they had spent becoming strangers who still recognised the scars they once catalogue…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 29 | | uselessAdditionCount | 1 | | matches | | 0 | "She glanced up, as if the flat above them might answer for her" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 4 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 81 | | tagDensity | 0.049 | | leniency | 0.099 | | rawRatio | 0 | | effectiveRatio | 0 | |