From 48610117c7bd6a55deb4ea5746762d52427af1dd Mon Sep 17 00:00:00 2001 From: tegwick Date: Tue, 7 Jul 2026 01:50:57 +0200 Subject: [PATCH] Update RAIL-HO-WP-0005 with Forgejo cutover progress and mark T08 done 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. --- docs/forgejo-migration-inventory.md | 29 ++++++++ ...HO-WP-0005-forgejo-production-migration.md | 72 +++++++++++-------- 2 files changed, 73 insertions(+), 28 deletions(-) diff --git a/docs/forgejo-migration-inventory.md b/docs/forgejo-migration-inventory.md index 6d8b8e0..0bf5540 100644 --- a/docs/forgejo-migration-inventory.md +++ b/docs/forgejo-migration-inventory.md @@ -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 diff --git a/workplans/RAIL-HO-WP-0005-forgejo-production-migration.md b/workplans/RAIL-HO-WP-0005-forgejo-production-migration.md index ed122de..cd6f342 100644 --- a/workplans/RAIL-HO-WP-0005-forgejo-production-migration.md +++ b/workplans/RAIL-HO-WP-0005-forgejo-production-migration.md @@ -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 1–5 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 (0–3) 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 1–4 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 0–2 pass with written result matrices and no unknown -critical migration gaps remain for production repos. +critical migration gaps remain for production repos. **Tiers 0–2.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 0–2 **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 0–2.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).