feat: add governed fast work-record sync

Assistant: codex
Assistant-Model: gpt-5.6-sol
Assistant-Session: 01a053ff-1d6f-7fe2-ac1c-a6eb40a42a0c
This commit is contained in:
tegwick 2026-08-30 22:38:54 +02:00
parent 7ea7690dfc
commit 58414404d6
10 changed files with 1280 additions and 32 deletions

View file

@ -120,20 +120,13 @@ curl -s -X PATCH "http://127.0.0.1:8000/tasks/<task_id>" \
3. Log: `POST /progress/` with a summary of what changed (name handoff ids)
4. After workplan file changes, run:
```bash
statehub fix-consistency
rmgr sync --path . --push
```
Coding agents should run this directly; ask the operator only if the CLI or
State Hub API is unavailable. This syncs task status from files into the hub DB.
If C-06/C-11 says this host is not the identifier registrar, do not retry
and do not set `STATEHUB_REGISTRAR` yourself. Use the governed, single-repo
fallback once the branch is clean and synchronized:
```bash
uv run --project ~/repo-manager rmgr registrar-reconcile \
--path . --confirm-primary --push
```
If that command is unavailable, send one registrar request to `repo-manager`
naming the repository and missing canonical ids, then continue file-backed
work without UUIDs.
The command assigns only missing deterministic identifiers, verifies the
pushed Forgejo commit and `primary/railliance01`, then requests one central
forge-derived reconciliation. A queued receipt is pending evidence; rerun
after connectivity returns. Use `statehub fix-consistency` separately for a
deep audit. `registrar-reconcile` is legacy migration/repair only.
---
@ -182,7 +175,7 @@ owner: codex
topic_slug: ...
created: "YYYY-MM-DD"
updated: "YYYY-MM-DD"
state_hub_workstream_id: "<uuid>" # fix-consistency — do not edit (legacy field name; workplan UUID)
state_hub_workstream_id: "<uuid>" # deterministic UUIDv5; managed by Repo Manager
---
```
@ -203,7 +196,7 @@ API/MCP/frontmatter bridges until `STATE-WP-0069` retires them — see
id: RMGR-WP-NNNN-T01
status: wait | todo | progress | done | cancel
priority: high | medium | low
state_hub_task_id: "<uuid>" # written by fix-consistency — do not edit
state_hub_task_id: "<uuid>" # deterministic UUIDv5; managed by Repo Manager
` ` `
Task description text.
@ -218,7 +211,5 @@ not a kind. Fleet list lives on State Hub, not in `SCOPE.md`.
To create a new workplan:
1. Write the file following the format above
2. Run `statehub fix-consistency` locally.
3. On a non-registrar C-06/C-11 skip, invoke `rmgr registrar-reconcile` once as
documented in the session-close protocol. Never set the registrar environment
variable directly and never send repeated requests for the same ids.
2. Run `rmgr sync --path . --push`.
3. Run `statehub fix-consistency` only when a separate deep audit is needed.