NC Bench
Overview
About
Tests
Models
Vendors
Run: 2026-02-19-01KHTXVM134KYR9JVA203MEQV9
Run Details
Model:
GPT-5.2
Test:
Bad Writing Habits
Scenario:
Literary fiction: old friends reunite
Duration:
1m 21s
Cost:
$0.049644
Provider:
OpenAI
Evaluation summary
Score
Evaluator
Details Link
100.00%
Adverbs in dialogue tags
(details)
95.20%
AI-ism adverb frequency
(details)
100.00%
AI-ism character names
(details)
100.00%
AI-ism location names
(details)
66.43%
AI-ism word frequency
(details)
66.67%
Cliché density
(details)
100.00%
Emotion telling (show vs. tell)
(details)
100.00%
Filter word density
(details)
100.00%
Gibberish response detection
(details)
100.00%
Markdown formatting overuse
(details)
100.00%
Missing dialogue indicators (quotation marks)
(details)
0.00%
Name drop frequency
(details)
79.25%
Narrator intent-glossing
(details)
100.00%
"Not X but Y" pattern overuse
(details)
100.00%
Overuse of "that" (subordinate clause padding)
(details)
100.00%
Paragraph length variance
(details)
100.00%
Passive voice overuse
(details)
100.00%
Past progressive (was/were + -ing) overuse
(details)
100.00%
Em-dash & semicolon overuse
(details)
100.00%
Purple prose (modifier overload)
(details)
100.00%
Repeated phrase echo
(details)
100.00%
Sentence length variance
(details)
43.80%
Sentence opener variety
(details)
60.61%
Adverb-first sentence starts
(details)
100.00%
Pronoun-first sentence starts
(details)
0.00%
Subject-first sentence starts
(details)
0.00%
Subordinate conjunction sentence starts
(details)
100.00%
Technical jargon density
(details)
100.00%
Useless dialogue additions
(details)
100.00%
Dialogue tag variety (said vs. fancy)
(details)
83.7315%
Overall
Model input
System
You are an expert and award-winning novel writer in the dark Literary Fiction 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="4412" name="Aurora Carter" aliases="Rory, Laila, Aurora, Carter, Malphora" pronouns="she/her" species="Human" storyRole="Protagonist"> <eyeColor>bright blue</eyeColor> <hair>straight shoulder-length black</hair> <height>5'6"</height> <age>25</age> <scar>small crescent-shaped scar on her left wrist from a childhood accident</scar> <description>Aurora, referred to by her friends as Rory, is cool-headed, intelligent, and known for quick out-of-the-box thinking.</description> <backstory>Born in Cardiff to an Irish barrister father (Brendan Carter) and Welsh teacher mother (Jennifer Carter née Ellis), Rory reluctantly pursued Pre-Law at Cardiff University. She fled to London at the behest of her childhood friend Eva after leaving an abusive ex named Evan. By day, Rory works part-time as a delivery person for Yu-Fei Cheung's Golden Empress restaurant. She lives in a flat above Silas' bar.</backstory> </character> <character id="4413" name="Silas Blackwood" aliases="Silas, Si, the Spymaster" pronouns="he/him" species="Human" storyRole="Mentor"> <eyeColor>hazel</eyeColor> <hair>grey-streaked auburn</hair> <height>6'1"</height> <age>58</age> <beard>neatly trimmed, matching his grey-streaked auburn hair</beard> <limp>slight limp in his left leg from an old knee injury</limp> <signetRing>silver signet ring, always worn on his right hand</signetRing> <description>Silas is a retired intelligence operative turned bar owner. He carries himself with quiet authority.</description> <backstory>Former MI6 field agent who retired after a botched operation in Prague left him with a permanent knee injury. He opened "The Raven's Nest" bar in Soho as a front for his network of contacts.</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> </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 literary fiction genre. Two old friends who haven't seen each other in years run into each other unexpectedly at a bar. One of them has changed significantly. Through their conversation and the tension between who they were and who they've become, reveal the weight of time and unspoken regret. 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
Messages
Meta
AI
A bottle spun off the
shelf and Rory caught it by the neck before it smashed, her palm stinging as glass bit at an old nick. “Steady,”
Silas muttered, not looking up
from the ledger he kept behind the bar like it was a second heart.
The man who had knocked
it loose mumbled an apology and slid away into the dim.
Rory set the bottle down
with care, label facing out, then flexed her fingers.
The Raven’s Nest smelled of
citrus peel and stale smoke trapped in wood, the kind of place that held on to secrets because it had nowhere else to put them. Old maps stared down from the walls. Black-and-white photographs watched with blank eyes.
Silas’s hazel gaze flicked to
her wrist. “Still got that scar.”
Rory tugged her sleeve over
the small crescent. “It’s attached to the wrist. Hard to lose.”
Silas’s silver signet ring tapped
the ledger once. Not a nervous habit, more a punctuation mark. “You’re late.” “Golden Empress had a table of eight who thought ‘no peanuts’ meant ‘no peanuts unless you hide them’.” He grunted, half amused. “Yu-Fei’s an optimist.”
Rory slid behind the bar
without asking, as if she owned a corner of it.
She grabbed a cloth, wiped
a clean glass that did not need wiping, and let her eyes travel. Habit. Scan the room. People on stools. People in corners.
People who leaned too close
when they spoke.
Then she saw the woman
at the far end, shoulder angled away, head lowered as if she could make herself smaller by force.
A glass sat by her
hand, untouched. A phone lay face down, like a guilty thing.
Her hair fell in a
sharp black bob that skimmed her jaw, glossy as a crow’s wing, and a pale scar bisected her bottom lip.
She wore a heavy coat
with a collar turned up, but it didn’t hide the thinness in her neck, the restless
tension
in her shoulders.
Rory dried the glass too
slowly
. The woman lifted her head, and her eyes found Rory with the casual sweep of someone counting exits. Grey-green. Familiar in a way that made Rory’s throat close. The woman’s gaze snagged, held, then sharpened. Rory’s cloth slipped. The glass clinked against the counter. Silas noticed the sound, then followed her stare.
His face changed, only a
fraction. A subtle tightening near the mouth. “You know her?” he asked. Rory’s tongue felt too large for her mouth. “I—” The woman pushed off her stool. She walked towards the bar, steps
measured
, as if the floor might betray her. Up close, the changes hit harder. The girl Rory remembered had laughed with her whole face, cheeks flushed from running and cheap cider. This woman’s laughter had
been pared
down to a weapon.
Her hands looked older, knuckles
marked, nails bitten. She stopped a foot away. Close enough that Rory caught the scent of metal and something medicinal, like a clinic corridor. “Rory Carter,”
the woman said, voice low
. Cardiff had softened into something London, but the shape of her words gave her away. Rory’s chest went tight, a fist closing around air. “Eva.” Eva’s mouth twitched. Not a smile. A test. “You’re real.” Rory set the cloth down, careful, as if sudden movement would make the moment shatter. “You disappeared.” “You moved.” Eva’s gaze dropped to Rory’s hand, the way it hovered near the counter. “You left.” Rory heard the old arguments in the way Eva said it,
not as accusation but as a fact with teeth
. Silas leaned one forearm on the bar. “Do you need a table?” he asked. Eva glanced at him
as though noticing him for the first time
.
Her eyes flicked to his
ring, his limp, the way he held himself like a locked door. “Depends,” she said. “Do you charge for privacy, or is it complimentary with the drink?” Silas’s voice stayed mild. “Privacy costs extra. But it’s good quality.” Eva gave a small nod. Rory
knew that nod
. Eva had always pretended she decided things calmly, even as the ground shifted under her. Rory lifted her chin. “We can talk upstairs.” Silas’s gaze snapped to her, quick as a blade. He didn’t argue. That, more than anything, made Rory’s
stomach
dip. Eva’s eyes followed the exchange, and something cold settled in her expression. “You live above this place,” Eva said. Rory kept her tone even. “It’s convenient.” “It’s a nest,” Eva said, and there was a faint scrape of humour in it. “Of course it is.” Rory led her through the narrow gap by the end of the bar, past a wall of framed photographs that
looked like stolen memories
. A couple in uniform. A man shaking hands with someone whose face had
been scratched
out. Silas’s past, pinned and displayed like insects. The stairwell smelled of damp plaster and old beer. Rory climbed first. She heard Eva behind her, light-footed, ready to bolt. In the flat, the air held traces of garlic and detergent. Rory didn’t apologise for the mess, because it wasn’t a mess, and because Eva would smell apology like weakness.
She pushed a pile of
unopened post to one side with her elbow and gestured at the small kitchen table. Eva didn’t sit. She walked to the window, looked down at the green neon sign bleeding into the street, and turned back. “So,” Eva said. “Delivery girl.” Rory’s jaw tightened. “Part-time.” Eva’s gaze moved around the room. Not curious. Assessing. “You always did like pretending you weren’t clever.” Rory sat anyway, hands flat on the table. She refused to fidget. “What happened?” Rory asked. “You stopped answering. Your number went dead. I called your mum.” Eva’s face went blank at the mention. “Don’t.” Rory held her stare. “Eva, I thought you were—” “Dead?” Eva’s laugh came out wrong, a short bark. “You’d have liked that. Neat ending. Closure.” Rory felt heat rise in her throat. She swallowed it. “I would never—” “Wouldn’t you?” Eva stepped closer, and Rory saw the slight shake in her hand when she pushed her hair back. “You were always good at leaving. Leaving lectures. Leaving parties. Leaving people.” Rory’s fingers pressed into the wood. “I left Evan.” Eva flinched at the name. A real crack in the armour. “You never told me how bad it got,” Eva said, softer now, and the softness made it worse. “Not properly.” Rory kept her voice flat. “You told me to come to London. I came.” “And you didn’t come back.” Eva’s eyes stayed on Rory’s face, hungry for something. “Not once.” “I couldn’t,” Rory said. “He—” “Don’t.” Eva’s mouth twisted again, scar pulling white. “Don’t put him between us. He’s not the point.” Rory stared at her, and the room felt smaller, as if the walls leaned in to listen. “Then what is?” Rory asked. Eva’s gaze
flicked
down to Rory’s sleeve. She reached, then stopped herself, fingers hovering where Rory’s left wrist would be. “You remember the caravan by the docks?” Eva asked. Rory blinked. The question landed like a stone in water. “The one we broke into when we were thirteen.” Eva nodded once. “We thought we were criminals.” Rory’s mouth tightened despite herself. “We stole a torch and a packet of crisps.” “And you still cried,” Eva said.
Her tone held a ghost
of the girl she had been, the one who had dared Rory to do things, then watched her with fierce pride when she did. Rory’s throat burned. “Why are you here, Eva?” Eva finally sat, but she perched on the edge of the chair like she would spring up at any sound.
She slid her phone across
the table. The screen lit. A photo. Grainy. A man’s face caught mid-turn,
eyes narrowed
, mouth half open as if about to call someone’s name. Rory’s
stomach
dropped. She
knew that face
.
She had spent years training
herself not to see it when she closed her eyes. Evan. Eva watched the reaction with a kind of grim satisfaction, then pain. “He’s in London,” Eva said. “He’s looking.” Rory kept her voice steady with effort. “How do you know?” Eva’s gaze didn’t move. “Because he asked the wrong people.” Rory leaned back. “You’ve been keeping company with the wrong people, then.” Eva’s laugh scraped again. “I don’t keep company. I owe. That’s how it works.” Rory’s eyes moved to Eva’s coat. The way it hung, heavy at one side. Something inside, weighted. A tool. A weapon. A secret. “You look…” Rory searched for a word that would not sound like pity. Eva did it for her. “Different.” Rory held her gaze. “Yes.” Eva’s expression hardened. “You look the same. Same hair. Same righteous face like you’re always waiting to cross-examine the world.” Rory’s lips parted, then closed. She didn’t deny it. Denial would sound like a lie. “I thought you were safe,” Rory said. Eva stared at the table, at the small nicks in the wood like scars. “Safe is a story people tell girls so they’ll behave.” Rory
felt a chill
creep up her spine. “Who have you been working for?” Eva’s eyes snapped up. “Don’t ask questions you don’t want answered.” “I want it answered,” Rory said. “I’m done being kept in the dark.” Eva’s mouth pulled tight. “You always were dramatic,” Eva said.
Then she reached into her
pocket and pulled out a thin envelope, brown and creased, the kind passed hand to hand. She placed it on the table, but she didn’t let go. Rory’s gaze fixed on it. “What is that?” “A problem,” Eva said. “And a solution, if you’re still the girl who broke into caravans.” Rory’s fingers hovered near the envelope. She didn’t touch it yet. “You came here to recruit me?” Rory asked. Eva’s eyes shone with
something like anger, like relief, like fear
. “I came here because you’re the only person I could stand to see before it all goes wrong.” Rory’s breath caught. “What did you do?” Eva’s hand tightened on the envelope. “I stole something I shouldn’t have.” Rory’s voice went cold. “From who?” Eva’s gaze slid towards the ceiling, as if she could see through it into the bar below. “People who like maps,” Eva said. “People who collect information the way other people collect stamps.” Rory’s
pulse
thudded. “Silas.” Eva’s eyes met hers. “Your lovely landlord.” Rory pushed back her chair, the scrape loud in the small room. “Are you mad?” Eva’s face sharpened. “Don’t call me that.” “What did you steal?” Rory asked. Eva’s jaw worked. She looked
suddenly
young, cornered. “A list,” Eva said. “Names. Contacts. Drop points. The bones of his little empire.” Rory felt sick. “Why?” Eva’s eyes flashed. “Because he keeps files on everyone. Because he thinks he can own people with paper and photographs and favours. Because I needed leverage.” Rory forced herself to speak with control. “Leverage for what?” Eva’s answer came quick, defensive. “To buy my mum’s house back.” Rory froze. “What?” Eva swallowed, and for a second the mask slipped. “She signed it away when the debts came. She didn’t tell me. I found out when the men started coming round.” Rory sat again, slower, as if she had to convince her legs to bend. The anger didn’t leave, but it changed shape. “You could have told me,” Rory said. “You could have called.” Eva’s eyes went glossy, then hard again. “And said what? ‘Hi Rory, long time, can you lend me thirty grand and a miracle?’” Rory stared at Eva’s hands. They shook, faint but constant, like a nerve that never slept. “You’re on something,” Rory said. Eva’s laugh came out brittle. “Don’t start.” Rory’s voice stayed controlled. “Are you?” Eva’s eyes
flicked
away. “I take what I need to take.” Rory felt the words like a bruise. She reached across the table, palm up. Not touching. Offering. “Give me the envelope,” Rory said. “Let me see.” Eva hesitated. The air between them tightened, filled with old loyalty and newer damage.
Then footsteps thudded on the
stairs, fast and heavy, not Silas’s careful limp. A fist hammered the flat door. Rory’s skin went cold. Eva snatched the envelope back, chair legs screeching as she stood. Her hand slid inside her coat, and the line of her shoulder changed as she gripped something solid. The
pounding
came again, harder. A man’s voice cut through the door, sharp and
familiar
in its cruelty. “Aurora. I know you’re in there.”
created_at
"2026-02-19T12:26:36.971Z"
2/19/2026, 12:26:36 PM
model
"openai/gpt-5.2-20251211"
app_id
182717
external_user
(null)
streamed
true
cancelled
false
latency
15492
moderation_latency
(null)
generation_time
80532
tokens_prompt
4618
tokens_completion
3640
native_tokens_prompt
4131
native_tokens_completion
3476
native_tokens_completion_images
0
native_tokens_reasoning
633
native_tokens_cached
3968
num_media_prompt
(null)
num_input_audio_prompt
(null)
num_media_completion
0
num_search_results
(null)
origin
"https://ncbench.com/"
is_byok
false
finish_reason
"stop"
native_finish_reason
"completed"
usage
0.04964365
router
(null)
provider_responses
0
endpoint_id
"f00142c2-6a93-49ce-9e36-5593b904ce3b"
id
"resp_05678d3a2efb55f2016997017d0f308195ae3846296efa41bf"
is_byok
false
latency
149
model_permaslug
"openai/gpt-5.2-20251211"
provider_name
"OpenAI"
status
200
api_type
"completions"
id
"gen-1771503996-MTiavh1LK9Liyy10siZp"
upstream_id
"resp_05678d3a2efb55f2016997017d0f308195ae3846296efa41bf"
total_cost
0.04964365
cache_discount
0.0062496
upstream_inference_cost
0
provider_name
"OpenAI"
Evaluation details
Result
Evaluator
Details
Meta Data
100.00%
Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags
32
adverbTagCount
1
adverbTags
0
"Eva’s mouth twisted again [again]"
dialogueSentences
103
tagDensity
0.311
leniency
0.621
rawRatio
0.031
effectiveRatio
0.019
95.20%
AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount
2085
totalAiIsmAdverbs
2
found
0
adverb
"slowly"
count
1
1
adverb
"suddenly"
count
1
highlights
0
"slowly"
1
"suddenly"
100.00%
AI-ism character names
Target: 0 AI-default names (16 tracked, −20% each)
codexExemptions
0
"Blackwood"
found
(empty)
100.00%
AI-ism location names
Target: 0 AI-default location names (33 tracked, −20% each)
codexExemptions
(empty)
found
(empty)
66.43%
AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount
2085
totalAiIsms
14
found
0
word
"flicked"
count
4
1
word
"tension"
count
1
2
word
"familiar"
count
2
3
word
"measured"
count
1
4
word
"stomach"
count
2
5
word
"chill"
count
1
6
word
"pulse"
count
1
7
word
"footsteps"
count
1
8
word
"pounding"
count
1
highlights
0
"flicked"
1
"tension"
2
"familiar"
3
"measured"
4
"stomach"
5
"chill"
6
"pulse"
7
"footsteps"
8
"pounding"
66.67%
Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches
2
maxInWindow
2
found
0
label
"eyes widened/narrowed"
count
1
1
label
"stomach dropped/sank"
count
1
highlights
0
"eyes narrowed"
1
"stomach dropped"
100.00%
Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells
1
narrationSentences
203
matches
0
"felt a chill"
100.00%
Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount
0
hedgeCount
0
narrationSentences
203
filterMatches
(empty)
hedgeMatches
(empty)
100.00%
Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences
274
gibberishSentences
0
adjustedGibberishSentences
0
longSentenceCount
0
runOnParagraphCount
0
giantParagraphCount
0
wordSaladCount
0
repetitionLoopCount
0
controlTokenCount
0
maxSentenceWordsSeen
30
ratio
0
matches
(empty)
100.00%
Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans
0
markdownWords
0
totalWords
2079
ratio
0
matches
(empty)
100.00%
Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions
36
unquotedAttributions
0
matches
(empty)
0.00%
Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions
140
wordCount
1546
uniqueNames
8
maxNameDensity
4.46
worstName
"Rory"
maxWindowNameDensity
8.5
worstWindowName
"Rory"
discoveredNames
Rory
69
Raven
1
Nest
1
Cardiff
1
London
1
Eva
55
Silas
9
People
3
persons
0
"Rory"
1
"Raven"
2
"Nest"
3
"Eva"
4
"Silas"
places
0
"Cardiff"
1
"London"
globalScore
0
windowScore
0
79.25%
Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences
106
glossingSentenceCount
3
matches
0
"as though noticing him for the first time"
1
"looked like stolen memories"
2
"something like anger, like relief, like fear"
100.00%
"Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches
1
per1kWords
0.481
wordCount
2079
matches
0
"not as accusation but as a fact with teeth"
100.00%
Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount
2
totalSentences
274
matches
0
"knew that nod"
1
"knew that face"
100.00%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
133
mean
15.63
std
13.27
cv
0.849
sampleLengths
0
26
1
20
2
73
3
7
4
4
5
16
6
16
7
2
8
18
9
7
10
51
11
89
12
6
13
28
14
7
15
9
16
20
17
5
18
9
19
61
20
21
21
22
22
9
23
1
24
10
25
17
26
17
27
20
28
7
29
7
30
29
31
15
32
11
33
24
34
8
35
20
36
12
37
7
38
7
39
19
40
47
41
21
42
50
43
22
44
5
45
4
46
17
47
12
48
15
49
8
100.00%
Passive voice overuse
Target: ≤2% passive sentences
passiveCount
2
totalSentences
203
matches
0
"been pared"
1
"been scratched"
100.00%
Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount
0
totalVerbs
304
matches
(empty)
100.00%
Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount
0
semicolonCount
0
flaggedSentences
0
totalSentences
274
ratio
0
matches
(empty)
100.00%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
1551
adjectiveStacks
0
stackExamples
(empty)
adverbCount
45
adverbRatio
0.029013539651837523
lyAdverbCount
5
lyAdverbRatio
0.003223726627981947
100.00%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
274
echoCount
0
echoWords
(empty)
100.00%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
274
mean
7.59
std
5.78
cv
0.762
sampleLengths
0
26
1
20
2
16
3
14
4
30
5
7
6
6
7
7
8
4
9
8
10
8
11
8
12
8
13
2
14
18
15
4
16
3
17
15
18
18
19
1
20
3
21
3
22
3
23
8
24
23
25
7
26
9
27
25
28
25
29
6
30
18
31
1
32
9
33
7
34
3
35
6
36
8
37
6
38
6
39
5
40
8
41
1
42
6
43
14
44
6
45
17
46
10
47
8
48
5
49
16
43.80%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
17
diversityRatio
0.24452554744525548
totalSentences
274
uniqueOpeners
67
60.61%
Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount
3
totalSentences
165
matches
0
"Then she saw the woman"
1
"Then she reached into her"
2
"Then footsteps thudded on the"
ratio
0.018
100.00%
Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount
27
totalSentences
165
matches
0
"He grunted, half amused."
1
"She grabbed a cloth, wiped"
2
"Her hair fell in a"
3
"She wore a heavy coat"
4
"His face changed, only a"
5
"She walked towards the bar,"
6
"Her hands looked older, knuckles"
7
"She stopped a foot away."
8
"Her eyes flicked to his"
9
"He didn’t argue."
10
"She heard Eva behind her,"
11
"She pushed a pile of"
12
"She walked to the window,"
13
"She refused to fidget."
14
"She swallowed it."
15
"She reached, then stopped herself,"
16
"Her tone held a ghost"
17
"She slid her phone across"
18
"She knew that face."
19
"She had spent years training"
ratio
0.164
0.00%
Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount
153
totalSentences
165
matches
0
"A bottle spun off the"
1
"Silas muttered, not looking up"
2
"The man who had knocked"
3
"Rory set the bottle down"
4
"The Raven’s Nest smelled of"
5
"Silas’s hazel gaze flicked to"
6
"Rory tugged her sleeve over"
7
"Silas’s silver signet ring tapped"
8
"He grunted, half amused."
9
"Rory slid behind the bar"
10
"She grabbed a cloth, wiped"
11
"People on stools."
12
"People in corners."
13
"People who leaned too close"
14
"A glass sat by her"
15
"A phone lay face down,"
16
"Her hair fell in a"
17
"She wore a heavy coat"
18
"Rory dried the glass too"
19
"The woman lifted her head,"
ratio
0.927
0.00%
Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount
0
totalSentences
165
matches
(empty)
ratio
0
100.00%
Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences
48
technicalSentenceCount
2
matches
0
"Her hair fell in a sharp black bob that skimmed her jaw, glossy as a crow’s wing, and a pale scar bisected her bottom lip."
1
"A man’s face caught mid-turn, eyes narrowed, mouth half open as if about to call someone’s name."
100.00%
Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags
32
uselessAdditionCount
1
matches
0
"the woman said, voice low"
100.00%
Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags
26
fancyCount
1
fancyTags
0
"Silas muttered (mutter)"
dialogueSentences
103
tagDensity
0.252
leniency
0.505
rawRatio
0.038
effectiveRatio
0.019
83.7315%