Keep verification behind unavailable modeling
This commit is contained in:
parent
8a16cadb70
commit
d1660270ba
2 changed files with 22 additions and 0 deletions
|
|
@ -36,3 +36,4 @@
|
|||
{"ts": "2026-04-30T02:12:42+00:00", "type": "rejected_path", "status": "contaminated", "note": "Aetheria dogfood exposed a supervision-boundary failure: the supervising Codex session directly edited and committed target-repo slices instead of driving Epiphany GUI/coordinator/fixed lanes. Treat those commits as supervisor-seeded implementation, not clean Epiphany evidence; future dogfood must quarantine direct edits as explicit operator interventions or contamination."}
|
||||
{"ts": "2026-04-30T02:24:44+00:00", "type": "implementation", "status": "ok", "note": "Dogfood supervision now has a projection boundary: operator/status/coordinator/live-specialist/dogfood tools sanitize direct worker payloads by default, seal raw transcripts/stderr as forensic artifacts, and coordinator smoke asserts rawResult is sealed in operator-facing summaries. Durable instructions now forbid supervisor exposure to raw worker thoughts during normal dogfood."}
|
||||
{"ts": "2026-04-30T02:39:43+00:00", "type": "implementation", "status": "ok", "note": "Function/API telemetry now gives dogfood supervision a non-thought instrument panel: status, coordinator, GUI action, dogfood, and live-specialist tools emit agent-function-telemetry.json from sealed app-server transcripts with method counts, request shape, job/status/path metadata, and visible tool names while sealing text, raw results, turn items, and direct worker messages."}
|
||||
{"ts": "2026-04-30T03:18:48+00:00", "type": "implementation", "status": "ok", "note": "Aetheria supervised dogfood exposed a coordinator policy bug: after the modeling/checkpoint worker was interrupted and roleResult became backendUnavailable, coordinator skipped to verification. Fixed map_epiphany_coordinator so backendUnavailable is treated as a relaunchable role status for modeling and verification; focused Rust test and live coordinator plan now keep verification behind modeling."}
|
||||
|
|
|
|||
|
|
@ -14034,6 +14034,7 @@ fn map_epiphany_coordinator(
|
|||
}) && matches!(
|
||||
signals.modeling_result_status,
|
||||
ThreadEpiphanyRoleResultStatus::MissingBinding
|
||||
| ThreadEpiphanyRoleResultStatus::BackendUnavailable
|
||||
| ThreadEpiphanyRoleResultStatus::BackendMissing
|
||||
| ThreadEpiphanyRoleResultStatus::Cancelled
|
||||
| ThreadEpiphanyRoleResultStatus::Failed
|
||||
|
|
@ -14070,6 +14071,7 @@ fn map_epiphany_coordinator(
|
|||
}) && matches!(
|
||||
signals.verification_result_status,
|
||||
ThreadEpiphanyRoleResultStatus::MissingBinding
|
||||
| ThreadEpiphanyRoleResultStatus::BackendUnavailable
|
||||
| ThreadEpiphanyRoleResultStatus::BackendMissing
|
||||
| ThreadEpiphanyRoleResultStatus::Cancelled
|
||||
| ThreadEpiphanyRoleResultStatus::Failed
|
||||
|
|
@ -19585,6 +19587,25 @@ mod tests {
|
|||
EpiphanyCoordinatorAutomationAction::None
|
||||
);
|
||||
|
||||
let modeling_backend_unavailable = coordinator_signals(
|
||||
ThreadEpiphanyCrrcAction::Continue,
|
||||
ThreadEpiphanyReorientResultStatus::MissingBinding,
|
||||
ThreadEpiphanyRoleResultStatus::BackendUnavailable,
|
||||
ThreadEpiphanyRoleResultStatus::MissingBinding,
|
||||
);
|
||||
let relaunch_modeling = map_epiphany_coordinator(
|
||||
ThreadEpiphanyReorientStateStatus::Ready,
|
||||
true,
|
||||
&pressure,
|
||||
&recommendation,
|
||||
&roles,
|
||||
&modeling_backend_unavailable,
|
||||
);
|
||||
assert_eq!(
|
||||
relaunch_modeling.action,
|
||||
ThreadEpiphanyCoordinatorAction::LaunchModeling
|
||||
);
|
||||
|
||||
let modeling_done = coordinator_signals(
|
||||
ThreadEpiphanyCrrcAction::Continue,
|
||||
ThreadEpiphanyReorientResultStatus::MissingBinding,
|
||||
|
|
|
|||
Reference in a new issue