Expand T02 and progress notes with schedule, probes, ActivityDefinition ids, railiance01 deployment evidence, and cluster State Hub event routing.
7.3 KiB
| id | type | title | domain | repo | status | owner | topic_slug | created | updated | state_hub_workstream_id |
|---|---|---|---|---|---|---|---|---|---|---|
| CORE-WP-0007 | workplan | Retire Haskell/IHP infrastructure after Core Hub cutover | infotech | core-hub | active | codex | custodian | 2026-06-27 | 2026-07-08 | 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.
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.
Retire Probe Repo
id: CORE-WP-0007-T01
status: done
priority: medium
state_hub_task_id: "d3a494a3-dc23-491f-af32-1d19120b3aae"
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.
Rename Production Inter-Hub Repo
id: CORE-WP-0007-T02
status: wait
priority: high
state_hub_task_id: "16eb7ce3-b574-4667-a189-c14ff5d0502b"
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).
Stabilization evidence is collected automatically through 2026-07-10 by the
scheduled core_hub_stabilization_check / core_hub_stabilization_closeout
jobs (see runbook docs/deployment/stabilization-signoff.md). T02 unblocks
when the closeout passes (operator_signoff_needed=true) and the operator
records retirement approval in State Hub.
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.
Decommission Haskell Build Lane
id: CORE-WP-0007-T03
status: wait
priority: medium
state_hub_task_id: "bea9943c-916f-402f-a6d9-7907bb48137c"
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.
Update Cross-Repo References
id: CORE-WP-0007-T04
status: wait
priority: medium
state_hub_task_id: "ed7f8e01-5305-465c-8bfc-04bc47bfdf40"
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:
- T01 — unblocked; archive
ihp-railiance-probefirst (low risk). - T02 — cutover prerequisites met; blocked on operator stabilization sign-off and approval to retire the Inter-Hub rollback deployment.
- T03 — blocked on T02 and confirmation that no repo still schedules Haskell builds through haskelseed.
- T04 — blocked on T02 so references use the final repo name.
Related finished workplans: CORE-WP-0004 (compatibility smokes),
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.mdmarks the repo archived and points to preserved docsINTENT.mdandSCOPE.mdupdated with retirement contextIRP-WP-0001moved toworkplans/archived/260707-IRP-WP-0001-pipeline-validation.md(status: archived)- Gitea/Forgejo CI workflows switched to
workflow_dispatchonly (no push triggers)
Forgejo repo archived on gitea.coulomb.social (2026-07-07); git history and
diagnostic docs remain available read-only.
Progress 2026-07-07 — stabilization job live on railiance01
Post-cutover stabilization checks for T02 operator sign-off are implemented and
deployed. Runbook: docs/deployment/stabilization-signoff.md.
Window and schedule
| Item | Value |
|---|---|
| Window start | 2026-07-03 (production cutover) |
| Window end | 2026-07-10T17:35:00Z |
| Daily check | 09:00 Europe/Berlin |
| Closeout | one-shot at window end |
Runs outside the window record skipped with reason=outside_stabilization_window.
Automated checks (core-hub / stabilization_check)
| Probe | Expected |
|---|---|
GET /healthz |
200 |
GET /readyz |
200 |
GET /api/v2/widget-types |
200, count ≥ 26 |
GET /api/v2/hubs (unauthenticated) |
401 |
Closeout sets operator_signoff_needed=true when overall_pass=true.
Activity definitions (canonical in core-hub)
| Job | ActivityDefinition id | State Hub event_type |
|---|---|---|
| Daily | b4c8e2f1-6a3d-4e5b-9f0c-2d7e8a1b3c4d |
core_hub_stabilization_check |
| Closeout | c5d9f3a2-7b4e-5f6c-0a1d-3e8f9b2c4d5e |
core_hub_stabilization_closeout |
Files: activity-definitions/core-hub-stabilization-{daily,closeout}.md, projected
into activity-core/k8s/railiance/20-runtime.yaml. Progress events bind to
workstream a8d66822… / task 16eb7ce3… (T02).
Manual companion
make stabilization-check # scripts/core_hub_stabilization_check.sh
Optional: make deployed-smoke with CORE_HUB_OPERATOR_TOKEN_FILE for full
bootstrap evidence; ops-hub make interhub-gate against hub.coulomb.social.
activity-core deployment (railiance01)
- Image:
activity-core:railiance01-prodrebuilt and imported into k3s - Resolver:
activity-corecore-hubcontext adapter (stabilization_check) - Evidence sink fix:
core-hubsources now post State Hub progress (activity-core726da05) - Deployed:
actcore-api,actcore-worker,actcore-event-routerrolled out;actcore-syncregistered both schedules on Temporal - First live event (cluster State Hub
http://state-hub.state-hub.svc.cluster.local:8000, 2026-07-07T22:43:55Z):Core Hub stabilization daily: pass; base=https://hub.coulomb.social; widget_types=26/26
Note: activity-core posts to the cluster State Hub on railiance01, not the
workstation fallback at 127.0.0.1:8000. Query via state-hub-primary tunnel or
from inside the activity-core pod when reviewing evidence.