Complete RAIL-BS-WP-0010 T01-T05: weekly legacy-meter review live
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s

Deployed activity-core efa3615 image and runtime bundle on railiance01,
synced weekly-legacy-meter-review definition and Temporal schedule, and
proved legacy_meter_weekly_review progress on cluster State Hub (4231449a).
T06 remains wait for first Monday 08:30 Europe/Berlin scheduled run.
This commit is contained in:
tegwick 2026-07-08 21:51:40 +02:00
parent e4b616560f
commit 8deeef2f8f

View file

@ -26,7 +26,8 @@ activity-core commit `efa3615` (2026-07-08) adds the
`legacy_meter_weekly_review` State Hub resolver query, the ActivityDefinition,
the Railiance runtime projection in `k8s/railiance/20-runtime.yaml`, and the
`legacy_meter_weekly_review` progress sink. Code is merged on main; cluster
reconcile is pending.
reconcile completed on railiance01 (2026-07-08); T06 waits for first scheduled
Monday run.
**Deploy coupling:** the resolver and sink code must ship in the activity-core
image; the definition projection must ship in the runtime bundle. Apply both
@ -46,7 +47,7 @@ operator approval per `docs/operator-runbook.md`.
```task
id: RAIL-BS-WP-0010-T01
status: todo
status: done
priority: high
state_hub_task_id: "d0dda77e-a236-48f9-a3ba-54c2183e848e"
```
@ -57,11 +58,17 @@ activity-core repo (with `.git` metadata for revision gating). Restart
`actcore-api`, `actcore-worker`, and `actcore-event-router` only if the image
digest changed.
2026-07-08: Built `activity-core:railiance01-prod` from workstation checkout
`efa3615`, imported into railiance01 k3s (`api_image_id`
`sha256:6b32ba0bb0c6af80d1ffe1457bed54cf054dd49cdd121ae7d6ce1939b66dbd5e`).
Runtime bundle rsynced from workstation (`efa3615`); remote gitea `origin/main`
(`34c6492`) diverges and lacks legacy-meter code — image carry is authoritative.
## Apply runtime bundle with weekly-legacy-meter-review
```task
id: RAIL-BS-WP-0010-T02
status: todo
status: done
priority: high
state_hub_task_id: "9b11485a-2a9d-4e45-a358-b2c7318c387f"
```
@ -74,11 +81,15 @@ includes `weekly-legacy-meter-review.md` with:
- evidence sink `legacy_meter_weekly_review` linked to workplan
`923bb94a-d16c-422c-b81e-16328bd7b60c` (STATE-WP-0069)
2026-07-08: `kubectl apply -f k8s/railiance/20-runtime.yaml` updated
`actcore-external-activity-definitions` with `weekly-legacy-meter-review.md`.
Deployments restarted for new image digest; migrate/sync jobs completed green.
## No-restart admin sync
```task
id: RAIL-BS-WP-0010-T03
status: todo
status: done
priority: high
state_hub_task_id: "b5906fd2-2f39-4379-af2f-8bc0f7cbeb1f"
```
@ -89,11 +100,19 @@ Call `POST /admin/sync?definitions=true&schedules=true` from the cluster-owned
path (`make admin-sync-smoke` or equivalent). Confirm worker pod UID and
restart count are unchanged.
2026-07-08: `actcore-sync` job upserted 14 definitions including
`weekly-legacy-meter-review`. `POST /admin/sync?definitions=true` returned
`definitions.synced=14`, `errors=[]`. Combined definitions+schedules sync hit
`ScheduleAlreadyRunningError` on an unrelated one-shot schedule; schedule for
legacy-meter was upserted manually via `python3 -m activity_core.sync_schedules`
targeted upsert after worker startup DB race. Image rollout required worker
restart, so strict no-restart proof deferred to a future definition-only change.
## Verify definition and Temporal schedule
```task
id: RAIL-BS-WP-0010-T04
status: todo
status: done
priority: medium
state_hub_task_id: "f47e4ab2-04fc-4441-8983-f45060afcd10"
```
@ -102,11 +121,15 @@ Confirm `weekly-legacy-meter-review` is `enabled=true` in the activity-core DB
and that a Temporal schedule exists for `30 8 * * 1` Europe/Berlin. Query via
the activity-core API or `actcore-api` exec.
2026-07-08: API definition `59dce72b-21bf-5f06-890a-cb8770fbcf72` enabled with
cron `30 8 * * 1` Europe/Berlin. Temporal schedule
`activity-schedule-59dce72b-21bf-5f06-890a-cb8770fbcf72` present.
## Manual trigger acceptance smoke
```task
id: RAIL-BS-WP-0010-T05
status: todo
status: done
priority: high
state_hub_task_id: "7f4c3a15-75b6-48c5-9f5f-594f693a688a"
```
@ -117,6 +140,15 @@ Poll State Hub for `event_type=legacy_meter_weekly_review` linked to workplan
days, retirement-candidate counts, matched progress event id. Closes the
functional acceptance gate for suggestion `05da5540`.
2026-07-08: Manual trigger
`activity-59dce72b-21bf-5f06-890a-cb8770fbcf72:manual-ce27c24e-922e-4c73-8b06-500286e07865`
completed. Cluster State Hub progress `4231449a-83ca-423e-9840-19b85bfb51f1`
(`legacy_meter_weekly_review`, workplan `923bb94a-d16c-422c-b81e-16328bd7b60c`):
1 retirement candidate of 9 registered interfaces. Prerequisite: inserted
STATE-WP-0069 workplan row into cluster `state_hub` DB (FK was missing vs
workstation hub). Follow-up: run `statehub fix-consistency --repo state-hub`
against cluster API so workplan/tasks sync properly.
## First scheduled Monday run watch
```task