Run: 2026-03-15-01KKS395J84R4TCR1ZQTE4NHCW

Run Details

Duration:
32.4s
Cost:
$0.006744
Provider:
Z.AI

Model input

System
You are an expert and award-winning novel writer in the dark Thriller genre. Your readers are hooked on your stories and can't wait to read the book you have in store. <important> - MUST: Start each chapter in medias res (in the middle of action). AVOID talking about the weather, time of day, the position of the sun, or other boring stuff. - The instructions/summary are just a that, a summary. Feel free to add details, stretch sections and add interesting transitions/descriptions/fillers. - When called for it, have fast-paced action, but otherwise take things slow. This is an experience, and not for people with short attention spans. Enjoy the wine, not slurp Red Bull. - Add descriptions when transitioning places/times/etc, or when coming by new places (e.g. a corner shop, a cafe, etc.). But remember: NOT at the start or end of a chapter. - MUST: AVOID ending in internal monologue, reminiscing or waiting for the next day. A good chapter end is when we're ending right when shit hits the fan. We want to have the reader be excited for what comes next. So no reminiscing, contemplating or summarizing the day. It's popcorn time! </important>
User/Human
Take into account the following glossary of characters/locations/items/lore... when writing your response: <codex> <character id="4416" name="Detective Harlow Quinn" aliases="Quinn, Detective Quinn, Harlow" pronouns="she/her" species="Human" storyRole="Antagonist"> <eyeColor>brown</eyeColor> <hair>closely cropped salt-and-pepper</hair> <height>5'9"</height> <age>41</age> <jawline>sharp jaw</jawline> <watch>worn leather watch on her left wrist</watch> <bearing>military precision</bearing> <description>A Metropolitan Police detective with 18 years of decorated service who suspects the clique is involved in criminal activity.</description> <backstory>She lost her partner, DS Morris, during a case three years ago under unexplained circumstances that had supernatural origins she doesn't yet understand.</backstory> </character> <character id="4417" name="Tomás Herrera" aliases="Tommy, Tomás, Herrera" pronouns="he/him" species="Human" storyRole="Support"> <eyeColor>warm brown</eyeColor> <hair>short curly dark brown</hair> <height>5'10"</height> <age>29</age> <skinTone>olive skin</skinTone> <scar>scar running along his left forearm from a knife attack</scar> <medallion>Saint Christopher medallion around his neck</medallion> <birthplace>Seville, Spain</birthplace> <description>A former paramedic who provides off-the-books medical care for the clique.</description> <backstory>Born in Seville, Spain. He moved to London to work for the NHS but lost his license after administering unauthorized treatments to supernatural patients.</backstory> </character> <location id="854" name="The Raven's Nest" aliases="the Nest, Raven, Silas' bar" realm="Earth"> <signColor>distinctive green neon sign above the entrance</signColor> <secretRoom>hidden back room accessible through a bookshelf, used for clandestine meetings</secretRoom> <description>A dimly lit bar in Soho, London. The walls are covered with old maps and black-and-white photographs.</description> </location> <location id="856" name="The Veil Market" aliases="Veil Market, the Market, underground market" realm="Earth"> <currentLocation>abandoned Tube station beneath Camden</currentLocation> <entryRequirement>bone token</entryRequirement> <schedule>moves locations every full moon</schedule> <description>A hidden supernatural black market that sells enchanted goods, banned alchemical substances, and information.</description> </location> </codex> <proseGuidelines> <styleGuide> - Write in past tense and use British English spelling and grammar - Keep a Flesch reading ease score of 60 - Respect the the Royal Order of Adjectives: The order is: opinion, size, age, shape, color, origin, material, purpose, followed by the noun itself (e.g., "a lovely little old rectangular green French silver whittling knife") - Respect the ablaut reduplication rule (e.g. tick-tock, flip-flop) - Write in active voice - Passive voice: <bad>The book was read by Sarah.</bad> - Active voice: <good>Sarah read the book.</good> - Reduce the use of passive verbs - <bad>For a moment, I was tempted to throw in the towel.</bad> - <good>For a moment, I felt tempted to throw in the towel.</good> - Avoid misplaced modifiers that can cause confusion when starting with "-ing" words: - <bad>Considering going to the store, the empty fridge reflected in Betty's eyes.</bad> - <good>Betty stared into the empty fridge. It was time to go to the store.</good> - Avoid redundant adverbs that state the obvious meaning already contained in the verb: - <bad>She whispered quietly to her mom.</bad> - <good>She whispered to her mom.</good> - Use stronger, more descriptive verbs over weak ones: - <bad>Daniel drove quickly to his mother's house.</bad> - <good>Daniel raced to his mother's house.</good> - Omit adverbs that don't add solid meaning like "extremely", "definitely", "truly", "very", "really": - <bad>The movie was extremely boring.</bad> - <good>The movie was dull.</good> - Use adverbs to replace clunky phrasing when they increase clarity: - <bad>He threw the bags into the corner in a rough manner.</bad> - <good>He threw the bags into the corner roughly.</good> - Avoid making simple thoughts needlessly complex: - <bad>After I woke up in the morning the other day, I went downstairs, turned on the stove, and made myself a very good omelet.</bad> - <good>I cooked a delicious omelet for breakfast yesterday morning.</good> - Never backload sentences by putting the main idea at the end: - <bad>I decided not to wear too many layers because it's really hot outside.</bad> - <good>It's sweltering outside today, so I dressed light.</good> - Omit nonessential details that don't contribute to the core meaning: - <bad>It doesn't matter what kind of coffee I buy, where it's from, or if it's organic or not—I need to have cream because I really don't like how the bitterness makes me feel.</bad> - <good>I add cream to my coffee because the bitter taste makes me feel unwell.</good> - Always follow the "show, don't tell" principle. For instance: - Telling: <bad>Michael was terribly afraid of the dark.</bad> - Showing: <good>Michael tensed as his mother switched off the light and left the room.</good>- Telling: <bad>I walked through the forest. It was already Fall, and I was getting cold.</bad> - Showing: <good>Dry orange leaves crunched under my feet. I pulled my coat's collar up and rubbed my hands together.</good>- Add sensory details (sight, smell, taste, sound, touch) to support the "showing" (but keep an active voice) - <bad>The room was filled with the scent of copper.</bad> - <good>Copper stung my nostrils. Blood. Recent.</good> - Use descriptive language more sporadically. While vivid descriptions are engaging, human writers often use them in bursts rather than consistently throughout a piece. When adding them, make them count! Like when we transition from one location to the next, or someone is reminiscing their past, or explaining a concept/their dream... - Avoid adverbs and clichés and overused/commonly used phrases. Aim for fresh and original descriptions. - Avoid writing all sentences in the typical subject, verb, object structure. Mix short, punchy sentences with long, descriptive ones. Drop fill words to add variety. Like so: <good>Locked. Seems like someone doesn't want his secrets exposed. I can work with that.</good> - Convey events and story through dialogue. It is important to keep a unique voice for every character and make it consistent. - Write dialogue that reveals characters' personalities, motivations, emotions, and attitudes in an interesting and compelling manner - Leave dialogue unattributed. If needed, only use "he/she said" dialogue tags and convey people's actions or face expressions through their speech. Dialogue always is standalone, never part of a paragraph. Like so: - <bad>"I don't know," Helena said nonchalantly, shrugging her shoulders</bad> - <good>"No idea" "Why not? It was your responsibility"</good> - Avoid boring and mushy dialog and descriptions, have dialogue always continue the action, never stall or include unnecessary fluff. Vary the descriptions to not repeat yourself. Avoid conversations that are just "Let's go" "yes, let's" or "Are you ready?" "Yes I'm ready". Those are not interesting. Think hard about every situtation and word of text before writing dialogue. If it doesn't serve a purpose and it's just people talking about their day, leave it. No one wants to have a normal dinner scene, something needs to happen for it to be in the story. Words are expensive to print, so make sure they count! - Put dialogue on its own paragraph to separate scene and action. - Use body language to reveal hidden feelings and implied accusations- Imply feelings and thoughts, never state them directly - NEVER use indicators of uncertainty like "trying" or "maybe" - NEVER use em-dashes, use commas for asides instead </styleGuide> <voiceGuide> Each character in the story needs to have distinct speech patterns: - Word choice preferences - Sentence length tendencies - Cultural/educational influences - Verbal tics and catchphrases Learn how each person talks and continue in their style, and use their Codex entries as reference. <examples> - <bad>"We need to go now." "Yes, we should leave." "I agree."</bad> <good>"Time's up." "Indeed, our departure is rather overdue." "Whatever, let's bounce."</good> - Power Dynamic Example: <bad> "We need to discuss the contract." "Yes, let's talk about it." "I have concerns." </bad> <good> "A word about the contract." "Of course, Mr. Blackwood. Whatever you need." "The terms seem..." A manicured nail tapped the desk. "Inadequate." "I can explain every-" "Can you?" </good> </examples> </voiceGuide> <dialogueFlow> When writing dialogue, consider that it usually has a goal in mind, which gives it a certain flow. Make dialogue sections also quite snappy in the back and forth, and don't spread the lines out as much. It's good to have details before, after, or as a chunk in-between, but we don't want to have a trail of "dialogue breadcrumbs" spread throughout a conversation. <examples> - Pattern 1 - Question/Deflection/Revelation: <good> "Where were you last night?" "Work. The usual." "Lipstick's an interesting shade for spreadsheets." </good> - Pattern 2 - Statement/Contradiction/Escalation: <good> "Your brother's clean." "Tommy doesn't touch drugs." "I'm holding his tox screen." </good> - Pattern 3 - Observation/Denial/Truth: <good> "That's a new watch." "Birthday gift." "We both know what birthdays mean in this business." </good> - Example - A Simple Coffee Order: <bad> "I'll have a coffee." "What size?" "Large, please." </bad> <good> "Black coffee.""Size?""Large. Been a long night." "That bodega shooting?" "You watch too much news." "My brother owns that store." </good> This short exchange: - Advances plot (reveals connection to crime) - Shows character (cop working late) - Creates tension (unexpected connection) - Sets up future conflict (personal stake) - Example - Dinner Scene: <bad> "Pass the salt." "Here you go." "Thanks." </bad> <good> "Salt?" "Perfect as is. Mother's recipe." "Mother always did prefer... bland things." "Unlike your first wife?" </good> - Example - Office Small Talk: <bad> "Nice weather today." "Yes, very nice." "Good for golf." </bad> <good> "Perfect golf weather." "Shame about your membership." "Temporary suspension. Board meets next week." "I know. I called the vote." </good> </examples> </dialogueFlow> <subtextGuide> - Layer dialogue with hidden meaning: <bad>"I hate you!" she yelled angrily.</bad> <good>"I made your favorite dinner." The burnt pot sat accusingly on the stove.</good> - Create tension through indirect communication: <bad>"Are you cheating on me?"</bad> <good>"Late meeting again?" The lipstick stain on his collar caught the light.</good> <examples> - Example 1 - Unspoken Betrayal: <bad> "Did you tell them about our plans?" "No, I would never betray you." "I don't believe you." </bad> <good> "Funny. Johnson mentioned our expansion plans today." "The market's full of rumors." "Mentioned the exact numbers, actually." The pen in his hand snapped. </good> - Example 2 - Failed Marriage: <bad> "You're never home anymore." "I have to work late." "I miss you." </bad> <good> "Your dinner's in the microwave. Again." "Meetings ran long." "They always do." She folded the same shirt for the third time. </good> - Example 3 - Power Struggle: <bad> "You can't fire me." "I'm the boss." "I'll fight this." </bad> <good> "That's my father's nameplate you're sitting behind." "Was." "The board meeting's on Thursday." </good> </examples> </subtextGuide> <sceneDetail> While writing dialogue makes things more fun, sometimes we need to add detail to not have it be a full on theatre piece. <examples> - Example A (Power Dynamic Scene) <good> "Where's my money?" The ledger snapped shut. "I need more time." "Interesting." He pulled out a familiar gold pocket watch. My mother's. "Time is exactly what you bargained with last month." "That was different-" "Was it?" The watch dangled between us. "Four generations of O'Reillys have wound this every night. Your mother. Your grandmother. Your great-grandmother.Shall we see who winds it next?" </good> - Example B (Action Chase) It's much better to be in the head of the character experiencing it, showing a bit of their though-process, mannerisms and personality: <good> Three rules for surviving a goblin chase in Covent Garden: Don't run straight. Don't look back. Don't let them herd you underground. I broke the first rule at Drury Lane. Rookie mistake. The fruit cart I dodged sailed into the wall behind me. Glass shattered. Someone screamed about insurance. *Tourist season's getting rough*, the scream seemed to say. Londoners adapt fast. "Oi! Market's closed!" The goblin's accent was pure East End. They're evolving. Learning. I spotted the Warren Street tube station sign ahead. *Shit.* There went rule three. </good> - Example C (Crime Scene Investigation) <good> "Greek." Davies snapped photos of the symbols. "No, wait. Reverse Greek." "Someone's been watching too many horror films." I picked up a receipt from the floor. Occult supply shop in Camden. Paid by credit card. *Amateur hour*. "Could be dangerous though," Davies said. "Remember Bristol?" "Bristol was Sanskrit. And actual cultists." I pointed to the nearest symbol. "This genius wrote 'darkness' backwards but used a Sigma instead of an S. It's summoning Instagram followers at best." "Speaking of followers..." Davies pointed to heavy foot traffic in the dust. Multiple sets. All new trainers. *Ah.* "Anyone check local uni paranormal societies?" </good> - Example D (Dialogue-heavy) <good> "Found your card in her wallet." The detective slid it across the table. Worn edges. Folded corner. Three years old at least. "Standard practice. I work missing persons." "Funny thing about missing persons.Eventually they stop being missing. Turn up in the Thames. Under motorways. In pieces." "I don't-" "You found four last year. All breathing." She opened a file. "This would've been your first dead one. If we hadn't found her first." The card felt heavier somehow. </good> </examples> </sceneDetail> <sceneOpenings> KEY RULE: Never open with more than one paragraph of description, no matter how beautiful. Description should be earned through action and dialogue. Instead of opening with setting description, open with: - A character doing something specific - A line of dialogue that raises questions - An unexpected observation - A moment of tension or conflict - Start with a hook that's 1-2 sentences maximum - Follow with a smaller paragraph that provides immediate context - Vary paragraph size from the start to create visual interest </sceneOpenings> </proseGuidelines> Write a chapter based on the following instructions: <instructions> Write a fully fleshed out scene of at least 1000 words in the thriller genre. A detective is pursuing a suspect through rain-soaked city streets at night. The chase takes them from the street level down into an underground market. The detective must decide whether to follow the suspect into unfamiliar and potentially dangerous territory. Use the codex entries above as your world reference for characters and setting. Only include the prose of the scene without any markdown or commentary. </instructions>

