CHANGELOG + REPORT: claper PostgreSQL 17, calcom inconclusive
gates / gates (push) Successful in 2s

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
This commit is contained in:
2026-09-28 10:55:54 +02:00
parent 4a249b93dd
commit 174a7625bd
2 changed files with 29 additions and 10 deletions
+17
View File
@@ -1,3 +1,20 @@
## claper → PostgreSQL 17; calcom not moved (2026-09-28, `09` §3 decision 43)
- **claper: PostgreSQL 16 → 17** (`4a249b9`, alone in its commit, written by `upgrade-test.py --write-ladder`). Its upstream
compose runs 15; 17 is the newest major with no mount change (decision 42's reasoning; decision 43). Bench (LXC 9401 on
demo-hp, harness v4): converted in 30.8 s, check equal over 32 tables, seed read back, memory peaks 75.8 % (app) /
78.3 % (engine), 0 kills, the old datadir under 17 refused (negative). Box (9202, drill catalog, controller 0.277.0,
the guarded Update): `CONVERTED 16 → 17 in 7.244s — the check is equal (2 databases, 32 tables, 52 rows)`, done in
47 s, seed read back. Engine gate: ALLOWED.
- **New fixture:** claper's own release CLI (`bin/claper rpc` → `Claper.Accounts.register_user`, readback by
authenticating, a wrong password must refuse) — `scripts/upgrade_fixtures_box.py` (`c5015ce`).
- **calcom: NOT moved — inconclusive.** Its FROM version (`calcom/cal.com:v6.2.0`) does not start at the catalog's 768 MB
limit: OOM-killed at every start on 9202, stopped by the box after 6 crashes (R-703). Seed route found (`POST
/api/auth/setup`), not exercised.
- **Found: claper creates a default admin `admin@claper.co` / `claper` on every install** (R-702, P1) — not changed here.
Evidence: `felhom.eu/documentation/audits/pg-calcom-claper-2026-09-28/`.
## paperless-ngx → PostgreSQL 18, tandoor → 17, adventurelog → v0.13.0 (2026-09-27, `09` §3 decisions 41, 42) ## paperless-ngx → PostgreSQL 18, tandoor → 17, adventurelog → v0.13.0 (2026-09-27, `09` §3 decisions 41, 42)
Each move ALONE in its commit, written by `upgrade-test.py --write-ladder` from a bench verdict (throwaway LXC 9401, Each move ALONE in its commit, written by `upgrade-test.py --write-ladder` from a bench verdict (throwaway LXC 9401,
+12 -10
View File
@@ -1,14 +1,16 @@
# REPORT — 2026-09-27: paperless-ngx → PostgreSQL 18, tandoor → 17, adventurelog → v0.13.0 # REPORT — 2026-09-28: claper → PostgreSQL 17; calcom inconclusive
Brief: version-travel (Parts B and C). Architecture read: `09-update-architecture.md` §3 decisions 35–42, §6.4 parts 4, 5, 10. Brief: "golden, Day-0 vouch, kept data from off-site…" Part C. Architecture read: `09-update-architecture.md` §3
decisions 35–42 (42's reasoning applied as decision 43).
| app | move | bench (LXC 9401) | box 9202 (guarded Update) | commit | | app | move | bench (LXC 9401, demo-hp) | box 9202 (guarded Update) | result |
|---|---|---|---|---| |---|---|---|---|---|
| paperless-ngx | postgres 16 → 18 (+ mount) | converted 35.4 s, 72 tables equal, seed ✓, anon peak 40.0 % | converted, done 64.6 s, seed ✓ | `46affe0` | | claper | postgres 16 → 17 | proven — converted 30.8 s, 32 tables equal, seed back, peaks 75.8 % / 78.3 %, 0 kills | proven — CONVERTED in 7.2 s, done 47 s, PG_VERSION 17, seed back | live catalog `4a249b9`, engine gate ALLOWED |
| tandoor | postgres 16 → 17 | converted 23.6 s, 100 tables equal, seed ✓, anon peak 78.7 % (app) | converted, done 52.3 s, seed ✓ | `53b84ca` | | calcom | — | not run | FROM v6.2.0 OOM-killed at 768 MB on a fresh install (R-703) | inconclusive |
| adventurelog | v0.12.1 → v0.13.0 (+ health + world-data fixes) | healthy 217 s, file reused, seed ✓, anon peak 73.0 % | done 204 s (5-min wait), file reused, seed ✓ | `06ea7da` |
Engine gate on the push range printed `ALLOWED` for both PostgreSQL moves. Catalog gates: all OK. Not moved: - Fixture: claper `rpc register_user` + authenticate readback (negative control: wrong password refuses) — `c5015ce`.
calcom, claper (no headless seed route checked this session), immich and the PostGIS family (out of scope). - calcom seed route exists (`POST /api/auth/setup`, first user only) but the app never ran long enough to use it.
Observation: under the drill's 90 s health wait adventurelog v0.13.0 is undone (its backend needs ~3 min at first - New rows: R-702 (claper default admin `admin@claper.co`/`claper`, P1), R-703 (calcom OOM at 768 MB, P2).
start); the product default is 5 min. - Bench LXC 9401 destroyed (hostname checked), template removed; `local-lvm` 55.59 % at teardown.
Evidence: `felhom.eu/documentation/audits/pg-calcom-claper-2026-09-28/`.