| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 31 | | adverbTagCount | 2 | | adverbTags | | 0 | "The smile went somewhere [somewhere]" | | 1 | "Rory said quietly [quietly]" |
| | dialogueSentences | 60 | | tagDensity | 0.517 | | leniency | 1 | | rawRatio | 0.065 | | effectiveRatio | 0.065 | |
| 86.37% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1834 | | totalAiIsmAdverbs | 5 | | found | | | highlights | | 0 | "lightly" | | 1 | "carefully" | | 2 | "slightly" | | 3 | "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) | |
| 89.09% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1834 | | totalAiIsms | 4 | | found | | 0 | | word | "down her spine" | | count | 1 |
| | 1 | | | 2 | | | 3 | |
| | highlights | | 0 | "down her spine" | | 1 | "calculated" | | 2 | "echo" | | 3 | "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 | 1 | | narrationSentences | 85 | | matches | | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 1 | | narrationSentences | 85 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 115 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 60 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 3 | | markdownWords | 9 | | totalWords | 1858 | | ratio | 0.005 | | matches | | 0 | "here" | | 1 | "vanished" | | 2 | "come now, come now, don't pack anything" |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 28 | | unquotedAttributions | 0 | | matches | (empty) | |
| 66.67% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 51 | | wordCount | 1344 | | uniqueNames | 13 | | maxNameDensity | 1.64 | | worstName | "Rory" | | maxWindowNameDensity | 3 | | worstWindowName | "Rory" | | discoveredNames | | Rory | 22 | | Cardiff | 1 | | Raven | 1 | | Nest | 1 | | Silas | 5 | | London | 1 | | Ysgol | 1 | | Gyfun | 1 | | Gymraeg | 1 | | Glantaf | 1 | | Nia | 14 | | Evan | 1 | | Eva | 1 |
| | persons | | 0 | "Rory" | | 1 | "Raven" | | 2 | "Silas" | | 3 | "Nia" | | 4 | "Evan" | | 5 | "Eva" |
| | places | | | globalScore | 0.682 | | windowScore | 0.667 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 53 | | glossingSentenceCount | 0 | | matches | (empty) | |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.538 | | wordCount | 1858 | | matches | | 0 | "not happiness, exactly, but the absence of fear in a room, the particular relief of a st" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 2 | | totalSentences | 115 | | matches | | 0 | "registering that the" | | 1 | "find that she" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 61 | | mean | 30.46 | | std | 28.7 | | cv | 0.942 | | sampleLengths | | 0 | 103 | | 1 | 90 | | 2 | 30 | | 3 | 1 | | 4 | 64 | | 5 | 1 | | 6 | 2 | | 7 | 2 | | 8 | 59 | | 9 | 4 | | 10 | 18 | | 11 | 54 | | 12 | 6 | | 13 | 32 | | 14 | 82 | | 15 | 9 | | 16 | 8 | | 17 | 95 | | 18 | 3 | | 19 | 22 | | 20 | 1 | | 21 | 47 | | 22 | 17 | | 23 | 6 | | 24 | 39 | | 25 | 4 | | 26 | 38 | | 27 | 2 | | 28 | 59 | | 29 | 39 | | 30 | 8 | | 31 | 28 | | 32 | 95 | | 33 | 15 | | 34 | 53 | | 35 | 13 | | 36 | 58 | | 37 | 5 | | 38 | 80 | | 39 | 6 | | 40 | 7 | | 41 | 49 | | 42 | 23 | | 43 | 2 | | 44 | 3 | | 45 | 61 | | 46 | 9 | | 47 | 66 | | 48 | 3 | | 49 | 39 |
| |
| 88.75% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 4 | | totalSentences | 85 | | matches | | 0 | "been spent" | | 1 | "being seen" | | 2 | "was surprised" | | 3 | "been said" |
| |
| 56.32% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 5 | | totalVerbs | 232 | | matches | | 0 | "was laughing" | | 1 | "was threading" | | 2 | "was looking" | | 3 | "was not looking" | | 4 | "was explaining" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 18 | | semicolonCount | 0 | | flaggedSentences | 14 | | totalSentences | 115 | | ratio | 0.122 | | matches | | 0 | "The green neon above the door had a buzz to it that Rory remembered from childhood summers spent avoiding homework — no, that was a different hum, a different life, the fridge in her mother's kitchen in Cardiff." | | 1 | "Old maps papered the walls, curling at the corners, and the black-and-white photographs — men in coats, harbours, faces she'd never identified — watched from their hooks with the patience of things that had outlived their owners." | | 2 | "He poured without asking — gin, tonic, the slice of lemon he knew she'd leave in — and set it on the mat with a small ceremony that she suspected he performed for everyone and that nonetheless felt addressed to her alone." | | 3 | "That was the trouble with a place like this — Silas read the exits on people the way other men read faces." | | 4 | "Closer this time — or rather, the woman had moved, was threading between tables toward the bar, coat over one arm, scarf trailing." | | 5 | "The face was the same face and not the same face — the bones had declared themselves, the softness of twenty had been spent somewhere along the way, and what remained was sharper, more deliberate, as if someone had edited her." | | 6 | "\"I have several things I didn't have in 2014.\" Nia smiled, and the smile was wrong — too fast, too bright, arranged." | | 7 | "The room had gone slightly louder — someone's playlist reaching a chorus, chairs scraping — and Rory felt the particular heat of being seen by someone who remembered a version of you that you'd spent years dismantling." | | 8 | "\"You are, aren't you,\" she said, and it wasn't a question, and it wasn't forgiveness either — it was the sound of someone registering that the thing they'd rehearsed saying for six years would now be unnecessary, and finding that the unsaid version weighed more." | | 9 | "\"No.\" Nia laughed — the big laugh, the one from the window, arriving before the words." | | 10 | "\"For the Chinese up the road. I live above this bar.\" She said it plainly, without apology, and was surprised to find that she meant it that way — not as confession, not as deflection, just as fact, laid down between them like a card." | | 11 | "It was not a question, and Rory felt the answer arrive before she could edit it — not happiness, exactly, but the absence of fear in a room, the particular relief of a stool she knew, a man behind the bar who would notice if she stopped coming, a city that had asked nothing of her except that she keep moving." | | 12 | "Rory looked at the maps on the wall — harbours, coastlines, places drawn by people who had never been there and were certain anyway." | | 13 | "Nia reached over and took Rory's hand off the bar, held it briefly with both of hers — rings pressing crescents into skin, an echo of a scar on the other wrist that Rory felt rather than saw — and then let go and picked up her coat." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 914 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 31 | | adverbRatio | 0.03391684901531729 | | lyAdverbCount | 9 | | lyAdverbRatio | 0.009846827133479213 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 115 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 115 | | mean | 16.16 | | std | 14.69 | | cv | 0.909 | | sampleLengths | | 0 | 38 | | 1 | 24 | | 2 | 3 | | 3 | 2 | | 4 | 36 | | 5 | 10 | | 6 | 37 | | 7 | 5 | | 8 | 38 | | 9 | 30 | | 10 | 1 | | 11 | 44 | | 12 | 20 | | 13 | 1 | | 14 | 2 | | 15 | 2 | | 16 | 42 | | 17 | 4 | | 18 | 13 | | 19 | 4 | | 20 | 7 | | 21 | 11 | | 22 | 6 | | 23 | 22 | | 24 | 26 | | 25 | 6 | | 26 | 32 | | 27 | 7 | | 28 | 23 | | 29 | 1 | | 30 | 28 | | 31 | 2 | | 32 | 21 | | 33 | 3 | | 34 | 4 | | 35 | 2 | | 36 | 8 | | 37 | 3 | | 38 | 41 | | 39 | 6 | | 40 | 45 | | 41 | 3 | | 42 | 16 | | 43 | 6 | | 44 | 1 | | 45 | 24 | | 46 | 23 | | 47 | 17 | | 48 | 6 | | 49 | 22 |
| |
| 64.35% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 6 | | diversityRatio | 0.41739130434782606 | | totalSentences | 115 | | uniqueOpeners | 48 | |
| 51.28% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 65 | | matches | | 0 | "Somewhere behind her, Silas was" |
| | ratio | 0.015 | |
| 72.31% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 24 | | totalSentences | 65 | | matches | | 0 | "She stood under the sign" | | 1 | "She'd lived above it for" | | 2 | "She took the stool at" | | 3 | "He came out of the" | | 4 | "He poured without asking —" | | 5 | "He wiped the bar" | | 6 | "She was about to leave" | | 7 | "She'd learned that in her" | | 8 | "He nodded and drifted down" | | 9 | "She said it lightly, a" | | 10 | "she called down the length" | | 11 | "She thought of Evan's hand" | | 12 | "She thought of the flat" | | 13 | "She thought of all the" | | 14 | "It came out even, which" | | 15 | "she said, and it wasn't" | | 16 | "It was the smallest true" | | 17 | "She turned her glass in" | | 18 | "She said it plainly, without" | | 19 | "It was not a question," |
| | ratio | 0.369 | |
| 29.23% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 56 | | totalSentences | 65 | | matches | | 0 | "The green neon above the" | | 1 | "She stood under the sign" | | 2 | "The Raven's Nest." | | 3 | "She'd lived above it for" | | 4 | "The bar was half full." | | 5 | "A woman near the window" | | 6 | "She took the stool at" | | 7 | "He came out of the" | | 8 | "Hazel eyes, grey at the" | | 9 | "He poured without asking —" | | 10 | "He wiped the bar" | | 11 | "She was about to leave" | | 12 | "That was the trouble with" | | 13 | "She'd learned that in her" | | 14 | "He nodded and drifted down" | | 15 | "The laugh came again from" | | 16 | "Hair shorn close on one" | | 17 | "Rings on every finger but" | | 18 | "The woman stopped." | | 19 | "Rory looked up." |
| | ratio | 0.862 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 65 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 34 | | technicalSentenceCount | 10 | | matches | | 0 | "Old maps papered the walls, curling at the corners, and the black-and-white photographs — men in coats, harbours, faces she'd never identified — watched from th…" | | 1 | "A woman near the window was laughing at something a man had said, a big full laugh that arrived before the words did, and Rory registered it the way she registe…" | | 2 | "He came out of the back with a cloth over his shoulder and the slight hitch in his left leg that never quite disappeared, fifty-eight years old and still the on…" | | 3 | "Hair shorn close on one side and left long on the other, a look Rory associated with people who had decided, definitively, what they thought of the world." | | 4 | "The face was the same face and not the same face — the bones had declared themselves, the softness of twenty had been spent somewhere along the way, and what re…" | | 5 | "Gray-green, a little too wide for the face, the eyes of a girl who had once talked Rory into climbing the roof of Ysgol Gyfun Gymraeg Glantaf to watch the siren…" | | 6 | "Rory looked at it and then at Nia, who was not looking at the gin, who was looking at her with an expression composed of many things and apology not among them." | | 7 | "The room had gone slightly louder — someone's playlist reaching a chorus, chairs scraping — and Rory felt the particular heat of being seen by someone who remem…" | | 8 | "It was not a question, and Rory felt the answer arrive before she could edit it — not happiness, exactly, but the absence of fear in a room, the particular reli…" | | 9 | "She walked out, and the door shut, and the buzz of the sign came through the walls the way it always did, patient and unbothered, keeping time over everything t…" |
| |
| 92.74% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 31 | | uselessAdditionCount | 2 | | matches | | 0 | "She said, a gift offered and withdrawn in the same motion" | | 1 | "Nia smiled, and the smile was wrong — too fast, too bright, arranged" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 22 | | fancyCount | 1 | | fancyTags | | | dialogueSentences | 60 | | tagDensity | 0.367 | | leniency | 0.733 | | rawRatio | 0.045 | | effectiveRatio | 0.033 | |