From 13eb450d9f70d327098a45141e2dcf8f875b6079 Mon Sep 17 00:00:00 2001 From: kisfenyo Date: Wed, 15 Jul 2026 14:46:10 +0200 Subject: [PATCH] =?UTF-8?q?docs:=20CAMPAIGN-6D=20=E2=80=94=20P3-BROWSER=20?= =?UTF-8?q?PASS=20(escrow=20typed-back=20ceremony,=20hub=208-tab=20ring)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Escrow wizard completed (new code claimed, escrow_state=escrowed) — closes the long-pending supervised wizard pass. Cross-tab session shared. Hub 8-tab ring + live-refresh + dirty-form suppression (Auto-refresh paused on static tabs) verified. Secrets not captured. Co-Authored-By: Claude Opus 4.8 (1M context) Claude-Session: https://claude.ai/code/session_01HEPuEwyyGDJdcsXLFsTWJn --- documentation/audits/CAMPAIGN-6D-2026-07-15.md | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/documentation/audits/CAMPAIGN-6D-2026-07-15.md b/documentation/audits/CAMPAIGN-6D-2026-07-15.md index c4c989a..f05681f 100644 --- a/documentation/audits/CAMPAIGN-6D-2026-07-15.md +++ b/documentation/audits/CAMPAIGN-6D-2026-07-15.md @@ -47,7 +47,7 @@ phases below — none block the core promise.) | **P-TIER2** v2 deep | **PARTIAL** | Core proven in P-REG (v2 tree `.felhom-tier2-layout=2`, recovery-unit + userdata leg, `másik adatmeghajtó`). The 4 fixture-heavy scenarios (no-block app, N>1 appdata, re-class reconcile, old-flat→v2 migration) **not run** — need bespoke fixtures. Source guards present. | | **P-IMMICH** SQ3 (⚠) | **PASS** | Offsite snapshot = unit + mandatory `appdata/immich` (not optional-ro); restore scratch LOCAL (felhom-usb, not NAS), SP-3.1 shape; place missing-only (286 files); immich functional from offsite (thumbnail 200 + original 2.07 MB 200); mandatory byte-identical. | | **P-PLACE** F-3a-1..4 (⚠) | **PASS** | Folds in from P-IMMICH (scratch local + removed-on-success, ownership faithful). Negative: place refused with ZERO copies on no-prepared-restore. F-3a-1a/1b/4 present in source + unit-tested. | -| **P3-BROWSER** | **DEFERRED** | Needs the claude-in-chrome bridge (not exercised this session). Escrow typed-back / session-CSRF / hub 8-tab ring not run. | +| **P3-BROWSER** | **PASS** | Escrow typed-back ceremony completed (Viktor-driven; new code claimed → escrow_state=escrowed) — closes the long-pending supervised wizard pass. Cross-tab session shared. Hub 8-tab ring all load; live-refresh on Overview/Applications/Events/Host; **dirty-form suppression** via Auto-refresh "(paused)" on static/Edit tabs. Notifications tab corroborates P3-DELIVERY (OPERATOR+CUSTOMER emails SENT). Secrets not captured; recording discarded. (Deferred: session-expiry/logout re-auth.) | | **P3-DELIVERY** enlarge-block | **PASS** | G4 email restored via real form; a 51 GiB sparse mandatory fixture tripped the gate at the real 50 GiB quota → immich enlargement blocked, unit-only push continues, run OK, EnlargedBlocked=["immich"], notifier edge-fires ONCE, **both operator + customer ("Kedves Ügyfél!") emails delivered**. Reverted (fixture removed, blocked-state cleared, quota untouched). | | **P4-DEEP** deep tiers | **PARTIAL** | **Snapshot coherence PASS** (calibre-web + immich snapshot paths == capture set, excludes excluded/optional-ro). F7 timed-cut / restic self-heal-mid-run / restore-to-verify-compare not run (timing-sensitive). | | **P5-REST** real crash (⚠) | **PASS** | SIGKILL host-PID mid-offbox → auto-restart ~15 s; journal marked interrupted run failed (no false success); all apps stayed up; post-crash offbox run clean (no stale lock, no marker-without-legs). | @@ -69,16 +69,17 @@ phases below — none block the core promise.) Core promise (SQ3 immich + Accept #1) **GREEN**, and the customer-facing **enlarge-block delivery chain (P3-DELIVERY) now PASSES** — the "Kedves Ügyfél!" email is proven end-to-end. Friend-alpha's backup-safety -+ customer-notification gates are satisfied on real data. Remaining before recruiting (nice-to-have, not -blocking): the **P-DAY0** golden provision as a final dress rehearsal, and the P3-BROWSER/P-TIER2-deep/ -P4-timing coverage. ++ customer-notification gates are satisfied on real data, and the **P3-BROWSER** planes (escrow +typed-back ceremony completed, hub 8-tab ring, cross-tab session) now PASS. Remaining before recruiting +(nice-to-have, not blocking): the **P-DAY0** golden provision as a final dress rehearsal, plus +P-TIER2-deep / P4-timing coverage. ## 5. Evidence index → `180:~/campaign6/6D/evidence/` `00-preflight-gate.md`, `01-P-REG.md`, `02-box-state-reality.md`, `03-immich-prestate.manifest`, `04-P-FAB-export.md`, `05-P-FAB-byteidentical-diff.txt`, `06-P-FAB-import.md`, `07-P-IMMICH-offsite.md`, `08-P-IMMICH-restore-diff.txt`, `09-P-IMMICH-restore.md`, `10-P-PLACE.md`, `11-P5-REST.md`, -`12-P4-DEEP-coherence.md`, `13-P3-DELIVERY.md`. +`12-P4-DEEP-coherence.md`, `13-P3-DELIVERY.md`, `14-P3-BROWSER.md`. ## 6. Box / morning-recovery state @@ -89,13 +90,16 @@ P4-timing coverage. immich token temp files, the 1.7 GB `.fab` bundle, the generated-photos tars, the P3 sparse fixture. - **G4 email is now SET** (notifications.email = nagyfenyvesi.viktor@gmail.com) — a deliberate, kept restore of the wiped value. +- **A NEW recovery (escrow) code was generated** during P3-BROWSER (Viktor holds it off-server; the + prior code is invalidated for FUTURE backups, existing history stays valid with the old code). + escrow_state = escrowed. CC never saw/stored the code. - P3-DELIVERY changes fully reverted: sparse fixture removed, EnlargedBlocked cleared, offbox quota never changed (stayed 50 GiB). teszt_enroll kept (ruling). campaign6 orphaned mount remains (findings). ## 7. Outstanding queue -- **P3-BROWSER** — needs the browser bridge. - **P-TIER2** deep 4 scenarios + **P4-DEEP** timing sub-tests (F7 cut / restic self-heal / restore-verify). - **P-DAY0** — full nested-drill provision from golden 0.136.0. +- Minor P3-BROWSER remainder: session-expiry/logout re-auth pass. - Signed-update train (publish agent/golden to production customers) + Peti's box — out of 6D scope. - LOW: duplicate recovery-unit cleanup; campaign6 autofs (host reboot).