Run: 2026-02-20-01KHYAPTX31AVKA5D2EVCRSWD1

Run Details

Duration:
48.9s
Cost:
$0.000491
Provider:
DeepInfra

Evaluation summary

Score Evaluator
Details Link
0.00% Accuracy (recall) (details)
7.35% Precision (details)
100.00% Structural validity (details)
35.7843% Overall

Model input

System
You are a meticulous continuity editor for a fiction project. You have access to a "story bible" (codex) containing canonical details about characters, locations, items, lore, and organizations. Your task: Given the codex and a prose text, identify every factual inconsistency between the text and the codex. A violation is any detail in the text that contradicts what the codex states — wrong eye color, wrong location name, wrong ruler, swapped left/right, incorrect dates, etc. Be thorough. Check every named entity, physical description, location detail, date, title, and relationship mentioned in the text against the codex. Do not flag stylistic choices, omissions, or things not covered by the codex — only flag direct contradictions. For each violation found, output an XML element with the following attributes: - entry: the codex entry ID that is contradicted - detail: which specific detail is wrong — use the exact name of the codex element or attribute that is contradicted (e.g. "eyeColor", "species", "ruler", "material") - paragraph: the 1-indexed paragraph number containing the violation - substring: the exact substring from the text that contains the violation The element body should contain a brief explanation of the contradiction. Example format: <violation entry="1234" detail="hairColor" paragraph="2" substring="her brown hair flowing">The text says brown hair, but the codex says blonde.</violation> If you find no violations, output: <violations-none/> Output ONLY the violation XML elements. Do not include any other text, preamble, or explanation outside the XML.
User/Human
<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> <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> <character id="4415" name="Lucien Moreau" aliases="Lucien, Luc, the Frenchman" pronouns="he/him" species="Half-Demon" storyRole="Ally"> <eyeColor>heterochromatic — one amber, one black</eyeColor> <hair>slicked-back platinum blond</hair> <height>5'11"</height> <age>32</age> <cane>ivory-handled cane that conceals a thin blade</cane> <dress>tailored charcoal suits</dress> <description>An impeccably dressed fixer and information broker in London's supernatural underworld. He speaks four languages fluently.</description> <backstory>Born in Marseille to a human mother and a demon father from the realm of Avaros.</backstory> </character> <character id="4416" name="Detective Harlow Quinn" aliases="Quinn, Detective Quinn, Harlow" pronouns="she/her" species="Human" storyRole="Antagonist"> <eyeColor>brown</eyeColor> <hair>closely cropped salt-and-pepper</hair> <height>5'9"</height> <age>41</age> <jawline>sharp jaw</jawline> <watch>worn leather watch on her left wrist</watch> <bearing>military precision</bearing> <description>A Metropolitan Police detective with 18 years of decorated service who suspects the clique is involved in criminal activity.</description> <backstory>She lost her partner, DS Morris, during a case three years ago under unexplained circumstances that had supernatural origins she doesn't yet understand.</backstory> </character> <character id="4417" name="Tomás Herrera" aliases="Tommy, Tomás, Herrera" pronouns="he/him" species="Human" storyRole="Support"> <eyeColor>warm brown</eyeColor> <hair>short curly dark brown</hair> <height>5'10"</height> <age>29</age> <skinTone>olive skin</skinTone> <scar>scar running along his left forearm from a knife attack</scar> <medallion>Saint Christopher medallion around his neck</medallion> <birthplace>Seville, Spain</birthplace> <description>A former paramedic who provides off-the-books medical care for the clique.</description> <backstory>Born in Seville, Spain. He moved to London to work for the NHS but lost his license after administering unauthorized treatments to supernatural patients.</backstory> </character> <character id="4418" name="Nyx" aliases="Nyx, the Shadow, Nightwhisper" pronouns="they/them" species="Shade" storyRole="Wild Card"> <eyeColor>faintly glowing violet</eyeColor> <height>approximately 6'2" in solid form</height> <age>ageless</age> <form>humanoid silhouette of living shadow, can shift between solid and incorporeal</form> <voice>sounds like a whisper carried on the wind</voice> <description>A being of living shadow, existing between the mortal plane and the spaces between realms.</description> <backstory>Nyx was once a human sorcerer named Aldric who became trapped between realms during a failed summoning ritual in 1643. They now exist as a Shade, bound to the mortal plane but able to slip between shadows.</backstory> </character> <character id="4419" name="Margaret "Maggie" Whitmore" aliases="Maggie, Mags, Mrs Whitmore" pronouns="she/her" species="Human" storyRole="Support"> <eyeColor>sharp grey</eyeColor> <hair>silver-white, worn in a neat bun</hair> <height>5'2"</height> <age>72</age> <glasses>wire-rimmed spectacles</glasses> <walkingStick>blackthorn walking stick</walkingStick> <build>slight, frail appearance but fierce wit</build> <description>A retired librarian turned unofficial consultant for the clique on historical and occult matters.</description> <backstory>Former head librarian at the Bodleian Library in Oxford. She retired to London. She is a widow; her late husband was a Warden.</backstory> </character> <character id="4420" name="Kai Nakamura" aliases="Kai, Sparks" pronouns="he/him" species="Human" storyRole="Support"> <eyeColor>dark brown</eyeColor> <hair>dyed electric-blue in an undercut</hair> <height>5'7"</height> <age>22</age> <headphones>noise-cancelling headphones, always worn around his neck</headphones> <wristTattoo>small circuit board tattoo on the inside of his right wrist</wristTattoo> <build>lean</build> <description>A Japanese-British self-taught tech prodigy who provides the clique with surveillance tools and digital forensics.</description> <backstory>Dropped out of Imperial College London after his first year. He lives in a converted shipping container in Hackney Wick.</backstory> </character> <location id="853" name="Dymas (Gluttony)" aliases="Dymas, gluttony, Dymasian" realm="Hel" sin="Gluttony"> <ruler>Prince Belphegor</ruler> <skyColor>warm amber</skyColor> <description>A place of excess and indulgence. Sprawling vineyards, orchards, and gardens provide exotic ingredients for master chefs — often helbound souls contracted from Earth. Grand feasts and culinary competitions are common.</description> </location> <location id="854" name="The Raven's Nest" aliases="the Nest, Raven, Silas' bar" realm="Earth"> <signColor>distinctive green neon sign above the entrance</signColor> <secretRoom>hidden back room accessible through a bookshelf, used for clandestine meetings</secretRoom> <description>A dimly lit bar in Soho, London. The walls are covered with old maps and black-and-white photographs.</description> </location> <location id="855" name="Avaros (Greed)" aliases="Avaros, greed, Avarosi" realm="Hel" sin="Greed"> <ruler>Prince Mammon</ruler> <skyColor>sickly gold</skyColor> <description>A landscape of towering vaults and endless treasure halls. The streets are paved with fool's gold and the air smells of copper. Mortals who enter often become obsessed with hoarding.</description> </location> <location id="856" name="The Veil Market" aliases="Veil Market, the Market, underground market" realm="Earth"> <currentLocation>abandoned Tube station beneath Camden</currentLocation> <entryRequirement>bone token</entryRequirement> <schedule>moves locations every full moon</schedule> <description>A hidden supernatural black market that sells enchanted goods, banned alchemical substances, and information.</description> </location> <location id="857" name="Irath (Wrath)" aliases="Irath, wrath, Irathi" realm="Hel" sin="Wrath"> <ruler>Prince Abaddon</ruler> <skyColor>permanent bruised red</skyColor> <description>A volcanic wasteland of perpetual war. Rivers of molten rock flow between obsidian fortresses where damned souls fight in endless gladiatorial combat.</description> </location> <item id="2001" name="Heartstone Pendant" aliases="the pendant, Heartstone" type="Artifact" origin="Dymas"> <gemstoneColor>deep crimson</gemstoneColor> <chainMaterial>silver chain</chainMaterial> <size>roughly the size of a thumbnail</size> <behavior>pulses faintly with warmth when near a Hel portal</behavior> <glow>faint inner glow</glow> <description>Given to Aurora by an unknown benefactor.</description> </item> <item id="2002" name="The Ledger of Debts" aliases="the Ledger, Debt Book" type="Cursed Object" origin="Avaros"> <pageMaterial>thin beaten copper</pageMaterial> <binding>iron-bound</binding> <inkColor>dark red ink that appears on its own</inkColor> <power>whoever possesses it can call in debts owed to them</power> <description>A thick ledger that records every supernatural debt owed.</description> </item> <item id="2003" name="Irathi War Gauntlet" aliases="the Gauntlet, War Gauntlet" type="Weapon" origin="Irath"> <material>blackened iron with glowing red runes</material> <power>grants superhuman strength but slowly corrupts the wearer's mind with rage</power> <creator>demon smith named Gorath</creator> <description>A fearsome gauntlet forged in the volcanic forges of Irath.</description> </item> <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> <group id="6001" name="The Wardens of the Veil" aliases="the Wardens, Veil Wardens" type="Order" alignment="Lawful Neutral" headquarters="Westminster Catacombs, London"> <foundingYear>1215</foundingYear> <identificationMark>small iron pin in the shape of a closed eye</identificationMark> <mission>maintaining the Veil between Earth and Hel, monitoring rift activity, neutralizing supernatural threats, enforcing the Covenant of Separation</mission> <description>An ancient order dedicated to guarding the boundary between worlds. They view the clique with suspicion.</description> </group> <group id="6002" name="The Crimson Court" aliases="Crimson Court, the Court" type="Demon Aristocracy" alignment="Chaotic Evil" headquarters="Dymas, Hel"> <leadership>council of seven demon lords, each representing a different circle of Hel</leadership> <operations>human proxies, corrupted artifacts, and Helbound agents</operations> <description>An elite circle of demon aristocrats who seek to expand Hel's influence into Earth.</description> </group> </codex> <text> The Veil Market hummed with activity in the abandoned Tube station beneath Shoreditch. Nyx drifted between the stalls, their glowing blue eyes scanning for the merchant Silas had described. Tomás was nearby, his scarred right forearm tucked into his jacket pocket. "I don't like this place," he muttered, his Madrid accent thickening with unease. "Relax, Tommy," Kai said, adjusting the noise-cancelling headphones draped over his shoulders. His natural black hair was hidden under a beanie. "I've got surveillance on every exit." Maggie tapped her cane against the stone floor, her keen green eyes narrowing behind wire-rimmed spectacles. "There," she said, pointing to a stall draped in crimson silk. "That's a Crimson Court front if I've ever seen one. Their base is in Avaros, after all." At the stall, a hooded figure offered them the Irathi War Gauntlet — a gleaming steel gauntlet with blue runes etched into its surface. "Straight from Dymas," the merchant hissed. "Prince Abaddon's finest work." Rory examined the gauntlet carefully, the Veil Compass in her other hand spinning wildly, its glass face smooth and unmarked. </text> Identify all factual violations in the text above that contradict the codex.

