Skip to content

Document that terminal control omits eval_refs (advisory-eval contract) - #83

Merged
fazpu merged 1 commit into
mainfrom
fix-templates-eval-refs
Jul 20, 2026
Merged

Document that terminal control omits eval_refs (advisory-eval contract)#83
fazpu merged 1 commit into
mainfrom
fix-templates-eval-refs

Conversation

@fazpu

@fazpu fazpu commented Jul 20, 2026

Copy link
Copy Markdown
Member

Summary

When the stock v3 contract retired sealed eval receipts (0.9.0 / #81, check_runner_roles: [outer], advisory eval_results.md), the outer and planner control examples stopped emitting eval_refs — but never told the orchestrator why. Agents kept re-adding the field, citing eval_results.md or a report path, and the engine rejected the whole terminal control:

eval receipt must be a current-session eval_receipts JSON file

because eval_refs only accepts eval_receipts/*.json, which this contract never produces.

Observed live: one rejected terminal-control cycle per program in both the UGM and ultimate-memory-cloud runs — each cost a wasted iteration and an operator nudge before the orchestrator self-repaired.

This adds a note under the control JSON in the outer and planner prompts: omit eval_refs; cite eval verdicts through evidence_refssession:/project_state/eval_results.md.

Companion to the two earlier live-run hardening fixes on the same prompts (the LayerHandoff schema in #82 and the logical-reference grammar).

Test plan

  • test_template_contracts.py + test_cli.py: 30 passed. Full suite unaffected (prompt-text-only change).

🤖 Generated with Claude Code

https://claude.ai/code/session_01EPYwF6cRYs2mfsfHF1hibc

When the stock v3 contract retired sealed eval receipts (0.9.0,
check_runner_roles: [outer], advisory eval_results.md), the outer and
planner control examples stopped emitting eval_refs but never told the
orchestrator why. Agents kept adding it back, citing eval_results.md or
report paths — and the engine rejected the control ("eval receipt must
be a current-session eval_receipts JSON file") because eval_refs only
accepts eval_receipts/*.json, which this contract never produces.
Observed live: one rejected terminal-control cycle per program in both
the UGM and ultimate-memory-cloud runs. The prompts now state the field
is omitted and eval verdicts are cited via evidence_refs ->
eval_results.md.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EPYwF6cRYs2mfsfHF1hibc
@fazpu
fazpu merged commit 664058d into main Jul 20, 2026
2 checks passed
@fazpu
fazpu deleted the fix-templates-eval-refs branch July 20, 2026 06:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant