glas-harness/workplans/GLAS-WP-0013-execution-outcome-evidence.md
tegwick 356e34992a
Some checks failed
ci / validate (push) Has been cancelled
feat: expose cleanup and reporting outcomes for gateway runs
Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0726e-5232-73f2-aaca-2c05ceb62efb
2026-09-06 11:12:30 +02:00

75 lines
3.1 KiB
Markdown

---
id: GLAS-WP-0013
type: workplan
title: "Expose cleanup and reporting outcomes to execution consumers"
domain: infotech
repo: glas-harness
status: finished
owner: codex
topic_slug: execution-outcome-evidence
created: "2026-09-06"
updated: "2026-09-06"
state_hub_workstream_id: "f51ac50d-e8c1-5cd9-b7f8-b2de42a57076"
---
# Execution outcome evidence
## Priority and boundary
The first real local profile remains the highest priority in GLAS-WP-0012,
with owner activation/runtime work already registered. This plan closes the
independent observability gaps identified in the September scope assessment.
A failed execution can currently mask cleanup/destruction failures, while the
caller cannot distinguish accepted, failed or disabled Hub reporting.
Use additive, defaulted outcome fields on existing result models. Preserve the
original execution failure and report secondary teardown outcomes separately.
Expose reporting acceptance to the direct caller without recursive reporting,
raw exception disclosure to Hub, automatic execution retries or a durable queue.
Memory, channels, subagents and aggregate budget enforcement remain design gaps,
not work authorized by this bounded plan. No profile readiness changes.
## Record cleanup and destruction independently
```task
id: GLAS-WP-0013-T01
status: done
priority: high
state_hub_task_id: "c4cc126f-4ea6-54f7-b4e2-dc2772da57b9"
```
Evidence reports cleanup and sandbox destruction as not attempted, succeeded
or failed. Preserve the original failure stage if execution already failed,
but always expose secondary failure outcomes. Destroy is attempted even if
cleanup raises. Successful execution becomes failed when teardown fails.
Test normal, pre-creation refusal, startup failure and combined failure paths.
## Return State Hub reporting outcome
```task
id: GLAS-WP-0013-T02
status: done
priority: high
state_hub_task_id: "d7456f89-adf1-5b55-b84e-5b0f07c9ace7"
```
GatewayResult reports not requested, accepted or failed. Reporting is attempted
once after evidence is final; no-Hub makes no request. Hub failure must not
rerun the task or change its execution outcome. Test successful reporting,
HTTP refusal/unavailability, disabled reporting and failure evidence redaction.
Document that acceptance is an HTTP result, not durable audit delivery or an
exactly-once guarantee. Run full tests and catalog validation; update SCOPE.
## Completion evidence
Completed 2026-09-06. Added independent cleanup/destruction outcomes and direct
caller Hub acknowledgement status. Old result records default to unknown.
Regression coverage includes combined execution/cleanup/destroy failures,
startup/refusal paths, successful runs with teardown failures, HTTP timeout and
503 responses, disabled reporting and old-record decoding. Full suite: 121
passed; catalog validation and diff checks passed. No model or credential call.
No residual implementation work from this bounded plan. First real-profile
acceptance remains live in GLAS-WP-0012/GLAS-IN-0002. Durable audit delivery,
aggregate budgets and broader session features remain assessment gaps outside
this plan; no capability or approved backlog is implied.