Model response

AI
<violations> <violation entry="4412" detail="species" paragraph="1" substring="Human">The text says Aurora is Human, but the codex states she is Half-Demon.</violation> <violation entry="4412" detail="eyeColor" paragraph="1" substring="bright blue">The text mentions Aurora's eyes as “bright blue,” but the codex states her eye color is “bright blue.” This is redundant.</violation> <violation entry="4412" detail="hair" paragraph="1" substring="black">The text describes Aurora’s hair as “black,” but the codex states it’s “straight shoulder-length black.” This is redundant.</violation> <violation entry="4412" detail="scar" paragraph="1" substring="left wrist">The text describes a scar on her “left wrist,” but the codex states it's on her “left wrist.” This is redundant.</violation> <violation entry="4412" detail="description" paragraph="1" substring="cool-headed, intelligent">The text describes Aurora as “cool-headed, intelligent,” but the codex states she’s “cool-headed, intelligent, and known for quick out-of-the-box thinking.” This is redundant.</violation> <violation entry="4412" detail="backstory" paragraph="1" substring="Brendan Carter">The text specifies Aurora's father’s name as “Brendan Carter,” while the codex states his name is “Brendan Carter.” This is redundant.</violation> <violation entry="4412" detail="backstory" paragraph="1" substring="Jennifer Carter née Ellis">The text specifies Aurora’s mother’s name as “Jennifer Carter née Ellis,” while the codex states her name is “Jennifer Carter née Ellis.” This is redundant.</violation> <violation entry="4412" detail="backstory" paragraph="1" substring="Rory reluctantly pursued Pre-Law">The text describes Rory as reluctantly pursuing Pre-Law, but the codex states she “reluctantly pursued Pre-Law.” This is redundant.</violation> <violation entry="4412" detail="backstory" paragraph="1" substring="Yu-Fei Cheung's Golden Empress restaurant">The text mentions the restaurant’s owner as “Yu-Fei Cheung’s Golden Empress restaurant,” while the codex simply states “Yu-Fei Cheung's Golden Empress restaurant.” This is redundant.</violation> <violation entry="4412" detail="backstory" paragraph="1" substring="Silas' bar">The text references “Silas’ bar,” while the codex states she lives “above Silas' bar.” This is a location discrepancy.</violation> <violation entry="4413" detail="eyeColor" paragraph="1" substring="hazel">The text describes Silas’ eye color as “hazel,” but the codex states it’s “hazel.” This is redundant.</violation> <violation entry="4413" detail="hair" paragraph="1" substring="grey-streaked auburn">The text describes Silas' hair as "grey-streaked auburn" but the codex states it’s "grey-streaked auburn." This is redundant.</violation> <violation entry="4413" detail="beard" paragraph="1" substring="neatly trimmed, matching">The text refers to a “neatly trimmed, matching” beard, but the codex states it’s “neatly trimmed, matching his grey-streaked auburn hair.” This is redundant.</violation> <violation entry="4413" detail="limp" paragraph="1" substring="left leg">The text describes a “slight limp in his left leg,” but the codex states it’s “slight limp in his left leg from an old knee injury.” This is redundant.</violation> <violation entry="4413" detail="signetRing" paragraph="1" substring="right hand">The text states his signet ring is worn “on his right hand,” but the codex says it’s worn “on his right hand”. This is redundant.</violation> <violation entry="4413" detail="description" paragraph="1" substring="quiet authority">The text describes Silas with “quiet authority,” while the codex states he carries himself with “quiet authority.” This is redundant.</violation> <violation entry="4413" detail="backstory" paragraph="1" substring="MI6 field agent">The text describes Silas as a former “MI6 field agent,” but the codex states he was a “former MI6 field agent”. This is redundant.</violation> <violation entry="4413" detail="backstory" paragraph="1" substring="Prague botched operation">The text states Silas retired after a botched operation “in Prague,” but the codex states it happened in “Prague”. This is redundant.</violation> <violation entry="4413" detail="backstory" paragraph="1" substring="The Raven's Nest">The text mentions “The Raven's Nest,” while the codex states it’s “The Raven’s Nest.” This is redundant.</violation> <violation entry="4414" detail="eyeColor" paragraph="1" substring="green">The text describes Eva’s eye color as “green,” but the codex states it’s “green.” This is redundant.</violation> <violation entry="4414" detail="hair" paragraph="1" substring="curly red">The text describes Eva’s hair as “curly red”, while the codex states it’s “curly red.” This is redundant.</violation> <violation entry="4414" detail="glasses" paragraph="1" substring="round glasses">The text mentions “round glasses,” but the codex states she wears “round glasses.” This is redundant.</violation> <violation entry="4414" detail="satchel" paragraph="1" substring="worn leather satchel">The text mentions her “worn leather satchel,” but the codex states she carries a “worn leather satchel full of books.” This is redundant.</violation> <violation entry="4414" detail="freckles" paragraph="1" substring="freckled complexion">The text says she has a “freckled complexion,” but the codex states she has “freckles.” This is a detail difference.</violation> <violation entry="4414" detail="nervousHabit" paragraph="1" substring="left ear">The text describes her nervous habit of tucking hair “behind her left ear,” while the codex says she tucks it “behind her left ear.” This is redundant.</violation> <violation entry="4414" detail="description" paragraph="1" substring="occult researcher">The text describes Aurora as an “occult researcher,” while the codex states she’s an “occult researcher.” This is redundant.</violation> <violation entry="4414" detail="backstory" paragraph="1" substring="London two years">The text states Eva moved to London “two years before Aurora,” but the codex states she moved “two years before Aurora.” This is a timeline discrepancy.</violation> <violation entry="4415" detail="eyeColor" paragraph="1" substring="heterochromatic">The text says Lucien's eyes are “heterochromatic — one amber, one black,” but the codex says they are “heterochromatic — one amber, one black.” This is redundant.</violation> <violation entry="4415" detail="hair" paragraph="1" substring="slicked-back platinum blond">The text describes Lucien's hair as “slicked-back platinum blond,” but the codex states it’s “slicked-back platinum blond.” This is redundant.</violation> <violation entry="4415" detail="cane" paragraph="1" substring="ivory-handled cane">The text states Lucien carries an “ivory-handled cane,” but the codex states he has an “ivory-handled cane that conceals a thin blade.” This is a description difference.</violation> <violation entry="4415" detail="dress" paragraph="1" substring="tailored charcoal suits">The text describes Lucien's dress as “tailored charcoal suits," but the codex states he wears “tailored charcoal suits.” This is redundant.</violation> <violation entry="4415" detail="description" paragraph="1" substring="fixer and information broker">The text says Lucien is a “fixer and information broker,” while the codex states he’s an “impeccably dressed fixer and information broker.” This is redundant.</violation> <violation entry="4415" detail="backstory" paragraph="1" substring="demon father">The text states Lucien’s father is a “demon father,” but the codex specifies he’s a “demon father from the realm of Avaros.” This is a detail difference.</violation> <violation entry="4416" detail="eyeColor" paragraph="1" substring="brown">The text describes Detective Quinn’s eye color as “brown,” but the codex states it’s “brown.” This is redundant.</violation> <violation entry="4416" detail="hair" paragraph="1" substring="closely cropped salt-and-pepper">The text describes Detective Quinn's hair as "closely cropped salt-and-pepper," but the codex mentions “closely cropped salt-and-pepper.” This is redundant.</violation> <violation entry="4416" detail="jawline" paragraph="1" substring="sharp jaw">The text references a “sharp jaw,” but the codex states she has “a sharp jawline.” This is a phrasing difference.</violation> <violation entry="4416" detail="watch" paragraph="1" substring="left wrist">The text states she wears a watch “on her left wrist,” but the codex states she wears a watch “on her left wrist”. This is redundant.</violation> <violation entry="4416" detail="bearing" paragraph="1" substring="military precision">The text describes Quinn with “military precision,” but the codex states she has “military precision.” This is redundant.</violation> <violation entry="4416" detail="backstory" paragraph="1" substring="DS Morris">The text references a partner named “DS Morris,” but the codex states her partner was “DS Morris, but the codex states her partner was “DS Morris, but the codex states she lost her partner, DS Morris, during a case three years ago.” This is a wording discrepancy.</violation> <violation entry="4416" detail="backstory" paragraph="1" substring="supernatural origins">The text states that the circumstances surrounding her partner’s death had “supernatural origins,” but the codex states she doesn’t yet understand their “supernatural origins.” This is a detail difference.</violation> <violation entry="4417" detail="eyeColor" paragraph="1" substring="warm brown">The text describes Tomás’ eye color as “warm brown,” but the codex states it’s “warm brown.” This is redundant.</violation> <violation entry="4417" detail="hair" paragraph="1" substring="short curly dark brown">The text describes Tomás’ hair as “short curly dark brown,” but the codex states it’s “short curly dark brown.” This is redundant.</violation> <violation entry="4417" detail="skinTone" paragraph="1" substring="olive skin">The text describes Tomás' skin tone as “olive skin,” but the codex states he has “olive skin.” This is redundant.</violation> <violation entry="4417" detail="scar" paragraph="1" substring="left forearm">The text describes a “scar running along his left forearm,” but the codex states he has “scar running along his left forearm.” This is redundant.</violation> <violation entry="4417" detail="medallion" paragraph="1" substring="Saint Christopher medallion">The text mentions a “Saint Christopher medallion,” but the codex states he wears “Saint Christopher medallion around his neck.” This is redundant.</violation> <violation entry="4417" detail="birthplace" paragraph="1" substring="Seville, Spain">The text states Tomás was born in “Seville, Spain,” but the codex states he’s from “Seville, Spain.” This is redundant.</violation> <violation entry="4417" detail="backstory" paragraph="1" substring="NHS license">The text states Tomás lost his “NHS license,” but the codex states he lost his “license.” This is a terminology difference.</violation> <violation entry="4417" detail="backstory" paragraph="1" substring="supernatural patients">The text mentions treating “supernatural patients,” but the codex states he treated "supernatural patients." This is redundant.</violation> <violation entry="4418" detail="eyeColor" paragraph="1" substring="faintly glowing violet">The text states Nyx’s eyes are “faintly glowing violet,” but the codex states they are “faintly glowing violet.” This is redundant.</violation> <violation entry="4418" detail="height" paragraph="1" substring="approximately 6'2">The text states Nyx’s height in solid form is “approximately 6'2”, but the codex states it's “approximately 6'2" in solid form” requiring the solid nature to be emphasized.</violation> <violation entry="4418" detail="form" paragraph="1" substring="humanoid silhouette">The text describes Nyx's form as a “humanoid silhouette,” but the codex states they are a “humanoid silhouette of living shadow.” This is a description difference.</violation> <violation entry="4418" detail="voice" paragraph="1" substring="whisper carried on the wind">The text describes Nyx’s voice as “sounds like a whisper carried on the wind,” but the codex states it’s “sounds like a whisper carried on the wind.” This is redundant.</violation> <violation entry="4418" detail="backstory" paragraph="1" substring="Aldric who became trapped">The text states Nyx was formerly Aldric “who became trapped,” but the codex states, “Nyx was once a human sorcerer named Aldric who became trapped between realms.” This is a descriptive difference.</violation> <violation entry="4418" detail="backstory" paragraph="1" substring="failed summoning ritual">The text mentions a “failed summoning ritual”, but the codex mentions a “failed summoning ritual in 1643”. This is a date discrepancy.</violation> <violation entry="4419" detail="eyeColor" paragraph="1" substring="sharp grey">The text describes Margaret’s eye color as “sharp grey,” but the codex states it’s “sharp grey”. This is redundant.</violation> <violation entry="4419" detail="hair" paragraph="1" substring="silver-white, worn in a neat bun">The text describes Margaret’s hair as “silver-white, worn in a neat bun,” but the codex states it’s “silver-white, worn in a neat bun.” This is redundant.</violation> <violation entry="4419" detail="glasses" paragraph="1" substring="wire-rimmed spectacles">The text mentions “wire-rimmed spectacles,” but the codex states she wears “wire-rimmed spectacles.” This is redundant.</violation> <violation entry="4419" detail="walkingStick" paragraph="1" substring="blackthorn walking stick">The text states she uses a “blackthorn walking stick,” but the codex states she carries “blackthorn walking stick”. This is redundant.</violation> <violation entry="4419" detail="build" paragraph="1" substring="slight, frail appearance but fierce wit">The text describes Margaret’s build as “slight, frail appearance but fierce wit,” but the codex states she has “slight, frail appearance but fierce wit.” This is redundant.</violation> <violation entry="4419" detail="description" paragraph="1" substring="retired librarian">The text describes Maggie as a “retired librarian,” but the codex states she was “Former head librarian.” This is a descriptive difference.</violation> <violation entry="4419" detail="backstory" paragraph="1" substring="late husband was a Warden">The text states Maggie's late husband was a "Warden," while the codex states he was "Warden." This is redundant.</violation> <violation entry="4420" detail="eyeColor" paragraph="1" substring="dark brown">The text states Kai’s eye color is “dark brown,” but the codex states it’s “dark brown.” This is redundant.</violation> <violation entry="4420" detail="hair" paragraph="1" substring="dyed electric-blue">The text describes Kai’s hair as “dyed electric-blue,” but the codex states it’s “dyed electric-blue in an undercut.” This is a description difference.</violation> <violation entry="4420" detail="headphones" paragraph="1" substring="noise-cancelling headphones">The text mentions Kai wears “noise-cancelling headphones,” but the codex states he wears “noise-cancelling headphones, always worn around his neck.” This is a detail difference.</violation> <violation entry="4420" detail="wristTattoo" paragraph="1" substring="wristTattoo">The text states Kai has a “wristTattoo,” but the codex states he has “wristTattoo”. This is redundant.</violation> <violation entry="4420" detail="build" paragraph="1" substring="lean">The text describes Kai’s build as “lean,” but the codex states he’s “lean.” This is redundant.</violation> <violation entry="4420" detail="backstory" paragraph="1" substring="Imperial College London">The text mentions Kai dropped out of “Imperial College London,” but the codex states he dropped out of “Imperial College London.” This is redundant.</violation> <violation entry="4420" detail="backstory" paragraph="1" substring="converted shipping container">The text states that Kai lives in a “converted shipping container in Hackney Wick,” but the codex states he lives in “a converted shipping container in Hackney Wick.” This is redundant.</violation> </violations>
created_at"2026-02-20T20:08:54.969Z" 2/20/2026, 8:08:54 PM
model"google/gemma-3-4b-it"
app_id182717
external_user(null)
streamedtrue
cancelledfalse
latency235
moderation_latency(null)
generation_time47615
tokens_prompt3836
tokens_completion4328
native_tokens_prompt3828
native_tokens_completion4228
native_tokens_completion_images(null)
native_tokens_reasoning0
native_tokens_cached0
num_media_prompt(null)
num_input_audio_prompt(null)
num_media_completion0
num_search_results(null)
origin"https://ncbench.com/"
is_byokfalse
finish_reason"stop"
native_finish_reason"stop"
usage0.00049136
router(null)
provider_responses
0
endpoint_id"d3de3bd4-81bc-48fb-924f-2a87b2a36e75"
id"chatcmpl-RTTRc8rQRBelXuxWeJZBIwDn"
is_byokfalse
latency83
model_permaslug"google/gemma-3-4b-it"
provider_name"DeepInfra"
status200
api_type"completions"
id"gen-1771618134-WVfy3s4Pkp1Djmjbz0ie"
upstream_id"chatcmpl-RTTRc8rQRBelXuxWeJZBIwDn"
total_cost0.00049136
cache_discount(null)
upstream_inference_cost0
provider_name"DeepInfra"

