net-kingdom/workplans/ADHOC-2026-07-02.md
tegwick 13001a1452
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
fix(workplans): qualify ad-hoc identifiers with the repository prefix
`ADHOC-YYYY-MM-DD` is unique per date but not per repository, so any two repos
opening an ad-hoc on the same day collide. The 2026-08-26 fleet projection
reset refused 9 records for exactly this reason.

Canon (work-record-types_v0.1, CUST-WP-0066) settled the form as
`{PREFIX}-WP-ADHOC-YYYY-MM-DD`, filename unchanged, and grandfathered existing
ids on the condition they are never *silently* re-derived. This is the explicit
migration that clause allows for.

The hub id is derived from the record id, so a changed id is a different
record: stale state_hub_*_id fields are dropped and fix-consistency re-derives.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 2583210@bnt-lap001
Assistant-Session: f2bff2d5-e9b2-4338-92ca-10282a927006
2026-08-28 00:28:23 +02:00

48 lines
1.5 KiB
Markdown

---
id: NK-WP-ADHOC-2026-07-02
type: workplan
title: "Ad Hoc Tasks — 2026-07-02"
domain: infotech
repo: net-kingdom
status: finished
owner: codex
topic_slug: net-kingdom
created: "2026-07-02"
updated: "2026-07-02"
---
# Ad Hoc Tasks — 2026-07-02
## Fix creds-bootstrap-agent Phase 0 dry-run on machines without the age key
```task
id: NK-WP-ADHOC-2026-07-02-T01
status: done
priority: low
```
`--dry-run` previously aborted silently in Phase 0 on any machine without
`~/.config/sops/age/keys.txt`: key generation is correctly skipped in dry-run,
but the subsequent public-key read (`grep` on the missing file) killed the
script under `set -e`, so no later phase could be exercised.
Fix: when the key file is absent in dry-run, continue with a placeholder
recipient and a clear notice instead of dying; live runs without a key still
fail hard. Verified: full `--dry-run` now traverses Phase 0 through Phase 10
including the new Phase 7b OpenBao hook (NET-WP-0020-T02) on a machine with
no age key.
## Fix broken check-secrets Make target (unescaped `$`)
```task
id: NK-WP-ADHOC-2026-07-02-T02
status: done
priority: medium
```
`make check-secrets` failed with a bash parse error ("unexpected EOF while
looking for matching `'`"): the trailing `grep -v '/$'` used a single `$`,
which make expanded before bash saw it. Escaped to `$$`. Verified:
`make check-secrets` passes again ("All secrets/ files appear SOPS-encrypted").
Pre-existing bug, unrelated to NET-WP-0020; found while running the final
checks for that workplan.