| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 24 | | adverbTagCount | 2 | | adverbTags | | 0 | "Silas said mildly [mildly]" | | 1 | "Catrin said suddenly [suddenly]" |
| | dialogueSentences | 74 | | tagDensity | 0.324 | | leniency | 0.649 | | rawRatio | 0.083 | | effectiveRatio | 0.054 | |
| 81.02% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 2108 | | totalAiIsmAdverbs | 8 | | found | | | highlights | | 0 | "slightly" | | 1 | "completely" | | 2 | "lightly" | | 3 | "suddenly" | | 4 | "very" | | 5 | "really" |
| |
| 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) | |
| 81.02% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 2108 | | totalAiIsms | 8 | | found | | | highlights | | 0 | "silk" | | 1 | "flicker" | | 2 | "standard" | | 3 | "absolutely" | | 4 | "navigating" | | 5 | "flickered" | | 6 | "weight" |
| |
| 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 | 99 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 2 | | hedgeCount | 0 | | narrationSentences | 99 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 148 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 81 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 2141 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 33 | | unquotedAttributions | 0 | | matches | (empty) | |
| 0.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 102 | | wordCount | 1529 | | uniqueNames | 29 | | maxNameDensity | 2.03 | | worstName | "Catrin" | | maxWindowNameDensity | 6 | | worstWindowName | "Catrin" | | discoveredNames | | Wardour | 1 | | Street | 1 | | Old | 2 | | Compton | 1 | | January | 1 | | Raven | 1 | | Nest | 2 | | Tuesday | 2 | | London | 4 | | Rhine | 1 | | Baltic | 1 | | Silas | 6 | | Rory | 29 | | Cardiff | 1 | | Cat | 2 | | Catrin | 31 | | Callaghan | 2 | | Whitchurch | 2 | | Hendrick | 1 | | Portuguese | 1 | | Portugal | 2 | | Eastern | 1 | | Europe | 1 | | Started | 1 | | Morgan-Reid | 1 | | Sevenoaks | 1 | | Road | 1 | | Dún | 1 | | Laoghaire | 1 |
| | persons | | 0 | "January" | | 1 | "Raven" | | 2 | "Silas" | | 3 | "Rory" | | 4 | "Cat" | | 5 | "Catrin" | | 6 | "Hendrick" | | 7 | "Morgan-Reid" |
| | places | | 0 | "Wardour" | | 1 | "Street" | | 2 | "Compton" | | 3 | "London" | | 4 | "Cardiff" | | 5 | "Whitchurch" | | 6 | "Portuguese" | | 7 | "Portugal" | | 8 | "Eastern" | | 9 | "Europe" | | 10 | "Sevenoaks" | | 11 | "Road" | | 12 | "Dún" |
| | globalScore | 0.486 | | windowScore | 0 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 62 | | glossingSentenceCount | 1 | | matches | | |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 2141 | | matches | (empty) | |
| 99.10% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 3 | | totalSentences | 148 | | matches | | 0 | "used that name" | | 1 | "learned that clothes" | | 2 | "said that the" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 78 | | mean | 27.45 | | std | 26.65 | | cv | 0.971 | | sampleLengths | | 0 | 67 | | 1 | 123 | | 2 | 14 | | 3 | 5 | | 4 | 1 | | 5 | 67 | | 6 | 85 | | 7 | 3 | | 8 | 32 | | 9 | 61 | | 10 | 19 | | 11 | 21 | | 12 | 36 | | 13 | 17 | | 14 | 72 | | 15 | 14 | | 16 | 2 | | 17 | 48 | | 18 | 50 | | 19 | 45 | | 20 | 12 | | 21 | 3 | | 22 | 6 | | 23 | 35 | | 24 | 30 | | 25 | 2 | | 26 | 39 | | 27 | 11 | | 28 | 46 | | 29 | 23 | | 30 | 1 | | 31 | 28 | | 32 | 5 | | 33 | 9 | | 34 | 2 | | 35 | 6 | | 36 | 50 | | 37 | 26 | | 38 | 6 | | 39 | 47 | | 40 | 1 | | 41 | 19 | | 42 | 47 | | 43 | 8 | | 44 | 62 | | 45 | 3 | | 46 | 19 | | 47 | 4 | | 48 | 1 | | 49 | 3 |
| |
| 87.54% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 5 | | totalSentences | 99 | | matches | | 0 | "was allowed" | | 1 | "been reached" | | 2 | "been frozen" | | 3 | "been taught" | | 4 | "was gone" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 1 | | totalVerbs | 250 | | matches | | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 19 | | semicolonCount | 0 | | flaggedSentences | 12 | | totalSentences | 148 | | ratio | 0.081 | | matches | | 0 | "Rory noticed it the way she noticed most things at the end of a shift — sideways, without looking up, her mind still counting change and mapping the quickest route between Wardour Street and Old Compton." | | 1 | "Old maps papered the walls from floor to ceiling — London as it was in 1943, the Rhine, some chart of the Baltic that Silas had told her once was worth more than the bar." | | 2 | "Rory had worked here — well, above here — for eight months, and she still hadn't heard the story behind a single photograph." | | 3 | "Blonde now — professionally blonde, the kind with dimension and a root shadow that must run two hundred pounds a session — and thinner than memory, cheekbones doing architectural work that softness had once done for free." | | 4 | "Catrin — Cat — smelled of bergamot and something woodier beneath it, and her arms were thin and certain." | | 5 | "\"A delivery rider,\" Catrin said, and then caught herself — Rory watched the recalibration happen in real time, the flicker behind the eyes, the rearrangement of tone." | | 6 | "Catrin set her handbag on the second chair — not on the floor, the second chair — and unbuttoned her coat with the particular care of someone who'd learned that clothes were statements." | | 7 | "Rory saw her see it — see Rory seeing it — and something moved across Catrin's face like weather." | | 8 | "There it was — the old frequency, still in the wall somewhere behind the plaster." | | 9 | "He moved along the bar now with a tray, and the light caught the grey in his auburn beard, and Catrin watched him with something Rory recognised — the instinctive cataloguing of a person who has spent years learning which men in a room are safe." | | 10 | "She looked at Catrin Callaghan, or Catrin Morgan-Reid, or Cat, or whatever she was now — this fine-boned stranger with someone else's hair and a house in Sevenoaks and a thumb that would not leave her wedding band alone — and she saw the girl who had once talked her through a panic attack on the Whitchurch Road at three in the morning by reciting, of all things, the periodic table, because she said panic couldn't hold two things at once." | | 11 | "Then she was gone, into the cold, into the black cab that had been waiting — of course there was a cab waiting, there were always cabs waiting for women like Catrin — and Rory sat with two glasses and a napkin and the low murmur of the Nest around her." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1516 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 53 | | adverbRatio | 0.03496042216358839 | | lyAdverbCount | 13 | | lyAdverbRatio | 0.008575197889182058 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 148 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 148 | | mean | 14.47 | | std | 14.08 | | cv | 0.973 | | sampleLengths | | 0 | 10 | | 1 | 36 | | 2 | 21 | | 3 | 6 | | 4 | 18 | | 5 | 35 | | 6 | 28 | | 7 | 23 | | 8 | 13 | | 9 | 14 | | 10 | 2 | | 11 | 3 | | 12 | 1 | | 13 | 2 | | 14 | 7 | | 15 | 6 | | 16 | 52 | | 17 | 6 | | 18 | 37 | | 19 | 6 | | 20 | 4 | | 21 | 6 | | 22 | 26 | | 23 | 3 | | 24 | 5 | | 25 | 27 | | 26 | 11 | | 27 | 19 | | 28 | 10 | | 29 | 21 | | 30 | 19 | | 31 | 21 | | 32 | 27 | | 33 | 9 | | 34 | 17 | | 35 | 5 | | 36 | 27 | | 37 | 40 | | 38 | 4 | | 39 | 10 | | 40 | 2 | | 41 | 6 | | 42 | 19 | | 43 | 18 | | 44 | 5 | | 45 | 16 | | 46 | 34 | | 47 | 12 | | 48 | 33 | | 49 | 3 |
| |
| 61.26% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 6 | | diversityRatio | 0.3918918918918919 | | totalSentences | 148 | | uniqueOpeners | 58 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 3 | | totalSentences | 79 | | matches | | 0 | "Somewhere on the wall behind" | | 1 | "Then Catrin turned her hand" | | 2 | "Then she was gone, into" |
| | ratio | 0.038 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 19 | | totalSentences | 79 | | matches | | 0 | "She pushed through the door" | | 1 | "She was halfway to the" | | 2 | "Her fingers stayed on the" | | 3 | "She held on a beat" | | 4 | "They looked at each other." | | 5 | "His hazel eyes moved past" | | 6 | "They took a corner table" | | 7 | "It came out level, because" | | 8 | "She had the grace not" | | 9 | "He had a limp in" | | 10 | "He moved along the bar" | | 11 | "They were quiet." | | 12 | "She looked at Catrin Callaghan," | | 13 | "They stayed like that a" | | 14 | "She thought about the flat" | | 15 | "She put on her coat." | | 16 | "She wrote her number on" | | 17 | "He did not ask." | | 18 | "He rarely did." |
| | ratio | 0.241 | |
| 48.61% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 65 | | totalSentences | 79 | | matches | | 0 | "The green neon above the" | | 1 | "Rory noticed it the way" | | 2 | "She pushed through the door" | | 3 | "The Raven's Nest was half" | | 4 | "A Tuesday crowd, thin at" | | 5 | "Rory had worked here —" | | 6 | "Silas told you things when" | | 7 | "She was halfway to the" | | 8 | "The other one." | | 9 | "Her fingers stayed on the" | | 10 | "Nobody in London used that" | | 11 | "Nobody in London knew it" | | 12 | "The woman slid off the" | | 13 | "Blonde now — professionally blonde," | | 14 | "A silk blouse under the" | | 15 | "Rings on three fingers." | | 16 | "That slightly crooked mouth, the" | | 17 | "A quick, breathless laugh" | | 18 | "Rory crossed the last few" | | 19 | "Catrin — Cat — smelled" |
| | ratio | 0.823 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 79 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 46 | | technicalSentenceCount | 12 | | matches | | 0 | "Nobody in London knew it except her mother, her father, and the taxman, and her mother and father were in Cardiff and the taxman had no reason to be propping up…" | | 1 | "Blonde now — professionally blonde, the kind with dimension and a root shadow that must run two hundred pounds a session — and thinner than memory, cheekbones d…" | | 2 | "When they separated, both of them stepped back to the same distance, as though an agreement had been reached without discussion." | | 3 | "Catrin Callaghan from three doors down in Whitchurch, who'd shared a trampoline and every secret until they were sixteen, who had kissed Rory's cheek at her mot…" | | 4 | "The silver signet ring caught the light as he turned the bottle, and Catrin watched it with the unconscious attention of someone who appraised jewellery for a l…" | | 5 | "Catrin set her handbag on the second chair — not on the floor, the second chair — and unbuttoned her coat with the particular care of someone who'd learned that…" | | 6 | "A wedding band sat on her left hand, white gold, a single stone that had opinions about light." | | 7 | "He had a limp in his left leg that showed when he walked, and he walked it off with the patience of a man who'd long since stopped expecting the knee to apologi…" | | 8 | "He moved along the bar now with a tray, and the light caught the grey in his auburn beard, and Catrin watched him with something Rory recognised — the instincti…" | | 9 | "She looked at Catrin Callaghan, or Catrin Morgan-Reid, or Cat, or whatever she was now — this fine-boned stranger with someone else's hair and a house in Seveno…" | | 10 | "Then she was gone, into the cold, into the black cab that had been waiting — of course there was a cab waiting, there were always cabs waiting for women like Ca…" | | 11 | "But as he turned away, he set his hand briefly on her shoulder, and the silver ring was warm from his skin, and then he limped back to his bar and left her to t…" |
| |
| 62.50% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 24 | | uselessAdditionCount | 3 | | matches | | 0 | "Catrin's gaze travelled, the helmet, the delivery bag still hanging from her shoulder" | | 1 | "Catrin said, but her thumb worried the wedding band" | | 2 | "Catrin said suddenly, voice low" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 19 | | fancyCount | 2 | | fancyTags | | 0 | "Catrin repeated (repeat)" | | 1 | "Catrin agreed (agree)" |
| | dialogueSentences | 74 | | tagDensity | 0.257 | | leniency | 0.514 | | rawRatio | 0.105 | | effectiveRatio | 0.054 | |