Update RAIL-HO-WP-0005 with Forgejo cutover progress and mark T08 done
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s

Sync the workplan file with State Hub (fix-consistency backing link), record
2026-07-06 state-hub tier-3 cutover evidence, refresh the Forgejo org
inventory snapshot, and close T08 now that Actions criteria are met.
This commit is contained in:
tegwick 2026-07-07 01:50:57 +02:00
parent 5fbf583843
commit 48610117c7
2 changed files with 73 additions and 28 deletions

View file

@ -205,6 +205,35 @@ This first pass satisfies the public and infrastructure metadata part of T01.
T01 should remain open until the authenticated admin inventory and missing repo
classification are complete.
## Addendum (2026-07-07) — Forgejo org snapshot
Public API `GET /api/v1/orgs/coulomb/repos` on `forgejo.coulomb.social` reports
**13 repositories** (up from 8 on 2026-07-04):
| Repo | Tier | Notes |
| --- | ---: | --- |
| `forgejo-actions-probe` | 0 | Disposable runner/OCI probe |
| `glas-harness` | 1 | Git+SSH+CI pilot |
| `key-cape` | 2 | Image CI + `crictl pull` on railiance01 |
| `railiance-enablement` | 2.5 | S4 workflow templates |
| `railiance-infra` | 2.5 | Stack promotion |
| `railiance-apps` | 2.5 | Stack promotion |
| `railiance-platform` | 2.5 | Stack promotion |
| `railiance-cluster` | 2.5 | Stack promotion |
| `state-hub` | 3 | Primary hub cutover 2026-07-06 (`CUST-WP-0054-T05`) |
| `issue-core` | 3 | Production service repo on Forgejo |
| `activity-core` | 3 | Production coordination repo on Forgejo |
| `hub-core` | 3 | On Forgejo; hub `remote_url` may still reference Gitea |
| `core-hub` | 3 | On Forgejo; hub `remote_url` may still reference Gitea |
State Hub remote_url cross-check (2026-07-07): 5 repos registered with Forgejo
remotes, 57 with Gitea remotes, 10 without remote URL. Sweep host_paths on
railiance01 cover 74 clone paths after phase 4 migration.
Remaining T01 gaps: authenticated Gitea admin inventory (users, teams, deploy
keys, tokens, webhooks, LFS, attachments) and classification of the ~36 Gitea
repos not yet mirrored to Forgejo.
## Addendum (2026-07-04) — migration ladder and new repos
`RAIL-HO-WP-0005` now uses a **staged per-repo ladder** instead of an isolated

View file

