| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 11 | | adverbTagCount | 1 | | adverbTags | | 0 | "Isolde said quietly [quietly]" |
| | dialogueSentences | 31 | | tagDensity | 0.355 | | leniency | 0.71 | | rawRatio | 0.091 | | effectiveRatio | 0.065 | |
| 96.83% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1575 | | totalAiIsmAdverbs | 1 | | 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) | |
| 39.68% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1575 | | totalAiIsms | 19 | | found | | | highlights | | 0 | "familiar" | | 1 | "pulsed" | | 2 | "unsettled" | | 3 | "silk" | | 4 | "perfect" | | 5 | "fractured" | | 6 | "marble" | | 7 | "weight" | | 8 | "flickered" | | 9 | "chill" | | 10 | "warmth" | | 11 | "calculated" | | 12 | "resolve" | | 13 | "oppressive" | | 14 | "shattered" | | 15 | "unreadable" |
| |
| 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 | 1 | | narrationSentences | 89 | | matches | | |
| 78.65% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 4 | | narrationSentences | 89 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 108 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 73 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1590 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 9 | | unquotedAttributions | 0 | | matches | (empty) | |
| 73.14% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 55 | | wordCount | 1171 | | uniqueNames | 16 | | maxNameDensity | 1.54 | | worstName | "Aurora" | | maxWindowNameDensity | 2.5 | | worstWindowName | "Aurora" | | discoveredNames | | Veil | 1 | | Nyx | 8 | | Richmond | 2 | | Park | 2 | | Aurora | 18 | | Heartstone | 2 | | Pendant | 1 | | Isolde | 11 | | Yu-Fei | 1 | | Shade | 1 | | Dymas | 2 | | Gluttony | 1 | | Fae | 2 | | Cardiff | 1 | | Evan | 1 | | Silas | 1 |
| | persons | | 0 | "Nyx" | | 1 | "Aurora" | | 2 | "Isolde" | | 3 | "Evan" | | 4 | "Silas" |
| | places | | 0 | "Veil" | | 1 | "Richmond" | | 2 | "Park" | | 3 | "Pendant" | | 4 | "Shade" | | 5 | "Cardiff" |
| | globalScore | 0.731 | | windowScore | 0.833 | |
| 0.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 67 | | glossingSentenceCount | 7 | | matches | | 0 | "spirals that seemed to shift when she looked at them directly" | | 1 | "looked like it had grown from the earth r" | | 2 | "seemed woven from morning mist, and when she rose to her feet, Aurora noticed the moss beneath her bore no imprint" | | 3 | "as if bowing" | | 4 | "metal that seemed to hold moonlight captive" | | 5 | "something like warmth touched her voice" | | 6 | "not quite touching" |
| |
| 0.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 4 | | per1kWords | 2.516 | | wordCount | 1590 | | matches | | 0 | "neither Fae nor" | | 1 | "no sun but" | | 2 | "not painful, but clarifying, like being doused with ice water" | | 3 | "not the pearlescent glow of the grove, but a true sun, golden" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 108 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 45 | | mean | 35.33 | | std | 24.43 | | cv | 0.691 | | sampleLengths | | 0 | 42 | | 1 | 15 | | 2 | 72 | | 3 | 47 | | 4 | 58 | | 5 | 5 | | 6 | 25 | | 7 | 8 | | 8 | 30 | | 9 | 77 | | 10 | 3 | | 11 | 96 | | 12 | 27 | | 13 | 42 | | 14 | 71 | | 15 | 15 | | 16 | 31 | | 17 | 14 | | 18 | 50 | | 19 | 26 | | 20 | 34 | | 21 | 45 | | 22 | 8 | | 23 | 63 | | 24 | 50 | | 25 | 22 | | 26 | 51 | | 27 | 17 | | 28 | 43 | | 29 | 26 | | 30 | 80 | | 31 | 7 | | 32 | 61 | | 33 | 58 | | 34 | 5 | | 35 | 44 | | 36 | 51 | | 37 | 4 | | 38 | 8 | | 39 | 9 | | 40 | 41 | | 41 | 33 | | 42 | 69 | | 43 | 3 | | 44 | 4 |
| |
| 93.44% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 3 | | totalSentences | 89 | | matches | | 0 | "been placed" | | 1 | "was wrapped" | | 2 | "being doused" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 1 | | totalVerbs | 193 | | matches | | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 12 | | semicolonCount | 0 | | flaggedSentences | 11 | | totalSentences | 108 | | ratio | 0.102 | | matches | | 0 | "It pulsed warm against her sternum — a slow, steady beat like a second heart." | | 1 | "Aurora stumbled, caught herself against a standing stone that hadn't been there a moment ago — rough granite carved with spirals that seemed to shift when she looked at them directly." | | 2 | "Between the oaks stood stones — twelve of them, Aurora counted — each carved with patterns that predated language." | | 3 | "Nyx materialized beside Aurora, their form solidifying into something almost human — tall, gaunt, features indistinct but recognizable." | | 4 | "The seer's lavender eyes flickered to the Shade, and something passed between them — old knowledge, shared history." | | 5 | "Aurora felt the cold of it from three meters away — a distinct chill that raised goosebumps along her arms." | | 6 | "A connection snapped into place — she felt it in her teeth, in the base of her skull, in the marrow of her bones." | | 7 | "\"You'll need resolve.\" Isolde touched Aurora's forehead with two fingers, and the contact sent a shock of cold through her — not painful, but clarifying, like being doused with ice water." | | 8 | "She smelled roasting meat and strange spices, heard the crash of waves on a shore that didn't exist on any map, felt heat against her skin that came from a sun that burned overhead — not the pearlescent glow of the grove, but a true sun, golden and oppressive." | | 9 | "Figures moved among them — human, near-human, and shapes she couldn't categorize." | | 10 | "But beneath the fear, something else stirred — something stubborn and sharp, the same part of her that had left Cardiff in the middle of the night, that had survived Evan's fists and the flat above Silas's bar and the impossible revelation that demons were real and she had been delivering takeaway to them for months." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1167 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 33 | | adverbRatio | 0.028277634961439587 | | lyAdverbCount | 7 | | lyAdverbRatio | 0.005998286203941731 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 108 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 108 | | mean | 14.72 | | std | 12.26 | | cv | 0.833 | | sampleLengths | | 0 | 22 | | 1 | 20 | | 2 | 11 | | 3 | 4 | | 4 | 15 | | 5 | 15 | | 6 | 15 | | 7 | 9 | | 8 | 11 | | 9 | 7 | | 10 | 7 | | 11 | 17 | | 12 | 12 | | 13 | 1 | | 14 | 10 | | 15 | 19 | | 16 | 39 | | 17 | 5 | | 18 | 17 | | 19 | 8 | | 20 | 2 | | 21 | 6 | | 22 | 9 | | 23 | 16 | | 24 | 5 | | 25 | 6 | | 26 | 23 | | 27 | 17 | | 28 | 31 | | 29 | 3 | | 30 | 13 | | 31 | 25 | | 32 | 19 | | 33 | 39 | | 34 | 27 | | 35 | 17 | | 36 | 6 | | 37 | 13 | | 38 | 6 | | 39 | 17 | | 40 | 26 | | 41 | 28 | | 42 | 2 | | 43 | 7 | | 44 | 6 | | 45 | 11 | | 46 | 12 | | 47 | 8 | | 48 | 6 | | 49 | 8 |
| |
| 50.00% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 11 | | diversityRatio | 0.3611111111111111 | | totalSentences | 108 | | uniqueOpeners | 39 | |
| 41.67% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 80 | | matches | | 0 | "Slightly sweet, like honey left" |
| | ratio | 0.013 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 21 | | totalSentences | 80 | | matches | | 0 | "It pulsed warm against her" | | 1 | "She didn't know who had" | | 2 | "She didn't know why it" | | 3 | "She only knew it kept" | | 4 | "She kept her voice low" | | 5 | "She stepped forward before she" | | 6 | "Her hand brushed the spot" | | 7 | "Her eyes were pale lavender," | | 8 | "She wore robes of deep" | | 9 | "Her voice was musical, layered," | | 10 | "She turned and walked toward" | | 11 | "She held it out, hilt-first." | | 12 | "She smelled roasting meat and" | | 13 | "She was seeing Dymas." | | 14 | "He had the face of" | | 15 | "He was smiling." | | 16 | "His gaze lifted." | | 17 | "He looked directly at her." | | 18 | "She was back in the" | | 19 | "Her skin tingled as if" |
| | ratio | 0.263 | |
| 22.50% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 70 | | totalSentences | 80 | | matches | | 0 | "The crack in the Veil" | | 1 | "Aurora watched as their shadow-stained" | | 2 | "Nyx whispered, their voice that" | | 3 | "Aurora adjusted the strap of" | | 4 | "It pulsed warm against her" | | 5 | "The sensation had grown familiar" | | 6 | "She didn't know who had" | | 7 | "She didn't know why it" | | 8 | "She only knew it kept" | | 9 | "She kept her voice low" | | 10 | "The park sprawled around them," | | 11 | "Nyx nodded, their silhouette solidifying" | | 12 | "She stepped forward before she" | | 13 | "Her hand brushed the spot" | | 14 | "The world folded around her." | | 15 | "The shift was instantaneous and" | | 16 | "The green of Richmond Park" | | 17 | "The temperature dropped ten degrees," | | 18 | "Aurora stumbled, caught herself against" | | 19 | "The grove opened before her" |
| | ratio | 0.875 | |
| 62.50% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 80 | | matches | | 0 | "Because she barely touches the" |
| | ratio | 0.013 | |
| 47.62% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 45 | | technicalSentenceCount | 6 | | matches | | 0 | "Ancient oaks formed the perimeter, their trunks thick as cars, their branches interlaced overhead in a canopy that filtered the strange light into dappled silve…" | | 1 | "The ground underfoot was soft moss, studded with wildflowers that bloomed in colors she had no name for: deep violets that bled into indigo, crimsons that held …" | | 2 | "At the base of the stone, half-hidden in moss, lay something that caught the pearlescent light and threw it back in cold gleams." | | 3 | "The dagger was slender, leaf-shaped, forged from metal that seemed to hold moonlight captive." | | 4 | "She smelled roasting meat and strange spices, heard the crash of waves on a shore that didn't exist on any map, felt heat against her skin that came from a sun …" | | 5 | "But beneath the fear, something else stirred — something stubborn and sharp, the same part of her that had left Cardiff in the middle of the night, that had sur…" |
| |
| 0.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 11 | | uselessAdditionCount | 3 | | matches | | 0 | "Nyx whispered, their voice that familiar rustle of dead leaves" | | 1 | "Isolde touched, and the contact sent a shock of cold through her — not painful, but clarifying, like being doused with ice water" | | 2 | "Aurora gasped, and the vision shattered" |
| |
| 53.23% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 7 | | fancyCount | 3 | | fancyTags | | 0 | "Nyx whispered (whisper)" | | 1 | "she breathed (breathe)" | | 2 | "Aurora gasped (gasp)" |
| | dialogueSentences | 31 | | tagDensity | 0.226 | | leniency | 0.452 | | rawRatio | 0.429 | | effectiveRatio | 0.194 | |