2026-08-20 11:20:23 +02:00
|
|
|
---
|
|
|
|
|
id: ACTIVITY-WP-0031
|
|
|
|
|
type: workplan
|
|
|
|
|
title: "Production automation execution reliability cleanup"
|
|
|
|
|
domain: infotech
|
|
|
|
|
repo: activity-core
|
|
|
|
|
status: active
|
|
|
|
|
owner: codex
|
|
|
|
|
topic_slug: activity-core
|
|
|
|
|
created: "2026-08-20"
|
|
|
|
|
updated: "2026-08-20"
|
|
|
|
|
related:
|
|
|
|
|
- ACTIVITY-WP-0021
|
|
|
|
|
- ACTIVITY-WP-0022
|
|
|
|
|
- ACTIVITY-WP-0026
|
|
|
|
|
- ACTIVITY-WP-0030
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
# Production automation execution reliability cleanup
|
|
|
|
|
|
|
|
|
|
## Goal
|
|
|
|
|
|
|
|
|
|
Make production automation health reflect completed execution rather than only
|
|
|
|
|
successful schedule fires, stop known task floods, and repair the repository
|
|
|
|
|
contracts found during the 2026-08-20 activity-core review.
|
|
|
|
|
|
|
|
|
|
## Restore provider-backed execution
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
id: ACTIVITY-WP-0031-T01
|
|
|
|
|
status: wait
|
|
|
|
|
priority: high
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Production FI, Binky, and daily-triage runs reach `llm-connect` but fail after
|
|
|
|
|
three attempts. An in-cluster fixture returned a sanitized upstream OpenRouter
|
|
|
|
|
HTTP 401. Credential ownership is the `railiance-platform` OpenBao lane
|
|
|
|
|
(`openrouter-llm-connect`); activity-core must not bypass that custody boundary.
|
|
|
|
|
Track rotation/reconciliation, restart, and a successful fixture smoke as the
|
|
|
|
|
exit evidence.
|
|
|
|
|
|
2026-08-20 22:47:18 +02:00
|
|
|
Progress 2026-08-20: railiance-platform repaired the delivery half. The
|
|
|
|
|
activity-core ESO bootstrap default now includes the approved exact-path
|
|
|
|
|
llm-connect policy, its replacement token reports read capability, and the
|
|
|
|
|
reviewed `ExternalSecret` is `Ready=True` / `SecretSynced` on railiance01. It
|
|
|
|
|
took ownership of the one-key Secret, llm-connect rolled out, and the real
|
|
|
|
|
actcore-worker reaches `/health` through the Service. The post-restart fixture
|
|
|
|
|
still returns sanitized OpenRouter HTTP 401, proving the canonical key itself
|
|
|
|
|
is rejected. T01 remains `wait` on an attended OpenRouter account owner to mint
|
|
|
|
|
and safely provision a replacement key; no key value was read or printed.
|
|
|
|
|
|
2026-08-20 11:20:23 +02:00
|
|
|
## Emergency-pause weekly SBOM fan-out
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
id: ACTIVITY-WP-0031-T02
|
|
|
|
|
status: done
|
|
|
|
|
priority: high
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Disable `weekly-sbom-staleness` in source and on railiance01 before the next
|
|
|
|
|
Monday window. The bounded daily replacement remains owned by ACTIVITY-WP-0030;
|
|
|
|
|
this task is the immediate containment measure for the observed 75-task fire.
|
|
|
|
|
|
|
|
|
|
Completed 2026-08-20: source, live DB, and Temporal schedule are disabled. The
|
|
|
|
|
new image and ConfigMap projection were deployed; schedule reconciliation
|
|
|
|
|
reports the definition as paused.
|
|
|
|
|
|
|
|
|
|
## Report execution outcomes in production status
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
id: ACTIVITY-WP-0031-T03
|
|
|
|
|
status: done
|
|
|
|
|
priority: high
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Extend `scripts/prod_automation_status.sh` with ops-run outcome counts, bounded
|
|
|
|
|
failed/open detail, and daily-triage progress validation evidence. Preserve
|
|
|
|
|
sanitized error output and keep the command deterministic and read-only.
|
|
|
|
|
|
|
|
|
|
Completed 2026-08-20. The live report now shows ops-run state counts, bounded
|
|
|
|
|
failure/open detail, and bounded State Hub `daily_triage` validation evidence.
|
|
|
|
|
It exposed today's FI/Binky 502 failures and triage `output_validated=false`
|
|
|
|
|
beside otherwise healthy schedule-fire counts.
|
|
|
|
|
|
|
|
|
|
## Reconcile implementation and test contracts
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
id: ACTIVITY-WP-0031-T04
|
|
|
|
|
status: done
|
|
|
|
|
priority: medium
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Repair the four reproducible suite failures, keep runtime-path resolution out of
|
|
|
|
|
the rules package boundary, and document that `dedupe_key_strategy` is retained
|
|
|
|
|
metadata rather than repeated-content suppression.
|
|
|
|
|
|
|
|
|
|
Completed 2026-08-20. Runtime URI resolution now happens before the pure rules
|
|
|
|
|
boundary; stale assertions/test doubles are reconciled; disabled one-shots are
|
|
|
|
|
deleted idempotently during schedule sync; and the dedupe contract is truthful.
|
|
|
|
|
Verification: `347 passed, 1 skipped`; a subsequent focused warning regression
|
|
|
|
|
passed `10 passed` without warnings.
|
|
|
|
|
|
|
|
|
|
## Repair consumer routing and State Hub metadata
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
id: ACTIVITY-WP-0031-T05
|
|
|
|
|
status: wait
|
|
|
|
|
priority: medium
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Make the OpenBao retention reactivation task explicitly claimable without
|
|
|
|
|
authorizing destructive cleanup. Route Binky's missing workload credential
|
|
|
|
|
front door and the duplicate legacy workstream identifiers to their canonical
|
|
|
|
|
owners. Clear stale human-needed flags only for already-terminal activity-core
|
|
|
|
|
tasks.
|
|
|
|
|
|
|
|
|
|
Activity-core cleanup is complete: three terminal tasks no longer retain stale
|
|
|
|
|
`needs_human` flags. External handoffs were sent to binky-control and
|
|
|
|
|
railiance-platform for mail credential materialization, repo-manager for the
|
|
|
|
|
duplicate registrar IDs, and railiance-master for the unclaimed retention
|
|
|
|
|
closeout. The expired retention one-shot is disabled; its existing open ops run
|
|
|
|
|
remains operator-visible and cannot authorize destructive cleanup.
|
|
|
|
|
|
|
|
|
|
## Acceptance
|
|
|
|
|
|
|
|
|
|
- [x] Weekly SBOM fan-out is disabled in source and production
|
|
|
|
|
- [x] Production status distinguishes schedule fires from execution failures
|
|
|
|
|
- [x] Full test suite is green
|
|
|
|
|
- [ ] Provider and consumer prerequisites have named owners and evidence
|
|
|
|
|
- [x] Workplan and State Hub task state are consistent
|