Implement lifecycle workspace publication and audit delivery

Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a10780-6d41-7952-9718-dfbc1f41236f
This commit is contained in:
tegwick 2026-10-04 20:17:24 +02:00
parent ee472acc87
commit 5fec7de4cb
21 changed files with 1022 additions and 78 deletions

View file

@ -22,8 +22,8 @@ state_hub_workstream_id: "2b3e04ed-2137-584f-a6c2-f1abb29636fa"
Contract: `docs/specs/DecisionLifecycleService.md`. This extends the existing
memo and intake implementation. `INFD-WP-0005` continues to own intake runtime,
attribute admission, forwarding and live acceptance. Implementation started on
2026-10-04 at the founder's request. API/identity/publication contracts remain
open; the first persistence slice is local and not exposed by a service route.
2026-10-04 at the founder's request. Production identity/policy admission and the human binding handoff remain
open. The shared service now has a bearer API adapter and optional browser workspace.
## Record product direction and architecture
@ -90,7 +90,7 @@ uncertain external outcomes. The complete agent scenario must run without a UI.
```task
id: INFD-WP-0007-T05
status: todo
status: progress
priority: high
depends_on: [INFD-WP-0007-T04]
state_hub_task_id: "a6a7c9a8-760e-52dd-80d3-d36f43f0a86a"
@ -105,7 +105,7 @@ step-up understandable. Verify existing URLs and old records remain usable.
```task
id: INFD-WP-0007-T06
status: todo
status: progress
priority: high
depends_on: [INFD-WP-0007-T04, INFD-WP-0007-T05]
state_hub_task_id: "aa839bea-cc4c-5ee0-85e7-87c881e8e578"
@ -204,3 +204,25 @@ The adapter remains unmounted; T02/T03/T04 remain in progress.
Validation: cross-repository suite 598 passed, 5 skipped; subsequent HTTP tests
include shared L0/L3 decoding and preservation of requires_new_bind.
`git diff --check` passed. No live deployment or authentication admission.
## Workspace, publication and independent evidence — 2026-10-04
Continued T02–T06 with revision-specific explicit publication audiences, policy
record facts and race guards, bounded authorized search with opaque scoped cursors,
and packet retrieval. Added a human workspace through the same service: create,
research/evaluate, comment, publish, compare and refine. API receipts include
workspace links. Existing session, CSRF and origin protections are reused.
Runtime optionally composes a separately pinned lifecycle policy; the deployment
renderer produces corresponding exact network proposals. Opt-in lifecycle audit
commitments use the existing outbox, real receiver receipts, retries, heartbeats
and reconciliation. Tests cover lost replies, restart, audience races, denial,
HTML escaping, form replay and unchanged configuration across two new decisions
and a revision. The full cross-repository suite passes: 623 passed, 5 skipped.
T05/T06 are in progress, not complete. Live tasks retain: admitted lifecycle PDP
policy and workload identity/listener (T02/T04), human review/binding handoff and
broader authoring UI (T03/T05), full acceptance scenarios, immutable release and
rollback packet (T06), separately approved live rollout (T07). Source metadata
entry is implemented; automated fetching/retention is not. No deployment occurred.
Delivery and activation contract: `docs/specs/LifecycleWorkspaceDelivery.md`.