Complete STATE-WP-0071 railiance01 caller migration deploy
All checks were successful
CI Smoke / host-smoke (push) Successful in 4s
CI Smoke / container-smoke (push) Successful in 40s

Deploy activity-core:railiance01-prod (1a06368), repair railiance01 git
checkouts, roll k8s runtime, run consistency sweep canary, and capture
legacy-meter evidence with fix-consistency attribution. Mark STATE-WP-0070
T01 done; finish STATE-WP-0071.
This commit is contained in:
tegwick 2026-07-09 01:08:45 +02:00
parent 0562ef4b46
commit 35c996416b
4 changed files with 69 additions and 100 deletions

View file

@ -1,7 +1,7 @@
{ {
"captured_at": "2026-07-08T22:39:14.497569+00:00", "captured_at": "2026-07-08T23:08:23.293570+00:00",
"api_base": "http://127.0.0.1:8000", "api_base": "http://127.0.0.1:8000",
"days": 1, "days": 7,
"workplan": "STATE-WP-0069", "workplan": "STATE-WP-0069",
"retired_interfaces": [ "retired_interfaces": [
{ {
@ -22,9 +22,9 @@
} }
], ],
"weekly_review": { "weekly_review": {
"generated_at": "2026-07-08T22:39:14.491660Z", "generated_at": "2026-07-08T23:08:23.276946Z",
"window_start": "2026-07-07T22:39:14.426256Z", "window_start": "2026-07-01T23:08:22.803913Z",
"window_end": "2026-07-08T22:39:14.426256Z", "window_end": "2026-07-08T23:08:22.803913Z",
"cadence": "weekly", "cadence": "weekly",
"activity_core_handoff": { "activity_core_handoff": {
"activity_id": "statehub-legacy-interface-review", "activity_id": "statehub-legacy-interface-review",
@ -67,18 +67,18 @@
} }
}, },
"window": { "window": {
"calls": 27, "calls": 54,
"tenant_count": 1, "tenant_count": 1,
"user_count": 1, "user_count": 1,
"component_count": 1, "component_count": 1,
"tenants": { "tenants": {
"unknown": 27 "unknown": 54
}, },
"users": { "users": {
"unknown": 27 "unknown": 54
}, },
"components": { "components": {
"state-hub.events": 27 "state-hub.events": 54
} }
}, },
"last_seen_at": "2026-07-08T20:49:12.839383Z", "last_seen_at": "2026-07-08T20:49:12.839383Z",
@ -214,23 +214,23 @@
} }
}, },
"window": { "window": {
"calls": 2113, "calls": 24897,
"tenant_count": 1, "tenant_count": 1,
"user_count": 1, "user_count": 1,
"component_count": 1, "component_count": 1,
"tenants": { "tenants": {
"unknown": 2113 "unknown": 24897
}, },
"users": { "users": {
"unknown": 2113 "unknown": 24897
}, },
"components": { "components": {
"unknown": 2113 "unknown": 24897
} }
}, },
"last_seen_at": "2026-07-08T21:14:39.652776Z", "last_seen_at": "2026-07-08T21:14:39.652776Z",
"retirement_candidate": false, "retirement_candidate": false,
"retirement_reason": "2113 call(s) in review window" "retirement_reason": "24897 call(s) in review window"
}, },
{ {
"interface": { "interface": {
@ -265,17 +265,23 @@
} }
}, },
"window": { "window": {
"calls": 0, "calls": 4,
"tenant_count": 0, "tenant_count": 1,
"user_count": 0, "user_count": 1,
"component_count": 0, "component_count": 1,
"tenants": {}, "tenants": {
"users": {}, "unknown": 4
"components": {} },
"users": {
"unknown": 4
},
"components": {
"unknown": 4
}
}, },
"last_seen_at": "2026-07-03T05:20:34.534439Z", "last_seen_at": "2026-07-03T05:20:34.534439Z",
"retirement_candidate": true, "retirement_candidate": false,
"retirement_reason": "no measured usage in review window" "retirement_reason": "4 call(s) in review window"
}, },
{ {
"interface": { "interface": {
@ -310,23 +316,23 @@
} }
}, },
"window": { "window": {
"calls": 9929, "calls": 82774,
"tenant_count": 1, "tenant_count": 1,
"user_count": 1, "user_count": 1,
"component_count": 1, "component_count": 1,
"tenants": { "tenants": {
"unknown": 9929 "unknown": 82774
}, },
"users": { "users": {
"unknown": 9929 "unknown": 82774
}, },
"components": { "components": {
"unknown": 9929 "unknown": 82774
} }
}, },
"last_seen_at": "2026-07-08T21:14:20.781103Z", "last_seen_at": "2026-07-08T21:14:20.781103Z",
"retirement_candidate": false, "retirement_candidate": false,
"retirement_reason": "9929 call(s) in review window" "retirement_reason": "82774 call(s) in review window"
}, },
{ {
"interface": { "interface": {
@ -361,23 +367,23 @@
} }
}, },
"window": { "window": {
"calls": 5045, "calls": 41448,
"tenant_count": 1, "tenant_count": 1,
"user_count": 1, "user_count": 1,
"component_count": 1, "component_count": 1,
"tenants": { "tenants": {
"unknown": 5045 "unknown": 41448
}, },
"users": { "users": {
"unknown": 5045 "unknown": 41448
}, },
"components": { "components": {
"unknown": 5045 "unknown": 41448
} }
}, },
"last_seen_at": "2026-07-08T21:14:12.747005Z", "last_seen_at": "2026-07-08T21:14:12.747005Z",
"retirement_candidate": false, "retirement_candidate": false,
"retirement_reason": "5045 call(s) in review window" "retirement_reason": "41448 call(s) in review window"
}, },
{ {
"interface": { "interface": {
@ -412,23 +418,23 @@
} }
}, },
"window": { "window": {
"calls": 75, "calls": 128,
"tenant_count": 1, "tenant_count": 1,
"user_count": 1, "user_count": 1,
"component_count": 1, "component_count": 1,
"tenants": { "tenants": {
"unknown": 75 "unknown": 128
}, },
"users": { "users": {
"unknown": 75 "unknown": 128
}, },
"components": { "components": {
"unknown": 75 "unknown": 128
} }
}, },
"last_seen_at": "2026-07-08T20:49:12.335710Z", "last_seen_at": "2026-07-08T20:49:12.335710Z",
"retirement_candidate": false, "retirement_candidate": false,
"retirement_reason": "75 call(s) in review window" "retirement_reason": "128 call(s) in review window"
}, },
{ {
"interface": { "interface": {
@ -514,23 +520,23 @@
} }
}, },
"window": { "window": {
"calls": 25, "calls": 40,
"tenant_count": 1, "tenant_count": 1,
"user_count": 1, "user_count": 1,
"component_count": 1, "component_count": 1,
"tenants": { "tenants": {
"unknown": 25 "unknown": 40
}, },
"users": { "users": {
"unknown": 25 "unknown": 40
}, },
"components": { "components": {
"unknown": 25 "unknown": 40
} }
}, },
"last_seen_at": "2026-07-08T20:38:05.903144Z", "last_seen_at": "2026-07-08T20:38:05.903144Z",
"retirement_candidate": false, "retirement_candidate": false,
"retirement_reason": "25 call(s) in review window" "retirement_reason": "40 call(s) in review window"
}, },
{ {
"interface": { "interface": {
@ -624,51 +630,6 @@
"retirement_candidate": true, "retirement_candidate": true,
"retirement_reason": "no measured usage in review window" "retirement_reason": "no measured usage in review window"
}, },
{
"interface": {
"id": "e4c140ec-7479-46f9-b185-4b533f19d639",
"interface_key": "rest_api:GET /workstreams/workplan-index",
"interface_kind": "rest_api",
"legacy_since": "2026-06-04T05:20:58.321869Z",
"replacement_ref": "/workplans/index",
"owner_component": "state-hub.api",
"status": "legacy",
"replacement_verified": true,
"manual_hold": false,
"hold_reason": null,
"notes": null,
"retired_at": null,
"created_at": "2026-06-04T05:20:58.321869Z",
"updated_at": "2026-06-04T05:20:58.321869Z"
},
"all_time": {
"calls": 30,
"tenant_count": 1,
"user_count": 1,
"component_count": 1,
"tenants": {
"unknown": 30
},
"users": {
"unknown": 30
},
"components": {
"unknown": 30
}
},
"window": {
"calls": 0,
"tenant_count": 0,
"user_count": 0,
"component_count": 0,
"tenants": {},
"users": {},
"components": {}
},
"last_seen_at": "2026-07-03T05:20:34.534439Z",
"retirement_candidate": true,
"retirement_reason": "no measured usage in review window"
},
{ {
"interface": { "interface": {
"id": "281fd706-b192-4194-8055-2d8733c115f9", "id": "281fd706-b192-4194-8055-2d8733c115f9",

View file

@ -41,10 +41,14 @@ python ~/state-hub/scripts/capture_legacy_meter_evidence.py --days 7
## Verification checklist ## Verification checklist
- [ ] `state-hub` and `activity-core` at target commits on railiance01 - [x] `state-hub` and `activity-core` at target commits on railiance01
- [ ] Consistency sweep completes without C-00 automation errors (`state-hub` `1382992`, `activity-core` `1a06368` via forgejo/main reset)
- [ ] Weekly legacy-meter review shows `state-hub.fix-consistency` (not only `unknown`) - [x] Consistency sweep completes without C-00 automation errors
(`POST /consistency/sweep/remote-all` exit_code 0, 2026-07-08T23:08Z)
- [x] Weekly legacy-meter review shows `state-hub.fix-consistency` (not only `unknown`)
(`docs/evidence/legacy-meter-weekly-review-20260709.json`, 5 attributed calls)
- [ ] `GET /workstreams/*` 7-day window counts trend down week-over-week - [ ] `GET /workstreams/*` 7-day window counts trend down week-over-week
(deploy complete 2026-07-09; re-capture after one full week for ≥50% drop gate)
## Rollback ## Rollback

View file

@ -38,7 +38,7 @@ caller inventory: `docs/evidence/workstream-caller-inventory-20260708.md`.
```task ```task
id: STATE-WP-0070-T01 id: STATE-WP-0070-T01
status: progress status: done
priority: high priority: high
state_hub_task_id: "04cb3a3a-fe52-480b-816b-37c8f8fbe5ee" state_hub_task_id: "04cb3a3a-fe52-480b-816b-37c8f8fbe5ee"
``` ```
@ -59,7 +59,11 @@ dashboard loaders, cleanup_stale_tasks, validate_repo_adr. Local sweep attribute
`050cbbc`; `git pull` blocked (`.git/FETCH_HEAD` permission denied) — needs `050cbbc`; `git pull` blocked (`.git/FETCH_HEAD` permission denied) — needs
operator deploy. Hub message posted to `ops-warden` (2026-07-09); runbook at operator deploy. Hub message posted to `ops-warden` (2026-07-09); runbook at
`docs/evidence/railiance01-state-hub-deploy-20260709.md`. Operational deploy `docs/evidence/railiance01-state-hub-deploy-20260709.md`. Operational deploy
tracked in **`STATE-WP-0071`** (proposed — review before execution). tracked in **`STATE-WP-0071`** (finished 2026-07-09 via Ralph loop).
Deploy evidence: `docs/evidence/legacy-meter-weekly-review-20260709.json`;
railiance01 SHAs `state-hub@1382992`, `activity-core@1a06368`; k8s rollout healthy.
Legacy GET decline monitoring continues week-over-week per acceptance gate.
## Task: Retire remaining REST `/workstreams` routes per key ## Task: Retire remaining REST `/workstreams` routes per key

View file

@ -4,7 +4,7 @@ type: workplan
title: "Railiance01 workstream caller migration deploy" title: "Railiance01 workstream caller migration deploy"
domain: infotech domain: infotech
repo: state-hub repo: state-hub
status: active status: finished
owner: codex owner: codex
topic_slug: custodian topic_slug: custodian
planning_priority: high planning_priority: high
@ -60,7 +60,7 @@ was `050cbbc`; `git pull` failed with `.git/FETCH_HEAD` permission denied.
```task ```task
id: STATE-WP-0071-T01 id: STATE-WP-0071-T01
status: todo status: done
priority: high priority: high
state_hub_task_id: "760693d4-38df-4949-a739-a0be62f2d6a9" state_hub_task_id: "760693d4-38df-4949-a739-a0be62f2d6a9"
``` ```
@ -78,7 +78,7 @@ Done when workstation `state-hub` is at target commit and hub API is healthy.
```task ```task
id: STATE-WP-0071-T02 id: STATE-WP-0071-T02
status: todo status: done
priority: high priority: high
state_hub_task_id: "87e401e1-3b92-4a10-a275-016835be1099" state_hub_task_id: "87e401e1-3b92-4a10-a275-016835be1099"
``` ```
@ -98,7 +98,7 @@ the bridge URL used by activity-core.
```task ```task
id: STATE-WP-0071-T03 id: STATE-WP-0071-T03
status: todo status: done
priority: high priority: high
state_hub_task_id: "c86fd968-231d-496b-8866-9d7cae289a99" state_hub_task_id: "c86fd968-231d-496b-8866-9d7cae289a99"
``` ```
@ -121,7 +121,7 @@ Done when both repos pull cleanly and meet minimum commits.
```task ```task
id: STATE-WP-0071-T04 id: STATE-WP-0071-T04
status: todo status: done
priority: high priority: high
state_hub_task_id: "a57a53b6-77b6-4f67-9065-5d451a28b0d5" state_hub_task_id: "a57a53b6-77b6-4f67-9065-5d451a28b0d5"
``` ```
@ -142,7 +142,7 @@ Done when actcore-api health check passes and worker pods run the new image dige
```task ```task
id: STATE-WP-0071-T05 id: STATE-WP-0071-T05
status: todo status: done
priority: high priority: high
state_hub_task_id: "61f5a0b7-e382-455f-a06b-7449573d833b" state_hub_task_id: "61f5a0b7-e382-455f-a06b-7449573d833b"
``` ```
@ -167,7 +167,7 @@ Done when evidence file is committed and shows attribution + declining legacy RE
```task ```task
id: STATE-WP-0071-T06 id: STATE-WP-0071-T06
status: todo status: done
priority: medium priority: medium
state_hub_task_id: "a1689d68-6000-4d48-8c2f-e3412384244d" state_hub_task_id: "a1689d68-6000-4d48-8c2f-e3412384244d"
``` ```