| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 6 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 9 | | tagDensity | 0.667 | | leniency | 1 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 86.13% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1442 | | totalAiIsmAdverbs | 4 | | found | | | highlights | | 0 | "slowly" | | 1 | "very" | | 2 | "completely" |
| |
| 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) | |
| 75.73% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1442 | | totalAiIsms | 7 | | found | | | highlights | | 0 | "silence" | | 1 | "weight" | | 2 | "warmth" | | 3 | "sense of" | | 4 | "pulsed" |
| |
| 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 | 90 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 1 | | narrationSentences | 90 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 93 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 59 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 1 | | markdownWords | 15 | | totalWords | 1452 | | ratio | 0.01 | | matches | | 0 | "if you want to know what you are holding, come at dusk and come alone" |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 7 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 11 | | wordCount | 1418 | | uniqueNames | 6 | | maxNameDensity | 0.28 | | worstName | "Rory" | | maxWindowNameDensity | 1 | | worstWindowName | "Rory" | | discoveredNames | | Richmond | 1 | | Park | 1 | | Rory | 4 | | Heartstone | 3 | | Grove | 1 | | November | 1 |
| | persons | | | places | | 0 | "Richmond" | | 1 | "Park" | | 2 | "November" |
| | globalScore | 1 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 66 | | glossingSentenceCount | 1 | | matches | | 0 | "felt like an hour, the sky above her wa" |
| |
| 0.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 3 | | per1kWords | 2.066 | | wordCount | 1452 | | matches | | 0 | "not the sweetness she remembered but something underneath it, like the inside of an old drawer, d" | | 1 | "not with its body but with its attention" | | 2 | "not paper this time, but something older" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 93 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 38 | | mean | 38.21 | | std | 29.59 | | cv | 0.775 | | sampleLengths | | 0 | 66 | | 1 | 85 | | 2 | 5 | | 3 | 57 | | 4 | 26 | | 5 | 90 | | 6 | 9 | | 7 | 57 | | 8 | 9 | | 9 | 56 | | 10 | 5 | | 11 | 66 | | 12 | 52 | | 13 | 7 | | 14 | 27 | | 15 | 18 | | 16 | 11 | | 17 | 81 | | 18 | 12 | | 19 | 73 | | 20 | 28 | | 21 | 5 | | 22 | 79 | | 23 | 58 | | 24 | 37 | | 25 | 66 | | 26 | 16 | | 27 | 8 | | 28 | 21 | | 29 | 66 | | 30 | 13 | | 31 | 81 | | 32 | 3 | | 33 | 14 | | 34 | 12 | | 35 | 95 | | 36 | 10 | | 37 | 28 |
| |
| 85.77% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 5 | | totalSentences | 90 | | matches | | 0 | "was supposed" | | 1 | "been open" | | 2 | "was shaped" | | 3 | "was gone" | | 4 | "been switched" |
| |
| 24.56% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 6 | | totalVerbs | 228 | | matches | | 0 | "were only passing" | | 1 | "was going" | | 2 | "was looking" | | 3 | "was waiting" | | 4 | "was beating" | | 5 | "was easing" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 10 | | semicolonCount | 1 | | flaggedSentences | 9 | | totalSentences | 93 | | ratio | 0.097 | | matches | | 0 | "The oak standing stones were ahead where the path bent, gray as old bone, and beyond them the clearing — the Grove — where the wildflowers bloomed all year round and the air always smelled of late summer no matter the season." | | 1 | "But it was the smell that stopped her — not the sweetness she remembered but something underneath it, like the inside of an old drawer, dry and close." | | 2 | "A breeze moved through the grass, but the flowers did not stir the way they should have; they leaned and then leaned back, as if the wind were only passing through them the way a hand passes through water." | | 3 | "It came from the far side of the clearing, from the dark line of trees — a sound like a page turning." | | 4 | "Just there, where no one had been a moment before — tall and dark and made of the kind of darkness that stands a little out of step with its surroundings, the way a stain on a wall stands out." | | 5 | "The figure — tilted its head." | | 6 | "But slowly, over what might have been a minute or might have been longer, the dark of it seemed to grow denser, gathered, and she had the sense of something enormous leaning forward out of the trees — not with its body but with its attention — and she felt the pressure of that attention on her skin like a hand." | | 7 | "The warmth of the pendant was easing, cooling, going back to the small ordinary heat it had been before, and that frightened her more than the heat had, because it meant whatever it had been responding to had passed — had come and gone and she had been alone with it and now it was done." | | 8 | "Far off, deep in the wood in every direction, she heard the sound again — not paper this time, but something older and softer, something patient, like breathing." |
| |
| 94.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1412 | | adjectiveStacks | 1 | | stackExamples | | 0 | "exact same bruised violet," |
| | adverbCount | 44 | | adverbRatio | 0.031161473087818695 | | lyAdverbCount | 11 | | lyAdverbRatio | 0.007790368271954674 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 93 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 93 | | mean | 15.61 | | std | 13.63 | | cv | 0.873 | | sampleLengths | | 0 | 34 | | 1 | 20 | | 2 | 7 | | 3 | 5 | | 4 | 21 | | 5 | 42 | | 6 | 22 | | 7 | 5 | | 8 | 4 | | 9 | 17 | | 10 | 29 | | 11 | 7 | | 12 | 7 | | 13 | 10 | | 14 | 9 | | 15 | 42 | | 16 | 7 | | 17 | 4 | | 18 | 37 | | 19 | 9 | | 20 | 23 | | 21 | 28 | | 22 | 6 | | 23 | 7 | | 24 | 2 | | 25 | 2 | | 26 | 39 | | 27 | 15 | | 28 | 5 | | 29 | 22 | | 30 | 9 | | 31 | 35 | | 32 | 8 | | 33 | 21 | | 34 | 15 | | 35 | 8 | | 36 | 4 | | 37 | 2 | | 38 | 1 | | 39 | 12 | | 40 | 15 | | 41 | 18 | | 42 | 7 | | 43 | 4 | | 44 | 38 | | 45 | 18 | | 46 | 3 | | 47 | 15 | | 48 | 7 | | 49 | 12 |
| |
| 37.10% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 12 | | diversityRatio | 0.2903225806451613 | | totalSentences | 93 | | uniqueOpeners | 27 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 4 | | totalSentences | 83 | | matches | | 0 | "Then she heard the sound." | | 1 | "Just there, where no one" | | 2 | "Once, hard, and the pain" | | 3 | "Only the clearing and the" |
| | ratio | 0.048 | |
| 32.05% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 39 | | totalSentences | 83 | | matches | | 0 | "It had been warm for" | | 1 | "She had followed it here." | | 2 | "She had walked this way" | | 3 | "Her wrist itched beneath the" | | 4 | "She heard the birds stop." | | 5 | "she said, and felt foolish" | | 6 | "Her voice did not carry" | | 7 | "It fell flat and short," | | 8 | "She had come because of" | | 9 | "She passed between the stones" | | 10 | "It was warm past them," | | 11 | "She turned slowly on the" | | 12 | "she said to the clearing" | | 13 | "It came from the far" | | 14 | "She stared into the trees" | | 15 | "She walked to the center" | | 16 | "She had brought a torch" | | 17 | "She did not want to" | | 18 | "she said, and her voice" | | 19 | "She had been watching." |
| | ratio | 0.47 | |
| 44.34% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 69 | | totalSentences | 83 | | matches | | 0 | "The gate at Richmond Park" | | 1 | "The Heartstone sat warm against" | | 2 | "It had been warm for" | | 3 | "She had followed it here." | | 4 | "The path under the oaks" | | 5 | "She had walked this way" | | 6 | "Her wrist itched beneath the" | | 7 | "She heard the birds stop." | | 8 | "The silence that followed had" | | 9 | "The Heartstone flared warm at" | | 10 | "she said, and felt foolish" | | 11 | "Her voice did not carry" | | 12 | "It fell flat and short," | | 13 | "The oak standing stones were" | | 14 | "She had come because of" | | 15 | "She passed between the stones" | | 16 | "It was warm past them," | | 17 | "She turned slowly on the" | | 18 | "she said to the clearing" | | 19 | "A breeze moved through the" |
| | ratio | 0.831 | |
| 100.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 2 | | totalSentences | 83 | | matches | | 0 | "Because of the warmth." | | 1 | "Because the last letter had" |
| | ratio | 0.024 | |
| 79.37% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 45 | | technicalSentenceCount | 4 | | matches | | 0 | "The silence that followed had a weight to it, a patient quality, and Rory slowed before she could think better of it, her boots crunching once, then going still…" | | 1 | "It was warm past them, summer-warm, and the grass was green and starred with flowers that should not have been open in November." | | 2 | "But it was the smell that stopped her — not the sweetness she remembered but something underneath it, like the inside of an old drawer, dry and close." | | 3 | "And though she had been in the clearing for what felt like an hour, the sky above her was the exact same bruised violet, not a shade lighter, not a shade darker…" |
| |
| 0.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 6 | | uselessAdditionCount | 2 | | matches | | 0 | "she said, and her voice was steadier than she felt" | | 1 | "she said, and her voice was small now" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 6 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 9 | | tagDensity | 0.667 | | leniency | 1 | | rawRatio | 0 | | effectiveRatio | 0 | |