Run: 2026-02-19-01KHT0TY4WNG4J5NBY11ZRHVQ5

Run Details

Model:
GPT-5
Duration:
2m 16s
Cost:
$0.067978
Provider:
OpenAI

Model input

System
You are an expert and award-winning novel writer in the dark Mystery 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="4414" name="Eva Kowalski" aliases="Eva, Evie" pronouns="she/her" species="Human" storyRole="Best Friend"> <eyeColor>green</eyeColor> <hair>curly red</hair> <height>5'4"</height> <age>26</age> <glasses>round glasses</glasses> <satchel>worn leather satchel full of books</satchel> <freckles>freckled complexion</freckles> <nervousHabit>tucking hair behind her left ear</nervousHabit> <description>Aurora's childhood friend and an occult researcher.</description> <backstory>Moved to London two years before Aurora and works as a research assistant at the British Museum's restricted archives. She holds a master's degree in Ancient History from Oxford.</backstory> </character> <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> <item id="2004" name="Veil Compass" aliases="the Compass, shadow compass" type="Tool" origin="The Veil Market"> <casingMaterial>small brass compass</casingMaterial> <faceMarkings>face etched with protective sigils</faceMarkings> <needle>points toward the nearest supernatural rift or portal</needle> <patina>casing has a patina of verdigris</patina> <creator>crafted by a Shade artisan</creator> <description>A compass attuned to supernatural energy.</description> </item> </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 mystery genre. A detective arrives at a crime scene in an unusual location. Something is wrong — the evidence doesn't add up. A colleague is present, offering a different interpretation. Through careful observation and deduction, the detective begins to see what others have missed. 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
"Stop. Bag stays shut." Harlow dropped from the platform and hit the ballast hard enough to bite through her soles. Grit snapped under her weight. The Scenes of Crime tech froze, gloved hands hovering over an open evidence pouch like a schoolboy mid-theft. "Detective Quinn?" DS Callum Sharpe peered over the edge, lean frame outlined by the dead platform lamps. "We have one body and a load of theatre. Fancy candles. Bloke bled out like a bad Hamlet." Harlow ignored him. She crouched beside the sheeted shape between the rails and peeled the plastic back from the chest down. Copper stung her nostrils. Blood. Recent. The man's shirt had been opened cleanly to the sternum and turned back with care. A narrow cut ran across his ribs. Not a slash. A line you could draw with a ruler. Someone had wiped him, then repainted him. Her fingers hovered a hair above the skin, sense of temperature, texture, remembering the way heat died. Above them, the old station stretched like a throat. Tiles flaked from curved walls, white gone nicotine and peeled, hand-painted adverts trapped in another century and another idea of cheap cures. Metal shutters, warped, stood ajar to a run of bricked-off arches that had not seen commuters in decades. Not emptiness though. The floor carried the scuffs of crates hauled and stacked. Patchy chalk sigils crusted the platform edge, lines drawn on the quick by someone who had drawn them before. A whiff of cardamom mixed with machine oil and damp iron. Behind a rusted grille, a painted sign read CAMDEN in a serif gone soft under the grime. "Ritualistic nonsense," Sharpe said from overhead. His accent clipped its way out of South London. "We pulled three knives from behind a crate. All kitchen, all pound shop. No ritual daggers, no goats. He slit himself, or someone helped." "He did not slit himself," Harlow said. She ran her gaze across the ballast. Footprints crisp in the damp grit where someone had stepped down. Two sets, men’s trainers, one wide, one narrow, and a smaller print so light it had not settled the stones at all. That one bothered her. She glanced to the rails. Dust lay on them like velvet. No wheel had shone these in years. On the base of the third rail sat a smear of something black-green. Grease, old, but touched by a hand today. The touch made a finger's crescent in it. Too much care for an amateur scene. "Look at his fingers," one of the techs said. "Under the nails." She lifted a hand, checked the nail beds. New skin torn into ragged half moons. He had grabbed something rough before he died. The right index nail bore a faint white line of chalk. She pressed her thumb to the knuckle. The joint gave under pressure. Dislocated post-mortem? That would take thought. The scene had been arranged with thought. "This market looked busy when it ran," Sharpe said. He hopped down beside her with a loose-jointed flop, trainers picking poor purchase on the ballast. "Council went in, boarded it eighteen months ago when the last squat fire took. We have vagrants. They love a stage. They put on a show for the tourists, nick a wallet, stick a knife in. One phone call to the Echo and you make a night of it." Harlow set the sheet back and straightened, face level with Sharpe’s shoulder. His tie sat half undone, the knot like a punched mouth. He stank faintly of stale coffee and mint. "Where is his wallet?" she said. "Still in his pocket. Cards and a sixty quid fold. That is the point, he does not look robbed, he looks like a man who wanted to be found like this." "Who phoned it in?" "Anonymous tip. Masked number, voice modded to sound like some YouTube prank. Said, and I quote, there is a tableau under Camden and you have ten minutes before the curtain drops." Harlow looked at the body again. The cut had bled. Not much. The pooled blood sat under him in a circle that stopped at the edge of a chalk line drawn around his torso. She crouched and touched the chalk with the back of a knuckle. Fine, fresh. It had sat on top of wet blood in places, not under. Whoever drew it had done so after he bled. Whoever drew it had not wanted to scrub the floor. "Where is the knife that made that cut?" she said. Sharpe lifted a shoulder. "On the floor behind the arch. Wiped, but we pulled prints. Probably his. We found one on a kebab box in his rucksack too. Name is Victor Latham, forty-five, freelance antiques dealer. Lives in Islington. Door was kicked for a welfare check two weeks ago, no answer. Neighbours say he travels." "He did travel," Harlow said. She looked beyond Sharpe to the dark line of an old turnstile. Its arms had been removed, replaced by a rope threaded with knucklebones, polished by hands. Each bone had been notched with five cuts. An entry counter. You took a bone and paid it back. This was not vagrant theatre. This was a doorway that wanted your tokens. She walked to the turnstile. On the floor by the base she saw a tiny object like a tooth. She crouched, lifted it with a gloved pinch. It was a coin of bone with a drilled hole and worn edges. She rolled it in her palm. Faint carvings cut into one side. A sigil like a bird's footprint. She did not like the way her skin felt under the glove when she touched it. An itch crawled along the hand that wore her watch. The old leather band creaked. "What is it now?" Sharpe said. "Another charm?" "Token," she said. "People pay to pass." "Pay with bones?" His laugh hit a note he did not control. "We have a cult and a ticket office." Harlow passed him the token. He made a face when he took it, then hid the face. "Bag it," she said. She moved to the stack of crates past the turnstile. The top bore chalk script, not written, scribed with a slow hand. The lid had been cracked and reclosed. She prised it up one nail-width and sniffed. Cinnamon. Old rope. Something like old pennies. Inside, cloth wrapped small objects that clinked as though they had teeth. She shut it with care. "Quinn." Sharpe gestured to the SOCO. The woman held up an evidence bag. Inside lay a small brass compass, case scabbed with verdigris. The face bore markings she recognised from the night DS Morris had gone through a doorway that had no hinges. Harlow took the bag. The needle trembled like a locked breath, then swung and held. It held not north. It pointed at the tiled wall where an advert for a patent digestive cure still grinned its rheumy grin. "Found under his thigh," the SOCO said. "Like he tucked it when he went down." "It is not a compass," Harlow said. "Course it is. A rubbish one," Sharpe said. "He was an antiques geezer. He hawked things in markets. He had a market in a station. We have all the threads we need." She lifted her left wrist. The leather of her watch band rasped. She set the compass bag close. The tick slowed. She pulled the bag back. It resumed. She brought it in again. The tick lagged like a heart under cold water. Sharpe watched with a face that tried for bored and landed at alert. "Magnet. Bit of iron in the wall. You can make the needle point at your mum with a big enough magnet." "You tried this in a classroom once," she said. "I am full of useful experiments." The compass needle flicked again. It moved wrong, like an animal that scented meat in a place it did not expect meat to be. Harlow held it while she angled her body to block the others’ sight. Her own eyes ran along the line of tiles at the far end of the platform. In one place, grout sat darker, not with damp, but with oil. A hand had rested there often, fingers brushing the same seams. "Who is your civilian?" Sharpe said. He was not looking at the wall. He was looking past Harlow's shoulder along the line of the platform. Boots clicked, soft, cautious. Harlow did not turn. "Museum liaison." "You brought a librarian to a stage set." "She will earn her keep." Eva Kowalski stepped down from the platform with a care that made the SOCOs unclench. Curly red hair piled into a knot had already started to escape. Round glasses fogged at the edges, then cleared. She tucked hair behind her left ear and adjusted the worn leather satchel strap across her chest. She took in the chalk on the ground, the crates, the token rope, the corpse with the neat cut. No flinch. Her green eyes were tired, but her gaze held. "Ms Kowalski," Harlow said. "Objects and marks. Short answers." "I assumed as much," Eva said. Her voice carried the soft edges of Oxford taught to cut when needed. "This is not theatre, Detective. This is a market. It moves. It sets a rule at the gate and a price behind it. That rope would be called a ledger if you were a poet and a turnstile if you were not. May I?" Harlow handed her the compass bag. Eva held it up to her face without touching the brass through the plastic. The needle trembled, corrected, rested in the same wrong direction. "Shade work," Eva said. "Protective etchings on the face. Trader’s hands. It points to places where the world wears thin. Someone paid good coin in a language that bites your mouth to make this." "Occult bingo," Sharpe said. "We all shout full house and go for chips." Eva did not even blink at him. "Your body does not match your cut," she said. "He was moved after the bleed, arranged for your photographer. Victor Latham did not stage himself." Sharpe squinted. "You know his name already?" "I read it off the bag on your table," she said. "I also read the cut. It follows the fifth rib too closely for a clumsy hand." Harlow let Sharpe and Eva talk and watched the platform. She had walked through this station with a torch once before when she still wore a uniform and her shoulders still fit her shirts tight. Back then, it smelled of mould and piss. Tonight the air held spice and the iron tang of money. Someone had thrown a party and left in a hurry. The chalk sigils along the edge repeated at neat intervals, spaced by the old pilaster capitals. The line near the body crossed a smudge of soot from a shoe that had been on the floor earlier. She traced that line with her torch and found a second sigil under the turnstile muster that had been wiped with water. It left a finger-drawn streak. Someone had kept one part of the floor clean while they dirtied the rest. "Show me his shoes," Harlow said. The SOCO held up a paper bag. She pulled out a pair of polished brogues, dark brown, soles thin with city miles but not ragged. Not a vagrant’s shoes. She bent the sole. Fine stones had worked in between the tread and the leather, but there was no dark scum of the ballast crushed to putty. He had not walked long on these stones. Sharpe sighed. "Someone brought him in. Or he came in and someone helped him lie down. Still fits my picture. Two blokes on spice get bold, stab a mark, panic, draw a few circles, ring us, leg it." Harlow turned the shoe and looked into the toe. A compacted lump of light grey powder sat in the tip. Chalk dust. She glanced to the cut edge of his shirt. The thread had nicked and rolled as it was cut by a blade that passed through paper at speed many times. Not a kitchen knife. Something smaller. Scalpel? Craft knife. The knives they had found would not produce a clean line like that, not with someone still moving. "Search behind the shuttered arch," Harlow said to the SOCO. "Find me paper with clean edges and blades that carry chalk dust. Bag any cloth with iron filings. Look for bone tokens. Count them. Make a note of any with five notches." The woman nodded and went. Sharpe folded his arms and stood too close. "You hear a tune, I can see it. Care to share the melody?" "They kept books," Harlow said. "Not the sort you like. Accounts written into ropes, entries made with finger bones. This is not a ritual murder. This is a message to others who trade here." "And the message says what?" "Do not bring a Met detective’s name to market." His laugh died when he saw her face. "You think he named you?" "He had my card once," she said. "Two months ago he came into the station with a box of brasses from a clear-out in Barnet. Said one piece ticked wrong. I never took the case. He left without the box. It went from my desk. He did not take it." Sharpe stared. "You lost a box." "It walked," she said. "Like other things in this city when they have teeth. Check his rucksack." The SOCO handed it over. Inside, neat compartments, a small ledger bound in cracked calf, a half-eaten apple that had not browned as much as it should. She sniffed it. It smelled of cloves. She set it aside and opened the ledger. Names. Times that looked like tides. Amounts with odd currency markings. Bone tokens drawn as circles with notches. One name had been pressed harder than the rest until the nib tore the page: MORRIS. Her fingers paused. The leather of her watch creaked again. She kept her face blank. She turned the page. At the back a loose rectangle of stiff card slid and dropped to the ballast. She bent and picked it up. A small white card, the size of a hotel key, embossed with a symbol like a wheeled eye. Written under it in a tidy hand: Veil Compass, one only, paid. Eva looked up when Harlow held the card out. "He bought the compass," Eva said. "He did not steal it." "The card calls it a Veil Compass," Sharpe said. "How poetic. You both love a title." "It will point to the nearest rift," Eva said. "To a door cut between places. It is not a toy. If it stopped your watch, Detective, you hold something awake." Harlow did not ask how Eva knew about her watch. Eva watched everyone who watched the door. "Door to where?" Sharpe said. He said it like he laughed at it and wanted the answer. "Another room in the same house," Eva said. "Only this one breathes on a different tide." Sharpe rubbed his jaw and looked to the tiled wall. "So our compass points to your magic door. Great. Is there a murderer on the other side?" "Possibly," Eva said. She did not apologise for the word. "Or someone who wanted to be found by the police tonight. Someone who required an audience. You said, ten minutes before the curtain drops. Does that sound like someone who planned for you to get bored?" Harlow walked to the tiled wall where the compass needle felt most eager. Her torch picked out a hairline crack in the grout that ran down and left like a thought stuck in a corner. The dirty patch where hands touched repeated under the same angle. Certain people had leaned in this place and pressed their ear. She set her palm flat to the tile. Cold. Under it, not a hum, not yet. The old station settled around them like a beast tucking its head under its wing. She clicked her tongue. "Sharpe, get uniform to seal the Camden Road entrances. Leave the back stairs by the service lift unmarked. People will prefer the back. No trampling, no heroics. Ms Kowalski, tell me what this mark wants to be." Eva stepped up beside her. She made no move to touch the wall. She stared, eyes flitting across the tile like a reader scanning a difficult script. "This is a gate that requires an object to complete a sentence. You have the object in your hand." Harlow looked down. The compass sat in the bag, needle twitching like a trapped thing. She lifted it until the needle squared to the crack. Her watch ticked, hesitated, and resumed at a different pace, a syncopation that set her teeth on edge. She felt it then, a thin vibration in her bones, the same she had felt three years ago in a drain tunnel with DS Morris at her shoulder, his laugh in her ear, his body leaving the way a breath leaves. She pushed the thought aside. She called it a thought and not a memory. She set the compass closer to the wall. "Quinn." Sharpe set his hand on her sleeve. "Do not touch the funny door with the funny needle. We have enough weird on the floor." "Stand back, DS," she said. "Authority noted," he said, but he did not let go. He looked smaller when he felt out of his depth and pretended he did not. The station answered for her. The tile under her palm warmed the way a coin warms in blood. A hairline crack parted like a mouth thinking about the first word of a confession. The chalk sigils along the platform edge ghosted pale in the gloom and then brightened, not with light, but with attention. The rope of bone tokens along the turnstile rattled against itself in a sound like teeth clicking. Sharpe’s hand left her sleeve. "Back two steps," Harlow said. "Yes, alright," he said. His trainers scraped. The crack widened. The compass needle hit the edge of the bag and kept trying to move. Her watch stopped. The last tick hung between one second and the next like a held breath. Something sighed behind the tiles. Air moved the wrong way and rustled the old adverts so that the men in bowler hats turned their heads as if they wanted to watch. The patent cure promised relief for biliousness and laudanum habits. Its painted lady’s eyes seemed to become almost kind. "Detective," Eva said. Her voice dropped an inch. "You stand in the answer to your first question. Do not step forward." Harlow looked at her. Eva’s hands were steady and open at her sides. Strain sat in her mouth, not fear. On the ballast by the corpse, blood started to creep, pulled not by gravity, but by interest, a slow thread inching toward the three tiles that had decided to become a threshold. "Whoever staged him wanted this open, now," Eva said. "Your anonymous caller wanted an audience. The market had a schedule. Someone moved it by force." "Move your people," Harlow said. "Already shouting," Sharpe said, eyes on the gap. A thin dark line split the wall from skirting to cornice. Heavier air pressed out, stale, faintly sweet, a smell like cloves and something that had been kept in a tin too long. The compass needle went still. It did not point. It aimed. The tile section toppled forward an inch and then stopped. Behind it, not brick. Not more tunnel. A black that was not darkness, but a material, velvety and hungry. It pushed a pressure into Harlow's sinuses that tried to make tears start. Her watch face fogged. The worn leather band dug. Voices rose behind her, sharps of alarm and a laugh from someone who could only laugh rather than gasp. The black lifted like a curtain. Something stood only just behind it, close enough that breath would have touched her face if they both breathed the same air. A shape like a man under a coat, but not a man's coat, a coat that hung with too many folds and no seams. Hands, if those were hands, cupped something small that glinted with brass. Harlow did not blink. "Step back from my threshold," the shape said. The voice did not come from the air. It arrived in her bones like a bass note. Beads of moisture formed on the tiled wall, not condensation, more like sweat. Sharpe swore, low and honest. Eva's green eyes narrowed as if she could make the form become clearer by force of will. The rope of bones rattled harder, then stilled, one token falling from its thread and landing at Harlow's boot. Beyond the split tile, other shapes moved, market shadows brushing past stalls that were not there and were. Feet stepped on a floor that did not match the platform. Something knocked a crate just beyond the threshold and a pile of small brass compasses slid and chimed like a handful of coins tossed on a tomb. The shape tilted its head, as if it could smell her badge through her coat. It lifted the small brass thing in its hands so she could see the face, etched with sigils that matched the one in her bag. "Step back or deal," it said. "And you do not have the right tokens."
created_at"2026-02-19T03:59:25.87Z" 2/19/2026, 3:59:25 AM
model"openai/gpt-5-2025-08-07"
app_id182717
external_user(null)
streamedtrue
cancelledfalse
latency35827
moderation_latency(null)
generation_time135912
tokens_prompt4671
tokens_completion5621
native_tokens_prompt4157
native_tokens_completion6739
native_tokens_completion_images0
native_tokens_reasoning2176
native_tokens_cached4096
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"completed"
usage0.06797825
router(null)
provider_responses
0
endpoint_id"7c2f859a-7890-4e8e-b1de-1cd1c0a800b4"
id"resp_0dfa9734e39616910169968a9df3fc8195888447602dd62a3e"
is_byokfalse
latency174
model_permaslug"openai/gpt-5-2025-08-07"
provider_name"OpenAI"
status200
api_type"completions"
id"gen-1771473565-9ICdeA8iGkHlc7AAHQP2"
upstream_id"resp_0dfa9734e39616910169968a9df3fc8195888447602dd62a3e"
total_cost0.06797825
cache_discount0.004608
upstream_inference_cost0
provider_name"OpenAI"

