| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 15 | | adverbTagCount | 2 | | adverbTags | | 0 | "Bee nodded slowly [slowly]" | | 1 | "Rory said quietly [quietly]" |
| | dialogueSentences | 48 | | tagDensity | 0.313 | | leniency | 0.625 | | rawRatio | 0.133 | | effectiveRatio | 0.083 | |
| 79.01% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1191 | | totalAiIsmAdverbs | 5 | | found | | | highlights | | 0 | "completely" | | 1 | "carefully" | | 2 | "slowly" | | 3 | "perfectly" | | 4 | "very" |
| |
| 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) | |
| 95.80% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1191 | | totalAiIsms | 1 | | found | | | highlights | | |
| 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 | 52 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 0 | | narrationSentences | 52 | | filterMatches | (empty) | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 85 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 57 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 3 | | markdownWords | 14 | | totalWords | 1187 | | ratio | 0.012 | | matches | | 0 | "you're all right?" | | 1 | "I'm here" | | 2 | "I would have picked you up from the airport" |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 17 | | unquotedAttributions | 0 | | matches | (empty) | |
| 32.21% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 51 | | wordCount | 849 | | uniqueNames | 13 | | maxNameDensity | 2.36 | | worstName | "Rory" | | maxWindowNameDensity | 4 | | worstWindowName | "Rory" | | discoveredNames | | Raven | 1 | | Nest | 1 | | Silas | 4 | | Berlin | 1 | | Tuesday | 1 | | Rory | 20 | | Beatrice | 1 | | Ng | 1 | | Bee | 17 | | Cathays | 1 | | Evan | 1 | | Merlot | 1 | | Cardiff | 1 |
| | persons | | 0 | "Nest" | | 1 | "Silas" | | 2 | "Rory" | | 3 | "Beatrice" | | 4 | "Ng" | | 5 | "Bee" | | 6 | "Evan" |
| | places | | 0 | "Raven" | | 1 | "Berlin" | | 2 | "Cathays" | | 3 | "Cardiff" |
| | globalScore | 0.322 | | windowScore | 0.333 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 33 | | glossingSentenceCount | 0 | | matches | (empty) | |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1187 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 85 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 47 | | mean | 25.26 | | std | 30.8 | | cv | 1.219 | | sampleLengths | | 0 | 104 | | 1 | 74 | | 2 | 7 | | 3 | 1 | | 4 | 124 | | 5 | 8 | | 6 | 3 | | 7 | 2 | | 8 | 64 | | 9 | 8 | | 10 | 3 | | 11 | 1 | | 12 | 4 | | 13 | 16 | | 14 | 74 | | 15 | 12 | | 16 | 7 | | 17 | 70 | | 18 | 12 | | 19 | 3 | | 20 | 5 | | 21 | 3 | | 22 | 3 | | 23 | 83 | | 24 | 5 | | 25 | 15 | | 26 | 66 | | 27 | 9 | | 28 | 2 | | 29 | 6 | | 30 | 67 | | 31 | 9 | | 32 | 27 | | 33 | 6 | | 34 | 42 | | 35 | 2 | | 36 | 36 | | 37 | 9 | | 38 | 7 | | 39 | 20 | | 40 | 8 | | 41 | 7 | | 42 | 55 | | 43 | 2 | | 44 | 22 | | 45 | 19 | | 46 | 55 |
| |
| 85.02% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 3 | | totalSentences | 52 | | matches | | 0 | "was cropped" | | 1 | "being asked" | | 2 | "being catalogued" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 150 | | matches | | 0 | "were already shaking" | | 1 | "was taking" |
| |
| 75.63% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 4 | | semicolonCount | 0 | | flaggedSentences | 2 | | totalSentences | 85 | | ratio | 0.024 | | matches | | 0 | "Beatrice Ng—Bee to everyone who'd ever loved her, and a few who had only tried—slid off the stool and crossed the floor in three strides." | | 1 | "He set the glass down, tapped the bar with his signet ring—a small, deliberate percussion that Rory had come to read as *I'm here*—and drifted to the other end to polish glasses that didn't need polishing." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 853 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 29 | | adverbRatio | 0.03399765533411489 | | lyAdverbCount | 10 | | lyAdverbRatio | 0.011723329425556858 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 85 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 85 | | mean | 13.96 | | std | 13.75 | | cv | 0.985 | | sampleLengths | | 0 | 23 | | 1 | 38 | | 2 | 4 | | 3 | 39 | | 4 | 7 | | 5 | 10 | | 6 | 13 | | 7 | 44 | | 8 | 5 | | 9 | 2 | | 10 | 1 | | 11 | 25 | | 12 | 34 | | 13 | 8 | | 14 | 17 | | 15 | 40 | | 16 | 6 | | 17 | 2 | | 18 | 3 | | 19 | 2 | | 20 | 8 | | 21 | 10 | | 22 | 1 | | 23 | 2 | | 24 | 43 | | 25 | 8 | | 26 | 3 | | 27 | 1 | | 28 | 4 | | 29 | 5 | | 30 | 11 | | 31 | 9 | | 32 | 29 | | 33 | 36 | | 34 | 12 | | 35 | 7 | | 36 | 42 | | 37 | 28 | | 38 | 12 | | 39 | 3 | | 40 | 5 | | 41 | 3 | | 42 | 3 | | 43 | 8 | | 44 | 18 | | 45 | 56 | | 46 | 1 | | 47 | 5 | | 48 | 4 | | 49 | 11 |
| |
| 53.33% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 13 | | diversityRatio | 0.4117647058823529 | | totalSentences | 85 | | uniqueOpeners | 35 | |
| 75.76% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 44 | | matches | | 0 | "Then the laugh subsided, and" |
| | ratio | 0.023 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 13 | | totalSentences | 44 | | matches | | 0 | "She wanted a whisky." | | 1 | "She wanted to sit at" | | 2 | "She had been small at" | | 3 | "Her hair was cropped close" | | 4 | "She wore a suit that" | | 5 | "They pulled back and looked" | | 6 | "They took the stool and" | | 7 | "He set the glass down," | | 8 | "She said it carefully, the" | | 9 | "She lifted a hand and" | | 10 | "She did not deny it." | | 11 | "She turned on the stool" | | 12 | "she said, at last" |
| | ratio | 0.295 | |
| 0.00% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 42 | | totalSentences | 44 | | matches | | 0 | "The green neon bled across" | | 1 | "Rory stamped her boots outside" | | 2 | "She wanted a whisky." | | 3 | "She wanted to sit at" | | 4 | "The bar was quiet for" | | 5 | "An older couple murmured over" | | 6 | "A man in a damp" | | 7 | "the woman said, turning" | | 8 | "Beatrice Ng—Bee to everyone who'd" | | 9 | "She had been small at" | | 10 | "Her hair was cropped close" | | 11 | "A faint, silvery line ran" | | 12 | "She wore a suit that" | | 13 | "Bee said into her hair" | | 14 | "They pulled back and looked" | | 15 | "Rory felt the years assemble" | | 16 | "The last time had been" | | 17 | "Bee's face did something complicated." | | 18 | "They took the stool and" | | 19 | "Silas, who missed nothing, poured" |
| | ratio | 0.955 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 44 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 24 | | technicalSentenceCount | 11 | | matches | | 0 | "The green neon bled across the wet pavement in long, uncertain fingers, the kind of light that made strangers of everyone it touched." | | 1 | "Rory stamped her boots outside The Raven's Nest, shook the rain from her jacket, and pushed through the door with the particular exhaustion of someone who had s…" | | 2 | "And at the far end, perched on her stool as if the stool had been waiting for her, sat a woman who did not immediately belong to any of Rory's lives, and then b…" | | 3 | "She had been small at university, all elbows and jumper sleeves pulled over her hands, and she was small still, but compacted now, hardened, as if the years had…" | | 4 | "She wore a suit that fit the way expensive suits fit, and when she embraced Rory, Rory felt the shape of a shoulder holster beneath the wool, or imagined she di…" | | 5 | "The last time had been the kitchen of the Cathays house, Bee pouring coffee with hands that were already shaking for reasons Rory had not yet learned to name, a…" | | 6 | "Silas, who missed nothing, poured Rory her whisky without being asked and raised one auburn-streaked eyebrow the precise fraction of an inch that meant: *you're…" | | 7 | "He set the glass down, tapped the bar with his signet ring—a small, deliberate percussion that Rory had come to read as *I'm here*—and drifted to the other end …" | | 8 | "The small crescent scar on her inner wrist caught the light, a pale comma that had been there so long she had stopped noticing it, except on nights like this, w…" | | 9 | "Bee smiled, and it was a smaller, sadder version of the smile Rory remembered, as if someone had taken the old smile and folded it in half to fit inside the new…" | | 10 | "Rory reached across the small dim space between them and put her hand over Bee's, and Bee's hand was warm and callused in ways it had never been in Cardiff, and…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 15 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 10 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 48 | | tagDensity | 0.208 | | leniency | 0.417 | | rawRatio | 0 | | effectiveRatio | 0 | |