the-custodian/workplans/CUST-WP-0000b-state-hub-v0.2-decisions-dependencies.md
codex 932a7a6164
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
fix(workplans): terminate frontmatter that ran into the document
A missing newline fused the closing delimiter onto the last frontmatter value
(`- KONT-WP-0016---`), or fused a value onto the following key. Either way the
frontmatter never terminates and the whole body is swallowed.

Because workplan files are selected by `type: workplan`, such a file is not
invalid but invisible: it appears in no projection, raises no error, and is
reported as neither a workplan nor a problem. A forge-derived reset would
therefore read its correct hub record as no longer deriving and propose retiring
live work.

Only the missing newline is inserted; no value is altered.

Refs STATE-WP-0083-T08
2026-08-26 08:28:59 +02:00

42 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