state-hub/api
tegwick 0b473c1bda
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s
Build and Publish Multi-Context Image / build-and-push (push) Successful in 1m3s
STATE-WP-0101-T02/T03: decision classes, evidence refusals, write-back route
T02: additive migration d5e6f7a8b9c0 (decision_class, memo_id,
approval_id, resolution_source, resolution_evidence, evidence_refs,
CHECKs, partial unique memo_id); typed evidence_refs; 409
evidence_required for text resolve, resolving PATCH fields and resolved
create on C1/C2; raise-only class; C3 refused as reserved.

T03: POST /decisions/{id}/resolve-evidence (link/resolve), projected
token verified by TokenReview with audience
state-hub-decision-writeback and an exact subject allowlist; outcome
record v1 validation, 8 KiB bound, secret scan; idempotent on
(decision_id, memo_id). Off by default (DECISION_WRITEBACK_ENABLED).
Tests use a fake reviewer; full suite 1286 passed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 5502@bnt-lap001
Assistant-Session: 68b3b02f-5d0f-4e71-8421-796f62e50196
2026-11-01 04:01:48 +01:00
..
edge feat(edge): add offline read cache for allowlisted State Hub GET routes 2026-07-09 01:04:15 +02:00
events chore: update standalone state hub wiring 2026-05-17 20:01:21 +02:00
models STATE-WP-0101-T02/T03: decision classes, evidence refusals, write-back route 2026-11-01 04:01:48 +01:00
routers STATE-WP-0101-T02/T03: decision classes, evidence refusals, write-back route 2026-11-01 04:01:48 +01:00
schemas STATE-WP-0101-T02/T03: decision classes, evidence refusals, write-back route 2026-11-01 04:01:48 +01:00
services STATE-WP-0101-T02/T03: decision classes, evidence refusals, write-back route 2026-11-01 04:01:48 +01:00
classification.py fix(classification): allow the allowed-values path to be configured 2026-08-24 23:34:34 +02:00
config.py STATE-WP-0101-T02/T03: decision classes, evidence refusals, write-back route 2026-11-01 04:01:48 +01:00
database.py
doi_engine.py Production todo-md scan: sweep hostname + deploy tag main-d8808bf 2026-07-08 14:38:07 +02:00
flow_defs.py Complete workplan state model cleanup 2026-05-18 01:31:36 +02:00
main.py Inbox change feed v1 (STATE-WP-0098-T05); close out open waits 2026-10-14 02:48:06 +02:00
task_status.py feat(tasks): adopt canonical task statuses 2026-05-26 01:32:50 +02:00
work_record_flavor.py Index workplan flavor and omit residuals from default views. 2026-09-14 15:28:58 +02:00
workplan_status.py feat(classification-spine): implement STATE-WP-0065 repo-anchored model 2026-06-22 13:52:13 +02:00