Repository navigation
fix(evals): correct promise grading refusals and oracle results - #289
Merged
Merged
Conversation
mdsmithaustin
force-pushed
the
fix/grader-refusals-oracles
branch
2 times, most recently
from
October 21, 2026 01:10
cc7cb9a to
577211f
Compare
…atch refusals A worktree an agent adds under the run's TMPDIR or the Hermes profile cache is refused as unapproved_worktree. The watch-pr bun install leaves a node_modules/.bin link in the installed skills tree that the grade walk refuses as unsafe_link. A grade-time refusal in one case aborts the rest of the batch. These tests fail on main.
…atches going run_case now creates each harness's scratch roots (TMPDIR, and the Hermes profile cache that HERMES_WRITE_SAFE_ROOT names) before issue. It signs them in as allocations, so a git worktree the agent registers there is graded instead of refused. After the turns it deletes the watch-pr bun node_modules under the installed skills without following links, and a swapped link is refused as unsafe_link. A grade-time refusal prints a refusal record in place of the verdicts and the batch goes on, with exit 2 at the end. boundary_unavailable and unknown_authorization still stop the batch, because they name the grader rather than the run.
…d-only turn unproven
… batches, and Grok compactions
…-grading test classes, fixing Ubuntu CI failures. Verified all 71 test_live tests pass locally and all seven affected tests skip under simulated Linux
mdsmithaustin
force-pushed
the
fix/grader-refusals-oracles
branch
from
October 21, 2026 01:27
577211f to
081421a
Compare
Owner
Author
|
Verdict: PASS+NOTES PR 289 trail review: fix(evals): correct promise grading refusals and oracle resultsScope
Commands run and outcomes
Correctness
Findings (none blocking)
Documentation impact (review mode)
CI and head
Not driven
Ran on: claude-opus-5-5@xhigh |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Live promise evaluations could refuse legitimate scratch worktrees or bootstrap dependencies, while reporting and oracle gaps could distort results. This change fixes those grading paths and preserves uncertainty when traces cannot prove compliance.
What changed
/compact, record history rewrites, and return INCONCLUSIVE for missing reads erased by compaction or independent-review wording that needs a judge.Scope
Covers the promise evaluator, Grok trace parsing, and aggregate reports. Remaining oracle and skill-routing gaps are documented in the rerun report; this change does not establish controller-key secrecy across the full pipeline.
Tradeoffs
Compaction-erased reads and unparsed independent-review wording remain INCONCLUSIVE rather than receiving an automatic PASS. Observed edits or commits still fail the read-only promise.
Blast Radius
Touches live evaluation batches and reported promise results across harnesses. Scratch-worktree admission and bootstrap cleanup affect grading inputs; controller-level refusals still stop the batch.
Verification
The committed rerun report records that all seven previously refused cases graded without a refusal. It also records mixed Claude Code results and unresolved oracle gaps. Regression tests were added for scratch worktrees, safe cleanup, refusal handling, compaction, oracle uncertainty, and report deduplication. No tests or live evaluations were run during this PR-drafting phase.
✅ Low: Each fix (A–E) is narrowly scoped to eval grading tooling, matches the stated intent and recorded decisions, and has a red-first behavioral test; traced paths (scratch allocations, link-safe node_modules removal, refusal batching/exit codes, pair de-duplication via original_root, Grok compaction/turn numbering, judge referral) produced no wrong-result case.
Updates from git push no-mistakes