Model response

AI
The suspect vaulted a skip and Quinn's knees screamed in protest as she followed. Twenty years of chasing criminals through London's crap weather, and her body had started filing formal complaints around year fifteen. He was fast. Young. Wore a dark jacket that blended with the wet brickwork but flashed white at the soles of his trainers. Stupid choice. She'd marked him the second he'd bolted from the Raven's Nest, the green neon sign casting his shadow long against Soho's pavement. Left onto Dean Street. The rain hammered down in sheets, turning the road into a mirror of reflected headlights and brake lights. Her worn leather watch caught the glow of a passing bus. She didn't need to check it. Her lungs told her everything: four minutes of sustained sprint, heart rate pushing dangerous territory. The suspect clipped a bin liner full of takeaway waste. Cartons exploded across the pavement. Curry sauce and chips scattered like shrapnel. "Metropolitan Police! Stop!" He didn't stop. They never stopped. She dodged the worst of it and kept moving. The wet soles of her boots gripped poorly on the slick stone. Three times in the past minute she'd felt her balance shift, felt the ankle she'd twisted in 2019 threaten to buckle. Discipline kept her upright. Eighteen years of training didn't wash away in the rain. He turned north. Toward Camden. Quinn adjusted her route. She knew these streets better than most. Knew which alleys connected, which dead-ended, which had doors that might open for a copper in pursuit. She cut through a gap between a closed chippy and a massage parlour with pink neon in the window. The smell of chip fat gave way to damp concrete and piss. Emerging onto Tottenham Court Road, she spotted him again. Two hundred metres ahead. Crossing against the lights. A black cab swerved, horn blaring. The suspect didn't even flinch. She sprinted across after the traffic parted. Her hip clipped a wing mirror. Pain flared, dull and familiar. The crowd thickened as they pushed into Camden. Saturday night brought out the tourists, the punks, the drinkers spilling from pubs with names like The Good Mixer and The Devonshire Arms. The suspect used them. Weaved through clusters of umbrellas and drunken laughter. Quinn barrelled through gaps that widened at the last second when people saw her face. She'd cultivated that expression. The one that said she wasn't asking for permission. He ducked left. Down a narrow passage between two market stalls, their metal shutters pulled tight for the night. Graffiti covered every inch of wall. Tags layered over tags until the brick became an illegible scream of colour. The passage opened onto a small plaza. Closed shops. A single streetlamp flickering its death throes. And there, an entrance she'd seen on old maps but never in person. A narrow stairwell leading down, blocked by a rusted gate that should have been chained shut. The gate hung open. She slowed at the top of the stairs. The suspect was halfway down, his white trainer soles disappearing into the darkness below. The smell rising from that depth wasn't sewage or stagnant water. It was something else. Incense. Copper. The ozonic tang of a summer storm contained in an enclosed space. Her radio crackled. "Quinn, what's your twenty?" She pressed the transmit button. "Camden. North side market. Pursuing on foot." "Backup's eight minutes out." Eight minutes. An eternity in a chase. She released the button and stared into the dark. Three years ago, DS Morris had followed a suspect into a basement in Whitechapel. They'd found his body the next morning, arranged on the floor in a pattern the forensic team couldn't explain. No witnesses. No DNA. No explanation that didn't require her to believe in things she'd spent her career dismissing. The case file sat in her desk drawer. She'd read it so many times the pages had gone soft at the edges. Now she stood at the mouth of another hole in the ground, and something in her gut was screaming. The suspect hadn't stopped. He knew she was behind him. Knew she'd hesitate. That was the point, wasn't it? Lead the cop somewhere dark and unfamiliar. Somewhere the rules changed. She drew her torch and started down the stairs. The walls were tiled, old Victorian ceramics cracked and stained. This had been part of the Underground once. A station that never opened, or one that closed decades ago. She'd heard rumours. Every copper with more than a decade on the force had heard rumours. Secret places beneath the city. Markets that dealt in things you couldn't buy above ground. The stairs ended in a corridor. Her torch cut through the gloom, illuminating pipes and cables and more graffiti. But different down here. Symbols she didn't recognise. Not tags. Not gang signs. Something older. The air grew warmer. The flickering orange glow of lanterns appeared ahead, replacing the absolute dark. She heard voices. Low murmurs. The clink of glass on glass. She rounded a corner and stopped. The corridor opened into a vast space. The vaulted ceiling of the abandoned station stretched overhead, blackened by decades of soot and neglect. But below, the space had been transformed. Stalls lined the platform like a night market transplanted into hell. Candles and lanterns provided uneven light. Figures moved between the stalls, wrapped in dark clothing, faces obscured by hoods and scarves. The Veil Market. She knew the name from informants who'd whispered it and then refused to say more. From case files that mentioned it in passing before the trails went cold. From the file on Morris. Her suspect stood at the edge of the market, facing her. He'd stopped running. His chest heaved with exertion, but his expression was calm. Knowing. "Detective Quinn." His voice carried across the space. Several figures turned to look. "We wondered when you'd come." She kept her torch trained on him. Her hand hovered near her sidearm. "You know why I'm here." "The Nest. You saw the transaction." "Murder weapon. Stolen from an evidence lockup three years ago. DS Morris's case." Something shifted in the market. A ripple of attention. The murmuring stopped. The suspect smiled. "You shouldn't have come down here alone." "Where is it?" "The question you should be asking," he said, stepping back into the market, "is what it was used for." The stalls on either side of him parted. Figures emerged. Not threatening, not yet, but positioning themselves. Blocking her sightline. Her escape route. She counted eight. Ten. More in the shadows she couldn't see. "Last chance to tell me what I need to know." "You're not in a position to negotiate, Detective." The lights went out. Every lantern, every candle, snuffed out in the same instant. Total darkness swallowed the space. Her torch beam cut a narrow cone through the black, but when she swept it back to where the suspect had stood, he was gone. Then the screaming started.
created_at"2026-03-15T15:54:18.584Z" 3/15/2026, 3:54:18 PM
model"z-ai/glm-5-turbo-20260315"
app_id182717
external_user(null)
streamedtrue
cancelledfalse
latency2985
moderation_latency(null)
generation_time32311
tokens_prompt4663
tokens_completion2220
native_tokens_prompt4193
native_tokens_completion1848
native_tokens_completion_images(null)
native_tokens_reasoning409
native_tokens_cached4160
num_media_prompt(null)
num_input_audio_prompt(null)
num_media_completion0
num_search_results(null)
origin"https://ncbench.com/"
is_byokfalse
finish_reason"stop"
native_finish_reason"stop"
usage0.006744
router(null)
provider_responses
0
endpoint_id"9ce3b132-3a17-4fea-8092-0e8e519ed32b"
id"202603152354192eb3c22d546b487d"
is_byokfalse
latency2985
model_permaslug"z-ai/glm-5-turbo-20260315"
provider_name"Z.AI"
status200
user_agent"langchainjs-openai/1.0.0 ((node/v24.14.0; linux; x64))"
http_referer(null)
api_type"completions"
id"gen-1773590058-Q9zCEtZWokEX4qageR2o"
upstream_id"202603152354192eb3c22d546b487d"
total_cost0.006744
cache_discount0.0039936
upstream_inference_cost0
provider_name"Z.AI"