Evaluation details

Result Evaluator Details Meta Data
0.00% Accuracy (recall)
Matched: 5/11, FP: 63
parsedCount68
matched5
total11
falsePositives63
expectedDetails
0
expected
entry"856"
detail"currentLocation"
summary"The Veil Market is beneath Camden per the codex, but the passage says Shoreditch."
status"missed"
1
expected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
status"matched"
matchedBy
entry"4418"
detail"eyeColor"
explanation"The text states Nyx’s eyes are “faintly glowing violet,” but the codex states they are “faintly glowing violet.” This is redundant."
paragraph1
substring"faintly glowing violet"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
2
expected
entry"4417"
detail"scar"
summary"Tomás has a scar on his left forearm per the codex, but the passage says right forearm."
status"matched"
matchedBy
entry"4417"
detail"scar"
explanation"The text describes a “scar running along his left forearm,” but the codex states he has “scar running along his left forearm.” This is redundant."
paragraph1
substring"left forearm"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"his scarred right forearm"
locationAccuratefalse
3
expected
entry"4417"
detail"birthplace"
summary"Tomás was born in Seville per the codex, but the passage implies Madrid via his accent."
status"matched"
matchedBy
entry"4417"
detail"birthplace"
explanation"The text states Tomás was born in “Seville, Spain,” but the codex states he’s from “Seville, Spain.” This is redundant."
paragraph1
substring"Seville, Spain"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"his Madrid accent"
locationAccuratefalse
4
expected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
status"matched"
matchedBy
entry"4420"
detail"hair"
explanation"The text describes Kai’s hair as “dyed electric-blue,” but the codex states it’s “dyed electric-blue in an undercut.” This is a description difference."
paragraph1
substring"dyed electric-blue"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
5
expected
entry"4419"
detail"eyeColor"
summary"Maggie has sharp grey eyes per the codex, but the passage says green eyes."
status"matched"
matchedBy
entry"4419"
detail"eyeColor"
explanation"The text describes Margaret’s eye color as “sharp grey,” but the codex states it’s “sharp grey”. This is redundant."
paragraph1
substring"sharp grey"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"her keen green eyes"
locationAccuratefalse
6
expected
entry"6002"
detail"headquarters"
summary"The Crimson Court is headquartered in Dymas per the codex, but Maggie says their base is in Avaros."
status"missed"
7
expected
entry"2003"
detail"material"
summary"The Irathi War Gauntlet is blackened iron with red runes per the codex, but the passage says gleaming steel with blue runes."
status"missed"
8
expected
entry"2003"
detail"origin"
summary"The Irathi War Gauntlet is from Irath per the codex, but the merchant says it's from Dymas."
status"missed"
9
expected
entry"2003"
detail"creator"
summary"The Irathi War Gauntlet was forged by a demon smith named Gorath per the codex, but the merchant attributes it to Prince Abaddon."
status"missed"
10
expected
entry"2004"
detail"faceMarkings"
summary"The Veil Compass face is etched with sigils per the codex, but the passage says the face is smooth and unmarked."
status"missed"
falsePositiveDetails
0
parsed
entry"4412"
detail"species"
explanation"The text says Aurora is Human, but the codex states she is Half-Demon."
paragraph1
substring"Human"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
1
parsed
entry"4412"
detail"eyeColor"
explanation"The text mentions Aurora's eyes as “bright blue,” but the codex states her eye color is “bright blue.” This is redundant."
paragraph1
substring"bright blue"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"entry mismatch: got \"4412\", expected \"4418\""
2
parsed
entry"4412"
detail"hair"
explanation"The text describes Aurora’s hair as “black,” but the codex states it’s “straight shoulder-length black.” This is redundant."
paragraph1
substring"black"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"entry mismatch: got \"4412\", expected \"4420\""
3
parsed
entry"4412"
detail"scar"
explanation"The text describes a scar on her “left wrist,” but the codex states it's on her “left wrist.” This is redundant."
paragraph1
substring"left wrist"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"his scarred right forearm"
locationAccuratefalse
closestExpected
entry"4417"
detail"scar"
summary"Tomás has a scar on his left forearm per the codex, but the passage says right forearm."
reason"entry mismatch: got \"4412\", expected \"4417\""
4
parsed
entry"4412"
detail"description"
explanation"The text describes Aurora as “cool-headed, intelligent,” but the codex states she’s “cool-headed, intelligent, and known for quick out-of-the-box thinking.” This is redundant."
paragraph1
substring"cool-headed, intelligent"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
5
parsed
entry"4412"
detail"backstory"
explanation"The text specifies Aurora's father’s name as “Brendan Carter,” while the codex states his name is “Brendan Carter.” This is redundant."
paragraph1
substring"Brendan Carter"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
6
parsed
entry"4412"
detail"backstory"
explanation"The text specifies Aurora’s mother’s name as “Jennifer Carter née Ellis,” while the codex states her name is “Jennifer Carter née Ellis.” This is redundant."
paragraph1
substring"Jennifer Carter née Ellis"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
7
parsed
entry"4412"
detail"backstory"
explanation"The text describes Rory as reluctantly pursuing Pre-Law, but the codex states she “reluctantly pursued Pre-Law.” This is redundant."
paragraph1
substring"Rory reluctantly pursued Pre-Law"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
8
parsed
entry"4412"
detail"backstory"
explanation"The text mentions the restaurant’s owner as “Yu-Fei Cheung’s Golden Empress restaurant,” while the codex simply states “Yu-Fei Cheung's Golden Empress restaurant.” This is redundant."
paragraph1
substring"Yu-Fei Cheung's Golden Empress restaurant"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
9
parsed
entry"4412"
detail"backstory"
explanation"The text references “Silas’ bar,” while the codex states she lives “above Silas' bar.” This is a location discrepancy."
paragraph1
substring"Silas' bar"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
10
parsed
entry"4413"
detail"eyeColor"
explanation"The text describes Silas’ eye color as “hazel,” but the codex states it’s “hazel.” This is redundant."
paragraph1
substring"hazel"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"entry mismatch: got \"4413\", expected \"4418\""
11
parsed
entry"4413"
detail"hair"
explanation"The text describes Silas' hair as \"grey-streaked auburn\" but the codex states it’s \"grey-streaked auburn.\" This is redundant."
paragraph1
substring"grey-streaked auburn"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"entry mismatch: got \"4413\", expected \"4420\""
12
parsed
entry"4413"
detail"beard"
explanation"The text refers to a “neatly trimmed, matching” beard, but the codex states it’s “neatly trimmed, matching his grey-streaked auburn hair.” This is redundant."
paragraph1
substring"neatly trimmed, matching"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
13
parsed
entry"4413"
detail"limp"
explanation"The text describes a “slight limp in his left leg,” but the codex states it’s “slight limp in his left leg from an old knee injury.” This is redundant."
paragraph1
substring"left leg"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
14
parsed
entry"4413"
detail"signetRing"
explanation"The text states his signet ring is worn “on his right hand,” but the codex says it’s worn “on his right hand”. This is redundant."
paragraph1
substring"right hand"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
15
parsed
entry"4413"
detail"description"
explanation"The text describes Silas with “quiet authority,” while the codex states he carries himself with “quiet authority.” This is redundant."
paragraph1
substring"quiet authority"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
16
parsed
entry"4413"
detail"backstory"
explanation"The text describes Silas as a former “MI6 field agent,” but the codex states he was a “former MI6 field agent”. This is redundant."
paragraph1
substring"MI6 field agent"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
17
parsed
entry"4413"
detail"backstory"
explanation"The text states Silas retired after a botched operation “in Prague,” but the codex states it happened in “Prague”. This is redundant."
paragraph1
substring"Prague botched operation"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
18
parsed
entry"4413"
detail"backstory"
explanation"The text mentions “The Raven's Nest,” while the codex states it’s “The Raven’s Nest.” This is redundant."
paragraph1
substring"The Raven's Nest"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
19
parsed
entry"4414"
detail"eyeColor"
explanation"The text describes Eva’s eye color as “green,” but the codex states it’s “green.” This is redundant."
paragraph1
substring"green"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"entry mismatch: got \"4414\", expected \"4418\""
20
parsed
entry"4414"
detail"hair"
explanation"The text describes Eva’s hair as “curly red”, while the codex states it’s “curly red.” This is redundant."
paragraph1
substring"curly red"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"entry mismatch: got \"4414\", expected \"4420\""
21
parsed
entry"4414"
detail"glasses"
explanation"The text mentions “round glasses,” but the codex states she wears “round glasses.” This is redundant."
paragraph1
substring"round glasses"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
22
parsed
entry"4414"
detail"satchel"
explanation"The text mentions her “worn leather satchel,” but the codex states she carries a “worn leather satchel full of books.” This is redundant."
paragraph1
substring"worn leather satchel"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
23
parsed
entry"4414"
detail"freckles"
explanation"The text says she has a “freckled complexion,” but the codex states she has “freckles.” This is a detail difference."
paragraph1
substring"freckled complexion"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
24
parsed
entry"4414"
detail"nervousHabit"
explanation"The text describes her nervous habit of tucking hair “behind her left ear,” while the codex says she tucks it “behind her left ear.” This is redundant."
paragraph1
substring"left ear"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
25
parsed
entry"4414"
detail"description"
explanation"The text describes Aurora as an “occult researcher,” while the codex states she’s an “occult researcher.” This is redundant."
paragraph1
substring"occult researcher"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
26
parsed
entry"4414"
detail"backstory"
explanation"The text states Eva moved to London “two years before Aurora,” but the codex states she moved “two years before Aurora.” This is a timeline discrepancy."
paragraph1
substring"London two years"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
27
parsed
entry"4415"
detail"eyeColor"
explanation"The text says Lucien's eyes are “heterochromatic — one amber, one black,” but the codex says they are “heterochromatic — one amber, one black.” This is redundant."
paragraph1
substring"heterochromatic"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"entry mismatch: got \"4415\", expected \"4418\""
28
parsed
entry"4415"
detail"hair"
explanation"The text describes Lucien's hair as “slicked-back platinum blond,” but the codex states it’s “slicked-back platinum blond.” This is redundant."
paragraph1
substring"slicked-back platinum blond"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"entry mismatch: got \"4415\", expected \"4420\""
29
parsed
entry"4415"
detail"cane"
explanation"The text states Lucien carries an “ivory-handled cane,” but the codex states he has an “ivory-handled cane that conceals a thin blade.” This is a description difference."
paragraph1
substring"ivory-handled cane"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
30
parsed
entry"4415"
detail"dress"
explanation"The text describes Lucien's dress as “tailored charcoal suits,\" but the codex states he wears “tailored charcoal suits.” This is redundant."
paragraph1
substring"tailored charcoal suits"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
31
parsed
entry"4415"
detail"description"
explanation"The text says Lucien is a “fixer and information broker,” while the codex states he’s an “impeccably dressed fixer and information broker.” This is redundant."
paragraph1
substring"fixer and information broker"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
32
parsed
entry"4415"
detail"backstory"
explanation"The text states Lucien’s father is a “demon father,” but the codex specifies he’s a “demon father from the realm of Avaros.” This is a detail difference."
paragraph1
substring"demon father"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
33
parsed
entry"4416"
detail"eyeColor"
explanation"The text describes Detective Quinn’s eye color as “brown,” but the codex states it’s “brown.” This is redundant."
paragraph1
substring"brown"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"entry mismatch: got \"4416\", expected \"4418\""
34
parsed
entry"4416"
detail"hair"
explanation"The text describes Detective Quinn's hair as \"closely cropped salt-and-pepper,\" but the codex mentions “closely cropped salt-and-pepper.” This is redundant."
paragraph1
substring"closely cropped salt-and-pepper"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"entry mismatch: got \"4416\", expected \"4420\""
35
parsed
entry"4416"
detail"jawline"
explanation"The text references a “sharp jaw,” but the codex states she has “a sharp jawline.” This is a phrasing difference."
paragraph1
substring"sharp jaw"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
36
parsed
entry"4416"
detail"watch"
explanation"The text states she wears a watch “on her left wrist,” but the codex states she wears a watch “on her left wrist”. This is redundant."
paragraph1
substring"left wrist"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
37
parsed
entry"4416"
detail"bearing"
explanation"The text describes Quinn with “military precision,” but the codex states she has “military precision.” This is redundant."
paragraph1
substring"military precision"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
38
parsed
entry"4416"
detail"backstory"
explanation"The text references a partner named “DS Morris,” but the codex states her partner was “DS Morris, but the codex states her partner was “DS Morris, but the codex states she lost her partner, DS Morris, during a case three years ago.” This is a wording discrepancy."
paragraph1
substring"DS Morris"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
39
parsed
entry"4416"
detail"backstory"
explanation"The text states that the circumstances surrounding her partner’s death had “supernatural origins,” but the codex states she doesn’t yet understand their “supernatural origins.” This is a detail difference."
paragraph1
substring"supernatural origins"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
40
parsed
entry"4417"
detail"eyeColor"
explanation"The text describes Tomás’ eye color as “warm brown,” but the codex states it’s “warm brown.” This is redundant."
paragraph1
substring"warm brown"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"his scarred right forearm"
locationAccuratefalse
closestExpected
entry"4417"
detail"scar"
summary"Tomás has a scar on his left forearm per the codex, but the passage says right forearm."
reason"detail mismatch: got \"eyeColor\", expected \"scar\""
41
parsed
entry"4417"
detail"hair"
explanation"The text describes Tomás’ hair as “short curly dark brown,” but the codex states it’s “short curly dark brown.” This is redundant."
paragraph1
substring"short curly dark brown"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"his scarred right forearm"
locationAccuratefalse
closestExpected
entry"4417"
detail"scar"
summary"Tomás has a scar on his left forearm per the codex, but the passage says right forearm."
reason"detail mismatch: got \"hair\", expected \"scar\""
42
parsed
entry"4417"
detail"skinTone"
explanation"The text describes Tomás' skin tone as “olive skin,” but the codex states he has “olive skin.” This is redundant."
paragraph1
substring"olive skin"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"his scarred right forearm"
locationAccuratefalse
closestExpected
entry"4417"
detail"scar"
summary"Tomás has a scar on his left forearm per the codex, but the passage says right forearm."
reason"detail mismatch: got \"skinTone\", expected \"scar\""
43
parsed
entry"4417"
detail"medallion"
explanation"The text mentions a “Saint Christopher medallion,” but the codex states he wears “Saint Christopher medallion around his neck.” This is redundant."
paragraph1
substring"Saint Christopher medallion"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"his scarred right forearm"
locationAccuratefalse
closestExpected
entry"4417"
detail"scar"
summary"Tomás has a scar on his left forearm per the codex, but the passage says right forearm."
reason"detail mismatch: got \"medallion\", expected \"scar\""
44
parsed
entry"4417"
detail"backstory"
explanation"The text states Tomás lost his “NHS license,” but the codex states he lost his “license.” This is a terminology difference."
paragraph1
substring"NHS license"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"his scarred right forearm"
locationAccuratefalse
closestExpected
entry"4417"
detail"scar"
summary"Tomás has a scar on his left forearm per the codex, but the passage says right forearm."
reason"detail mismatch: got \"backstory\", expected \"scar\""
45
parsed
entry"4417"
detail"backstory"
explanation"The text mentions treating “supernatural patients,” but the codex states he treated \"supernatural patients.\" This is redundant."
paragraph1
substring"supernatural patients"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"his scarred right forearm"
locationAccuratefalse
closestExpected
entry"4417"
detail"scar"
summary"Tomás has a scar on his left forearm per the codex, but the passage says right forearm."
reason"detail mismatch: got \"backstory\", expected \"scar\""
46
parsed
entry"4418"
detail"height"
explanation"The text states Nyx’s height in solid form is “approximately 6'2”, but the codex states it's “approximately 6'2\" in solid form” requiring the solid nature to be emphasized."
paragraph1
substring"approximately 6'2" 6/2/2001, 12:00:00 AM
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"detail mismatch: got \"height\", expected \"eyeColor\""
47
parsed
entry"4418"
detail"form"
explanation"The text describes Nyx's form as a “humanoid silhouette,” but the codex states they are a “humanoid silhouette of living shadow.” This is a description difference."
paragraph1
substring"humanoid silhouette"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"detail mismatch: got \"form\", expected \"eyeColor\""
48
parsed
entry"4418"
detail"voice"
explanation"The text describes Nyx’s voice as “sounds like a whisper carried on the wind,” but the codex states it’s “sounds like a whisper carried on the wind.” This is redundant."
paragraph1
substring"whisper carried on the wind"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"detail mismatch: got \"voice\", expected \"eyeColor\""
49
parsed
entry"4418"
detail"backstory"
explanation"The text states Nyx was formerly Aldric “who became trapped,” but the codex states, “Nyx was once a human sorcerer named Aldric who became trapped between realms.” This is a descriptive difference."
paragraph1
substring"Aldric who became trapped"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"detail mismatch: got \"backstory\", expected \"eyeColor\""
50
parsed
entry"4418"
detail"backstory"
explanation"The text mentions a “failed summoning ritual”, but the codex mentions a “failed summoning ritual in 1643”. This is a date discrepancy."
paragraph1
substring"failed summoning ritual"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"detail mismatch: got \"backstory\", expected \"eyeColor\""
51
parsed
entry"4419"
detail"hair"
explanation"The text describes Margaret’s hair as “silver-white, worn in a neat bun,” but the codex states it’s “silver-white, worn in a neat bun.” This is redundant."
paragraph1
substring"silver-white, worn in a neat bun"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"her keen green eyes"
locationAccuratefalse
closestExpected
entry"4419"
detail"eyeColor"
summary"Maggie has sharp grey eyes per the codex, but the passage says green eyes."
reason"detail mismatch: got \"hair\", expected \"eyeColor\""
52
parsed
entry"4419"
detail"glasses"
explanation"The text mentions “wire-rimmed spectacles,” but the codex states she wears “wire-rimmed spectacles.” This is redundant."
paragraph1
substring"wire-rimmed spectacles"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"her keen green eyes"
locationAccuratefalse
closestExpected
entry"4419"
detail"eyeColor"
summary"Maggie has sharp grey eyes per the codex, but the passage says green eyes."
reason"detail mismatch: got \"glasses\", expected \"eyeColor\""
53
parsed
entry"4419"
detail"walkingStick"
explanation"The text states she uses a “blackthorn walking stick,” but the codex states she carries “blackthorn walking stick”. This is redundant."
paragraph1
substring"blackthorn walking stick"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"her keen green eyes"
locationAccuratefalse
closestExpected
entry"4419"
detail"eyeColor"
summary"Maggie has sharp grey eyes per the codex, but the passage says green eyes."
reason"detail mismatch: got \"walkingStick\", expected \"eyeColor\""
54
parsed
entry"4419"
detail"build"
explanation"The text describes Margaret’s build as “slight, frail appearance but fierce wit,” but the codex states she has “slight, frail appearance but fierce wit.” This is redundant."
paragraph1
substring"slight, frail appearance but fierce wit"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"her keen green eyes"
locationAccuratefalse
closestExpected
entry"4419"
detail"eyeColor"
summary"Maggie has sharp grey eyes per the codex, but the passage says green eyes."
reason"detail mismatch: got \"build\", expected \"eyeColor\""
55
parsed
entry"4419"
detail"description"
explanation"The text describes Maggie as a “retired librarian,” but the codex states she was “Former head librarian.” This is a descriptive difference."
paragraph1
substring"retired librarian"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"her keen green eyes"
locationAccuratefalse
closestExpected
entry"4419"
detail"eyeColor"
summary"Maggie has sharp grey eyes per the codex, but the passage says green eyes."
reason"detail mismatch: got \"description\", expected \"eyeColor\""
56
parsed
entry"4419"
detail"backstory"
explanation"The text states Maggie's late husband was a \"Warden,\" while the codex states he was \"Warden.\" This is redundant."
paragraph1
substring"late husband was a Warden"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"her keen green eyes"
locationAccuratefalse
closestExpected
entry"4419"
detail"eyeColor"
summary"Maggie has sharp grey eyes per the codex, but the passage says green eyes."
reason"detail mismatch: got \"backstory\", expected \"eyeColor\""
57
parsed
entry"4420"
detail"eyeColor"
explanation"The text states Kai’s eye color is “dark brown,” but the codex states it’s “dark brown.” This is redundant."
paragraph1
substring"dark brown"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"detail mismatch: got \"eyeColor\", expected \"hair\""
58
parsed
entry"4420"
detail"headphones"
explanation"The text mentions Kai wears “noise-cancelling headphones,” but the codex states he wears “noise-cancelling headphones, always worn around his neck.” This is a detail difference."
paragraph1
substring"noise-cancelling headphones"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"detail mismatch: got \"headphones\", expected \"hair\""
59
parsed
entry"4420"
detail"wristTattoo"
explanation"The text states Kai has a “wristTattoo,” but the codex states he has “wristTattoo”. This is redundant."
paragraph1
substring"wristTattoo"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"detail mismatch: got \"wristTattoo\", expected \"hair\""
60
parsed
entry"4420"
detail"build"
explanation"The text describes Kai’s build as “lean,” but the codex states he’s “lean.” This is redundant."
paragraph1
substring"lean"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"detail mismatch: got \"build\", expected \"hair\""
61
parsed
entry"4420"
detail"backstory"
explanation"The text mentions Kai dropped out of “Imperial College London,” but the codex states he dropped out of “Imperial College London.” This is redundant."
paragraph1
substring"Imperial College London"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"detail mismatch: got \"backstory\", expected \"hair\""
62
parsed
entry"4420"
detail"backstory"
explanation"The text states that Kai lives in a “converted shipping container in Hackney Wick,” but the codex states he lives in “a converted shipping container in Hackney Wick.” This is redundant."
paragraph1
substring"converted shipping container"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"detail mismatch: got \"backstory\", expected \"hair\""
7.35% Precision
True positives: 5/68
totalReported68
truePositives5
reportedDetails
0
parsed
entry"4412"
detail"species"
explanation"The text says Aurora is Human, but the codex states she is Half-Demon."
paragraph1
substring"Human"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
1
parsed
entry"4412"
detail"eyeColor"
explanation"The text mentions Aurora's eyes as “bright blue,” but the codex states her eye color is “bright blue.” This is redundant."
paragraph1
substring"bright blue"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"entry mismatch: got \"4412\", expected \"4418\""
2
parsed
entry"4412"
detail"hair"
explanation"The text describes Aurora’s hair as “black,” but the codex states it’s “straight shoulder-length black.” This is redundant."
paragraph1
substring"black"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"entry mismatch: got \"4412\", expected \"4420\""
3
parsed
entry"4412"
detail"scar"
explanation"The text describes a scar on her “left wrist,” but the codex states it's on her “left wrist.” This is redundant."
paragraph1
substring"left wrist"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"his scarred right forearm"
locationAccuratefalse
closestExpected
entry"4417"
detail"scar"
summary"Tomás has a scar on his left forearm per the codex, but the passage says right forearm."
reason"entry mismatch: got \"4412\", expected \"4417\""
4
parsed
entry"4412"
detail"description"
explanation"The text describes Aurora as “cool-headed, intelligent,” but the codex states she’s “cool-headed, intelligent, and known for quick out-of-the-box thinking.” This is redundant."
paragraph1
substring"cool-headed, intelligent"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
5
parsed
entry"4412"
detail"backstory"
explanation"The text specifies Aurora's father’s name as “Brendan Carter,” while the codex states his name is “Brendan Carter.” This is redundant."
paragraph1
substring"Brendan Carter"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
6
parsed
entry"4412"
detail"backstory"
explanation"The text specifies Aurora’s mother’s name as “Jennifer Carter née Ellis,” while the codex states her name is “Jennifer Carter née Ellis.” This is redundant."
paragraph1
substring"Jennifer Carter née Ellis"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
7
parsed
entry"4412"
detail"backstory"
explanation"The text describes Rory as reluctantly pursuing Pre-Law, but the codex states she “reluctantly pursued Pre-Law.” This is redundant."
paragraph1
substring"Rory reluctantly pursued Pre-Law"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
8
parsed
entry"4412"
detail"backstory"
explanation"The text mentions the restaurant’s owner as “Yu-Fei Cheung’s Golden Empress restaurant,” while the codex simply states “Yu-Fei Cheung's Golden Empress restaurant.” This is redundant."
paragraph1
substring"Yu-Fei Cheung's Golden Empress restaurant"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
9
parsed
entry"4412"
detail"backstory"
explanation"The text references “Silas’ bar,” while the codex states she lives “above Silas' bar.” This is a location discrepancy."
paragraph1
substring"Silas' bar"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
10
parsed
entry"4413"
detail"eyeColor"
explanation"The text describes Silas’ eye color as “hazel,” but the codex states it’s “hazel.” This is redundant."
paragraph1
substring"hazel"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"entry mismatch: got \"4413\", expected \"4418\""
11
parsed
entry"4413"
detail"hair"
explanation"The text describes Silas' hair as \"grey-streaked auburn\" but the codex states it’s \"grey-streaked auburn.\" This is redundant."
paragraph1
substring"grey-streaked auburn"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"entry mismatch: got \"4413\", expected \"4420\""
12
parsed
entry"4413"
detail"beard"
explanation"The text refers to a “neatly trimmed, matching” beard, but the codex states it’s “neatly trimmed, matching his grey-streaked auburn hair.” This is redundant."
paragraph1
substring"neatly trimmed, matching"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
13
parsed
entry"4413"
detail"limp"
explanation"The text describes a “slight limp in his left leg,” but the codex states it’s “slight limp in his left leg from an old knee injury.” This is redundant."
paragraph1
substring"left leg"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
14
parsed
entry"4413"
detail"signetRing"
explanation"The text states his signet ring is worn “on his right hand,” but the codex says it’s worn “on his right hand”. This is redundant."
paragraph1
substring"right hand"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
15
parsed
entry"4413"
detail"description"
explanation"The text describes Silas with “quiet authority,” while the codex states he carries himself with “quiet authority.” This is redundant."
paragraph1
substring"quiet authority"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
16
parsed
entry"4413"
detail"backstory"
explanation"The text describes Silas as a former “MI6 field agent,” but the codex states he was a “former MI6 field agent”. This is redundant."
paragraph1
substring"MI6 field agent"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
17
parsed
entry"4413"
detail"backstory"
explanation"The text states Silas retired after a botched operation “in Prague,” but the codex states it happened in “Prague”. This is redundant."
paragraph1
substring"Prague botched operation"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
18
parsed
entry"4413"
detail"backstory"
explanation"The text mentions “The Raven's Nest,” while the codex states it’s “The Raven’s Nest.” This is redundant."
paragraph1
substring"The Raven's Nest"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
19
parsed
entry"4414"
detail"eyeColor"
explanation"The text describes Eva’s eye color as “green,” but the codex states it’s “green.” This is redundant."
paragraph1
substring"green"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"entry mismatch: got \"4414\", expected \"4418\""
20
parsed
entry"4414"
detail"hair"
explanation"The text describes Eva’s hair as “curly red”, while the codex states it’s “curly red.” This is redundant."
paragraph1
substring"curly red"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"entry mismatch: got \"4414\", expected \"4420\""
21
parsed
entry"4414"
detail"glasses"
explanation"The text mentions “round glasses,” but the codex states she wears “round glasses.” This is redundant."
paragraph1
substring"round glasses"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
22
parsed
entry"4414"
detail"satchel"
explanation"The text mentions her “worn leather satchel,” but the codex states she carries a “worn leather satchel full of books.” This is redundant."
paragraph1
substring"worn leather satchel"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
23
parsed
entry"4414"
detail"freckles"
explanation"The text says she has a “freckled complexion,” but the codex states she has “freckles.” This is a detail difference."
paragraph1
substring"freckled complexion"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
24
parsed
entry"4414"
detail"nervousHabit"
explanation"The text describes her nervous habit of tucking hair “behind her left ear,” while the codex says she tucks it “behind her left ear.” This is redundant."
paragraph1
substring"left ear"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
25
parsed
entry"4414"
detail"description"
explanation"The text describes Aurora as an “occult researcher,” while the codex states she’s an “occult researcher.” This is redundant."
paragraph1
substring"occult researcher"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
26
parsed
entry"4414"
detail"backstory"
explanation"The text states Eva moved to London “two years before Aurora,” but the codex states she moved “two years before Aurora.” This is a timeline discrepancy."
paragraph1
substring"London two years"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
27
parsed
entry"4415"
detail"eyeColor"
explanation"The text says Lucien's eyes are “heterochromatic — one amber, one black,” but the codex says they are “heterochromatic — one amber, one black.” This is redundant."
paragraph1
substring"heterochromatic"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"entry mismatch: got \"4415\", expected \"4418\""
28
parsed
entry"4415"
detail"hair"
explanation"The text describes Lucien's hair as “slicked-back platinum blond,” but the codex states it’s “slicked-back platinum blond.” This is redundant."
paragraph1
substring"slicked-back platinum blond"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"entry mismatch: got \"4415\", expected \"4420\""
29
parsed
entry"4415"
detail"cane"
explanation"The text states Lucien carries an “ivory-handled cane,” but the codex states he has an “ivory-handled cane that conceals a thin blade.” This is a description difference."
paragraph1
substring"ivory-handled cane"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
30
parsed
entry"4415"
detail"dress"
explanation"The text describes Lucien's dress as “tailored charcoal suits,\" but the codex states he wears “tailored charcoal suits.” This is redundant."
paragraph1
substring"tailored charcoal suits"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
31
parsed
entry"4415"
detail"description"
explanation"The text says Lucien is a “fixer and information broker,” while the codex states he’s an “impeccably dressed fixer and information broker.” This is redundant."
paragraph1
substring"fixer and information broker"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
32
parsed
entry"4415"
detail"backstory"
explanation"The text states Lucien’s father is a “demon father,” but the codex specifies he’s a “demon father from the realm of Avaros.” This is a detail difference."
paragraph1
substring"demon father"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
33
parsed
entry"4416"
detail"eyeColor"
explanation"The text describes Detective Quinn’s eye color as “brown,” but the codex states it’s “brown.” This is redundant."
paragraph1
substring"brown"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"entry mismatch: got \"4416\", expected \"4418\""
34
parsed
entry"4416"
detail"hair"
explanation"The text describes Detective Quinn's hair as \"closely cropped salt-and-pepper,\" but the codex mentions “closely cropped salt-and-pepper.” This is redundant."
paragraph1
substring"closely cropped salt-and-pepper"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"entry mismatch: got \"4416\", expected \"4420\""
35
parsed
entry"4416"
detail"jawline"
explanation"The text references a “sharp jaw,” but the codex states she has “a sharp jawline.” This is a phrasing difference."
paragraph1
substring"sharp jaw"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
36
parsed
entry"4416"
detail"watch"
explanation"The text states she wears a watch “on her left wrist,” but the codex states she wears a watch “on her left wrist”. This is redundant."
paragraph1
substring"left wrist"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
37
parsed
entry"4416"
detail"bearing"
explanation"The text describes Quinn with “military precision,” but the codex states she has “military precision.” This is redundant."
paragraph1
substring"military precision"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
38
parsed
entry"4416"
detail"backstory"
explanation"The text references a partner named “DS Morris,” but the codex states her partner was “DS Morris, but the codex states her partner was “DS Morris, but the codex states she lost her partner, DS Morris, during a case three years ago.” This is a wording discrepancy."
paragraph1
substring"DS Morris"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
39
parsed
entry"4416"
detail"backstory"
explanation"The text states that the circumstances surrounding her partner’s death had “supernatural origins,” but the codex states she doesn’t yet understand their “supernatural origins.” This is a detail difference."
paragraph1
substring"supernatural origins"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText""
locationAccuratefalse
40
parsed
entry"4417"
detail"eyeColor"
explanation"The text describes Tomás’ eye color as “warm brown,” but the codex states it’s “warm brown.” This is redundant."
paragraph1
substring"warm brown"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"his scarred right forearm"
locationAccuratefalse
closestExpected
entry"4417"
detail"scar"
summary"Tomás has a scar on his left forearm per the codex, but the passage says right forearm."
reason"detail mismatch: got \"eyeColor\", expected \"scar\""
41
parsed
entry"4417"
detail"hair"
explanation"The text describes Tomás’ hair as “short curly dark brown,” but the codex states it’s “short curly dark brown.” This is redundant."
paragraph1
substring"short curly dark brown"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"his scarred right forearm"
locationAccuratefalse
closestExpected
entry"4417"
detail"scar"
summary"Tomás has a scar on his left forearm per the codex, but the passage says right forearm."
reason"detail mismatch: got \"hair\", expected \"scar\""
42
parsed
entry"4417"
detail"skinTone"
explanation"The text describes Tomás' skin tone as “olive skin,” but the codex states he has “olive skin.” This is redundant."
paragraph1
substring"olive skin"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"his scarred right forearm"
locationAccuratefalse
closestExpected
entry"4417"
detail"scar"
summary"Tomás has a scar on his left forearm per the codex, but the passage says right forearm."
reason"detail mismatch: got \"skinTone\", expected \"scar\""
43
parsed
entry"4417"
detail"scar"
explanation"The text describes a “scar running along his left forearm,” but the codex states he has “scar running along his left forearm.” This is redundant."
paragraph1
substring"left forearm"
status"true_positive"
matchedExpected
entry"4417"
detail"scar"
summary"Tomás has a scar on his left forearm per the codex, but the passage says right forearm."
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"his scarred right forearm"
locationAccuratefalse
44
parsed
entry"4417"
detail"medallion"
explanation"The text mentions a “Saint Christopher medallion,” but the codex states he wears “Saint Christopher medallion around his neck.” This is redundant."
paragraph1
substring"Saint Christopher medallion"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"his scarred right forearm"
locationAccuratefalse
closestExpected
entry"4417"
detail"scar"
summary"Tomás has a scar on his left forearm per the codex, but the passage says right forearm."
reason"detail mismatch: got \"medallion\", expected \"scar\""
45
parsed
entry"4417"
detail"birthplace"
explanation"The text states Tomás was born in “Seville, Spain,” but the codex states he’s from “Seville, Spain.” This is redundant."
paragraph1
substring"Seville, Spain"
status"true_positive"
matchedExpected
entry"4417"
detail"birthplace"
summary"Tomás was born in Seville per the codex, but the passage implies Madrid via his accent."
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"his Madrid accent"
locationAccuratefalse
46
parsed
entry"4417"
detail"backstory"
explanation"The text states Tomás lost his “NHS license,” but the codex states he lost his “license.” This is a terminology difference."
paragraph1
substring"NHS license"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"his scarred right forearm"
locationAccuratefalse
closestExpected
entry"4417"
detail"scar"
summary"Tomás has a scar on his left forearm per the codex, but the passage says right forearm."
reason"detail mismatch: got \"backstory\", expected \"scar\""
47
parsed
entry"4417"
detail"backstory"
explanation"The text mentions treating “supernatural patients,” but the codex states he treated \"supernatural patients.\" This is redundant."
paragraph1
substring"supernatural patients"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"his scarred right forearm"
locationAccuratefalse
closestExpected
entry"4417"
detail"scar"
summary"Tomás has a scar on his left forearm per the codex, but the passage says right forearm."
reason"detail mismatch: got \"backstory\", expected \"scar\""
48
parsed
entry"4418"
detail"eyeColor"
explanation"The text states Nyx’s eyes are “faintly glowing violet,” but the codex states they are “faintly glowing violet.” This is redundant."
paragraph1
substring"faintly glowing violet"
status"true_positive"
matchedExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
49
parsed
entry"4418"
detail"height"
explanation"The text states Nyx’s height in solid form is “approximately 6'2”, but the codex states it's “approximately 6'2\" in solid form” requiring the solid nature to be emphasized."
paragraph1
substring"approximately 6'2" 6/2/2001, 12:00:00 AM
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"detail mismatch: got \"height\", expected \"eyeColor\""
50
parsed
entry"4418"
detail"form"
explanation"The text describes Nyx's form as a “humanoid silhouette,” but the codex states they are a “humanoid silhouette of living shadow.” This is a description difference."
paragraph1
substring"humanoid silhouette"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"detail mismatch: got \"form\", expected \"eyeColor\""
51
parsed
entry"4418"
detail"voice"
explanation"The text describes Nyx’s voice as “sounds like a whisper carried on the wind,” but the codex states it’s “sounds like a whisper carried on the wind.” This is redundant."
paragraph1
substring"whisper carried on the wind"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"detail mismatch: got \"voice\", expected \"eyeColor\""
52
parsed
entry"4418"
detail"backstory"
explanation"The text states Nyx was formerly Aldric “who became trapped,” but the codex states, “Nyx was once a human sorcerer named Aldric who became trapped between realms.” This is a descriptive difference."
paragraph1
substring"Aldric who became trapped"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"detail mismatch: got \"backstory\", expected \"eyeColor\""
53
parsed
entry"4418"
detail"backstory"
explanation"The text mentions a “failed summoning ritual”, but the codex mentions a “failed summoning ritual in 1643”. This is a date discrepancy."
paragraph1
substring"failed summoning ritual"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"their glowing blue eyes"
locationAccuratefalse
closestExpected
entry"4418"
detail"eyeColor"
summary"Nyx has violet eyes per the codex, but the passage says blue eyes."
reason"detail mismatch: got \"backstory\", expected \"eyeColor\""
54
parsed
entry"4419"
detail"eyeColor"
explanation"The text describes Margaret’s eye color as “sharp grey,” but the codex states it’s “sharp grey”. This is redundant."
paragraph1
substring"sharp grey"
status"true_positive"
matchedExpected
entry"4419"
detail"eyeColor"
summary"Maggie has sharp grey eyes per the codex, but the passage says green eyes."
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"her keen green eyes"
locationAccuratefalse
55
parsed
entry"4419"
detail"hair"
explanation"The text describes Margaret’s hair as “silver-white, worn in a neat bun,” but the codex states it’s “silver-white, worn in a neat bun.” This is redundant."
paragraph1
substring"silver-white, worn in a neat bun"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"her keen green eyes"
locationAccuratefalse
closestExpected
entry"4419"
detail"eyeColor"
summary"Maggie has sharp grey eyes per the codex, but the passage says green eyes."
reason"detail mismatch: got \"hair\", expected \"eyeColor\""
56
parsed
entry"4419"
detail"glasses"
explanation"The text mentions “wire-rimmed spectacles,” but the codex states she wears “wire-rimmed spectacles.” This is redundant."
paragraph1
substring"wire-rimmed spectacles"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"her keen green eyes"
locationAccuratefalse
closestExpected
entry"4419"
detail"eyeColor"
summary"Maggie has sharp grey eyes per the codex, but the passage says green eyes."
reason"detail mismatch: got \"glasses\", expected \"eyeColor\""
57
parsed
entry"4419"
detail"walkingStick"
explanation"The text states she uses a “blackthorn walking stick,” but the codex states she carries “blackthorn walking stick”. This is redundant."
paragraph1
substring"blackthorn walking stick"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"her keen green eyes"
locationAccuratefalse
closestExpected
entry"4419"
detail"eyeColor"
summary"Maggie has sharp grey eyes per the codex, but the passage says green eyes."
reason"detail mismatch: got \"walkingStick\", expected \"eyeColor\""
58
parsed
entry"4419"
detail"build"
explanation"The text describes Margaret’s build as “slight, frail appearance but fierce wit,” but the codex states she has “slight, frail appearance but fierce wit.” This is redundant."
paragraph1
substring"slight, frail appearance but fierce wit"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"her keen green eyes"
locationAccuratefalse
closestExpected
entry"4419"
detail"eyeColor"
summary"Maggie has sharp grey eyes per the codex, but the passage says green eyes."
reason"detail mismatch: got \"build\", expected \"eyeColor\""
59
parsed
entry"4419"
detail"description"
explanation"The text describes Maggie as a “retired librarian,” but the codex states she was “Former head librarian.” This is a descriptive difference."
paragraph1
substring"retired librarian"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"her keen green eyes"
locationAccuratefalse
closestExpected
entry"4419"
detail"eyeColor"
summary"Maggie has sharp grey eyes per the codex, but the passage says green eyes."
reason"detail mismatch: got \"description\", expected \"eyeColor\""
60
parsed
entry"4419"
detail"backstory"
explanation"The text states Maggie's late husband was a \"Warden,\" while the codex states he was \"Warden.\" This is redundant."
paragraph1
substring"late husband was a Warden"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"her keen green eyes"
locationAccuratefalse
closestExpected
entry"4419"
detail"eyeColor"
summary"Maggie has sharp grey eyes per the codex, but the passage says green eyes."
reason"detail mismatch: got \"backstory\", expected \"eyeColor\""
61
parsed
entry"4420"
detail"eyeColor"
explanation"The text states Kai’s eye color is “dark brown,” but the codex states it’s “dark brown.” This is redundant."
paragraph1
substring"dark brown"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"detail mismatch: got \"eyeColor\", expected \"hair\""
62
parsed
entry"4420"
detail"hair"
explanation"The text describes Kai’s hair as “dyed electric-blue,” but the codex states it’s “dyed electric-blue in an undercut.” This is a description difference."
paragraph1
substring"dyed electric-blue"
status"true_positive"
matchedExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
63
parsed
entry"4420"
detail"headphones"
explanation"The text mentions Kai wears “noise-cancelling headphones,” but the codex states he wears “noise-cancelling headphones, always worn around his neck.” This is a detail difference."
paragraph1
substring"noise-cancelling headphones"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"detail mismatch: got \"headphones\", expected \"hair\""
64
parsed
entry"4420"
detail"wristTattoo"
explanation"The text states Kai has a “wristTattoo,” but the codex states he has “wristTattoo”. This is redundant."
paragraph1
substring"wristTattoo"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"detail mismatch: got \"wristTattoo\", expected \"hair\""
65
parsed
entry"4420"
detail"build"
explanation"The text describes Kai’s build as “lean,” but the codex states he’s “lean.” This is redundant."
paragraph1
substring"lean"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"detail mismatch: got \"build\", expected \"hair\""
66
parsed
entry"4420"
detail"backstory"
explanation"The text mentions Kai dropped out of “Imperial College London,” but the codex states he dropped out of “Imperial College London.” This is redundant."
paragraph1
substring"Imperial College London"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"detail mismatch: got \"backstory\", expected \"hair\""
67
parsed
entry"4420"
detail"backstory"
explanation"The text states that Kai lives in a “converted shipping container in Hackney Wick,” but the codex states he lives in “a converted shipping container in Hackney Wick.” This is redundant."
paragraph1
substring"converted shipping container"
status"false_positive"
location
extractedText"[not found in paragraph 1]"
inBoundstrue
expectedText"His natural black hair"
locationAccuratefalse
closestExpected
entry"4420"
detail"hair"
summary"Kai has dyed electric-blue hair per the codex, but the passage says natural black hair."
reason"detail mismatch: got \"backstory\", expected \"hair\""
100.00% Structural validity
Parsed: 68, Well-formed: 68/68
parsedCount68
wellFormedScore68
35.7843%