| 40.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 9 | | adverbTagCount | 2 | | adverbTags | | 0 | "He gestured around [around]" | | 1 | "she said instead [instead]" |
| | dialogueSentences | 25 | | tagDensity | 0.36 | | leniency | 0.72 | | rawRatio | 0.222 | | effectiveRatio | 0.16 | |
| 79.59% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1225 | | totalAiIsmAdverbs | 5 | | found | | | highlights | | 0 | "very" | | 1 | "carefully" | | 2 | "suddenly" | | 3 | "slowly" |
| |
| 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) | |
| 87.76% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1225 | | totalAiIsms | 3 | | found | | 0 | | | 1 | | word | "the last thing" | | count | 1 |
| | 2 | |
| | highlights | | 0 | "measured" | | 1 | "the last thing" | | 2 | "perfect" |
| |
| 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 | 47 | | matches | (empty) | |
| 51.67% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 2 | | hedgeCount | 1 | | narrationSentences | 47 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 63 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 97 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 6 | | markdownWords | 55 | | totalWords | 1225 | | ratio | 0.045 | | matches | | 0 | "lass" | | 1 | "Rory, you cannot keep running from places just because Evan happened to be in them." | | 2 | "That'll be a story, in time." | | 3 | "I'm sorry I disappeared." | | 4 | "I would have come sooner but I couldn't find the road back." | | 5 | "I have been so tired, Silas, I have been so tired of being the girl who runs." |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 10 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 19 | | wordCount | 987 | | uniqueNames | 14 | | maxNameDensity | 0.3 | | worstName | "Silas" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Five" | | discoveredNames | | Soho | 1 | | Aurora | 2 | | Carter | 1 | | London | 1 | | Hackney | 1 | | Golden | 1 | | Empress | 1 | | Eva | 1 | | Evan | 1 | | Nest | 1 | | Silas | 3 | | Blackwood | 1 | | Prague | 1 | | Five | 3 |
| | persons | | 0 | "Aurora" | | 1 | "Carter" | | 2 | "Eva" | | 3 | "Evan" | | 4 | "Silas" | | 5 | "Blackwood" |
| | places | | 0 | "Soho" | | 1 | "London" | | 2 | "Golden" | | 3 | "Prague" |
| | globalScore | 1 | | windowScore | 1 | |
| 85.90% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 39 | | glossingSentenceCount | 1 | | matches | | 0 | "not quite smiled, but something in the line of his mouth had shifted, something tired, something glad" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.816 | | wordCount | 1225 | | matches | | 0 | "not quite smiled, but something in the line of his mouth had shifted, something ti" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 63 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 30 | | mean | 40.83 | | std | 35.23 | | cv | 0.863 | | sampleLengths | | 0 | 50 | | 1 | 111 | | 2 | 105 | | 3 | 5 | | 4 | 107 | | 5 | 127 | | 6 | 20 | | 7 | 58 | | 8 | 12 | | 9 | 2 | | 10 | 48 | | 11 | 56 | | 12 | 50 | | 13 | 15 | | 14 | 9 | | 15 | 6 | | 16 | 43 | | 17 | 3 | | 18 | 41 | | 19 | 16 | | 20 | 28 | | 21 | 66 | | 22 | 14 | | 23 | 63 | | 24 | 56 | | 25 | 8 | | 26 | 2 | | 27 | 1 | | 28 | 52 | | 29 | 51 |
| |
| 82.87% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 3 | | totalSentences | 47 | | matches | | 0 | "been called" | | 1 | "been replaced" | | 2 | "was annoyed" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 162 | | matches | | 0 | "was polishing" | | 1 | "was wearing" |
| |
| 100.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 0 | | semicolonCount | 0 | | flaggedSentences | 0 | | totalSentences | 63 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 989 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 33 | | adverbRatio | 0.033367037411526794 | | lyAdverbCount | 8 | | lyAdverbRatio | 0.008088978766430738 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 63 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 63 | | mean | 19.44 | | std | 17.75 | | cv | 0.913 | | sampleLengths | | 0 | 50 | | 1 | 2 | | 2 | 37 | | 3 | 9 | | 4 | 63 | | 5 | 8 | | 6 | 97 | | 7 | 5 | | 8 | 18 | | 9 | 27 | | 10 | 35 | | 11 | 10 | | 12 | 8 | | 13 | 9 | | 14 | 32 | | 15 | 50 | | 16 | 4 | | 17 | 21 | | 18 | 20 | | 19 | 20 | | 20 | 4 | | 21 | 7 | | 22 | 47 | | 23 | 12 | | 24 | 2 | | 25 | 26 | | 26 | 22 | | 27 | 25 | | 28 | 20 | | 29 | 11 | | 30 | 14 | | 31 | 26 | | 32 | 4 | | 33 | 6 | | 34 | 8 | | 35 | 7 | | 36 | 9 | | 37 | 6 | | 38 | 16 | | 39 | 27 | | 40 | 3 | | 41 | 36 | | 42 | 5 | | 43 | 13 | | 44 | 3 | | 45 | 28 | | 46 | 7 | | 47 | 14 | | 48 | 8 | | 49 | 37 |
| |
| 25.26% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 18 | | diversityRatio | 0.30158730158730157 | | totalSentences | 63 | | uniqueOpeners | 19 | |
| 75.76% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 44 | | matches | | | ratio | 0.023 | |
| 0.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 29 | | totalSentences | 44 | | matches | | 0 | "She counted them off in" | | 1 | "She had not come back" | | 2 | "She had come back because" | | 3 | "She pushed through the door." | | 4 | "She had always liked that" | | 5 | "It meant nothing in here" | | 6 | "He was at the far" | | 7 | "His beard was the same," | | 8 | "His shoulders were narrower." | | 9 | "He used to wear the" | | 10 | "She stepped up to the" | | 11 | "His hands went still on" | | 12 | "He had not quite smiled," | | 13 | "She heard her own voice" | | 14 | "She had wanted to sound" | | 15 | "He nodded as if this" | | 16 | "He reached beneath the bar" | | 17 | "She looked at it." | | 18 | "She did not pick it" | | 19 | "He lifted his own glass," |
| | ratio | 0.659 | |
| 28.18% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 38 | | totalSentences | 44 | | matches | | 0 | "The green neon of the" | | 1 | "She counted them off in" | | 2 | "She had not come back" | | 3 | "She had come back because" | | 4 | "She pushed through the door." | | 5 | "The Nest was smaller than" | | 6 | "The same dim lighting, the" | | 7 | "The same walls papered with" | | 8 | "The clock above the back" | | 9 | "She had always liked that" | | 10 | "It meant nothing in here" | | 11 | "He was at the far" | | 12 | "His beard was the same," | | 13 | "His shoulders were narrower." | | 14 | "He used to wear the" | | 15 | "She stepped up to the" | | 16 | "Silas Blackwood looked up." | | 17 | "His hands went still on" | | 18 | "He had not quite smiled," | | 19 | "She heard her own voice" |
| | ratio | 0.864 | |
| 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 | 23 | | technicalSentenceCount | 9 | | matches | | 0 | "The green neon of the sign bled into the wet Soho pavement like something spilled, and Aurora Carter stood across the street with her hands shoved deep into the…" | | 1 | "Five years since she had walked through that door and been called *lass* by a man with a silver ring and a limp and a quiet way of looking at her that made her …" | | 2 | "She had come back because the room above the laundromat in Hackney smelled of bleach and the radiator clanged like something trying to escape, and because there…" | | 3 | "He was at the far end of the bar, not the near end, and he was polishing a glass with the kind of attention that meant his mind was somewhere else entirely." | | 4 | "His beard was the same, neat, threaded with grey, but the grey had spread up into the auburn of his hair, and the hair itself had thinned at the temples in a wa…" | | 5 | "She remembered, suddenly, a man in a dark coat at a long table, who had looked at her bandaged hand and said, *That'll be a story, in time.* She had not known t…" | | 6 | "She thought of *I'm sorry I disappeared.* She thought of *I would have come sooner but I couldn't find the road back.* She thought of *I have been so tired, Sil…" | | 7 | "He looked at her for a long moment, and the tiredness in his face was the tiredness of a man who had been waiting for a long time and had only just now realized…" | | 8 | "Aurora picked up the glass at last, and they drank together in the quiet of the old maps, two people who had not been those people for a long time, learning, sl…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 9 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 4 | | fancyCount | 1 | | fancyTags | | | dialogueSentences | 25 | | tagDensity | 0.16 | | leniency | 0.32 | | rawRatio | 0.25 | | effectiveRatio | 0.08 | |