3.9 KiB
2026.09.14.01 — command-hq self-reported arm/fire/disarm
One commit, deploy/2026.09.09.01..36db9a2a. Backend-only, no schema change, no new dependency.
What it is
Three new routes, POST /command-hq/commanders/dir/:dirName/{arm,fire,disarm} — a second, self-reported
door onto the existing armCommandHqWatcher/recordCommandHqWatcherFired/disarmCommandHqWatcher
functions, for a commander loop that outlives its own turn (detached, or a tracked background job that
dies with the turn anyway) and so never produces the harness's own task:started/task:notification
events. Authenticated with the commander's own long-lived OFFICER_API_KEY. Full account in
docs/command-hq.md → "Self-reported arm".
No route removed, no existing route's contract changed, no frontend change. The only way this release
does anything is a host restarting officer to pick up the new routes — a commander whose loop already
calls them (this machine's four) gets nothing from the rollout on any OTHER host, because those hosts'
own commanders, if any, don't call them yet.
Verified, not assumed
git diff --name-only deploy/2026.09.09.01..HEAD | grep -iE 'schema|databases/' # → nothing
git diff --name-only deploy/2026.09.09.01..HEAD -- package.json bun.lock # → nothing
git diff --name-only deploy/2026.09.09.01..HEAD -- docs/servers.md # → nothing, host list unchanged
bun run docs:check # → green
No schema change, no dependency change, no host-list change since the last release. package.json
version bumped to match this tag and nothing else in it changed.
Every host — the commands
Standard steps only, nothing extra: dirty check (TRACKED only), git fetch origin --tags,
git merge --ff-only deploy/2026.09.14.01, bun run plugins:update, pm2 restart officer. No
bun install, no db:push — neither is needed and running either is not a finding, just unnecessary.
Verify it came back — two checks, per host
No schema table to query this time, so the usual three checks drop to two:
pm2 jlist—officerisonlineand itsrestart_timemoved.- HTTP —
/api/healthon the host's own port.200or401are both healthy. Port is 9010 onmacbookpro, 9000 elsewhere.
Per host
| Host | Login | Note |
|---|---|---|
alpha |
pastilhas |
|
fofos |
pastilhas |
|
macbookpro |
pastilhas |
Laptop. Asleep is a SKIP with a note. Port 9010. |
deadpool-rezio-bridge |
br |
Not pastilhas. |
Skipped, deliberately — not failures
officer-dev— the host the rollout runs on. Skip entirely, per the standard rule.macbruno— reachability unknown at cut time; check live, unreachable is a SKIP not a failure.- Both Pertento hosts — deliberately-skipped list in
docs/servers.mdsince 2026-09-08.
What "done" looks like
Four hosts attempted: alpha, fofos, macbookpro, deadpool-rezio-bridge. Each at
deploy/2026.09.14.01, officer back online, health answering on the right port. A host that fails
does not stop the rollout — its own line, what failed, what never ran.
Known and carried, not introduced here
bunx tsgo reports one pre-existing type error in src/servers/sidecar/claude/claude-manager.ts:667
(SdkUserMessage vs SDKUserMessage, from the agent SDK's own types) — present before this release,
type-only, stripped at run time. Named here so it isn't mistaken for something this release did.