| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 21 | | adverbTagCount | 2 | | adverbTags | | 0 | "she said again [again]" | | 1 | "He stood slowly [slowly]" |
| | dialogueSentences | 54 | | tagDensity | 0.389 | | leniency | 0.778 | | rawRatio | 0.095 | | effectiveRatio | 0.074 | |
| 62.00% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1842 | | totalAiIsmAdverbs | 14 | | found | | | highlights | | 0 | "very" | | 1 | "precisely" | | 2 | "slightly" | | 3 | "tightly" | | 4 | "carefully" | | 5 | "slowly" | | 6 | "really" |
| |
| 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) | |
| 72.86% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1842 | | totalAiIsms | 10 | | found | | | highlights | | 0 | "measured" | | 1 | "weight" | | 2 | "flicker" | | 3 | "pulse" | | 4 | "firmly" | | 5 | "predator" | | 6 | "silence" |
| |
| 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 | 112 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 2 | | hedgeCount | 1 | | narrationSentences | 112 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 146 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 64 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 4 | | markdownWords | 15 | | totalWords | 1828 | | ratio | 0.008 | | matches | | 0 | "go away" | | 1 | "you have no right" | | 2 | "I told you never to come back here." | | 3 | "worry" |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 24 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 48 | | wordCount | 1525 | | uniqueNames | 25 | | maxNameDensity | 0.72 | | worstName | "Aurora" | | maxWindowNameDensity | 2 | | worstWindowName | "Aurora" | | discoveredNames | | Carter | 1 | | East | 1 | | London | 2 | | Brick | 1 | | Lane | 1 | | Silas | 3 | | Moreau | 1 | | Aurora | 11 | | Marseille | 2 | | Lucien | 7 | | Whitechapel | 1 | | Aramaic | 1 | | Aurya | 1 | | Aldgate | 1 | | Evan | 2 | | Golden | 1 | | Empress | 1 | | Ptolemy | 1 | | Eva | 2 | | Soho | 1 | | Persian | 1 | | Cardiff | 2 | | Commercial | 1 | | Road | 1 | | Swallowed | 1 |
| | persons | | 0 | "Carter" | | 1 | "Silas" | | 2 | "Moreau" | | 3 | "Aurora" | | 4 | "Lucien" | | 5 | "Aurya" | | 6 | "Evan" | | 7 | "Empress" | | 8 | "Eva" |
| | places | | 0 | "East" | | 1 | "London" | | 2 | "Brick" | | 3 | "Lane" | | 4 | "Marseille" | | 5 | "Whitechapel" | | 6 | "Aldgate" | | 7 | "Golden" | | 8 | "Soho" | | 9 | "Cardiff" | | 10 | "Commercial" | | 11 | "Road" |
| | globalScore | 1 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 67 | | glossingSentenceCount | 1 | | matches | | 0 | "felt like a kind of admission she wasn'" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.547 | | wordCount | 1828 | | matches | | 0 | "not, it turned out, been silence at all but a kind of waiting" |
| |
| 98.17% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 3 | | totalSentences | 146 | | matches | | 0 | "hated that she" | | 1 | "hated that she" | | 2 | "hated that she" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 69 | | mean | 26.49 | | std | 26.29 | | cv | 0.993 | | sampleLengths | | 0 | 62 | | 1 | 9 | | 2 | 71 | | 3 | 12 | | 4 | 56 | | 5 | 3 | | 6 | 89 | | 7 | 27 | | 8 | 35 | | 9 | 55 | | 10 | 15 | | 11 | 10 | | 12 | 3 | | 13 | 68 | | 14 | 70 | | 15 | 6 | | 16 | 52 | | 17 | 4 | | 18 | 7 | | 19 | 69 | | 20 | 65 | | 21 | 19 | | 22 | 9 | | 23 | 34 | | 24 | 22 | | 25 | 104 | | 26 | 37 | | 27 | 23 | | 28 | 15 | | 29 | 5 | | 30 | 1 | | 31 | 3 | | 32 | 11 | | 33 | 7 | | 34 | 78 | | 35 | 9 | | 36 | 2 | | 37 | 7 | | 38 | 2 | | 39 | 2 | | 40 | 31 | | 41 | 6 | | 42 | 13 | | 43 | 64 | | 44 | 10 | | 45 | 1 | | 46 | 3 | | 47 | 2 | | 48 | 48 | | 49 | 6 |
| |
| 99.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 2 | | totalSentences | 112 | | matches | | 0 | "been built" | | 1 | "was slicked" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 3 | | totalVerbs | 248 | | matches | | 0 | "wasn't expecting" | | 1 | "was closing" | | 2 | "was watching" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 14 | | semicolonCount | 1 | | flaggedSentences | 12 | | totalSentences | 146 | | ratio | 0.082 | | matches | | 0 | "The knock came again—measured, unhurried, the rhythm of a man who had never in his life needed to rush because the world had always arranged itself around him." | | 1 | "Heterochromatic eyes—one amber, one black—stared back at her through the fisheye lens." | | 2 | "That was the thing about Lucien—he never argued when he knew he was going to lose." | | 3 | "The amber of one eye caught the light from the street; the other remained black, fathomless, the eye of whatever demon had sired him in Marseille thirty-two years ago." | | 4 | "\"No.\" He shifted his weight onto the cane, and for a moment—just a moment—she saw the flicker of something cross his face." | | 5 | "The ordinary sounds of Aurya's life—the life she had built in the seven months since she had walked out of Lucien's office and kept walking until her feet had given out somewhere near Aldgate." | | 6 | "The flat was small—a single room that served as kitchen, sitting room, and everything else, with a narrow bedroom tucked behind a half-wall." | | 7 | "There was a cat, sometimes, that came in through the fire escape—a grey tabby she'd been calling Ptolemy after the cat in Eva's flat, though she was fairly sure they were different cats." | | 8 | "That was another thing about him—he observed, he catalogued, he filed it all away, and he never, ever said the obvious thing." | | 9 | "Aurora thought about the last time she had seen him—his office above the shop in Soho, the brass fittings and the Persian rug and the smell of old paper and something darker underneath, the way he had looked at her across the desk when she had told him she couldn't work with him anymore, the way he had not tried to stop her." | | 10 | "Her wrist ached—the crescent scar from a childhood accident, from a back garden in Cardiff and a broken bottle and a father who had bandaged it too tightly while her mother called for an ambulance." | | 11 | "She looked at him—really looked—at the man in the charcoal suit with the heterochromatic eyes and the hidden blade and the four languages and the seven months of silence that had not, it turned out, been silence at all but a kind of waiting." |
| |
| 94.77% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 261 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 12 | | adverbRatio | 0.04597701149425287 | | lyAdverbCount | 4 | | lyAdverbRatio | 0.01532567049808429 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 146 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 146 | | mean | 12.52 | | std | 12.98 | | cv | 1.037 | | sampleLengths | | 0 | 22 | | 1 | 40 | | 2 | 4 | | 3 | 5 | | 4 | 28 | | 5 | 5 | | 6 | 12 | | 7 | 26 | | 8 | 12 | | 9 | 6 | | 10 | 10 | | 11 | 40 | | 12 | 3 | | 13 | 27 | | 14 | 22 | | 15 | 40 | | 16 | 16 | | 17 | 5 | | 18 | 6 | | 19 | 3 | | 20 | 22 | | 21 | 6 | | 22 | 2 | | 23 | 2 | | 24 | 6 | | 25 | 36 | | 26 | 8 | | 27 | 5 | | 28 | 8 | | 29 | 5 | | 30 | 2 | | 31 | 6 | | 32 | 4 | | 33 | 3 | | 34 | 3 | | 35 | 16 | | 36 | 20 | | 37 | 29 | | 38 | 8 | | 39 | 62 | | 40 | 6 | | 41 | 22 | | 42 | 2 | | 43 | 5 | | 44 | 18 | | 45 | 5 | | 46 | 4 | | 47 | 7 | | 48 | 16 | | 49 | 19 |
| |
| 36.30% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 20 | | diversityRatio | 0.273972602739726 | | totalSentences | 146 | | uniqueOpeners | 40 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 3 | | totalSentences | 97 | | matches | | 0 | "Just her name, shaped in" | | 1 | "Somewhere below, Silas was closing" | | 2 | "Of course she had." |
| | ratio | 0.031 | |
| 9.69% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 51 | | totalSentences | 97 | | matches | | 0 | "She wasn't expecting anyone." | | 1 | "She never was, not anymore." | | 2 | "She crossed the narrow sitting" | | 3 | "She thought, very calmly, very" | | 4 | "She thought about the three" | | 5 | "She opened it." | | 6 | "His charcoal suit was immaculate," | | 7 | "He looked, Aurora thought, exactly" | | 8 | "She should have closed the" | | 9 | "She should have said *go" | | 10 | "She had said them in" | | 11 | "She had meant every one." | | 12 | "She kept her hand on" | | 13 | "She did not step aside." | | 14 | "He inclined his head" | | 15 | "He didn't argue." | | 16 | "He simply waited, the way" | | 17 | "She hated that she remembered" | | 18 | "He shifted his weight onto" | | 19 | "She thought about Evan." |
| | ratio | 0.526 | |
| 11.55% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 87 | | totalSentences | 97 | | matches | | 0 | "The knock came at quarter" | | 1 | "Aurora Carter measured it by" | | 2 | "She wasn't expecting anyone." | | 3 | "She never was, not anymore." | | 4 | "The knock came again—measured, unhurried," | | 5 | "Aurora set down her book." | | 6 | "The spine cracked, marking a" | | 7 | "She crossed the narrow sitting" | | 8 | "Aurora's hand hovered over the" | | 9 | "She thought, very calmly, very" | | 10 | "She thought about the three" | | 11 | "She opened it." | | 12 | "Lucien Moreau stood in the" | | 13 | "His charcoal suit was immaculate," | | 14 | "The ivory handle of his" | | 15 | "He looked, Aurora thought, exactly" | | 16 | "That was the worst part." | | 17 | "That was always the worst" | | 18 | "She should have closed the" | | 19 | "She should have said *go" |
| | ratio | 0.897 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 97 | | matches | (empty) | | ratio | 0 | |
| 76.41% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 43 | | technicalSentenceCount | 4 | | matches | | 0 | "The ivory handle of his cane glinted at his side, and his platinum hair was slicked back from his face in that way that made him look like a man who had stepped…" | | 1 | "The flat was small—a single room that served as kitchen, sitting room, and everything else, with a narrow bedroom tucked behind a half-wall." | | 2 | "She looked at him—really looked—at the man in the charcoal suit with the heterochromatic eyes and the hidden blade and the four languages and the seven months o…" | | 3 | "She thought of the half-demon in her sitting room who had once translated an ancient text for her at three in the morning and had not, in all the time she had k…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 21 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 13 | | fancyCount | 1 | | fancyTags | | | dialogueSentences | 54 | | tagDensity | 0.241 | | leniency | 0.481 | | rawRatio | 0.077 | | effectiveRatio | 0.037 | |