state-hub/workplans/STATE-WP-0076-definition-of-ready-and-comprehension.md
codex 3cb256ef5c
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
fix(workplans): adopt ADR-007 derived identifiers for unregistered records
These workplans exist only in the retired local hub. Their random pre-ADR-007
identifiers are refused by C-06 as stale references, so they cannot be
registered. Deriving from the canonical record id takes no identity from
anything: central does not hold them and the old ids die with the cache.

Records central already holds were deliberately left untouched.

Refs CUST-WP-0068-T06

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 2583210@bnt-lap001
Assistant-Session: f2bff2d5-e9b2-4338-92ca-10282a927006
2026-08-25 20:22:27 +02:00

5.5 KiB

id type title domain repo status owner topic_slug created updated reviewed_at reviewed_by reviewed_against_commit context_paths state_hub_workstream_id
STATE-WP-0076 workplan Definition of Ready (DoR) and Definition of Comprehension (DoC) quality gates infotech state-hub finished grok infotech 2026-07-22 2026-07-22 2026-07-22 grok d8a2bb5c6b
policies/
dashboard/src/docs/work-records.md
dashboard/src/docs/intakes.md
dashboard/src/docs/workstream-lifecycle.md
dashboard/src/policy/
docs/work-record-quality-gates.md
workplans/STATE-WP-0076-definition-of-ready-and-comprehension.md
e5d06c02-6431-5bef-a83d-fbd70d40cc3a

STATE-WP-0076 — DoR and DoC quality gates

Goal

Ship the next slice of the work-record quality model that pays off soon:

  1. Policies in the existing DoI / DoM / DoD family: DoC (intake) and DoR (task + workplan sections).
  2. Dashboard edit/view surfaces like the other policies.
  3. Docs that fix terminology: work-record as generic coordination artefact (units and structure), lifecycle definition assessment, badge spelling DoX-Ok / DoX-Failed / unassessed.

No badge engine, no hard API blocks, no new kinds, no value-chain typing.

Delivered (2026-07-22)

Deliverable Path
Quality model note docs/work-record-quality-gates.md
DoC policy policies/intake-doc.mdGET /policy/intake-doc
DoR policy policies/work-item-dor.mdGET /policy/work-item-dor
Dashboard pages dashboard/src/policy/intake-doc.md, work-item-dor.md
Nav Policies: Intake DoC, Work-item DoR
Reference links work-records, intakes, workplan lifecycle, tasks

Design constraints (shipped)

  1. Lifecycle state ≠ definition badge (DoX-Ok / DoX-Failed / unassessed).
  2. Badge family closed and named after policies.
  3. Policies declare applies_to; DoR has task and workplan sections.
  4. DoC = intake only; DoR = task + workplan.
  5. Outside-originated = policy sections, not a new kind.
  6. Enforcement = convention + docs only.

Task: Quality model + work-record roles in docs

id: STATE-WP-0076-T01
status: done
priority: high
state_hub_task_id: "f62c4ade-8258-5626-a735-a64b49bcbbb0"

Short design/reference write-up only (no product build):

  • Update dashboard/src/docs/work-records.md: work-record as generic mode for units and structure (plans/collections); unit vs structure table; quality badges vs lifecycle; link to policies when they exist.
  • Add docs/work-record-quality-gates.md: Definition family (DoI/DoM/DoC/DoR/DoD), badge spelling, applies_to matrix, outside profile pointer, explicit non-goals.
  • One cross-link from intakes + workplan lifecycle docs.

Done when: an agent can explain unit vs structure and DoR-Ok vs status=ready from the docs alone.


Task: Author DoC policy

id: STATE-WP-0076-T02
status: done
priority: high
state_hub_task_id: "c09bf944-fd02-51b6-9862-e0ddff04ee51"

Create policies/intake-doc.md (Definition of Comprehension).

  • applies_to: intake
  • Core checklist (signal, why it matters, unknowns, provisional ownership or “unknown”, next action)
  • Outside-originated section
  • Explicit: DoC ≠ DoR; assessment outcomes DoC-Ok / DoC-Failed / unassessed
  • Loadable as GET /policy/intake-doc

Done when: policy file exists and is readable via the policy API.


Task: Author DoR policy

id: STATE-WP-0076-T03
status: done
priority: high
state_hub_task_id: "f2f44ee7-f3ac-5750-8fce-0a8a8bca18d1"

Create policies/work-item-dor.md (Definition of Ready) — filename keeps “work-item” as the delivery-side gate name; body uses task and workplan sections (not “workplan is a work-item”).

  • Per-kind sections: task, workplan
  • Outside-originated section
  • Link to workstream-dod.md as exit companion (DoD-Ok separate from finished)
  • Assessment outcomes DoR-Ok / DoR-Failed / unassessed
  • Loadable as GET /policy/work-item-dor

Done when: policy file exists and is readable via the policy API.


Task: Dashboard policy pages + nav

id: STATE-WP-0076-T04
status: done
priority: high
state_hub_task_id: "7ffaece5-e7ea-5821-a3a1-3741d13c282c"

Mirror DoI/DoM/DoD:

  • dashboard/src/policy/intake-doc.md, dashboard/src/policy/work-item-dor.md
  • Policies entries in observablehq.config.js
  • Links from work-records reference (+ quality-gates doc)

Done when: Policies menu shows DoC and DoR; edit/view works against the API.


Cancelled / deferred tasks

id: STATE-WP-0076-T05
status: cancel
priority: medium
state_hub_task_id: "48ed892b-b8c9-5754-8a15-fc4fc85d583d"

Soft enforcement hooks — deferred until DoC/DoR text is in use.

id: STATE-WP-0076-T06
status: cancel
priority: low
state_hub_task_id: "f5f81b8e-11ce-5908-bc7c-a0e291d8d73d"

Standalone DoD naming / family index task — folded into T01 quality-gates doc.

Acceptance criteria

  • Docs: generic work-record (unit + structure), lifecycle ≠ DoX badge
  • policies/intake-doc.md and policies/work-item-dor.md live and API-served
  • Outside-originated sections present in both
  • Dashboard Policies nav includes both
  • No new kinds, no badge engine, no hard enforcement

References

  • the-custodian/canon/standards/work-record-types_v0.1.md
  • policies/repo-doi.md, policies/service-dom.md, policies/workstream-dod.md
  • dashboard/src/docs/work-records.md, intakes.md, workstream-lifecycle.md
  • api/routers/policy.py