Evaluation details

Result Evaluator Details Meta Data
100.00% Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags2
adverbTagCount0
adverbTags(empty)
dialogueSentences14
tagDensity0.143
leniency0.286
rawRatio0
effectiveRatio0
100.00% AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount1161
totalAiIsmAdverbs0
found(empty)
highlights(empty)
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)
91.39% AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount1161
totalAiIsms2
found
0
word"familiar"
count1
1
word"gloom"
count1
highlights
0"familiar"
1"gloom"
100.00% Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches0
maxInWindow0
found(empty)
highlights(empty)
100.00% Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells0
narrationSentences137
matches(empty)
100.00% Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount1
hedgeCount0
narrationSentences137
filterMatches
0"watch"
hedgeMatches(empty)
100.00% Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences149
gibberishSentences0
adjustedGibberishSentences0
longSentenceCount0
runOnParagraphCount0
giantParagraphCount0
wordSaladCount0
repetitionLoopCount0
controlTokenCount0
maxSentenceWordsSeen25
ratio0
matches(empty)
100.00% Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans0
markdownWords0
totalWords1161
ratio0
matches(empty)
100.00% Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions7
unquotedAttributions0
matches(empty)
100.00% Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions26
wordCount1072
uniqueNames22
maxNameDensity0.28
worstName"Quinn"
maxWindowNameDensity1
worstWindowName"Quinn"
discoveredNames
Quinn3
London1
Raven1
Nest1
Soho1
Dean1
Street1
Camden2
Tottenham1
Court1
Road1
Good1
Mixer1
Devonshire1
Arms1
Morris2
Whitechapel1
Victorian1
Underground1
Veil1
Market1
Several1
persons
0"Quinn"
1"Morris"
places
0"London"
1"Raven"
2"Soho"
3"Dean"
4"Street"
5"Camden"
6"Tottenham"
7"Court"
8"Road"
9"Whitechapel"
globalScore1
windowScore1
100.00% Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences78
glossingSentenceCount1
matches
0"appeared ahead replacing the absolute dark"
27.73% "Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches2
per1kWords1.723
wordCount1161
matches
0"Not threatening, not yet, but positioning themselves"
1"not yet, but positioning themselves"
100.00% Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount1
totalSentences149
matches
0"cultivated that expression"
100.00% Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs49
mean23.69
std18.04
cv0.761
sampleLengths
034
147
254
322
43
56
656
75
859
928
1018
1143
1228
1338
1445
154
1651
173
184
1912
204
2116
2252
2322
2419
2530
269
2760
2834
2927
306
3162
3236
3325
3418
3518
366
3713
3812
3910
403
4119
4223
4311
4410
458
464
4740
484
95.02% Passive voice overuse
Target: ≤2% passive sentences
passiveCount4
totalSentences137
matches
0"been chained"
1"were tiled"
2"been transformed"
3"was gone"
100.00% Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount2
totalVerbs190
matches
0"wasn't asking"
1"was screaming"
100.00% Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount0
semicolonCount0
flaggedSentences0
totalSentences149
ratio0
matches(empty)
100.00% Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount1073
adjectiveStacks0
stackExamples(empty)
adverbCount13
adverbRatio0.012115563839701771
lyAdverbCount1
lyAdverbRatio0.0009319664492078285
100.00% Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences149
echoCount0
echoWords(empty)
100.00% Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences149
mean7.79
std5.33
cv0.684
sampleLengths
014
120
23
31
419
52
622
74
818
911
106
1115
1210
135
147
153
163
173
189
1912
2021
214
2210
233
242
254
267
2717
2819
2912
309
314
324
336
345
357
366
375
388
3923
404
418
4215
434
449
453
4616
476
4813
497
72.26% Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats9
diversityRatio0.4697986577181208
totalSentences149
uniqueOpeners70
81.97% Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount3
totalSentences122
matches
0"Somewhere the rules changed."
1"More in the shadows she"
2"Then the screaming started."
ratio0.025
92.13% Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount39
totalSentences122
matches
0"He was fast."
1"She'd marked him the second"
2"Her worn leather watch caught"
3"She didn't need to check"
4"Her lungs told her everything:"
5"He didn't stop."
6"They never stopped."
7"She dodged the worst of"
8"He turned north."
9"She knew these streets better"
10"She cut through a gap"
11"She sprinted across after the"
12"Her hip clipped a wing"
13"She'd cultivated that expression."
14"He ducked left."
15"She slowed at the top"
16"It was something else."
17"Her radio crackled."
18"She pressed the transmit button."
19"She released the button and"
ratio0.32
78.85% Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount93
totalSentences122
matches
0"The suspect vaulted a skip"
1"He was fast."
2"She'd marked him the second"
3"The rain hammered down in"
4"Her worn leather watch caught"
5"She didn't need to check"
6"Her lungs told her everything:"
7"The suspect clipped a bin"
8"Cartons exploded across the pavement."
9"Curry sauce and chips scattered"
10"He didn't stop."
11"They never stopped."
12"She dodged the worst of"
13"The wet soles of her"
14"He turned north."
15"Quinn adjusted her route."
16"She knew these streets better"
17"She cut through a gap"
18"The smell of chip fat"
19"A black cab swerved, horn"
ratio0.762
40.98% Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount1
totalSentences122
matches
0"Now she stood at the"
ratio0.008
93.02% Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences43
technicalSentenceCount3
matches
0"Wore a dark jacket that blended with the wet brickwork but flashed white at the soles of his trainers."
1"Knew which alleys connected, which dead-ended, which had doors that might open for a copper in pursuit."
2"A narrow stairwell leading down, blocked by a rusted gate that should have been chained shut."
100.00% Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags2
uselessAdditionCount0
matches(empty)
100.00% Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags1
fancyCount0
fancyTags(empty)
dialogueSentences14
tagDensity0.071
leniency0.143
rawRatio0
effectiveRatio0
92.4452%