feat(ACTIVITY-WP-0014): close workplan — catchup_latest deployed & verified on railiance01

T04 done: built+deployed the WP-0014 image to railiance01, applied catchup_latest
to daily-statehub-wsjf-triage, /admin/sync clean (6 defs, 4 schedules, 0 errors).
Live schedule verified OverlapPolicy=BufferOne, CatchupWindow=1d; pods healthy.
All tasks T01-T05 complete; beachhead-endpoint adoption tracked in WP-0015.
Workplan status -> finished.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-24 12:52:54 +02:00
parent 65ef005c2d
commit 4b5e96d7c1

View File

@@ -4,11 +4,12 @@ type: workplan
title: "Schedule Misfire Robustness & Run-Miss Recovery Options"
domain: infotech
repo: activity-core
status: active
status: finished
owner: claude
topic_slug: activity-core
created: "2026-06-23"
updated: "2026-06-23"
updated: "2026-06-24"
status_note: "T01-T05 complete; beachhead-endpoint adoption split to ACTIVITY-WP-0015"
state_hub_workstream_id: "91b64686-5d17-4c86-bc9e-3d0ee6720cf5"
---
@@ -140,16 +141,20 @@ be invisible.
```task
id: ACTIVITY-WP-0014-T04
status: progress
status: done
priority: medium
state_hub_task_id: "04e9d1d2-1192-4402-9402-b12c5d7d44e5"
```
Choose and set the appropriate `misfire_policy` for `daily-statehub-wsjf-triage`
(likely `catchup_latest` — one missed daily run should still run, but a
multi-day outage should not flood the triage feed). Update the Railiance runtime
ConfigMap / bundle, redeploy, and document the run-miss options + per-definition
guidance in `docs/runbook.md`. Depends on T01 (confirm) and T02 (modes exist).
Set `misfire_policy: catchup_latest` for `daily-statehub-wsjf-triage`, documented
run-miss options in `docs/runbook.md`.
**Deployed & verified to railiance01 (2026-06-24):** built `activity-core:
railiance01-prod` with the WP-0014 code (T02/T03/T05), imported into k3s
containerd, applied the ConfigMap, rolled `actcore-worker`/`api`/`event-router`
onto the new image, and ran `/admin/sync` (6 defs, 4 schedules upserted, 0
errors). The live Temporal schedule now reports `OverlapPolicy BufferOne` +
`CatchupWindow 1d` (= `catchup_latest`); pods healthy, API `db:true temporal:true`.
## Keep activity-core thin under the State Hub beachhead model