A bare unfenced answer with an assert now fails the one-check gate, since only fenced blocks are read; correctness.js falls back to the whole reply because terse models often skip fences. When no fence is present, score the whole reply with comments removed and add a must-pass unfenced case plus a must-fail prose-only case to tests/behavior.test.js.
Fix instructions for your coding agent
evalship's review of pull request #2 found this flaw in our LLM evals: A bare unfenced answer with an assert now fails the one-check gate, since only fenced blocks are read; correctness.js falls back to the whole reply because terse models often skip fences. When no fence is present, score the whole reply with comments removed and add a must-pass unfenced case plus a must-fail prose-only case to tests/behavior.test.js. See benchmarks/behavior.js:54. Read the code it names first. If it's a mistake, fix it on a new branch from main. If the change is deliberate, don't undo it: say what the evals can no longer catch, and suggest a case or check that would.