state-hub/workplans/STATE-WP-0070-workplan-terminology-phase2-retirement.md
tegwick 35c996416b
All checks were successful
CI Smoke / host-smoke (push) Successful in 4s
CI Smoke / container-smoke (push) Successful in 40s
Complete STATE-WP-0071 railiance01 caller migration deploy
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.
2026-07-09 01:08:45 +02:00

129 lines
No EOL
4.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
id: STATE-WP-0070
type: workplan
title: "Workplan terminology phase-2 legacy retirement"
domain: infotech
repo: state-hub
status: active
owner: codex
topic_slug: custodian
planning_priority: medium
planning_order: 70
created: "2026-07-09"
updated: "2026-07-09"
state_hub_workstream_id: "9aa92529-6ee8-4b3f-b573-78b0ef8d9788"
---
# STATE-WP-0070 — Workplan terminology phase-2 legacy retirement
**Parent:** `STATE-WP-0069` (finished 2026-07-08, archived).
**Prerequisite:** Caller migrations shipped (`b05ca2c+`), identity headers on
fix-consistency and dashboard loaders, activity-core progress dual-write stopped.
## Goal
Drive legacy-meter counts to zero per key, then retire remaining `/workstreams`
routes, MCP aliases, and internal dual-keys. All removals remain
**meter-gated** (seven consecutive zero-usage windows).
## Context
Live meter (2026-07-09) still shows ~150k weekly legacy GET calls — attributed
to `unknown` until identity headers deploy and remote fix-consistency hosts pull
latest `state-hub`. Evidence: `docs/evidence/legacy-meter-weekly-review-20260708.json`,
caller inventory: `docs/evidence/workstream-caller-inventory-20260708.md`.
## Task: Deploy caller migrations and verify meter attribution
```task
id: STATE-WP-0070-T01
status: done
priority: high
state_hub_task_id: "04cb3a3a-fe52-480b-816b-37c8f8fbe5ee"
```
1. Pull `state-hub``b05ca2c` on all fix-consistency hosts (railiance01 sweep,
WSL workstation, cluster runners).
2. Run full `statehub fix-consistency --all` (or scheduled sweep).
3. Capture weekly review; confirm `X-StateHub-Component` buckets name
`state-hub.fix-consistency` instead of `unknown`.
4. Expect `GET /workstreams/*` window counts to fall sharply.
Done when a post-deploy capture shows attributed components and declining legacy
REST counts.
Progress 2026-07-09: identity headers landed on fix-consistency, custodian_cli,
dashboard loaders, cleanup_stale_tasks, validate_repo_adr. Local sweep attributes
`state-hub.fix-consistency` on task-create metering. railiance01 still at
`050cbbc`; `git pull` blocked (`.git/FETCH_HEAD` permission denied) — needs
operator deploy. Hub message posted to `ops-warden` (2026-07-09); runbook at
`docs/evidence/railiance01-state-hub-deploy-20260709.md`. Operational deploy
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
id: STATE-WP-0070-T02
status: progress
priority: high
state_hub_task_id: "13122195-3b7e-4e22-a5e8-4ebe7e9a093f"
```
For each key in `docs/workplan-terminology-legacy-retirement-backlog.md` phase 12
still showing usage:
- `GET/POST/PATCH /workstreams/*`
- dependency and execution intent aliases
Return **410 Gone** (matching DELETE pattern) when legacy-meter shows seven
consecutive zero-usage windows. Update tests and capture evidence per retirement.
Progress 2026-07-09: `GET /workstreams/workplan-index`**410 Gone** (zero-usage
candidate in 1-day capture). `DELETE /workstreams/{id}` already 410 from STATE-WP-0069.
Next candidates when meter clears: `POST .../dependencies/` (0 calls in 1-day window).
## Task: MCP alias removal (Phase 2)
```task
id: STATE-WP-0070-T03
status: todo
priority: medium
state_hub_task_id: "e2b9015a-d157-4677-b700-165f1cf7e2af"
```
Remove `create_workstream`, `update_workstream`, `list_workstreams`,
`update_workstream_status`, and `state://workstreams/{topic_slug}` when MCP
procedure keys hit zero usage for seven windows. Keep `TOOLS.md` migration notes.
## Task: Internal dual-key and param alias cleanup
```task
id: STATE-WP-0070-T04
status: todo
priority: low
state_hub_task_id: "18af98bf-c74e-47c8-948a-e713cff88bb8"
```
- Drop `open_workstreams` from `/state/summary` when meter clears.
- Remove `workstream_id` query/body aliases on preferred routes.
- Retire `flows/workstream.yaml` when no callers remain.
## Task: Closeout and fleet gate
```task
id: STATE-WP-0070-T05
status: todo
priority: medium
state_hub_task_id: "dcc81665-ef84-4c0a-a88f-d8afc0d1bbb9"
```
Re-run `scan_workstream_terminology.py`, grep budget check, full test suite,
archive this workplan, notify CUST-WP-0055 fleet gate complete.
Done when legacy-meter weekly review shows no active legacy REST keys and MCP
aliases are removed or marked retired.