From 64894ad96e3155a51a932b4aa531c8775c98e75d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Padez?= Date: Sun, 23 Aug 2026 02:59:30 +0000 Subject: [PATCH] deploy report 2026.08.23.02 --- deploy/2026.08.23.02.report.md | 69 ++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 deploy/2026.08.23.02.report.md diff --git a/deploy/2026.08.23.02.report.md b/deploy/2026.08.23.02.report.md new file mode 100644 index 00000000..49fa9045 --- /dev/null +++ b/deploy/2026.08.23.02.report.md @@ -0,0 +1,69 @@ +# 2026.08.23.02 — deploy report + +**5 of 5 target hosts succeeded.** Two hosts were not targets: `officer-dev` (the rollout ran from it) +and `edge-pertento-bridge` (deliberately skipped in `docs/servers.md`). + +Every target went the same way, in the plan's order: `git fetch origin --tags`, `git merge --ff-only +deploy/2026.08.23.02`, `bun db:push`, `bun run plugins:update`, `pm2 restart officer`. No tree was dirty +in tracked files, so no host was skipped for that. Every host fast-forwarded cleanly to +`0a8fe1c2` — the tag commit, and exactly that commit on all five. + +The tag and `package.json` agree (`2026.08.23.02`), and the plan file was present at the tag. + +## Per host + +| Host | HEAD before | HEAD after | db:push | plugins:update | `officer` restart_time | Result | +| ---------------------------- | ----------- | ---------- | ------- | -------------- | ---------------------- | ------- | +| `alpha` | `e6f1388a` | `0a8fe1c2` | applied | 12/12 in 47s | 67 → 68, online | ok | +| `fofos` | `e6f1388a` | `0a8fe1c2` | applied | 1/1 in 7s | 21 → 22, online | ok | +| `macbookpro` | `b22e9d86` | `0a8fe1c2` | applied | no plugins | 8 → 9, online | ok | +| `production-pertento-bridge` | `68d60e40` | `0a8fe1c2` | applied | 1/1 in 5s | 0 → 1, online | ok | +| `deadpool-rezio-bridge` | `e6f1388a` | `0a8fe1c2` | applied | 2/2 in 7s | 6 → 7, online | ok | +| `officer-dev` | — | — | — | — | — | SKIPPED | +| `edge-pertento-bridge` | — | — | — | — | — | SKIPPED | + +`bun db:push` reported `Changes applied` on all five. It prompted for nothing — `sendoff_devices` and +`sendoff_senders` are new tables, so the diff was additive. + +## What restarted, beyond what the plan asked for + +The plan named `officer` only, and `officer` is the only process this deploy restarted deliberately. +`bun run plugins:update` restarts each plugin's own sidecar as it goes — that is the script's behaviour, +not a fault, and it is the larger part of what moved: + +- `alpha` — twelve plugin sidecars bounced during the plugins step (atelier, bitcoin-wallet, email, + gitea, invoices, jellyfin, music, offscale, photos, soulseek, transmission, vault). +- `fofos` — one (`officer-gitea`). +- `production-pertento-bridge` — one (`officer-gitea`). +- `deadpool-rezio-bridge` — two (`officer-email`, `officer-offscale`). +- `macbookpro` — none; no plugins are installed there. + +After each restart, `pm2 jlist` showed `officer` `online` with `restart_time` incremented, and no process +on any host was `errored`. + +## Hosts the plan flagged + +- **`production-pertento-bridge`** was one release behind (`68d60e40`, which is `deploy/2026.08.22.02`) + and fast-forwarded past `deploy/2026.08.23.01` to this tag in one step. Its `known_hosts` entry was + absent as expected; the first connection pinned the ED25519 key it offered. Expected, per the plan. +- **`edge-pertento-bridge`** was not contacted at all. Nothing was spent on it. +- **`macbookpro`** was awake and needed the documented PATH append (`/opt/homebrew/bin`) for the `bun` + steps, with `pm2` run separately through `$SHELL -ic`. + +## Things worth knowing, none of them failures + +- `fofos` carries one untracked file, `scripts/chk.ts`. A note, not a skip — a fast-forward cannot touch + it, and it was left alone. +- `production-pertento-bridge` prints an nvm/`.npmrc` `globalconfig` warning before every command run + through `$SHELL -ic`. It is noise; every command it prefixed succeeded. +- `macbookpro` prints `command not found: starship` on stderr from `.zshrc`. Harmless, but it corrupts + `pm2 jlist` output if stderr is merged into stdout — read that host's JSON with `2>/dev/null`. + +## What was not done + +- **`officer-dev` was not deployed.** Its checkout is already at `0a8fe1c2` (the release was cut here), + but nothing was pulled, no schema was pushed, no plugin was updated and no process was restarted. The + rollout ran from this machine, and restarting `officer` here ends the agent doing it. That host needs + a deliberate `bun db:push`, `bun run plugins:update` and `pm2 restart officer` from the owner before + `/sendoff` will work on it — the schema change means the missing `bun db:push` is not cosmetic. +- No host got `bun install`. The plan forbade it: `bun.lock` is unchanged across this release.