NC Bench
Overview
About
Tests
Categories
Models
Vendors
Compare
Run: 2026-10-27-01M5YJK0DXHN3DYDPHY6D9F9PV
Run Details
Model:
GPT-6.1 Terra (Reasoning, Medium)
Test:
Bad Writing Habits
Scenario:
Literary fiction: old friends reunite
Duration:
51.0s
Cost:
$0.018089
Provider:
OpenAI
Evaluation summary
Score
Evaluator
Details Link
100.00%
Adverbs in dialogue tags
(details)
100.00%
AI-ism adverb frequency
(details)
100.00%
AI-ism character names
(details)
100.00%
AI-ism location names
(details)
91.67%
AI-ism word frequency
(details)
100.00%
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)
100.00%
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)
46.55%
Sentence opener variety
(details)
46.30%
Adverb-first sentence starts
(details)
100.00%
Pronoun-first sentence starts
(details)
0.00%
Subject-first sentence starts
(details)
34.72%
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)
87.3081%
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
Silas caught the glass before
it hit the floor, but the woman who had knocked it from the bar did not look at his hand. She looked at his face. “Jesus,” she said.
Rory had just come down
from her flat, carrying a bag of empty containers for the Golden Empress.
She stopped on the last
stair.
The woman stood with one
hand braced on the bar.
Her coat had a tear
at the cuff, mended with black thread.
A leather satchel hung from
her shoulder, its strap worn pale where a hand had gripped it. Silas set the glass upright. “Ruth.” “You own this place?” “I do.” She turned towards the door.
Rory saw her take in
the lock, the narrow strip of glass, the street beyond. Silas saw it too. “You can leave,” he said.
Ruth pulled out a stool
and sat.
The Raven’s Nest held the
scent of old beer and furniture polish.
Maps covered the walls between
black-and-white photographs, some in frames, some pinned up at the corners.
Rory had heard Silas give
three different accounts of where the maps came from.
He had refused to tell
her anything about the photographs.
She crossed to the bar
and put the delivery bag down. “I can come back.” “No,” Ruth said. “Stay where he can see you.”
Silas rested his right hand
on the counter.
His silver signet ring made
a small sound against the wood. “Rory lives upstairs.” “Does she know you?” “Well enough to pay rent.”
Rory picked up a cloth
and wiped the spilled drink from the bar. Ruth watched her, then looked away. “What can I get you?” Rory asked. “Water.” Silas took a clean glass from the shelf.
He filled it at the
tap and put it in front of Ruth.
She drank half, holding the
glass in both hands. “I thought you were in France,” she said. “I was.” “That’s a long way to come for a pub.” “You used to like pubs.” “I used to like the people in them.” Silas gave a short nod, as if she had corrected a figure in an account.
He had grey in his
auburn hair and beard, and his left leg stiffened when he stepped back from the counter. Rory had seen him conceal the limp for strangers.
He made no effort to
conceal it from Ruth. She was younger than him, though Rory could not have said by how much.
Her hair had been cut
close to her head. A scar crossed one
eyebrow
and continued into the hairline.
Her hands, wrapped around the
glass, bore small cuts and patches of rough skin. A customer near the window raised two fingers. Rory went to serve him, grateful for the task. When she returned with his change, Ruth had placed a folded sheet of paper on the bar. “Have you seen him?” Silas opened it. A photograph had
been printed
on an ordinary sheet, the ink faint across the face. A young man stood beside a river, one shoulder higher than the other, a paper cup in his hand. “Your son.” “Kit.” “I remember his name.” “You sent him a train for his fifth birthday.” “I remember that too.” “He slept with it under his pillow. Cut his cheek on the coupling.” Silas studied the picture. “I haven’t seen him.” “He said he’d meet me here. He sent the name in a text.” “Why here?” “He didn’t say.” Silas gave the paper back. Ruth folded it along the same lines and slipped it into her coat. Rory moved towards the other end of the bar, but Ruth stopped her. “If he comes in, don’t send him away.” “I won’t.” “He’s twenty-three. Taller than me. He bites the skin round his thumb.” “Does he know you’re here?” “He knows I’m coming.” The answer left room for something else. Rory looked at Silas, who had taken a tumbler from the shelf and begun to polish it, though the glass already shone. The customer by the window finished his drink and left. Rory collected the empty glass.
She turned the sign on
the door to CLOSED, then checked the catch. “I haven’t asked you to close,” Silas said. “You haven’t asked me to keep it open.” He put down the tumbler. “Take the containers back to Yu-Fei. Tell her I’ll settle the bill tomorrow.” Rory glanced at Ruth. The woman’s gaze had fixed on the door again. “I can do that later.” Silas did not argue.
He took a bottle from
beneath the counter and poured two measures of whisky. “I asked for water,” Ruth said. “You did.”
He left her glass beside
the water and took his own around the bar. At the table in the corner, his knee caught as he sat. He eased his leg out, holding the edge of the table until the spasm passed. Ruth followed him across the room.
She sat opposite, leaving her
coat on. “You should have had that seen to,” she said. “I did. Several men had a look while I was unconscious.” “I mean since.” “Since then I’ve paid a succession of people to bend it. One of them had a certificate.” She almost smiled. Her mouth moved, then settled. Rory busied herself with the till. The old maps
seemed to
crowd the room more than usual. On one wall, a hand-drawn border cut through a city whose name had faded. Silas kept that map under glass.
Once, when Rory had asked
about it, he had changed the subject so neatly that she had not noticed until she reached the top of the stairs. Ruth picked up the whisky and smelled it. “You kept the good stuff.” “I sell it.” “You never could bear the thought of anyone else enjoying a decent bottle.” “I shared one with you in Vienna.” “You drank yours and half of mine.” “You were asleep.” “I had concussion.” “That was later.” This time she smiled. It changed her face enough that Rory could see the woman Silas remembered. Silas saw her too. His fingers tightened around his glass, and for a few seconds neither spoke.
Then Ruth put the whisky
down untouched. “I clean offices,” she said. Silas looked at her hands. “Which offices?” “Does it matter?” “You’ve come here looking for your son.” “I’ve been cleaning them for eleven years. Solicitors, mostly. There’s a dentist on the third floor who leaves his lunch in the sink.” “You could have called me.” “About the lunch?” “About any of it.” She slipped her hand beneath the cuff of her coat. Her thumb worried at a thread. “I did call. You didn’t pick up.” “When?” “After Prague. I rang the number you gave me. A woman answered and told me you’d died.” Silas’s glass stopped halfway to his mouth. “Who?” “She didn’t give a name.” “I was in hospital.” “I know that now.” “You could have called again.” “I had a child who wouldn’t sleep unless I sat on his bedroom floor. My brother was dead. I’d spent three weeks telling his wife the office would send his things. Every time I rang that number, I heard the woman say it.” Silas set his glass on the table. Rory could hear the ice shift inside it. Ruth took off her coat. Beneath it she wore a navy jumper with a name badge still pinned to the chest. The badge said RUTH HARRIS, CLEANING SERVICES. She pressed the pin open, removed the badge and put it in her satchel. “I went to your memorial,” she said. “There wasn’t one.” “There was a drink. Six of us in a room above a restaurant. They put your photograph on a chair.” “Which photograph?” “The one with the moustache.” “That’s cruel.” “You deserved it.” Silas lowered his head. Ruth’s hand moved towards his, then stopped at the rim of her glass. She drew it back into her lap. Rory took the delivery bag behind the bar. She had heard Prague mentioned once before, when a man with a
fractured
wrist had come to see Silas and left without his coat. Silas had locked the back room after him and stood with his hand on the bookshelf for a long time. Ruth followed Rory’s glance towards the shelves. “You still have a room behind there?” Silas looked up. “What makes you ask?” “You always liked a second exit.” “There’s a room.” “Can Kit use it?” “If he needs to.” “He does.” Silas shifted in his chair. “Tell me what he’s done.” Ruth rubbed her palms on her trousers. A pale line showed where her wedding ring had once sat. “He works for a records contractor. They move files when departments merge or change buildings. He found my brother’s name in a box marked for destruction.” “Your brother’s name would be in a good many boxes.” “This one had yours in it too.” Silas said nothing. “Kit took a photograph of the contents list. He sent it to a journalist. The journalist rang him back and told him to bring the file.” “Did he?” “No. Someone went to the journalist’s flat before he got there. Kit saw them take her out.” “Who?” “He didn’t stay to ask.” Silas rose. His bad leg held, though Rory saw the effort in the way he kept his shoulders still. He went behind the bar and took a small phone from a drawer. Ruth stood too. “Don’t call anyone.” “If someone took the journalist, she needs help.” “I called her office. They haven’t heard from her.” “And the police?” “I told them a car took her. They asked for the registration. Kit couldn’t give it to me.” Silas turned the phone over in his hand. “Did he take the file?” “He took part of it.” “What part?” “The Prague report.” Rory looked from one to the other. “What happened in Prague?” Silas set the phone down. Ruth pulled out the chair beside her and sat again. The chair legs scraped over the floorboards. “My brother drove for us. He knew the roads and he knew when to keep his mouth shut. We had a man to bring out, a source who’d been feeding us names. The police had picked up Silas and the source. We had a route out for them.” Silas took the chair opposite her. “The route failed,” he said. Ruth stared at him. “You gave them my brother.” Rory stood still behind the bar. Silas had put his hands flat on the table. “I gave them the garage where he kept the car.” “You gave them the address.” “I thought he’d left it.” “You knew he was there. I told you he’d gone back for the papers.” “He said he’d collect them and move.” “He said he’d wait for me.” Silas opened his mouth. Ruth lifted a hand and he closed it. “I heard you on the recording. They played it to me when I got home. You gave them the address and told them he had the papers.” “They told me they’d release the source.” “They did. You both came out.” “They shot him in front of me.” Ruth looked down at the table. She laid her fingers against a scratch in the wood,
tracing
it from one end to the other. “I heard that part too.” Silas’s face had gone slack. Rory had seen him hurt before, had watched him grip a doorframe while his knee settled, but he had always found some remark to cover it.
Now he sat with his
hands in plain sight. “I’m sorry,” he said. Ruth nodded once. “I wanted you to say it. I used to stand in the kitchen and tell you what had happened, all the things they wouldn’t let me tell anyone else. Then I’d put the kettle on. Kit would come in and ask who I was talking to.” Silas looked at her. “How old was he?” “Seven when I stopped.” The phone on the bar
vibrated
. Silas reached for it, then stopped. “That isn’t mine,” he said. Ruth took her own phone from the satchel. A message lit the screen. She read it and held the phone to her chest. “Is it Kit?” Rory asked. Ruth nodded. “What does he say?” “He’s close.” “Give him the back entrance,” Silas said. “There’s an alley off the next street.” “He knows where to come.” Silas held out his hand for the phone. Ruth did not move. “What else did he say?” “He’s frightened.” “Ruth.” Her grip tightened. Rory saw a bead of blood at the edge of one fingernail. Silas lowered his hand. “You told someone he’d be here.” Ruth looked at the door. “They had him for two days. He rang me from a number I didn’t know. There was a man with him who wanted the report. He said Kit could bring it here and walk away.” “And you believed him?” “He put Kit back on the phone. Kit told me where to find the papers in his room. The man hadn’t found them.” “Where are they?” Ruth unzipped her satchel. Inside sat a thick brown envelope, its flap tucked in. She took it out and laid it on the table. “I thought I could hand it over and take my son home.” “You still can,” Silas said. “Give me the phone.” “He said no calls.” “Give it to me.” She pushed it across the table. Silas checked the message, then keyed in a number. Ruth snatched up the envelope. “No.” “You’ve brought them to my door.” “I didn’t know it was yours.” “You knew it belonged to someone.” Ruth held the envelope against her chest. Silas ended the call before it connected. From behind the bar, Rory could see the green neon reflected in the door glass. A shape passed through it, doubled and broken by the lettering. She reached beneath the counter for the heavy torch Silas kept beside the till. The handle moved. Silas crossed the room, favouring his left leg. He stopped short of the door and looked through the glass. A young man stood outside with his face turned towards the street. His coat hung open. One side of his shirt had soaked dark around the ribs. Ruth reached the door first. She pulled back the catch. Kit stumbled inside, and a man came in behind him with a pistol pressed against his neck.
created_at
"2026-10-27T11:40:34.639Z"
10/27/2026, 11:40:34 AM
model
"openai/gpt-6.1-terra-20261026"
app_id
182717
external_user
(null)
streamed
true
cancelled
false
latency
9886
moderation_latency
(null)
generation_time
50972
tokens_prompt
4445
tokens_completion
3600
native_tokens_prompt
4131
native_tokens_completion
3576
native_tokens_completion_images
0
native_tokens_reasoning
563
native_tokens_cached
4128
num_media_prompt
(null)
num_input_audio_prompt
(null)
num_media_completion
0
num_search_results
(null)
num_fetches
(null)
web_search_engine
(null)
origin
"https://ncbench.com/"
is_byok
false
finish_reason
"stop"
native_finish_reason
"completed"
service_tier
"default"
usage
0.0180894
router
(null)
user_agent
"langchainjs-openai/1.0.0 ((node/v24.22.1; linux; x64))"
http_referer
(null)
request_id
"req-1793101234-Pr13ixLhF5foTL3Zzhfm"
session_id
(null)
preset_id
(null)
api_type
"completions"
id
"gen-1793101234-SxsDeIlnJ00XpPxAeEwY"
upstream_id
"resp_0f4abb777b2c6f37016ae08db2c31487d1b58458d539904089"
provider_responses
0
endpoint_id
"2d2ad10f-098e-4bbf-aa95-11f705b2b9a2"
id
"resp_0f4abb777b2c6f37016ae08db2c31487d1b58458d539904089"
is_byok
false
latency
356
model_permaslug
"openai/gpt-6.1-terra-20261026"
provider_name
"OpenAI"
status
200
total_cost
0.0180894
cache_discount
0.0039216
upstream_inference_cost
0
provider_name
"OpenAI"
response_cache_source_id
(null)
data_region
"global"
workspace_id
"97e315e5-d303-487d-83c1-83180e8a13d4"
Evaluation details
Result
Evaluator
Details
Meta Data
100.00%
Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags
16
adverbTagCount
0
adverbTags
(empty)
dialogueSentences
144
tagDensity
0.111
leniency
0.222
rawRatio
0
effectiveRatio
0
100.00%
AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount
2402
totalAiIsmAdverbs
0
found
(empty)
highlights
(empty)
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)
91.67%
AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount
2402
totalAiIsms
4
found
0
word
"eyebrow"
count
1
1
word
"fractured"
count
1
2
word
"tracing"
count
1
3
word
"vibrated"
count
1
highlights
0
"eyebrow"
1
"fractured"
2
"tracing"
3
"vibrated"
100.00%
Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches
0
maxInWindow
0
found
(empty)
highlights
(empty)
100.00%
Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells
0
narrationSentences
162
matches
(empty)
100.00%
Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount
0
hedgeCount
1
narrationSentences
162
filterMatches
(empty)
hedgeMatches
0
"seemed to"
100.00%
Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences
290
gibberishSentences
0
adjustedGibberishSentences
0
longSentenceCount
0
runOnParagraphCount
0
giantParagraphCount
0
wordSaladCount
0
repetitionLoopCount
0
controlTokenCount
0
repeatedSegmentCount
0
maxSentenceWordsSeen
48
ratio
0
matches
(empty)
100.00%
Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans
0
markdownWords
0
totalWords
2402
ratio
0
matches
(empty)
100.00%
Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions
42
unquotedAttributions
0
matches
(empty)
0.00%
Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions
103
wordCount
1391
uniqueNames
8
maxNameDensity
3.02
worstName
"Silas"
maxWindowNameDensity
6
worstWindowName
"Silas"
discoveredNames
Rory
25
Golden
1
Empress
1
Ruth
31
Raven
1
Nest
1
Silas
42
Prague
1
persons
0
"Rory"
1
"Ruth"
2
"Raven"
3
"Nest"
4
"Silas"
places
0
"Prague"
globalScore
0
windowScore
0
100.00%
Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences
105
glossingSentenceCount
0
matches
(empty)
100.00%
"Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches
0
per1kWords
0
wordCount
2402
matches
(empty)
100.00%
Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount
0
totalSentences
290
matches
(empty)
100.00%
Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs
213
mean
11.28
std
12.02
cv
1.066
sampleLengths
0
30
1
3
2
24
3
39
4
5
5
1
6
4
7
2
8
24
9
5
10
7
11
52
12
11
13
4
14
9
15
19
16
3
17
4
18
5
19
19
20
7
21
1
22
30
23
8
24
2
25
9
26
5
27
8
28
54
29
47
30
34
31
4
32
37
33
2
34
1
35
4
36
9
37
4
38
13
39
4
40
4
41
13
42
2
43
3
44
18
45
13
46
8
47
2
48
12
49
5
100.00%
Passive voice overuse
Target: ≤2% passive sentences
passiveCount
1
totalSentences
162
matches
0
"been printed"
100.00%
Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount
0
totalVerbs
257
matches
(empty)
100.00%
Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount
0
semicolonCount
0
flaggedSentences
0
totalSentences
290
ratio
0
matches
(empty)
100.00%
Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount
1394
adjectiveStacks
0
stackExamples
(empty)
adverbCount
30
adverbRatio
0.021520803443328552
lyAdverbCount
1
lyAdverbRatio
0.0007173601147776184
100.00%
Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences
290
echoCount
0
echoWords
(empty)
100.00%
Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences
290
mean
8.28
std
6.76
cv
0.817
sampleLengths
0
25
1
5
2
3
3
18
4
6
5
10
6
12
7
17
8
5
9
1
10
4
11
2
12
5
13
15
14
4
15
5
16
7
17
12
18
16
19
14
20
10
21
11
22
4
23
3
24
6
25
8
26
11
27
3
28
4
29
5
30
13
31
6
32
7
33
1
34
8
35
13
36
9
37
8
38
2
39
9
40
5
41
8
42
15
43
21
44
9
45
9
46
14
47
9
48
10
49
14
46.55%
Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats
10
diversityRatio
0.19310344827586207
totalSentences
290
uniqueOpeners
56
46.30%
Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount
2
totalSentences
144
matches
0
"Once, when Rory had asked"
1
"Then Ruth put the whisky"
ratio
0.014
100.00%
Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount
40
totalSentences
144
matches
0
"She looked at his face."
1
"She stopped on the last"
2
"Her coat had a tear"
3
"She turned towards the door."
4
"He had refused to tell"
5
"She crossed to the bar"
6
"His silver signet ring made"
7
"He filled it at the"
8
"She drank half, holding the"
9
"He had grey in his"
10
"He made no effort to"
11
"She was younger than him,"
12
"Her hair had been cut"
13
"Her hands, wrapped around the"
14
"She turned the sign on"
15
"He put down the tumbler."
16
"He took a bottle from"
17
"He left her glass beside"
18
"He eased his leg out,"
19
"She sat opposite, leaving her"
ratio
0.278
0.00%
Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount
134
totalSentences
144
matches
0
"Silas caught the glass before"
1
"She looked at his face."
2
"Rory had just come down"
3
"She stopped on the last"
4
"The woman stood with one"
5
"Her coat had a tear"
6
"A leather satchel hung from"
7
"Silas set the glass upright."
8
"She turned towards the door."
9
"Rory saw her take in"
10
"Silas saw it too."
11
"Ruth pulled out a stool"
12
"The Raven’s Nest held the"
13
"Maps covered the walls between"
14
"Rory had heard Silas give"
15
"He had refused to tell"
16
"She crossed to the bar"
17
"Silas rested his right hand"
18
"His silver signet ring made"
19
"Rory picked up a cloth"
ratio
0.931
34.72%
Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount
1
totalSentences
144
matches
0
"Now he sat with his"
ratio
0.007
100.00%
Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences
59
technicalSentenceCount
0
matches
(empty)
100.00%
Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags
16
uselessAdditionCount
0
matches
(empty)
100.00%
Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags
16
fancyCount
0
fancyTags
(empty)
dialogueSentences
144
tagDensity
0.111
leniency
0.222
rawRatio
0
effectiveRatio
0
87.3081%