the-custodian/workplans/CUST-WP-0000b-state-hub-v0.2-decisions-dependencies.md
codex 2e0deee2ef
All checks were successful
CI Smoke / host-smoke (push) Successful in 1s
CI Smoke / container-smoke (push) Successful in 6s
feat(terminology): prose sweep tool and custodian workplan cleanup (CUST-WP-0055 T04)
Add sweep_workstream_prose.py for agent-guidance files, sweep active workplan
prose in-repo, tighten scan allowlist exclusions, and update ADR-001 closure
protocol to workplan-first terminology.
2026-07-08 16:35:37 +02:00

41 lines
1.5 KiB
Markdown

---
id: CUST-WP-0000b
type: workplan
title: "State Hub v0.2 — Decisions, Suggestions & Dependencies"
domain: infotech
repo: the-custodian
status: completed
owner: custodian
topic_slug: custodian
created: "2026-02-25"
updated: "2026-02-25"
completed: "2026-02-25"
state_hub_workstream_id: "6585ee66-aa4e-436e-bbec-d83293c33e8f"
note: >
Pre-ADR-001 record. This workplan was created DB-first before the
workplan-as-repository-artefact convention was established. Retroactive
file written on 2026-03-11 to satisfy the ADR-001 consistency checker (C-08).---
# State Hub v0.2 — Decisions, Suggestions & Dependencies
## What was built
Delivered 2026-02-25, evolving the hub from a state tracker to an active
coordination layer:
- `WorkstreamDependency` model + migration `0b547c153153` — directed
dependency graph between workplans
- API: `POST/GET /workstreams/{id}/dependencies/`,
`DELETE /workstreams/{id}/dependencies/{dep_id}`
- API: `GET /state/next_steps` — derived next-action suggestions (never persisted)
- `StateSummary` extended with `next_steps` and `depends_on`/`blocks` on workplans
- Design boundary formalised: hub is a read model with exactly two write use
cases — resolving decisions and suggesting next steps
- MCP: `get_next_steps()` tool added
- `scripts/script.py.mako` added (required for Alembic autogenerate)
## References
- Alembic migration: `0b547c153153`
- Design boundary document: `canon/architecture/` (hub as read model)
- CLAUDE.md global + railiance updated with `get_next_steps()` in session start