| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 23 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 46 | | tagDensity | 0.5 | | leniency | 1 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 79.84% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1488 | | totalAiIsmAdverbs | 6 | | found | | 0 | | | 1 | | adverb | "deliberately" | | count | 1 |
| | 2 | | | 3 | | | 4 | |
| | highlights | | 0 | "very" | | 1 | "deliberately" | | 2 | "gently" | | 3 | "really" | | 4 | "slightly" |
| |
| 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) | |
| 86.56% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1488 | | totalAiIsms | 4 | | found | | | highlights | | 0 | "warmth" | | 1 | "methodical" | | 2 | "traced" | | 3 | "pulsed" |
| |
| 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 | 89 | | matches | (empty) | |
| 78.65% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 4 | | hedgeCount | 0 | | narrationSentences | 89 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 112 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 56 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1503 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 20 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 30 | | wordCount | 1249 | | uniqueNames | 18 | | maxNameDensity | 0.48 | | worstName | "Silas" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Eva" | | discoveredNames | | Rory | 3 | | Raven | 1 | | Nest | 1 | | Paddington | 1 | | Soho | 1 | | Thames | 1 | | Balkans | 1 | | Proper | 1 | | Eva | 3 | | Silas | 6 | | Blackwood | 1 | | Cardiff | 3 | | Ireland | 1 | | Ellis | 1 | | Evan | 2 | | October | 1 | | Taff | 1 | | Prague | 1 |
| | persons | | 0 | "Rory" | | 1 | "Raven" | | 2 | "Eva" | | 3 | "Silas" | | 4 | "Blackwood" | | 5 | "Ellis" | | 6 | "Evan" |
| | places | | 0 | "Soho" | | 1 | "Thames" | | 2 | "Cardiff" | | 3 | "Ireland" | | 4 | "October" | | 5 | "Prague" |
| | globalScore | 1 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 59 | | glossingSentenceCount | 1 | | matches | | 0 | "looked like a Prague street in winter, bo" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.665 | | wordCount | 1503 | | matches | | 0 | "not in the forefront of the mind but somewhere deeper, in the place" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 112 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 48 | | mean | 31.31 | | std | 30.75 | | cv | 0.982 | | sampleLengths | | 0 | 78 | | 1 | 63 | | 2 | 74 | | 3 | 5 | | 4 | 3 | | 5 | 10 | | 6 | 108 | | 7 | 3 | | 8 | 23 | | 9 | 18 | | 10 | 37 | | 11 | 41 | | 12 | 68 | | 13 | 5 | | 14 | 20 | | 15 | 20 | | 16 | 3 | | 17 | 60 | | 18 | 11 | | 19 | 3 | | 20 | 5 | | 21 | 28 | | 22 | 152 | | 23 | 42 | | 24 | 25 | | 25 | 18 | | 26 | 45 | | 27 | 2 | | 28 | 22 | | 29 | 49 | | 30 | 19 | | 31 | 4 | | 32 | 20 | | 33 | 43 | | 34 | 16 | | 35 | 22 | | 36 | 6 | | 37 | 1 | | 38 | 62 | | 39 | 32 | | 40 | 56 | | 41 | 64 | | 42 | 2 | | 43 | 15 | | 44 | 24 | | 45 | 64 | | 46 | 5 | | 47 | 7 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 89 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 220 | | matches | | 0 | "was doing" | | 1 | "was carrying" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 15 | | semicolonCount | 2 | | flaggedSentences | 12 | | totalSentences | 112 | | ratio | 0.107 | | matches | | 0 | "Old maps covered the walls in overlapping layers — the Thames estuary, the Balkans, the coastline of somewhere she didn't recognise — and between them hung black-and-white photographs in mismatched frames: faces without names, cities without dates." | | 1 | "She knew his face in the way you know the face of a photograph you've studied without ever meaning to — not in the forefront of the mind but somewhere deeper, in the place that catalogs things you've decided you no longer need." | | 2 | "\"For six years.\" He reached for a glass — a different one, a tumbler — and poured without asking her to specify." | | 3 | "Eva knew everyone eventually; it was her particular talent." | | 4 | "Not the kind of looking that makes a person feel examined — she'd known enough of that — but the kind that takes inventory without judgment, that simply notes what is and what isn't." | | 5 | "She watched a droplet travel down the glass pane — slow, then sudden — and thought about all the ways she could answer that question and all the ways she wouldn't." | | 6 | "She had been sixteen the first time she'd met Silas Blackwood, at one of her father's dinner parties in the tall house in Cardiff — the kind of evening where the wine was good and the conversation was deliberately imprecise, where men in good suits talked around the edges of things they were not going to name." | | 7 | "His expression didn't change but something behind it did, something quiet and weighted, and she felt the old instinct rise — to deflect, to make a joke of herself before someone else could, to pull the conversation onto firmer ground." | | 8 | "He didn't drink it immediately; he just let it sit there, present, like an acknowledgement of something." | | 9 | "That was the thing about Silas that she'd carried without knowing she was carrying it — he asked questions gently when he could have done otherwise." | | 10 | "She thought about Cardiff — her mother's garden in October, the smell of old books in her father's study, the particular quality of the light on the Taff before the storm came in." | | 11 | "One of the photographs on the wall — she could see it from the corner of her eye — showed two figures standing in front of what looked like a Prague street in winter, both of them half-turned away from the camera, faces unclear." |
| |
| 99.72% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1240 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 50 | | adverbRatio | 0.04032258064516129 | | lyAdverbCount | 12 | | lyAdverbRatio | 0.00967741935483871 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 112 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 112 | | mean | 13.42 | | std | 12.43 | | cv | 0.926 | | sampleLengths | | 0 | 24 | | 1 | 54 | | 2 | 11 | | 3 | 37 | | 4 | 8 | | 5 | 7 | | 6 | 40 | | 7 | 34 | | 8 | 3 | | 9 | 2 | | 10 | 3 | | 11 | 10 | | 12 | 43 | | 13 | 2 | | 14 | 13 | | 15 | 13 | | 16 | 37 | | 17 | 3 | | 18 | 3 | | 19 | 3 | | 20 | 17 | | 21 | 14 | | 22 | 4 | | 23 | 22 | | 24 | 4 | | 25 | 4 | | 26 | 7 | | 27 | 1 | | 28 | 5 | | 29 | 9 | | 30 | 19 | | 31 | 7 | | 32 | 12 | | 33 | 34 | | 34 | 6 | | 35 | 16 | | 36 | 5 | | 37 | 10 | | 38 | 7 | | 39 | 3 | | 40 | 5 | | 41 | 6 | | 42 | 6 | | 43 | 3 | | 44 | 3 | | 45 | 14 | | 46 | 15 | | 47 | 31 | | 48 | 3 | | 49 | 8 |
| |
| 65.77% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 13 | | diversityRatio | 0.4642857142857143 | | totalSentences | 112 | | uniqueOpeners | 52 | |
| 91.32% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 2 | | totalSentences | 73 | | matches | | 0 | "More like a word he'd" | | 1 | "Of course he knew Eva." |
| | ratio | 0.027 | |
| 22.74% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 36 | | totalSentences | 73 | | matches | | 0 | "She paid the driver without" | | 1 | "She took a stool at" | | 2 | "He turned around." | | 3 | "She knew his face in" | | 4 | "She heard her own voice" | | 5 | "He reached for a glass" | | 6 | "She'd forgotten he could do" | | 7 | "She'd forgotten a lot of" | | 8 | "She watched a droplet travel" | | 9 | "She had been sixteen the" | | 10 | "She had come downstairs in" | | 11 | "He hadn't startled when she" | | 12 | "He'd just looked at her" | | 13 | "She'd thought about that exchange" | | 14 | "She'd thought about it in" | | 15 | "It came out of nowhere," | | 16 | "He picked up a cloth" | | 17 | "She traced a finger along" | | 18 | "She looked up at him" | | 19 | "His expression didn't change but" |
| | ratio | 0.493 | |
| 62.74% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 58 | | totalSentences | 73 | | matches | | 0 | "The green neon sign bled" | | 1 | "She paid the driver without" | | 2 | "A handful of people occupied" | | 3 | "Nobody looked up when she" | | 4 | "She took a stool at" | | 5 | "The bartender had his back" | | 6 | "He turned around." | | 7 | "The glass he'd been reaching" | | 8 | "She knew his face in" | | 9 | "The beard was new, trimmed" | | 10 | "The lines around his eyes" | | 11 | "She heard her own voice" | | 12 | "He reached for a glass" | | 13 | "Eva knew everyone eventually; it" | | 14 | "Rory wrapped both hands around" | | 15 | "Silas leaned against the back" | | 16 | "She'd forgotten he could do" | | 17 | "She'd forgotten a lot of" | | 18 | "The whiskey was good, smoky" | | 19 | "Something shifted in his expression." |
| | ratio | 0.795 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 73 | | matches | (empty) | | ratio | 0 | |
| 100.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 38 | | technicalSentenceCount | 2 | | matches | | 0 | "She took a stool at the bar and set her bag down on the one beside it, a proprietary gesture she'd learned in university, back when she'd still been the kind of…" | | 1 | "She knew his face in the way you know the face of a photograph you've studied without ever meaning to — not in the forefront of the mind but somewhere deeper, i…" |
| |
| 59.78% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 23 | | uselessAdditionCount | 3 | | matches | | 0 | "Rory wrapped, not drinking yet, just holding the warmth" | | 1 | "He picked up, methodical" | | 2 | "He picked up, a gesture more acknowledgment than toast" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 10 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 46 | | tagDensity | 0.217 | | leniency | 0.435 | | rawRatio | 0 | | effectiveRatio | 0 | |