| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 2 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 2 | | tagDensity | 1 | | leniency | 1 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 90.61% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1598 | | totalAiIsmAdverbs | 3 | | found | | | highlights | | |
| 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) | |
| 56.20% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1598 | | totalAiIsms | 14 | | found | | | highlights | | 0 | "chill" | | 1 | "pulse" | | 2 | "silence" | | 3 | "throb" | | 4 | "familiar" | | 5 | "measured" | | 6 | "weight" | | 7 | "wavered" | | 8 | "stomach" | | 9 | "resolve" | | 10 | "sense of" | | 11 | "flicker" | | 12 | "warmth" |
| |
| 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 | 122 | | matches | (empty) | |
| 60.89% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 4 | | hedgeCount | 3 | | narrationSentences | 122 | | filterMatches | | | hedgeMatches | | 0 | "seemed to" | | 1 | "started to" | | 2 | "tried to" |
| |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 122 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 46 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 2 | | markdownWords | 4 | | totalWords | 1586 | | ratio | 0.003 | | matches | | 0 | "Keep it close" | | 1 | "Au-ro-ra" |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 3 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 33 | | wordCount | 1581 | | uniqueNames | 18 | | maxNameDensity | 0.44 | | worstName | "Aurora" | | maxWindowNameDensity | 1 | | worstWindowName | "Grove" | | discoveredNames | | Richmond | 1 | | Park | 1 | | Grove | 6 | | Heartstone | 2 | | Eva | 2 | | January | 2 | | Cool | 1 | | Rory | 1 | | Evan | 1 | | Silas | 1 | | Cardiff | 1 | | Golden | 1 | | Empress | 1 | | Hel | 1 | | Thames | 1 | | Irish | 1 | | London | 2 | | Aurora | 7 |
| | persons | | 0 | "Grove" | | 1 | "Heartstone" | | 2 | "Eva" | | 3 | "Rory" | | 4 | "Evan" | | 5 | "Silas" | | 6 | "Aurora" |
| | places | | 0 | "Richmond" | | 1 | "Park" | | 2 | "January" | | 3 | "Cardiff" | | 4 | "Thames" | | 5 | "London" |
| | globalScore | 1 | | windowScore | 1 | |
| 61.76% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 85 | | glossingSentenceCount | 3 | | matches | | 0 | "as if answering" | | 1 | "as though listening" | | 2 | "felt like drowning in petals" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1586 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 2 | | totalSentences | 122 | | matches | | 0 | "learned that the" | | 1 | "moving that she" |
| |
| 40.78% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 18 | | mean | 88.11 | | std | 25.79 | | cv | 0.293 | | sampleLengths | | 0 | 123 | | 1 | 89 | | 2 | 79 | | 3 | 67 | | 4 | 72 | | 5 | 97 | | 6 | 81 | | 7 | 90 | | 8 | 88 | | 9 | 80 | | 10 | 91 | | 11 | 124 | | 12 | 82 | | 13 | 8 | | 14 | 113 | | 15 | 122 | | 16 | 79 | | 17 | 101 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 122 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 1 | | totalVerbs | 267 | | matches | | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 15 | | semicolonCount | 3 | | flaggedSentences | 13 | | totalSentences | 122 | | ratio | 0.107 | | matches | | 0 | "She had come because the Heartstone had started its pulse three hours earlier—faint heat blooming against her collarbone, the deep crimson stone glowing just enough to cast a pinkish smear across her shirt—and the pull had led her straight to this pocket of wrongness." | | 1 | "Time did whatever it pleased inside this clearing; she had learned that the hard way the first time Eva dragged her here as a joke that stopped being funny the moment the city lights vanished." | | 2 | "She checked it now—2:19—and ignored the way the digits seemed to float a fraction too slowly." | | 3 | "London never truly quieted, even in the park after dark; there were always dog walkers, distant traffic, the rustle of foxes." | | 4 | "A soft sound uncoiled behind her—too soft for a branch, too deliberate for wind." | | 5 | "She had never learned who left it for her—one week after she fled Cardiff, parcel waiting on the steps of the Golden Empress with only her name and a note that said *Keep it close*—but tonight the stone’s glow had doubled." | | 6 | "Aurora snapped the torch toward it and caught the barest suggestion of height—something tall and narrow that withdrew the instant light touched it." | | 7 | "Outside, maybe thirty seconds had crawled by; inside, the night stretched itself around her like warm tar." | | 8 | "She needed to get the answers the pendant promised—about portals, about Hel, about the dreams that kept showing her doors opening under the Thames—but the wrongness had gut-punched her resolve." | | 9 | "She heard her own name once, stretched thin and wet—*Au-ro-ra*—and the way it said the syllables turned them into something that tasted of soil." | | 10 | "No—2:30." | | 11 | "It hung between two planes the way a spider hangs between dimensions of web—too many limbs folded into a humanoid outline, surface the color of bruised bark and wet earth, face a shallow depression that mirrored her own features a half-second out of time." | | 12 | "The moment her boot crossed the threshold the London night slapped her—traffic far off, a dog barking three hills away, cold that cut clean." |
| |
| 99.98% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1599 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 64 | | adverbRatio | 0.04002501563477173 | | lyAdverbCount | 13 | | lyAdverbRatio | 0.008130081300813009 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 122 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 122 | | mean | 13 | | std | 10.29 | | cv | 0.791 | | sampleLengths | | 0 | 18 | | 1 | 39 | | 2 | 22 | | 3 | 44 | | 4 | 14 | | 5 | 2 | | 6 | 5 | | 7 | 35 | | 8 | 13 | | 9 | 4 | | 10 | 16 | | 11 | 6 | | 12 | 6 | | 13 | 21 | | 14 | 17 | | 15 | 16 | | 16 | 13 | | 17 | 9 | | 18 | 3 | | 19 | 16 | | 20 | 9 | | 21 | 30 | | 22 | 14 | | 23 | 2 | | 24 | 16 | | 25 | 31 | | 26 | 9 | | 27 | 11 | | 28 | 10 | | 29 | 1 | | 30 | 1 | | 31 | 5 | | 32 | 24 | | 33 | 12 | | 34 | 9 | | 35 | 4 | | 36 | 20 | | 37 | 4 | | 38 | 1 | | 39 | 1 | | 40 | 18 | | 41 | 25 | | 42 | 8 | | 43 | 17 | | 44 | 7 | | 45 | 13 | | 46 | 10 | | 47 | 41 | | 48 | 8 | | 49 | 18 |
| |
| 66.67% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 7 | | diversityRatio | 0.4344262295081967 | | totalSentences | 122 | | uniqueOpeners | 53 | |
| 93.46% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 3 | | totalSentences | 107 | | matches | | 0 | "Just a blur that left" | | 1 | "Only fourteen minutes had passed" | | 2 | "Then the light dimmed and" |
| | ratio | 0.028 | |
| 92.90% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 34 | | totalSentences | 107 | | matches | | 0 | "She had come because the" | | 1 | "She had walked the perimeter" | | 2 | "She checked it now—2:19—and ignored" | | 3 | "She turned a slow circle," | | 4 | "she called, and immediately hated" | | 5 | "She had left Evan two" | | 6 | "She closed her fingers around" | | 7 | "She took three measured steps" | | 8 | "She slipped her phone from" | | 9 | "She counted her exhales." | | 10 | "She had never noticed them" | | 11 | "she said, quieter this time," | | 12 | "She had never learned who" | | 13 | "She loosened her grip and" | | 14 | "Her stomach clenched." | | 15 | "She backed toward the nearest" | | 16 | "Her watch read 2:31." | | 17 | "She checked twice." | | 18 | "She needed to leave." | | 19 | "She needed to get the" |
| | ratio | 0.318 | |
| 48.79% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 88 | | totalSentences | 107 | | matches | | 0 | "Aurora stepped between the ancient" | | 1 | "The night in Richmond Park" | | 2 | "Wildflowers crowded the grass beneath" | | 3 | "She had come because the" | | 4 | "She had walked the perimeter" | | 5 | "Time did whatever it pleased" | | 6 | "Tonight she wore her watch" | | 7 | "She checked it now—2:19—and ignored" | | 8 | "Something was off from the" | | 9 | "The silence royally outstayed its" | | 10 | "London never truly quieted, even" | | 11 | "Here the air pressed against" | | 12 | "She turned a slow circle," | | 13 | "The perfume they released was" | | 14 | "she called, and immediately hated" | | 15 | "She had left Evan two" | | 16 | "The pendant gave another warm" | | 17 | "She closed her fingers around" | | 18 | "A soft sound uncoiled behind" | | 19 | "Nothing moved among the oaks" |
| | ratio | 0.822 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 107 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 67 | | technicalSentenceCount | 14 | | matches | | 0 | "The night in Richmond Park had been sharp and cold, the kind of chill that bit through her leather jacket and fogged her breath, but here in the Grove the cold …" | | 1 | "Time did whatever it pleased inside this clearing; she had learned that the hard way the first time Eva dragged her here as a joke that stopped being funny the …" | | 2 | "The Grove smelled sweeter now, almost cloying, and the flowers nearest her boots had begun to tilt their faces toward her boots as though listening." | | 3 | "She had never learned who left it for her—one week after she fled Cardiff, parcel waiting on the steps of the Golden Empress with only her name and a note that …" | | 4 | "Just a blur that left the afterimage of wrong proportions, too many joints folded the wrong way." | | 5 | "She needed to get the answers the pendant promised—about portals, about Hel, about the dreams that kept showing her doors opening under the Thames—but the wrong…" | | 6 | "She watched a trail of trampled flowers appear a few feet to her right, each bloom flattened in a pattern that skipped, as if something kept lifting itself and …" | | 7 | "Nothing solid appeared, but the edges of her vision thronged with half-shapes—tall figures that melted when she tried to nail them down, low things that scurrie…" | | 8 | "She heard her own name once, stretched thin and wet—*Au-ro-ra*—and the way it said the syllables turned them into something that tasted of soil." | | 9 | "The half-shapes at the rim of sight flattened as though pressed under glass." | | 10 | "Cold seeped into the Grove the way cold never should inside this place, a clean January bite that battled the cloying heat." | | 11 | "The pendant flared brighter, almost white at the core, and for an instant she saw the true shape of the thing that followed her." | | 12 | "It hung between two planes the way a spider hangs between dimensions of web—too many limbs folded into a humanoid outline, surface the color of bruised bark and…" | | 13 | "When she finally walked away the sound that followed her was only her own boots and, once, a single soft inhale from behind the stones that might have been the …" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 2 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 2 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 2 | | tagDensity | 1 | | leniency | 1 | | rawRatio | 0 | | effectiveRatio | 0 | |