mirror of
https://github.com/razzant/ouroboros.git
synced 2026-08-25 11:01:43 +00:00
CRITICAL (advisory, v6.81.0). The disclosure field added this release to stop false capability claims was making one. RUNTIME_TRUNCATION_REASON_CODES was hand-copied next to the check and listed four codes the runtime has never emitted (max_rounds_exceeded, task_timeout, context_exhausted, rate_limited) while omitting the two it actually uses for the round cap and the loop-local deadline (round_limit at loop.py:3128 via _handle_round_limit, deadline_local at loop.py:3220). A round-capped or deadline-stopped task therefore published an affirmative `truncated: false` and run_tb.py filed it under genuine_failure_count -- "the agent got a fair shot and got it wrong" about a trial cut off mid-attempt. The comment above the set even named ouroboros.outcomes.BEST_EFFORT_REASON_CODES as the SSOT while contradicting it. Fixed as the CLASS: the set is now DERIVED from BEST_EFFORT_REASON_CODES. All six of its codes are also "an auditor must not read this as a capability result" -- forced finalization means the attempt was cut short by a rail rather than ended by the agent -- so it is taken whole, with no subtraction. One explicit additive delta, llm_api_error (loop_llm_call.py:630): not a best-effort code, but the same class for an auditor as provider_unavailable, and adapters without a separate infra channel would otherwise publish `truncated: false` for a transport death. Every kept code is grepped to an emitting line in ouroboros/; nothing that cannot be located there survives. Three copies of one vocabulary become one derivation plus one pinned mirror: * harbor_installed_agent.py now INTERPOLATES the set into the container runner template (it is generated source, so the literal cannot go stale); * the CL-Bench operator patch genuinely cannot import it -- that module lives in an external clone reached only through a call-time sys.path insert -- so its mirror stays, but a test now parses the vocabulary out of the .patch file and fails on divergence. The patch is regenerated in place with recomputed hunk counts and verified to apply cleanly to a pristine adapter checkout (@549998d). Drift guard (modelled on test_credential_groups_cover_every_routable_provider): every literal reason_code in ouroboros/ must have a recorded decision in _TRUNCATION_DECISIONS, with the emitting line and the reasoning, and the truncating subset must equal the published set. A code added to the runtime tomorrow fails the suite instead of silently defaulting to an affirmative `truncated: false`. Prose the code contradicted, now true and verified: run_tb.py's trial comment and the 'cost_truncated' bucket docstring, the OSWorld METHODOLOGY disclosure paragraph, and this test module's FIX B header. run_tb's _provider_reasons also shed rate_limited and provider_error -- inert, never emitted, same hand-written-vocabulary defect. MAJOR (advisory). continual_learning/METHODOLOGY.md still documented `extra.runtime_attested: false` and attributed the patch probe to the execution clone; |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| launcher_audit.py | ||
| manifests.py | ||
| model_slots.py | ||
| official_commands.py | ||
| result_index.py | ||
| run_roots.py | ||
| secrets.py | ||
| server_runner.py | ||
| subprocesses.py | ||