@ -8,7 +8,7 @@ status: active
owner: railiance
topic_slug: railiance
created: "2026-05-03"
updated: "2026-07-04"
updated: "2026-07-07"
state_hub_workstream_id: "84e17675-0d15-4268-a8bd-540124d37018"
---
@ -24,12 +24,14 @@ Forgejo will become the heart of Railiance infrastructure. The work must be
fully automated, backup-backed, recovery-drilled, and suitable for long-lived
operation on railiance01 before any production cutover happens.
**Sequencing update (2026-07-04):** Production Forgejo is live on railiance01
with Gitea still canonical per the safety contract. Repo cutover proceeds
**staged per-repo** using a migration ladder (disposable probes → non-production
pilots → image-capable pilots → production repos). `state-hub` is last. See
`CUST-WP-0054-T04` and
`the-custodian/docs/forgejo-repo-migration-pilot-glas-harness.md`.
**Sequencing update (2026-07-07):** Production Forgejo is live on railiance01.
Repo cutover proceeds **staged per-repo** using a migration ladder (disposable
probes → non-production pilots → image-capable pilots → production repos).
`state-hub` tier-3 cutover to railiance01 **completed 2026-07-06** under
`CUST-WP-0054-T05` (phases 15 in progress; stabilization window through
2026-07-09). Gitea remains read-only fallback for unmigrated repos. See
`CUST-WP-0054-T04`, `the-custodian/docs/forgejo-repo-migration-pilot-glas-harness.md`,
and `the-custodian/docs/state-hub-railiance01-cutover-plan.md`.
## Placement in the Railiance Tooling Set
@ -102,7 +104,7 @@ Integration evidence now comes from **in-production probes and repo pilots**:
| 1 | `coulomb/glas-harness` | Non-production git+SSH+CI routing drill | **done** |
| 2 | `coulomb/key-cape` | Image-build workflow + registry pull on railiance01 | **done** |
| 2.5 | `railiance-enablement`, `railiance-infra`, `railiance-apps`, `railiance-platform`, `railiance-cluster` | Stack repos on Forgejo + S4 templates | **done** |
| 3 | Production set (`state-hub`, `issue-core`, …) | Canonical remotes, sweep paths, deploy loops | **gated** |
| 3 | Production set (`state-hub`, `issue-core`, …) | Canonical remotes, sweep paths, deploy loops | **in progress** (`state-hub` cutover 2026-07-06) |
Each tier must pass before the next. T03 (isolated probe namespace) is cancelled;
acceptance criteria below are tracked across T05, T07, T08, and T10 instead.
@ -158,9 +160,10 @@ Minimum inventory:
Forgejo before cutover and classifies each migration item as automatic,
manual, unsupported, or explicitly out of scope.
**Gap (2026-07-04):** first-pass inventory predates repos created after
2026-06-04 (e.g. `glas-harness`, `forgejo-actions-probe`). Refresh org repo
list and add a **migration tier** column (03) per repo before T11.
**Gap (2026-07-07):** Forgejo org snapshot and tier column added in inventory
addendum (13 repos on Forgejo; 49 on Gitea per 2026-06 pass). Authenticated
Gitea admin inventory (users, teams, deploy keys, tokens, webhooks, LFS) still
pending before T11 wave for remaining production repos.
---
@ -327,14 +330,16 @@ Acceptance:
- Retention and cleanup expectations are documented.
- Package data is included in backup and restore drills.
**Partial (2026-07-04):** OCI registry live (`/v2/` auth challenge). Tier-0/2
**Partial (2026-07-07):** OCI registry live (`/v2/` auth challenge). Tier-0/2
images built and pulled on railiance01: `forgejo-actions-probe`, `key-cape`
(`crictl pull forgejo.coulomb.social/coulomb/key-cape:latest` succeeded).
Remaining: `state-hub` image after tier-3 approval; document retention; include
packages in backup drill (T09).
Tier-3 `state-hub` images built and deployed (`main-f9f0091`, `latest` on
railiance01, 2026-07-06). Remaining: document retention; include packages in
scheduled backup automation (T09).
**Done when:** tier-2 gate is fully satisfied (✓) and tier-3 production images
follow the same pattern after explicit approval.
follow the same pattern after explicit approval. **Tier-2 gate met; tier-3
pattern proven by `state-hub`.**
---
@ -342,7 +347,7 @@ follow the same pattern after explicit approval.
```task
id: RAIL-HO-WP-0005-T08
status: progress
status: done
priority: high
state_hub_task_id: "f45f98c9-2f02-4224-bbfd-c2e1ec38581e"
```
@ -370,10 +375,12 @@ non-root (static docker-cli, no `apk add`); `actions/checkout@v4` fails — use
archive checkout, static docker-cli). **Templates (2026-07-04):** S4
`railiance-enablement/workflows/` (`ci-smoke`, `container-build-push`,
`container-build-push-multirepo` for `hub-core` contexts) +
`docs/forgejo-actions-workflow-templates.md`. Remaining: resource limits review.
`docs/forgejo-actions-workflow-templates.md`. Tier-3 `state-hub` image build
and deploy proven 2026-07-06 (`main-f9f0091` on railiance01).
**Done when:** tier-2 pilot repo runs Forgejo Actions end-to-end and publishes
a pullable image without privileged cluster-wide credentials. **Tier 2: done.**
a pullable image without privileged cluster-wide credentials. **Met 2026-07-04.**
Resource limits review deferred to ongoing ops (non-blocking).
---
@ -456,13 +463,20 @@ Evidence in `the-custodian/docs/forgejo-repo-migration-pilot-glas-harness.md`
`tegwick` SSH on Forgejo; enablement templates published. Evidence: pilot doc
tier 2.5 section.
**Not ready:** `state-hub` (tier 3) until playbook is **executed** for
`state-hub` (playbook drafted 2026-07-04:
`the-custodian/docs/forgejo-tier3-remote-url-sweep-playbook.md`) and scheduled
backups gate is closed (disaster-control).
**Tier 3 in progress (2026-07-06):** `state-hub` cutover executed under
`CUST-WP-0054-T05` — phases 14 complete (empty stack, data restore, access
rewire, sweep checkout migration on railiance01); phase 5 stabilization window
open through 2026-07-09. Evidence:
`the-custodian/docs/state-hub-railiance01-cutover-phase{1,2,4,5}-2026-07-06.md`.
Forgejo also hosts `issue-core`, `activity-core`, `hub-core`, `core-hub` (13
org repos total as of 2026-07-07).
**Remaining:** tier-3 promotion for remaining production repos; scheduled
backups gate still open (disaster-control); stabilization closeout + operator
signoff before coulombcore teardown.
**Done when:** tiers 02 pass with written result matrices and no unknown
critical migration gaps remain for production repos.
critical migration gaps remain for production repos. **Tiers 02.5: met.**
---
@ -541,11 +555,13 @@ T05+T08 ──► T10 migration ladder ──► T11 production cutover ──
T03 isolated probe: CANCELLED (superseded by T05 + in-production pilots)
```
**Current focus (2026-07-04):** T10 tiers 02 **complete**; T09 restore drill
**passed** (scheduled backups + backup target still open); T02 decisions (SMTP,
backup target) before tier-3 production repos.
Do not start T11 `state-hub` until T09 complete and `CUST-WP-0054` Wave-1
gates satisfied.
**Current focus (2026-07-07):** T08 **done**; T10 tiers 02.5 **complete**, tier-3
`state-hub` cutover **in progress** (phase 5 stabilization). T09 restore drill
**passed** but scheduled backups + backup target still open. T02/T06 SMTP and
backup-target decisions remain operator-gated. T11 partial: `state-hub` primary
on railiance01; ~57 State Hub repos still point at Gitea remotes.
Do not retire coulombcore `state-hub` until phase 5 closeout and operator
signoff (`CUST-WP-0054-T05`).
**Absorbed by `CUST-WP-0054-T04`:** forge + CI on railiance01; workstation
build retirement; staged repo promotion before State Hub primary move (T05).