railiance-cluster/workplans/archived/260622-RCLUSTER-WP-0001-activity-core-cluster-owned-deploy-verify.md
codex a042bee363
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
fix(workplans): migrate archived workplans off the retired RAILIANCE-WP prefix
Completes the migration begun on 2026-08-25, which covered active workplans
only. The archived copies kept their historical identifiers, and three
repositories shared one number space — so their task identifiers collided,
blocking task-level projection reset for those workplans.

Numbering continues each repository's active sequence rather than restarting,
so no identifier is reused. Projection UUIDs are re-derived from the new
canonical ids.

Refs CUST-WP-0068, STATE-WP-0083-T06

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 2583210@bnt-lap001
Assistant-Session: f2bff2d5-e9b2-4338-92ca-10282a927006
2026-08-26 08:05:45 +02:00

4.4 KiB

id type title domain repo status owner topic_slug created updated state_hub_workstream_id
RCLUSTER-WP-0001 workplan activity-core cluster-owned deploy/verify financials railiance-cluster finished codex railiance 2026-06-15 2026-06-16 7c577c73-43e1-546c-af4b-f90bb3e31a9b

Terminology note: Historical text in this archived workplan may use the legacy term "workstream". The fleet term is workplan (canon/standards/workplan-terminology-fleet_v0.1.md).

activity-core cluster-owned deploy/verify

Context

activity-core ACTIVITY-WP-0007-T06 needs live Railiance cluster evidence for the disabled ops inventory probe. That live verification should be owned by the cluster/operator layer, not by arbitrary activity-core sessions with local kubectl assumptions.

This workplan creates a cluster-owned path that keeps credentials in operator-owned locations while returning only non-secret evidence to State Hub.

Implement cluster-owned verifier

id: RCLUSTER-WP-0001-T01
status: done
priority: high
state_hub_task_id: "0ff9064f-8d27-5c4f-be9c-7ac82aa90768"

Add a repeatable command that:

  • reconciles the activity-core Railiance runtime bundle;
  • reruns actcore-sync;
  • checks the ops-service-inventory-probes ActivityDefinition exists and is still disabled;
  • triggers the disabled definition manually through the in-cluster API path;
  • verifies a fresh ops_inventory_probe progress event exists in State Hub;
  • posts a non-secret State Hub evidence note for activity-core to cite.

Implemented as tools/cmd/railiance-verify-activity-core with Makefile target verify-activity-core. The script defaults to the railiance01 SSH executor; use ACTIVITY_CORE_CLUSTER_HOST=local only for an explicitly selected local kubectl context.

Run live verification and publish evidence

id: RCLUSTER-WP-0001-T02
status: done
priority: high
state_hub_task_id: "dda59987-7c7d-5e29-a9c5-e93ac705999d"

Run make verify-activity-core against the Railiance cluster. On success, cite the State Hub evidence note id in this task and in activity-core ACTIVITY-WP-0007-T06.

If a gate fails, the verifier must still post a non-secret State Hub note with the failing gate and last completed evidence fields.

2026-06-15: Completed against Railiance01 after refreshing the same-tag activity-core:railiance01-prod image from activity-core commit ab17378, importing digest sha256:cff43c72455b9fc4fc11a0a997b4671a38987bb4583a600245dd961965af0e40 into k3s containerd, syncing the current runtime bundle to /home/tegwick/activity-core/k8s/railiance, and restarting the activity-core runtime deployments. The verifier reconciled the runtime bundle, completed actcore-sync, confirmed ops-service-inventory-probes exists and remains disabled, triggered it manually, verified State Hub progress 4c82360d-33e7-455b-8ab4-33facd4a3f8e, and posted evidence note baeeaeac-aa6d-4406-ae64-e54577f21386.

An intermediate verifier invocation accidentally targeted the local CoulombCore kubectl context. It created only actcore-* runtime resources in the existing activity-core namespace; those resources were removed with the runtime manifest cleanup, and the pre-existing llm-connect deployment remains running.

Operational cleanup note: the successful Railiance01 verifier run used ACTIVITY_CORE_RESTART_DEPLOYMENTS=1 after importing the same-tag image. The script was corrected afterward to restart only actcore-api, actcore-worker, and actcore-event-router, because actcore-state-hub-bridge uses host networking and a rolling restart leaves a new bridge pod pending behind the host-bound running pod. A 2026-06-16 cleanup check showed the bridge rollout had settled on Railiance01: the host-bound bridge pod was running and the replacement ReplicaSet was scaled to zero, so no manual live cleanup was needed.

Handoff closure to activity-core

id: RCLUSTER-WP-0001-T03
status: done
priority: medium
state_hub_task_id: "3fb86fed-435b-557e-83d5-44260d1ff483"

After live evidence exists, update activity-core ACTIVITY-WP-0007-T06 to cite the Railiance evidence and close it if Inter-Hub submission is active or explicitly deferred with the clean State Hub fallback result.

2026-06-15: Updated activity-core ACTIVITY-WP-0007-T06 to cite Railiance evidence note baeeaeac-aa6d-4406-ae64-e54577f21386 and close the task with Inter-Hub submission explicitly deferred while the State Hub fallback evidence path is verified.