| 0.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 4 | | adverbTagCount | 2 | | adverbTags | | 0 | "she said aloud [aloud]" | | 1 | "Eva's voice came again [again]" |
| | dialogueSentences | 7 | | tagDensity | 0.571 | | leniency | 1 | | rawRatio | 0.5 | | effectiveRatio | 0.5 | |
| 89.13% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1380 | | totalAiIsmAdverbs | 3 | | found | | | highlights | | 0 | "slightly" | | 1 | "slowly" | | 2 | "very" |
| |
| 100.00% | AI-ism character names | Target: 0 AI-default names (17 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 100.00% | AI-ism location names | Target: 0 AI-default location names (33 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 34.78% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1380 | | totalAiIsms | 18 | | found | | | highlights | | 0 | "warmth" | | 1 | "pulse" | | 2 | "rhythmic" | | 3 | "perfect" | | 4 | "pulsed" | | 5 | "echo" | | 6 | "gloom" | | 7 | "hulking" | | 8 | "silence" | | 9 | "familiar" | | 10 | "synchronized" | | 11 | "could feel" | | 12 | "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 | 121 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 1 | | narrationSentences | 121 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 124 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 51 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1396 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 6 | | unquotedAttributions | 0 | | matches | (empty) | |
| 66.67% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 28 | | wordCount | 1377 | | uniqueNames | 8 | | maxNameDensity | 0.73 | | worstName | "Rory" | | maxWindowNameDensity | 3 | | worstWindowName | "Eva" | | discoveredNames | | Rory | 10 | | Richmond | 3 | | Park | 3 | | Golden | 1 | | Empress | 1 | | Eva | 8 | | London | 1 | | Silas | 1 |
| | persons | | | places | | 0 | "Richmond" | | 1 | "Park" | | 2 | "Golden" | | 3 | "London" |
| | globalScore | 1 | | windowScore | 0.667 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 78 | | 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.716 | | wordCount | 1396 | | matches | | 0 | "not painfully, but insistently, like something trying to get her attention" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 124 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 42 | | mean | 33.24 | | std | 29.54 | | cv | 0.889 | | sampleLengths | | 0 | 81 | | 1 | 88 | | 2 | 13 | | 3 | 80 | | 4 | 6 | | 5 | 76 | | 6 | 4 | | 7 | 89 | | 8 | 3 | | 9 | 8 | | 10 | 51 | | 11 | 2 | | 12 | 24 | | 13 | 9 | | 14 | 26 | | 15 | 44 | | 16 | 7 | | 17 | 8 | | 18 | 56 | | 19 | 8 | | 20 | 66 | | 21 | 11 | | 22 | 8 | | 23 | 82 | | 24 | 39 | | 25 | 6 | | 26 | 30 | | 27 | 49 | | 28 | 56 | | 29 | 11 | | 30 | 5 | | 31 | 29 | | 32 | 5 | | 33 | 77 | | 34 | 6 | | 35 | 87 | | 36 | 13 | | 37 | 41 | | 38 | 4 | | 39 | 54 | | 40 | 18 | | 41 | 16 |
| |
| 96.56% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 3 | | totalSentences | 121 | | matches | | 0 | "been given" | | 1 | "was gone" | | 2 | "was synchronized" |
| |
| 0.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 7 | | totalVerbs | 219 | | matches | | 0 | "was, kneeling" | | 1 | "wasn't looking" | | 2 | "was doing" | | 3 | "were waking" | | 4 | "was watching" | | 5 | "was thrumming" | | 6 | "were swaying" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 16 | | semicolonCount | 0 | | flaggedSentences | 15 | | totalSentences | 124 | | ratio | 0.121 | | matches | | 0 | "The stones stood in a loose ring around the clearing — seven of them, carved from black oak, each as tall as a man." | | 1 | "But the clearing was thick with wildflowers — bluebells and foxgloves and something small and white that she didn't have a name for — all of them blooming in perfect, impossible color under the thin moon." | | 2 | "The stone was small, thumbnail-sized, deep crimson, and it had been given to her by no one she could name — just a parcel in her flat one day, no note, no return address." | | 3 | "And that was when she heard it — a soft exhalation, right behind her ear, as if someone had been standing close enough to brush her hair and had only now remembered to breathe." | | 4 | "That was the thing — the sound didn't echo." | | 5 | "The pendant pulsed — once, twice, faster." | | 6 | "It was the kind of thing you'd notice — a hulking monolith of black oak, its top edge roughly shaped like a shoulder." | | 7 | "Something had passed between the stones — low, quick, the shape of a crouching animal or a crawling child." | | 8 | "Where she'd entered, there was only more clearing — the same ring of wildflowers, the same standing stones, closing her in on all sides." | | 9 | "It pressed against her palm like a small live coal, and beneath her feet, the ground gave a single low thrum — a heartbeat, slow and deep, as if the earth itself were waking." | | 10 | "But something stopped her — a thin animal prickle at the base of her skull, an old survival instinct that had nothing to do with reasoning." | | 11 | "And Eva's voice, now that Rory listened, had a wrongness to it — a hollow quality, like someone doing a decent impression of a song they'd only heard once." | | 12 | "She didn't mean to — it tore out of her, ragged and raw, and the sound finally had somewhere to go." | | 13 | "Not cruel laughter, not mocking — worse, it was kind." | | 14 | "Every muscle had locked, every instinct screaming at her not to look, because the thing behind her was not Eva, and the ground was thrumming, and the flowers were swaying closer, and the extra stone had begun to move — a slow, grinding step, silent, impossible, like a monument deciding to walk." |
| |
| 94.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1367 | | adjectiveStacks | 1 | | stackExamples | | 0 | "sickly green-white glow" |
| | adverbCount | 51 | | adverbRatio | 0.03730797366495977 | | lyAdverbCount | 15 | | lyAdverbRatio | 0.010972933430870519 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 124 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 124 | | mean | 11.26 | | std | 9.92 | | cv | 0.881 | | sampleLengths | | 0 | 7 | | 1 | 17 | | 2 | 2 | | 3 | 36 | | 4 | 19 | | 5 | 6 | | 6 | 7 | | 7 | 37 | | 8 | 5 | | 9 | 5 | | 10 | 28 | | 11 | 6 | | 12 | 7 | | 13 | 24 | | 14 | 18 | | 15 | 6 | | 16 | 4 | | 17 | 4 | | 18 | 5 | | 19 | 19 | | 20 | 6 | | 21 | 14 | | 22 | 36 | | 23 | 26 | | 24 | 4 | | 25 | 6 | | 26 | 34 | | 27 | 6 | | 28 | 3 | | 29 | 23 | | 30 | 17 | | 31 | 3 | | 32 | 8 | | 33 | 13 | | 34 | 4 | | 35 | 34 | | 36 | 2 | | 37 | 1 | | 38 | 7 | | 39 | 7 | | 40 | 9 | | 41 | 9 | | 42 | 4 | | 43 | 9 | | 44 | 3 | | 45 | 10 | | 46 | 5 | | 47 | 7 | | 48 | 17 | | 49 | 15 |
| |
| 35.48% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 18 | | diversityRatio | 0.27419354838709675 | | totalSentences | 124 | | uniqueOpeners | 34 | |
| 61.16% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 2 | | totalSentences | 109 | | matches | | 0 | "Of course they were." | | 1 | "Just foxgloves, swaying in a" |
| | ratio | 0.018 | |
| 87.89% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 36 | | totalSentences | 109 | | matches | | 0 | "She told herself it was" | | 1 | "She'd come because it pulled" | | 2 | "She was a practical person." | | 3 | "She didn't believe in compulsions." | | 4 | "She should have thrown it" | | 5 | "She'd meant to." | | 6 | "She should leave." | | 7 | "She took a step into" | | 8 | "Her boots sank slightly into" | | 9 | "Her heart was doing something" | | 10 | "It didn't travel." | | 11 | "It just stopped, as if" | | 12 | "She took a step backward." | | 13 | "She looked down at it," | | 14 | "She counted them." | | 15 | "She counted again." | | 16 | "She hadn't seen it before." | | 17 | "She was sure she hadn't." | | 18 | "It was the kind of" | | 19 | "It had been there for" |
| | ratio | 0.33 | |
| 51.74% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 89 | | totalSentences | 109 | | matches | | 0 | "The pendant had been warm" | | 1 | "That was the first wrong" | | 2 | "She told herself it was" | | 3 | "She'd come because it pulled" | | 4 | "The feeling had started after" | | 5 | "She was a practical person." | | 6 | "She didn't believe in compulsions." | | 7 | "The gate was never a" | | 8 | "That should have been her" | | 9 | "The stones stood in a" | | 10 | "Spirals wound up their faces," | | 11 | "Rory blinked, looked away, looked" | | 12 | "The spirals were still." | | 13 | "The wind was still too." | | 14 | "The entire clearing had a" | | 15 | "The flowers were the third" | | 16 | "November in Richmond Park meant" | | 17 | "The petals gave off a" | | 18 | "The pendant pulsed harder." | | 19 | "Rory touched it through her" |
| | ratio | 0.817 | |
| 45.87% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 109 | | matches | | 0 | "Now it burned against her" |
| | ratio | 0.009 | |
| 61.69% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 44 | | technicalSentenceCount | 5 | | matches | | 0 | "And that was when she heard it — a soft exhalation, right behind her ear, as if someone had been standing close enough to brush her hair and had only now rememb…" | | 1 | "In the gloom it had begun to glow, a faint inner radiance that painted her collarbone red." | | 2 | "It pressed against her palm like a small live coal, and beneath her feet, the ground gave a single low thrum — a heartbeat, slow and deep, as if the earth itsel…" | | 3 | "But something stopped her — a thin animal prickle at the base of her skull, an old survival instinct that had nothing to do with reasoning." | | 4 | "A gentle, patient laugh, as if at a child who had just done something adorable." |
| |
| 0.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 4 | | uselessAdditionCount | 1 | | matches | | 0 | "Eva's voice came again, closer" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 2 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 7 | | tagDensity | 0.286 | | leniency | 0.571 | | rawRatio | 0 | | effectiveRatio | 0 | |