docs(RMGR-WP-0005): railiance01 forgejo transition complete

Audit found zero gitea-only commits across all 70 repos -- railiance01 was a
stale reader, not a divergent writer. Two repos that looked gitea-only were
renames Forgejo answers over HTTP but not SSH: inter-hub to inter-hub-haskell
and markitect_project to markitect-main.

Transition executed: 77 repos now in sync with forgejo, 0 ahead, 0 behind,
none left on gitea-remote, with gitea kept as rollback mirror.

Recovered freedom-intelligence's 6 unpushed research briefs, which the first
audit missed because it skipped repos with no configured upstream. Stashed 5
working trees and preserved 10 stale sync commits on branches before drop.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
tegwick 2026-08-21 15:37:07 +02:00
parent d98b826330
commit 5502afc1fd

View file

@ -138,9 +138,40 @@ Required order:
Reversing the order mints into the wrong lineage at fleet scale.
**Open question worth answering first:** the sweep pod is running now against
those 70 stale checkouts. Establish what it has been pushing to `gitea-remote`
before changing anything.
**Answered, then executed (2026-08-21).** The pod had pushed nothing: a
commit-level audit of all 70 repos found **zero gitea-only commits**. Forgejo was
strictly ahead everywhere (by 4165 commits). `railiance01` was a stale *reader*,
not a divergent writer — which is why its `evidence-binder` sat at a July commit
and could not see `EBIND-WP-0002`.
Two repos looked gitea-only under SSH `ls-remote` but were not: `inter-hub` had
been renamed to `inter-hub-haskell` (Forgejo answers the rename over HTTP with a
307, which SSH does not follow) and `markitect_project` to `markitect-main`.
**Transition completed.** Sweep pod scaled to zero, then per repo: `origin`
re-pointed to `forgejo-remote`, `gitea` retained as the rollback mirror the
playbook specifies, root-owned files chowned back, and the checkout brought onto
the forgejo lineage. Final state — **77 repos in sync, 0 ahead, 0 behind, 0 still
on `gitea-remote`.**
Recovered rather than discarded:
- `freedom-intelligence` held **6 unpushed commits** — daily research briefs from
714 August by `rein-aharness`, present on no server. Rebased and pushed
(`846cccd..8832652`). The first audit missed them because it measured against
`@{u}` and silently skipped repos with no upstream configured; they surfaced
only when the comparison was redone against the forgejo ref.
- 5 working trees stashed as `pre-forgejo-transition-20260821`.
- 10 stale `custodian-sync` status commits preserved on `stale-sync-20260821`
branches before being dropped.
Remaining for the registrar: set `STATEHUB_REGISTRAR=1` on the deployment and
scale back up. Note the pod runs as root and will re-create root-owned files
under `/home/tegwick`, undoing today's ownership fix — it needs a non-root
`runAsUser` or its own service account.
`gitea` cannot be decommissioned yet: the rollback remotes still point at it by
design. Drop them once a sweep or two confirms forgejo is healthy.
## Contain the stale-lineage production sweep