- Migration addendum: replace the 'DNS split' wording with the verified state —
every hostname resolves to the new box (A+AAAA) per Cloudflare's public
resolver; nothing points at the old box.
- Reframe the old box: not a benign rollback spare but a decommissioned server
still alive and internet-exposed (22/80/443/587/993 open), holding old data and
config, serving no member traffic. UNRESOLVED — operator decision to shut it
down or firewall it. Do not act on it without the operator's word.
- README: add a 'Known open items' section listing the exposure, the CI failure,
the unpushed CI-agent repo and the unconfirmed member mailbox contents.
Audit of the operator docs against live reality (2026-11-04):
- app-inventory.md: all 19 Cloudron apps with id, fqdn and registry image pin.
Corrects the portal path (code/member-portal, not co-op/member-portal) and the
panel path (local/coop.inference.admin-panel, not code/admin-panel).
- maintenance/backups.md: the two backup systems; the deliberate per-user restic
cache split and the --group-by "" retention fix, with why.
- maintenance/woodpecker-ci.md: CI server + agent, image build/pin, manual-only
trigger, git-lfs requirement, and its current not-yet-green state (agent's
job-collection long-poll gets HTTP 500 from the server).
- provider-pricing/: index + GreenPT, Tinfoil (local EHBP proxy architecture) and
the Metis /v1/systemone decision-model route; regolo.md updated to record the
gateway prices were applied.
- agent-fleet.md: steward, infrastructure-bot and socialbot (Unix users, gateway
units, teams); member-bot tier 2 planned but not yet provisioned.
- README: file list; operator-token-runbook: correct the membership_sweep cadence
(3x daily, not nightly); migration doc: post-migration addendum (16->19 apps,
DNS split resolved, old box still on with apps stopped).
Absorbs the Cloudron server-migration material from co-op/runbooks
(now archived) so there is a single public operator documentation
repository. Files move into migration/ (plan, DNS change sheet,
pre-migration state) and provider-pricing/ is kept as its own section;
the merged README replaces both.
History is preserved: this is a merge of the unrelated histories, so
co-op/runbooks' 26 commits remain reachable from this repository and
git log -- migration/ shows their real authors and messages. File
contents are byte-identical to co-op/runbooks (blob hashes unchanged).