docs: complete repository rename operator handoff
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s

Assistant: codex
Assistant-Model: gpt-5.6-sol
Assistant-Session: 01a049a4-ee9f-78e1-9d66-2cb0f9bea3e3
This commit is contained in:
tegwick 2026-08-29 15:46:43 +02:00
parent 0ec5b9a98d
commit f7402bd711
11 changed files with 735 additions and 10 deletions

View file

@ -525,8 +525,13 @@ Owner: `{old_slug}` for inventory and handoff creation only.
docs, badges, webhooks, mirrors, caches, dashboards, alerts, and local clones.
- For each external effect, replace `<owning-repository>` in the ledger with the
exact repository slug and create a live residual/intake/workplan there.
- Record each external work-record ID here. Do not mark that external work done
from this repository; completion evidence must come from its owner.
- Record each external work-record ID here and attach a
`state-hub.repository-rename-handoff.v1` payload following
`state-hub/docs/schemas/repository-rename-handoff-v1.schema.json`. It names
the source repository, old/new slug, affected paths or graph IDs, required
re-ingest and verification, owning workplan/task, and non-secret evidence.
- Do not mark that external work done from this repository; completion evidence
must come from its owner.
- Include every row in the preflight risk register, even when it is only a
warning or currently zero-count projection.
@ -602,8 +607,10 @@ Owner: `{new_slug}` after rebind.
- Register the fresh path against the existing State Hub UUID, update canonical
source metadata/frontmatter, commit the source-synchronization revision, and
run `statehub fix-consistency` from the new clone.
- Apply `source-synced` with mode-0600 evidence naming clone path, remote, head,
registration result, and consistency result.
- Apply `source-synced` with mode-0600 evidence containing
`fresh_clone: true`, Forge numeric `forge_repository_id`, exact `head_commit`,
clone path, registration result, and consistency result. Remote coordinates
contain no embedded credential.
Gate: no duplicate repository registration exists and the journal is
`source-synced`.
@ -634,8 +641,8 @@ statehub repo rename apply <operation-id> --phase completed \\
--confirm '{confirmation}' --json
```
Gate: every required local check passes and every external handoff has evidence
from its owning repository before completion.
Gate: every required local check passes and every external handoff is `verified`
with evidence from its owning repository before completion.
'''
output += _task(snapshot, 10, "Exercise rollback decision points", "wait")
@ -666,7 +673,8 @@ Owner: `{new_slug}`; destructive cleanup requires separate human approval.
- Define and observe a soak window covering deployments, policy decisions,
alerts, telemetry, packages, automation, and old-slug compatibility reads.
- Convert every unresolved item into a live residual (`origin: residual`,
`origin_ref: {snapshot.workplan_id}`) in its owning repository before finishing.
`origin_ref: {snapshot.workplan_id}`) in its owning repository before finishing;
retain its repository-rename handoff payload and owner work-record ID.
- Retain the protected `{old_slug}` alias. Alias retirement is out of scope.
- Only after terminal verification, soak, residual handoff, and explicit cleanup
approval may the old local checkout be removed. Record what was removed and