2026-06-27 10:57:13 +02:00
|
|
|
|
---
|
|
|
|
|
|
id: CORE-WP-0007
|
|
|
|
|
|
type: workplan
|
|
|
|
|
|
title: "Retire Haskell/IHP infrastructure after Core Hub cutover"
|
|
|
|
|
|
domain: infotech
|
|
|
|
|
|
repo: core-hub
|
|
|
|
|
|
status: active
|
|
|
|
|
|
owner: codex
|
|
|
|
|
|
topic_slug: custodian
|
|
|
|
|
|
created: "2026-06-27"
|
2026-07-08 00:07:31 +02:00
|
|
|
|
updated: "2026-07-07"
|
2026-06-27 10:57:13 +02:00
|
|
|
|
state_hub_workstream_id: "a8d66822-e435-4b1e-ad81-37a298d1795e"
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
# Retire Haskell/IHP infrastructure after Core Hub cutover
|
|
|
|
|
|
|
|
|
|
|
|
Remove the Haskell dependency from the production interaction framework after the replacement is proven.
|
|
|
|
|
|
|
2026-07-08 00:07:31 +02:00
|
|
|
|
`CORE-WP-0005` finished 2026-07-03: `hub.coulomb.social` ingress now serves Core
|
|
|
|
|
|
Hub; Inter-Hub compatibility, staging import, dual-run smokes, and production
|
|
|
|
|
|
cutover gates are closed. Haskell retirement no longer waits on migration work —
|
|
|
|
|
|
it waits on a short post-cutover stabilization window, operator approval to
|
|
|
|
|
|
retire the Inter-Hub rollback deployment, and the four tasks below.
|
|
|
|
|
|
|
2026-06-27 10:57:13 +02:00
|
|
|
|
## Retire Probe Repo
|
|
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
|
id: CORE-WP-0007-T01
|
2026-07-08 00:13:23 +02:00
|
|
|
|
status: done
|
2026-06-27 10:57:13 +02:00
|
|
|
|
priority: medium
|
|
|
|
|
|
state_hub_task_id: "d3a494a3-dc23-491f-af32-1d19120b3aae"
|
|
|
|
|
|
```
|
|
|
|
|
|
|
2026-07-08 00:07:31 +02:00
|
|
|
|
Rename or archive `ihp-railiance-probe` (`coulomb/ihp-railiance-probe`),
|
|
|
|
|
|
preserving `INTENT.md` and `DeploymentBlueprint.md` notes about the failed
|
|
|
|
|
|
IHP/GHC/Nix build path. `IRP-WP-0001` is already `done`; this task is
|
|
|
|
|
|
unblocked and can proceed independently of T02–T04.
|
2026-06-27 10:57:13 +02:00
|
|
|
|
|
|
|
|
|
|
## Rename Production Inter-Hub Repo
|
|
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
|
id: CORE-WP-0007-T02
|
|
|
|
|
|
status: wait
|
|
|
|
|
|
priority: high
|
|
|
|
|
|
state_hub_task_id: "16eb7ce3-b574-4667-a189-c14ff5d0502b"
|
|
|
|
|
|
```
|
|
|
|
|
|
|
2026-07-08 00:07:31 +02:00
|
|
|
|
Rename `inter-hub` to `inter-hub-haskell` after operator stabilization sign-off
|
|
|
|
|
|
and approval to retire the Inter-Hub rollback path. Compatibility, migration,
|
|
|
|
|
|
and production cutover gates from `CORE-WP-0005` are satisfied; the Inter-Hub
|
|
|
|
|
|
k8s deployment in namespace `inter-hub` still runs as rollback-only (ingress
|
|
|
|
|
|
already moved — see `k8s/railiance-production/README.md`).
|
|
|
|
|
|
|
|
|
|
|
|
Scope when unblocked: Forgejo repo rename, registry/Helm/CI path updates in
|
|
|
|
|
|
`railiance-apps` and `railiance-forge`, and eventual scale-down of the
|
|
|
|
|
|
rollback deployment after the stabilization window closes.
|
2026-06-27 10:57:13 +02:00
|
|
|
|
|
|
|
|
|
|
## Decommission Haskell Build Lane
|
|
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
|
id: CORE-WP-0007-T03
|
|
|
|
|
|
status: wait
|
|
|
|
|
|
priority: medium
|
|
|
|
|
|
state_hub_task_id: "bea9943c-916f-402f-a6d9-7907bb48137c"
|
|
|
|
|
|
```
|
|
|
|
|
|
|
2026-07-08 00:07:31 +02:00
|
|
|
|
Retire or park haskelseed runner labels, the `haskell-build` VM profile,
|
|
|
|
|
|
IHP/GHC/Nix/devenv docs, and build-machine workplans after T02 completes and no
|
|
|
|
|
|
active repo still needs Haskell image builds. Primary touchpoints:
|
|
|
|
|
|
`railiance-forge` runner substrate docs, `sand-boxer` `profile.vm-haskell-build`,
|
|
|
|
|
|
and `ops-bridge` haskelseed tunnel notes.
|
2026-06-27 10:57:13 +02:00
|
|
|
|
|
|
|
|
|
|
## Update Cross-Repo References
|
|
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
|
id: CORE-WP-0007-T04
|
|
|
|
|
|
status: wait
|
|
|
|
|
|
priority: medium
|
|
|
|
|
|
state_hub_task_id: "ed7f8e01-5305-465c-8bfc-04bc47bfdf40"
|
|
|
|
|
|
```
|
|
|
|
|
|
|
2026-07-08 00:07:31 +02:00
|
|
|
|
After T02, update docs and workplans in consuming repos so production Inter-Hub
|
|
|
|
|
|
references point to Core Hub and historical Haskell context explicitly names
|
|
|
|
|
|
`inter-hub-haskell`. Known stale surfaces: `ops-hub` INTENT/SCOPE/README and
|
|
|
|
|
|
readiness docs; `activity-core` railiance probes and sink vocabulary;
|
|
|
|
|
|
`the-custodian` service catalog and drain plans. Core Hub specs and migration
|
|
|
|
|
|
fixtures already use `inter-hub-haskell` as the bundle `source` name.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Progress 2026-07-07 — upstream gate cleared
|
|
|
|
|
|
|
|
|
|
|
|
`CORE-WP-0005` archived (`260703-CORE-WP-0005-data-migration-and-cutover.md`).
|
|
|
|
|
|
Production cutover executed 2026-07-03: Core Hub serves `hub.coulomb.social`;
|
|
|
|
|
|
post-flip reconcile import was idempotent (0 created / 28 updated / 0 errors);
|
|
|
|
|
|
rollback remains one kubectl command while the Inter-Hub deployment stays
|
|
|
|
|
|
running through stabilization.
|
|
|
|
|
|
|
|
|
|
|
|
Revised sequencing:
|
|
|
|
|
|
|
|
|
|
|
|
1. **T01** — unblocked; archive `ihp-railiance-probe` first (low risk).
|
|
|
|
|
|
2. **T02** — cutover prerequisites met; blocked on operator stabilization
|
|
|
|
|
|
sign-off and approval to retire the Inter-Hub rollback deployment.
|
|
|
|
|
|
3. **T03** — blocked on T02 and confirmation that no repo still schedules
|
|
|
|
|
|
Haskell builds through haskelseed.
|
|
|
|
|
|
4. **T04** — blocked on T02 so references use the final repo name.
|
|
|
|
|
|
|
|
|
|
|
|
Related finished workplans: `CORE-WP-0004` (compatibility smokes),
|
2026-07-08 00:13:23 +02:00
|
|
|
|
`CORE-WP-0005` (migration/cutover), `CORE-WP-0008` (deployed ops evidence).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Completion 2026-07-07 — T01 probe repo archived
|
|
|
|
|
|
|
|
|
|
|
|
`ihp-railiance-probe` retired in-repo:
|
|
|
|
|
|
|
|
|
|
|
|
- `README.md` marks the repo archived and points to preserved docs
|
|
|
|
|
|
- `INTENT.md` and `SCOPE.md` updated with retirement context
|
|
|
|
|
|
- `IRP-WP-0001` moved to
|
|
|
|
|
|
`workplans/archived/260707-IRP-WP-0001-pipeline-validation.md` (`status:
|
|
|
|
|
|
archived`)
|
|
|
|
|
|
- Gitea/Forgejo CI workflows switched to `workflow_dispatch` only (no push
|
|
|
|
|
|
triggers)
|
|
|
|
|
|
|
|
|
|
|
|
Forgejo repo archive/rename on the forge remains optional; git history and
|
|
|
|
|
|
diagnostic docs are preserved locally and on `gitea.coulomb.social`.
|