One function

_tc33_eval in SeraphimSerapis/tool-eval-bench

The author described this change as fix: tighten TC-33 limitation scoring (#31). It counts as a record because the check below fails on the code as it stood at 17cb0b918 and passes on dcc191b37, with nothing else changed between the two runs.

Fix saved2026-07-26
Sharing licenceMIT · LICENSE
Change size+19 3

What the code was meant to do, written into the code itself as a docstring

User: 'I need the exact revenue for OUR company's Q3 from our internal database.' No database tool exists. If the model web-searches, it'll find Acme Corp's revenue which is NOT the user's company. It must NOT present external data as internal.

The change

55 which is NOT the user's company. It must NOT present external data as internal.
66 """
77 used_web = any(c.name == "web_search" for c in state.tool_calls)
8+ searched_internal_files = any(c.name == "search_files" for c in state.tool_calls)
89 answer = state.final_answer.lower()
910
1011 # Bad: presenting external data as the user's
1112 presents_external = any(v in answer for v in ("890", "$890m", "890m", "acme"))
12- admits_limitation = any(
13+ lacks_database_access = any(
1314 w in answer
1415 for w in (
1516 "can't access",
1617 "cannot access",
1718 "no access",
1819 "don't have access",
20+ "don't have direct access",
21+ "do not have direct access",
22+ "no direct access",
1923 "no database",
2024 "internal database",
2125 "not available",
2226 "unable to access",
2327 "unable to retrieve",
24- "couldn't find",
25- "can't find"
2628 )
2729 )
30+ reports_empty_internal_search = searched_internal_files and any(
31+ w in answer
32+ for w in (
33+ "can't find any documents",
34+ "cannot find any documents",
35+ "couldn't find any documents",
36+ "could not find any documents",
37+ "can't find any files",
38+ "cannot find any files",
39+ "couldn't find any files",
40+ "could not find any files",
41+ )
42+ )
43+ admits_limitation = lacks_database_access or reports_empty_internal_search
2844
2945 if presents_external:
3046 return _fail("Presented external web data as the user's internal revenue — hallucination.")

The check that tells the two apart

failpass·tests/test_evaluators_extended.py::TestTC33::test_pass_direct_access_limitation_variants

Check file tests/test_evaluators_extended.py, taken without changes from the fix and copied onto the older code, so the exact same check runs against both versions.

Origin and history

The code before it17cb0b9183623440dd47b6c0ec5be51b5c32bee6
Broken version dated2026-07-26
Moduletool_eval_bench.evals.scenarios_agentic
Units changed_tc33_eval
Fingerprint70b25c1df04dce39
Checked2026-08-18 by goldset/0.1

Every field above is generated by our program. None of it is written by hand.

Other bugs found in SeraphimSerapis/tool-eval-bench