fix(completion): give the validator task-bound worker outcomes and persisted messages within budget #252

Merged
severus-snape merged 2 commits from fix/validation-precedence-context into main 2026-11-04 15:12:33 +00:00
Collaborator

Validator precedence with task-bound context.

  • context.retained now carries host-collected recentMessages (persisted, survive reload) and workers: execution-store outcomes bound by dependency.taskId only (IDs, status, restarts, diagnostic, bounded result as untrusted claim). Unrelated executions are only counted.
  • Budget fallback keeps these sections with fixed per-entry caps and explicit truncated metadata.
  • Causal tests (real prompt + host decision path): model completed/blocked overridden by validator continue (exactly one follow-up), operator stop beats validator continue, validator blocked/waiting override model completed, technical failure is no verdict, expired deadline denies continue, no cross-mandate leak across reload.

Evidence: exact integrated diff vs 5e80963 reviewed (fingerprint af65124d…, passed, 0 findings); full serial 1430/1430, typecheck, build green.

Validator precedence with task-bound context. - `context.retained` now carries host-collected `recentMessages` (persisted, survive reload) and `workers`: execution-store outcomes bound by `dependency.taskId` only (IDs, status, restarts, diagnostic, bounded result as untrusted claim). Unrelated executions are only counted. - Budget fallback keeps these sections with fixed per-entry caps and explicit `truncated` metadata. - Causal tests (real prompt + host decision path): model completed/blocked overridden by validator continue (exactly one follow-up), operator stop beats validator continue, validator blocked/waiting override model completed, technical failure is no verdict, expired deadline denies continue, no cross-mandate leak across reload. Evidence: exact integrated diff vs 5e80963 reviewed (fingerprint af65124d…, passed, 0 findings); full serial 1430/1430, typecheck, build green.
Precedence (model self-report vs independent verdict vs host fences) already
holds and is now pinned by causal tests through the real prompt plugin.
The gap was context: worker outcomes reached the assessor only for
independent recovery admissions, and the budget fallback dropped the
retained task state entirely. Retained context now carries persisted
recent messages and execution-store outcomes bound by dependency.taskId;
the fallback keeps original/next/workers/messages with explicit truncation
metadata.
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
harness/core!252
No description provided.