Read digest-pinned containers in the inventory, and log the Kuma upgrade #136

Merged
cruelacid merged 1 commit from worktree-kuma-2-followup into main 2026-09-24 07:16:18 +01:00
Owner

Task: NEC-88

This follows #135. The ops box's Uptime Kuma was upgraded to 2.5.5 on 24 Sep 2026 (06:02:49–06:07:17 UTC).

  • Inventory fix: Compose reports a container recreated from a digest pin as image:tag@sha256:…. inventory.mjs split that at the colon inside sha256:, so the upgraded Kuma showed as unread rather than current. The new runningEntry keys it by image:tag. There's a regression test, and it fails when the old split is restored. The live --hosts run now reads Kuma as current.
  • UPGRADES.md: adds the log row, the production migration time (4 min 28 s, about 5.7× the rehearsal), and a note that the banner step doesn't apply when Kuma is what's being upgraded.

Changelog

NONE

🤖 Generated with Claude Code

https://claude.ai/code/session_014jXw5B2oryJCk6KxdkjZJR

Task: NEC-88 This follows #135. The ops box's Uptime Kuma was upgraded to 2.5.5 on 24 Sep 2026 (06:02:49–06:07:17 UTC). - **Inventory fix:** Compose reports a container recreated from a digest pin as `image:tag@sha256:…`. `inventory.mjs` split that at the colon inside `sha256:`, so the upgraded Kuma showed as `unread` rather than `current`. The new `runningEntry` keys it by `image:tag`. There's a regression test, and it fails when the old split is restored. The live `--hosts` run now reads Kuma as `current`. - **UPGRADES.md:** adds the log row, the production migration time (4 min 28 s, about 5.7× the rehearsal), and a note that the banner step doesn't apply when Kuma is what's being upgraded. ## Changelog NONE 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_014jXw5B2oryJCk6KxdkjZJR
Read digest-pinned containers in the inventory, and log the Kuma upgrade
All checks were successful
Release note / release-note (pull_request) Successful in 13s
CI / build (pull_request) Successful in 4m22s
CI / e2e (pull_request) Successful in 5m10s
CI / promote (pull_request) Has been skipped
CI / build (push) Successful in 4m38s
CI / e2e (push) Successful in 5m3s
CI / promote (push) Successful in 31s
f54dbeee16
The ops box's Kuma went to 2.5.5 on 24 September. Recreated from a
digest-pinned line, its container reports `image:tag@sha256:…`, which the
inventory split at the colon inside `sha256:` and so matched to no pin:
the service read as `unread` the moment its pin was most precise.
runningEntry keys it by image:tag and takes the running digest from the
reference when RepoDigests is empty. Mutation-checked: the new test fails
with the old split.

UPGRADES.md gains the log row, the production migration time (4 min 28 s,
5.7x the rehearsal), and why the banner step does not apply when the
thing being upgraded is Kuma itself.

Task: NEC-88

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014jXw5B2oryJCk6KxdkjZJR
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Nectenda/nectenda!136
No description provided.