Secret scan before commit: 6162 files, 0 hits, control 1. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
6.3 KiB
REPORT — 2026-09-30: the fixes before the first real tester
Architecture read first: 07 §6 (the 2026-09-16 ruling), 03 (the restore test's selection), 05 (self-bind),
04 §3.1 (signed delivery), 09 §3 decisions 45–49; rows R-719 … R-727, R-95, R-240, R-494, R-600, R-688.
Releases: controller v0.283.0 + v0.283.1, agent v0.138.0, hub v0.126.0. Evidence:
documentation/audits/evidence-fixes-first-tester-2026-09-30/ (part0, partA, partC, partD, partE, release).
Tester-2 — read-only checklist (nothing on Tester-2, Cloudflare, ep0 or the Storage Box was changed)
| # | item | state | where to fix |
|---|---|---|---|
| 1 | Tunnel token pasted | done — tunnel 3ce0eccd… (Peti's original, reused) |
— |
| 2 | DNS of sajatfelhom.hu |
done — ONE record *.sajatfelhom.hu → that same tunnel; no leftover pointing elsewhere; today 530 (no connector, right with no box) |
— |
| 3 | The tunnel's route *.sajatfelhom.hu → https://traefik, No TLS Verify |
UNKNOWN — the record's Cloudflare key reads DNS only (Authentication error on the tunnel; stopped there) |
Cloudflare → Zero Trust → Networks → Tunnels → this tunnel → Published application routes |
| 4 | Off-site | done — shared 100 GB, new sub-account 322460 (username sub2 reused; Peti's was emptied and deleted 2026-09-25) |
— |
| 5 | DR tier (ep0) | done — ON; nothing of Tester-2 or Peti on ep0 yet (made at the first connection) | — |
| 6 | The connect e-mail | sent twice at 07:36 UTC (the customer was created twice, R-728) — only one of the two links works; valid until 2026-10-07 07:36 UTC | Tell your friend: if one link says „expired", use the other; or press „Send self-bind link" once just before the install |
| 7 | E-mail language | English — mail, bind page and the box start in English | Hub → Tester-2 → Edit, if Hungarian is wanted |
| 8 | Owner passphrase | yours to hand over | in person / by phone |
| 9 | Customer id Tester-2 has a capital letter |
never walked before; no known break | note only |
The Parts
| Part | state | note |
|---|---|---|
| 0 Tester-2 read-only | done | checklist above; items 3 and 6 need you |
| A1 measure the over-quota path | done | it deletes nothing extra: refuses new pushes, runs only the ruled retention; now pinned |
| A2 apps off-site by default + one press for older apps | done | controller v0.283.0; live on 9202 |
| A3 size warning | done | page card; unit + parity proven (a household NAS target has no quota to test live) |
| B guide + slips | done / narrowed | six stale lines rewritten (the sixth found on the way: auto-reboot); R-724/R-725 partly, the rest narrowed |
| C1 ep0 cleanup | done | three archives removed; every other namespace byte-identical |
| C2 agent v0.138.0 | done | signed delivery to both demo boxes (340 s); due-check normal on both |
| D fresh link for a returning customer | changed | the brief's trigger cannot be built (a registering box is unclaimed); built „Új linket kérek" on the expired/used page |
| E Stop holds | done, after a live failure | v0.283.0 was wrong in production (adapter); v0.283.1 fixed and proven live |
| F day-one mails | done | unit + red-proof; live proof at Tester-2's first hour |
Claims in the brief that turned out wrong, named
- "The over-quota path prunes history" — wrong. Over the quota the box refuses new pushes and runs the SAME retention as every night; with no new snapshots nothing extra ages out. No P1.
- "Peti's Cloudflare records for
sajatfelhom.humay still be there" — there is exactly one record, and it points at the tunnel Tester-2 now carries (Peti's tunnel, reused). Nothing stale to remove. - "A PBS archive carries its box's key fingerprint or host id" — half right: the key fingerprint yes (PVE
content
encrypted), a host id no (the comment is only „felhom local-api", the owner is the customer's token). - "The hub sends no link at registration" — right, and it cannot: the registration carries nothing of a customer. The fix was changed to a button on the old link's page.
- "Stop is lost at the backup's resume only" — wrong: also at the nightly volume dump, the update leg and the startup crash recovery; all four fixed.
- Mine, from 2026-09-30: "the ✗ names the wrong tier" — misread; the local-tier heading was the NEXT section.
Red-proofs (each seen failing on its assertion, then restored)
RP31 new app not ON · RP32 earlier OFF overridden · RP33 hook not wired · RP34 over-quota forget differs · RP35 exact
quota "does not fit" · RP36 quiesce restarts a stopped app · RP37 dump restarts it · RP38 update leg presses it ·
RP39 (agent) an earlier box's archive picked · RP40 new box "recovered" · RP41 first-hour skip mailed · RP42 no fresh
link · RP43 the production adapter does not answer · RP44 crash recovery restarts it. Outputs:
evidence-fixes-first-tester-2026-09-30/ and the scratchpad rp/ copies.
Slips of mine, said
- The first hub/evidence commit went out after my secret-scan script crashed (it looked for last night's shredded files). Scanned right after: 5 125 files, 7 secrets, 0 hits, control 1. Nothing leaked.
- v0.283.0 shipped the Stop fix un-wired in production; the live test caught it; v0.283.1 is the second controller release this session (the one-release rule bent, reason in its CHANGELOG).
Rows
Closed R-719, R-720, R-721, R-722, R-727. Fixed pending live proof R-723. Narrowed R-724, R-725. Opened R-728 (customer created twice), R-729 (no way to remove an off-site target). Register 359 → 361 rows. R-726 (a returning customer's orphaned repository) stays open — a NEW record does not meet it.
Teardown
- 9202: controller left on 0.283.1 (scratch; the floor does not reach it); the throwaway NAS target switched off
through the form and then removed from
settings.jsonwith the controller stopped (R-729: no product path);glanceremoved with its data; paperless-ngx running; the off-site switches back OFF. - Demo boxes: controller 0.283.1 by the floor, agent 0.138.0 by signed jobs — nothing else.
- ep0: only the three archives of decision 51. Hub: floor 0.283.1 (MinAgent 0.131.0 declared); hub 0.126.0.
- Tester-2 / Cloudflare: read only. DooPlex: pushes, builds, the hub deploy, signing.