Evaluation details

Result Evaluator Details Meta Data
100.00% Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags47
adverbTagCount0
adverbTags(empty)
dialogueSentences94
tagDensity0.5
leniency1
rawRatio0
effectiveRatio0
100.00% AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount3590
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)
83.29% AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount3590
totalAiIsms12
found
0
word"weight"
count1
1
word"sense of"
count1
2
word"velvet"
count1
3
word"echo"
count1
4
word"charm"
count1
5
word"trembled"
count2
6
word"flicked"
count1
7
word"traced"
count1
8
word"scanning"
count1
9
word"gloom"
count1
10
word"etched"
count1
highlights
0"weight"
1"sense of"
2"velvet"
3"echo"
4"charm"
5"trembled"
6"flicked"
7"traced"
8"scanning"
9"gloom"
10"etched"
100.00% Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches1
maxInWindow1
found
0
label"eyes widened/narrowed"
count1
highlights
0"eyes narrowed"
100.00% Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells0
narrationSentences295
matches(empty)
89.59% Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount7
hedgeCount4
narrationSentences295
filterMatches
0"watch"
hedgeMatches
0"started to"
1"seemed to"
2"tried to"
100.00% Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences343
gibberishSentences0
adjustedGibberishSentences0
longSentenceCount0
runOnParagraphCount0
giantParagraphCount0
wordSaladCount0
repetitionLoopCount0
controlTokenCount0
maxSentenceWordsSeen52
ratio0
matches(empty)
100.00% Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans0
markdownWords0
totalWords3579
ratio0
matches(empty)
100.00% Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions53
unquotedAttributions0
matches(empty)
33.33% Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions82
wordCount2578
uniqueNames13
maxNameDensity1.12
worstName"Harlow"
maxWindowNameDensity4
worstWindowName"Eva"
discoveredNames
Scenes1
Crime1
Callum1
Sharpe24
Harlow29
South1
London1
Morris2
Kowalski1
Eva18
Oxford1
Veil1
Compass1
persons
0"Sharpe"
1"Harlow"
2"Morris"
3"Kowalski"
4"Eva"
5"Compass"
places
0"South"
1"London"
2"Oxford"
globalScore0.938
windowScore0.333
100.00% Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences175
glossingSentenceCount0
matches(empty)
88.24% "Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches4
per1kWords1.118
wordCount3579
matches
0"not with damp, but with oil"
1"not with light, but with attention"
2"not by gravity, but by interest, a slow thread inching toward the three tiles"
3"not darkness, but a material, velvety"
100.00% Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount1
totalSentences343
matches
0"traced that line"
100.00% Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs102
mean35.09
std28.99
cv0.826
sampleLengths
04
139
235
384
4109
539
67
798
812
959
1074
1131
126
1331
144
1531
1679
1710
1855
1964
2089
218
227
2320
2417
2565
2643
2738
2815
297
3032
3142
3234
339
346
3576
3629
376
388
395
4082
419
4263
4330
4434
4513
4632
477
4827
49141
96.94% Passive voice overuse
Target: ≤2% passive sentences
passiveCount7
totalSentences295
matches
0"been opened"
1"been arranged"
2"been removed"
3"been notched"
4"been wiped"
5"been pressed"
6"been kept"
100.00% Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount2
totalVerbs480
matches
0"was not looking"
1"was looking"
100.00% Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount0
semicolonCount0
flaggedSentences0
totalSentences343
ratio0
matches(empty)
100.00% Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount1514
adjectiveStacks0
stackExamples(empty)
adverbCount24
adverbRatio0.015852047556142668
lyAdverbCount3
lyAdverbRatio0.0019815059445178335
100.00% Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences343
echoCount0
echoWords(empty)
100.00% Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences343
mean10.43
std8
cv0.767
sampleLengths
04
116
25
318
417
518
63
718
84
91
101
1115
127
133
148
157
1617
179
1822
1918
203
2110
2219
2311
2417
256
269
2724
287
297
3011
3122
324
335
346
357
3613
378
388
397
409
413
428
437
448
4511
467
475
482
494
52.09% Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats18
diversityRatio0.34402332361516036
totalSentences343
uniqueOpeners118
13.83% Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount1
totalSentences241
matches
0"Too much care for an"
ratio0.004
88.88% Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount79
totalSentences241
matches
0"She crouched beside the sheeted"
1"Her fingers hovered a hair"
2"His accent clipped its way"
3"She ran her gaze across"
4"She glanced to the rails."
5"She lifted a hand, checked"
6"He had grabbed something rough"
7"She pressed her thumb to"
8"He hopped down beside her"
9"His tie sat half undone,"
10"He stank faintly of stale"
11"She crouched and touched the"
12"It had sat on top"
13"She looked beyond Sharpe to"
14"Its arms had been removed,"
15"You took a bone and"
16"She walked to the turnstile."
17"She crouched, lifted it with"
18"It was a coin of"
19"She rolled it in her"
ratio0.328
34.69% Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount205
totalSentences241
matches
0"Harlow dropped from the platform"
1"Grit snapped under her weight."
2"The Scenes of Crime tech"
3"DS Callum Sharpe peered over"
4"Harlow ignored him."
5"She crouched beside the sheeted"
6"Copper stung her nostrils."
7"The man's shirt had been"
8"A narrow cut ran across"
9"A line you could draw"
10"Someone had wiped him, then"
11"Her fingers hovered a hair"
12"Tiles flaked from curved walls,"
13"Metal shutters, warped, stood ajar"
14"The floor carried the scuffs"
15"A whiff of cardamom mixed"
16"Sharpe said from overhead"
17"His accent clipped its way"
18"She ran her gaze across"
19"Footprints crisp in the damp"
ratio0.851
41.49% Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount2
totalSentences241
matches
0"Whoever drew it had done"
1"Whoever drew it had not"
ratio0.008
100.00% Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences107
technicalSentenceCount5
matches
0"Inside, neat compartments, a small ledger bound in cracked calf, a half-eaten apple that had not browned as much as it should."
1"Her watch ticked, hesitated, and resumed at a different pace, a syncopation that set her teeth on edge."
2"Heavier air pressed out, stale, faintly sweet, a smell like cloves and something that had been kept in a tin too long."
3"Voices rose behind her, sharps of alarm and a laugh from someone who could only laugh rather than gasp."
4"The shape tilted its head, as if it could smell her badge through her coat."
100.00% Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags47
uselessAdditionCount0
matches(empty)
100.00% Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags42
fancyCount0
fancyTags(empty)
dialogueSentences94
tagDensity0.447
leniency0.894
rawRatio0
effectiveRatio0
87.4122%