| 57.14% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 11 | | adverbTagCount | 2 | | adverbTags | | 0 | "she glanced once [once]" | | 1 | "Eva’s fingers drummed once [once]" |
| | dialogueSentences | 28 | | tagDensity | 0.393 | | leniency | 0.786 | | rawRatio | 0.182 | | effectiveRatio | 0.143 | |
| 88.53% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 2179 | | totalAiIsmAdverbs | 5 | | found | | | highlights | | 0 | "carefully" | | 1 | "slowly" | | 2 | "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) | |
| 74.76% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 2179 | | totalAiIsms | 11 | | found | | | highlights | | 0 | "weight" | | 1 | "traced" | | 2 | "silence" | | 3 | "race" | | 4 | "measured" | | 5 | "warmth" | | 6 | "unreadable" |
| |
| 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 | 97 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 1 | | narrationSentences | 97 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 114 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 117 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 2176 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 12 | | unquotedAttributions | 0 | | matches | (empty) | |
| 50.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 58 | | wordCount | 1409 | | uniqueNames | 14 | | maxNameDensity | 1.35 | | worstName | "Rory" | | maxWindowNameDensity | 3.5 | | worstWindowName | "Rory" | | discoveredNames | | Raven | 1 | | Nest | 3 | | Silas | 7 | | Carter | 2 | | Cardiff | 3 | | Soho | 1 | | Yu-Fei | 1 | | Cheung | 1 | | Eva | 16 | | Malloy | 1 | | Rory | 19 | | London | 1 | | Evan | 1 | | Jennifer | 1 |
| | persons | | 0 | "Raven" | | 1 | "Nest" | | 2 | "Silas" | | 3 | "Carter" | | 4 | "Yu-Fei" | | 5 | "Cheung" | | 6 | "Eva" | | 7 | "Malloy" | | 8 | "Rory" | | 9 | "Evan" | | 10 | "Jennifer" |
| | places | | 0 | "Cardiff" | | 1 | "Soho" | | 2 | "London" |
| | globalScore | 0.826 | | windowScore | 0.5 | |
| 20.13% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 77 | | glossingSentenceCount | 4 | | matches | | 0 | "felt like space held open rather than w" | | 1 | "as if testing its weight" | | 2 | "looked like a polished blade—suit crisp u" | | 3 | "appeared only long enough to leave two new glasses of water and a folded black napkin between them" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 2176 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 114 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 33 | | mean | 65.94 | | std | 34.24 | | cv | 0.519 | | sampleLengths | | 0 | 113 | | 1 | 135 | | 2 | 116 | | 3 | 6 | | 4 | 25 | | 5 | 22 | | 6 | 109 | | 7 | 17 | | 8 | 46 | | 9 | 37 | | 10 | 82 | | 11 | 45 | | 12 | 79 | | 13 | 19 | | 14 | 89 | | 15 | 86 | | 16 | 24 | | 17 | 54 | | 18 | 54 | | 19 | 59 | | 20 | 54 | | 21 | 107 | | 22 | 127 | | 23 | 43 | | 24 | 76 | | 25 | 71 | | 26 | 68 | | 27 | 67 | | 28 | 74 | | 29 | 26 | | 30 | 48 | | 31 | 95 | | 32 | 103 |
| |
| 94.41% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 3 | | totalSentences | 97 | | matches | | 0 | "was gone" | | 1 | "being called" | | 2 | "was gone" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 238 | | matches | (empty) | |
| 17.54% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 3 | | semicolonCount | 2 | | flaggedSentences | 5 | | totalSentences | 114 | | ratio | 0.044 | | matches | | 0 | "Rory felt the recognition first as a physical jolt—something cold that slid under her ribs and lodged there." | | 1 | "The bright, impatient polish of their final year at Cardiff was gone; in its place sat something harder, carefully maintained, like varnish over a repaired table." | | 2 | "“Flat that smells of last week’s gravy and someone else’s smoking. Silas—” she glanced once at the older man, who had drifted just close enough to hear and still pretended he hadn’t—“lets me have it for almost nothing.”" | | 3 | "Beside her, Eva looked like a polished blade—suit crisp under the open coat, watch thin and silver, the old freckles across her nose carefully covered." | | 4 | "Time had not simply passed between them; it had sanded one down and sharpened the other." |
| |
| 93.98% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1280 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 60 | | adverbRatio | 0.046875 | | lyAdverbCount | 9 | | lyAdverbRatio | 0.00703125 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 114 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 114 | | mean | 19.09 | | std | 18.75 | | cv | 0.982 | | sampleLengths | | 0 | 27 | | 1 | 33 | | 2 | 23 | | 3 | 9 | | 4 | 21 | | 5 | 21 | | 6 | 17 | | 7 | 32 | | 8 | 11 | | 9 | 54 | | 10 | 10 | | 11 | 19 | | 12 | 26 | | 13 | 18 | | 14 | 43 | | 15 | 2 | | 16 | 4 | | 17 | 5 | | 18 | 19 | | 19 | 1 | | 20 | 13 | | 21 | 8 | | 22 | 1 | | 23 | 27 | | 24 | 7 | | 25 | 14 | | 26 | 18 | | 27 | 6 | | 28 | 11 | | 29 | 26 | | 30 | 17 | | 31 | 8 | | 32 | 38 | | 33 | 21 | | 34 | 16 | | 35 | 10 | | 36 | 4 | | 37 | 10 | | 38 | 58 | | 39 | 7 | | 40 | 7 | | 41 | 31 | | 42 | 10 | | 43 | 8 | | 44 | 47 | | 45 | 14 | | 46 | 11 | | 47 | 8 | | 48 | 15 | | 49 | 74 |
| |
| 49.71% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 5 | | diversityRatio | 0.32456140350877194 | | totalSentences | 114 | | uniqueOpeners | 37 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 4 | | totalSentences | 93 | | matches | | 0 | "Almost to the month." | | 1 | "Somewhere behind the bar a" | | 2 | "Then she was gone into" | | 3 | "Somewhere above them the flat" |
| | ratio | 0.043 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 19 | | totalSentences | 93 | | matches | | 0 | "She watched Silas move from" | | 1 | "He did not look at" | | 2 | "She stood still a moment," | | 3 | "Her gaze moved once across" | | 4 | "They looked at each other" | | 5 | "She took the stool beside" | | 6 | "she glanced once at the" | | 7 | "He left them the kind" | | 8 | "She lifted her glass, set" | | 9 | "She gave a short laugh" | | 10 | "She turned the glass" | | 11 | "She had not called them" | | 12 | "She had not cried since" | | 13 | "She would not start now." | | 14 | "They sat with that truth" | | 15 | "It was an offering, thin" | | 16 | "She pressed the cold crescent" | | 17 | "He did not speak." | | 18 | "He did not need to." |
| | ratio | 0.204 | |
| 24.52% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 81 | | totalSentences | 93 | | matches | | 0 | "The green neon above the" | | 1 | "Aurora Carter sat on the" | | 2 | "The clock behind the bottles" | | 3 | "The few remaining drinkers spoke" | | 4 | "She watched Silas move from" | | 5 | "The silver signet ring on" | | 6 | "He did not look at" | | 7 | "The maps and black-and-white photographs" | | 8 | "Rory traced the thin crescent" | | 9 | "The door opened on a" | | 10 | "A woman stepped through, shaking" | | 11 | "She stood still a moment," | | 12 | "Rory felt the recognition first" | | 13 | "The woman’s hair was shorter" | | 14 | "Eva stopped three stools away." | | 15 | "Her gaze moved once across" | | 16 | "The name landed soft and" | | 17 | "Rory kept her hands still" | | 18 | "They looked at each other" | | 19 | "The hush of the room" |
| | ratio | 0.871 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 93 | | matches | (empty) | | ratio | 0 | |
| 38.96% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 55 | | technicalSentenceCount | 8 | | matches | | 0 | "The few remaining drinkers spoke in the low, unused voices of people who had already decided nothing important would happen tonight." | | 1 | "A woman stepped through, shaking water from a dark coat that looked too expensive for the Nest’s usual crowd." | | 2 | "She stood still a moment, letting her eyes adjust, then walked the length of the room as if she already knew where every loose floorboard lived." | | 3 | "The woman’s hair was shorter now, cut in a severe bob that sharpened the angles of her face, but the way she carried her shoulders, the old habit of lifting her…" | | 4 | "They looked at each other across the scarred wood while Silas finished pouring a whiskey for a man farther down and took his time wiping the bottle." | | 5 | "In the mirrors behind the bottles she saw herself small-shouldered, black hair dulled by the rain she had forgotten to dry, blue eyes reflecting the green neon …" | | 6 | "It was an offering, thin and careful, forked with the knowledge that calendars would fill themselves again if neither moved." | | 7 | "The door stayed shut on the rain and the woman who had once known her better than anyone, and Rory realized she could still feel the exact shape of Eva’s handsh…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 11 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 2 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 28 | | tagDensity | 0.071 | | leniency | 0.143 | | rawRatio | 0 | | effectiveRatio | 0 | |