| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 12 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 26 | | tagDensity | 0.462 | | leniency | 0.923 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 92.29% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1297 | | totalAiIsmAdverbs | 2 | | 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) | |
| 49.88% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1297 | | totalAiIsms | 13 | | found | | | highlights | | 0 | "loomed" | | 1 | "pulsed" | | 2 | "warmth" | | 3 | "silk" | | 4 | "whisper" | | 5 | "pulse" | | 6 | "flickered" | | 7 | "comforting" | | 8 | "comfortable" | | 9 | "footsteps" | | 10 | "weight" | | 11 | "could feel" |
| |
| 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 | 76 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 0 | | narrationSentences | 76 | | filterMatches | (empty) | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 90 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 45 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1304 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 10 | | unquotedAttributions | 0 | | matches | (empty) | |
| 99.49% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 36 | | wordCount | 1089 | | uniqueNames | 13 | | maxNameDensity | 1.01 | | worstName | "Aurora" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Nyx" | | discoveredNames | | Heartstone | 2 | | Nyx | 9 | | Shade | 1 | | Aurora | 11 | | Richmond | 2 | | Park | 1 | | November | 2 | | Hill | 1 | | London | 1 | | Seer | 2 | | Varga | 1 | | Isolde | 2 | | Veil | 1 |
| | persons | | 0 | "Heartstone" | | 1 | "Nyx" | | 2 | "Shade" | | 3 | "Aurora" | | 4 | "Seer" | | 5 | "Varga" | | 6 | "Isolde" | | 7 | "Veil" |
| | places | | 0 | "Richmond" | | 1 | "Park" | | 2 | "November" | | 3 | "Hill" | | 4 | "London" |
| | globalScore | 0.995 | | windowScore | 1 | |
| 50.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 50 | | glossingSentenceCount | 2 | | matches | | 0 | "appeared beneath her pillow, wrapped in black silk, accompanied by a note she still could not bring herself to read aloud" | | 1 | "felt like solid ground, and the next st" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.767 | | wordCount | 1304 | | matches | | 0 | "Not the rush of a river or the drip of a spring, but a low, continuous murmur, like rain falling into a basin" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 90 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 36 | | mean | 36.22 | | std | 27.19 | | cv | 0.751 | | sampleLengths | | 0 | 40 | | 1 | 63 | | 2 | 32 | | 3 | 55 | | 4 | 6 | | 5 | 61 | | 6 | 20 | | 7 | 41 | | 8 | 8 | | 9 | 77 | | 10 | 5 | | 11 | 46 | | 12 | 84 | | 13 | 20 | | 14 | 10 | | 15 | 57 | | 16 | 1 | | 17 | 13 | | 18 | 75 | | 19 | 74 | | 20 | 12 | | 21 | 4 | | 22 | 11 | | 23 | 89 | | 24 | 12 | | 25 | 2 | | 26 | 49 | | 27 | 65 | | 28 | 16 | | 29 | 59 | | 30 | 30 | | 31 | 42 | | 32 | 5 | | 33 | 26 | | 34 | 76 | | 35 | 18 |
| |
| 91.41% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 3 | | totalSentences | 76 | | matches | | 0 | "being made" | | 1 | "been written" | | 2 | "being placed" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 167 | | matches | | 0 | "was guiding" | | 1 | "was singing" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 7 | | semicolonCount | 0 | | flaggedSentences | 5 | | totalSentences | 90 | | ratio | 0.056 | | matches | | 0 | "The standing stones — seven ancient oaks, their bark silvered by age and the touch of something not entirely of this world — formed a ragged circle in the heart of Richmond Park." | | 1 | "The grass was soft enough that Aurora's footsteps made no sound at all, and after a moment she noticed that neither did Nyx's — though that, she suspected, was simply the nature of being made of shadow." | | 2 | "As they drew closer, she caught a flash of silver between the trunks — a stream that moved in the wrong direction, flowing gently uphill, its surface catching the strange green light and throwing it back in rippled patterns across the bark of the nearest oak." | | 3 | "She stumbled, caught herself against a trunk, and found the bark warm under her palm — too warm for a November night, warm the way living skin is warm." | | 4 | "The voice — if it was a voice — did not move through the air the way sound should." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1086 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 35 | | adverbRatio | 0.03222836095764273 | | lyAdverbCount | 10 | | lyAdverbRatio | 0.009208103130755065 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 90 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 90 | | mean | 14.49 | | std | 10.74 | | cv | 0.741 | | sampleLengths | | 0 | 16 | | 1 | 24 | | 2 | 7 | | 3 | 34 | | 4 | 3 | | 5 | 19 | | 6 | 7 | | 7 | 4 | | 8 | 21 | | 9 | 28 | | 10 | 27 | | 11 | 3 | | 12 | 3 | | 13 | 33 | | 14 | 4 | | 15 | 5 | | 16 | 19 | | 17 | 12 | | 18 | 8 | | 19 | 15 | | 20 | 15 | | 21 | 11 | | 22 | 3 | | 23 | 5 | | 24 | 14 | | 25 | 32 | | 26 | 7 | | 27 | 24 | | 28 | 5 | | 29 | 5 | | 30 | 2 | | 31 | 14 | | 32 | 25 | | 33 | 4 | | 34 | 21 | | 35 | 24 | | 36 | 28 | | 37 | 7 | | 38 | 4 | | 39 | 16 | | 40 | 3 | | 41 | 7 | | 42 | 9 | | 43 | 17 | | 44 | 31 | | 45 | 1 | | 46 | 13 | | 47 | 2 | | 48 | 37 | | 49 | 36 |
| |
| 60.00% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 11 | | diversityRatio | 0.43333333333333335 | | totalSentences | 90 | | uniqueOpeners | 39 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 3 | | totalSentences | 68 | | matches | | 0 | "Only those who knew what" | | 1 | "Somewhere ahead, she heard water." | | 2 | "Once, her foot came down" |
| | ratio | 0.044 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 13 | | totalSentences | 68 | | matches | | 0 | "She didn't look at Nyx" | | 1 | "She didn't need to." | | 2 | "She had imagined something smaller." | | 3 | "Their form flickered at the" | | 4 | "She stumbled, caught herself against" | | 5 | "It moved through her." | | 6 | "It settled into the bones" | | 7 | "She was tall and slight," | | 8 | "Her eyes were the colour" | | 9 | "It was not a warm" | | 10 | "It was the smile of" | | 11 | "Her voice arrived in pieces," | | 12 | "She turned and walked toward" |
| | ratio | 0.191 | |
| 62.94% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 54 | | totalSentences | 68 | | matches | | 0 | "The standing stones loomed out" | | 1 | "Aurora stopped at the invisible" | | 2 | "The Heartstone pendant at her" | | 3 | "This was different." | | 4 | "The crimson gem flared hot" | | 5 | "She didn't look at Nyx" | | 6 | "She didn't need to." | | 7 | "The Shade stood at the" | | 8 | "Nyx's voice arrived before they" | | 9 | "The standing stones — seven" | | 10 | "Tourists never noticed them." | | 11 | "Joggers veered around without slowing." | | 12 | "Dogs crossed the line and" | | 13 | "Nyx drifted forward, their form" | | 14 | "The shadow stretched, thickened, took" | | 15 | "Violet light gathered in the" | | 16 | "Aurora's boots sank into moss" | | 17 | "The mist closed behind her," | | 18 | "The next, she could hear" | | 19 | "The grove opened before her." |
| | ratio | 0.794 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 68 | | matches | (empty) | | ratio | 0 | |
| 40.82% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 42 | | technicalSentenceCount | 6 | | matches | | 0 | "Aurora stopped at the invisible line, her breath fogging in air that had grown ten degrees colder in the span of a single step." | | 1 | "Dogs crossed the line and emerged confused, shaking their heads, tongues lolling as though they had swallowed something unexpected." | | 2 | "What she saw made her take a step backward, and her heel met Nyx's insubstantial form with a cold that climbed her ankle like frost." | | 3 | "Beneath them, a meadow stretched in every direction, carpeted with wildflowers that had no business blooming in unison in the last week of autumn." | | 4 | "As they drew closer, she caught a flash of silver between the trunks — a stream that moved in the wrong direction, flowing gently uphill, its surface catching t…" | | 5 | "Aurora felt the air shift around her shoulders, a gentle insistence, as though the grove itself was guiding her forward." |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 12 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 34.62% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 9 | | fancyCount | 3 | | fancyTags | | 0 | "Nyx corrected (correct)" | | 1 | "Nyx murmured (murmur)" | | 2 | "Isolde agreed (agree)" |
| | dialogueSentences | 26 | | tagDensity | 0.346 | | leniency | 0.692 | | rawRatio | 0.333 | | effectiveRatio | 0.231 | |