Commit Graph

  • 08a966b92f v0.127.0: customer-facing escrow ceremony wizard (/backup/escrow) + Scenario-F stale-blob re-check — one-shot R reveal (no-store, typed-back), re-stage-first start order, agent version gate (MinAgent 0.88.0), escrowed-state hash re-check with card warning (never flips, never blocks); manual-confirm button removed (endpoint stays deprecated) admin 2026-07-13 19:01:31 +02:00
  • 51c871ad9b docs: scrub the real hub bearer key from controller.yaml.example (hub v0.53.0 bearer de-git; placeholder only - real boxes use hub-issued per-customer keys) admin 2026-07-13 14:56:30 +02:00
  • c739003379 v0.126.4: edge-safe error statuses + native-alert ban — writeDiskJSON maps 502/504→500 (CF swallows those bodies; the M1 refusal reached the operator as a JSON SyntaxError popup), M1 refusal = typed errLastUsableDrive → 409; all 29 native alert() swept to showAlert + native_confirm_gate now bans alert( (F-11 class complete) admin 2026-07-13 14:13:05 +02:00
  • 6136461de6 docs: REPORT — v0.126.3 wizard-CSRF section (root cause, latency-via-claim-arc, red-proof, deploy) admin 2026-07-13 13:53:09 +02:00
  • f8df1e9f16 v0.126.3: storage wizard CSRF on claimed boxes — wizard pages rendered via raw render() shipped an EMPTY csrf-meta token, every /api/storage/init|attach POST died with 'token mismatch'; latent until the claim arc (unclaimed boxes skip CsrfProtect); fix = executeTemplate injection + session-backed regression test (red-proven) admin 2026-07-13 13:51:19 +02:00
  • 93c95f0fb5 docs: v0.126.x REPORT overwrite (parts, 4 red-proofs, gate outputs, drill live-QA evidence incl. reversible gate-lift + restore, open demo human steps) + CONTEXT admin 2026-07-13 12:07:09 +02:00
  • 21d0f66c15 v0.126.2: stylesheet cache-bust ?v={{.Version}} — CF edge caches /static/style.css 4h, every release served the previous CSS until TTL (hub v0.47.0 gotcha class, controller instance) admin 2026-07-13 12:00:35 +02:00
  • 41c8fc23cf v0.126.1: .form-input/.form-row finally have CSS — the classes were used across backups/import/offbox templates with NO backing rule (root cause of the unstyled .fab password field seen in 0.126.0 live QA); same visual spec as the .form-control twin admin 2026-07-13 11:57:08 +02:00
  • 912e6a62b6 docs: v0.126.0 UI uniformity bundle — CHANGELOG (parts A-E + gate housekeeping), REUSE (app_list_row canonical row + gate list), README (shared-row pattern, infra identity, Part E display pick), CONTEXT admin 2026-07-13 11:41:11 +02:00
  • 02c84e1ce2 Part E: the stale zero-toggle line tells the truth (v0.126.0) admin 2026-07-13 11:37:47 +02:00
  • 458cf4a4c2 Part D: mojibake_gate.py — double-encoded UTF-8 can never enter the source again (v0.126.0) admin 2026-07-13 11:35:04 +02:00
  • 67494f9890 Part C: restore-form polish — the .fab encryption field is a standard form field (v0.126.0) admin 2026-07-13 11:32:41 +02:00
  • 4f06149abc Part B: infra stacks carry identity — curated Hungarian metadata for cloudflared/traefik/filebrowser (v0.126.0) admin 2026-07-13 11:31:38 +02:00
  • 3eacb6c326 Part A: shared app_list_row partial — ONE row grammar on four surfaces (v0.126.0) admin 2026-07-13 11:26:48 +02:00
  • 7b3e7f2e71 chore: retire backups_split_move_check.py — the one-shot v0.124.0 migration gate served its purpose (v0.126.0 legitimately rewrites the moved blocks onto the shared row partial); doc refs updated (README page-map note, REUSE builder row) admin 2026-07-13 11:15:00 +02:00
  • e0618af438 docs: v0.125.0 path-strand fix — CHANGELOG + REPORT (probe transcript, red-proofs, round-trip evidence, Tier-1/2 mechanism) + CONTEXT + REUSE + README flows; hollow-bundle asymmetry recorded (containerized ≤0.124.0 exports suspect — re-export); floor note for the next train admin 2026-07-13 10:58:19 +02:00
  • 466f42708e controller: .fab volume legs stream via docker cp (fixes the containerized path-strand data loss, IA finding 1 HIGH) — zero shared paths both deployment shapes; export fails LOUD on any missing/empty claimed tar (no hollow bundles); import validates BEFORE it destroys (hollow bundle → app untouched); docker_run_volume_path_gate.py extinguishes the class (Tier-1/2 mounts documented host-visible) admin 2026-07-13 10:42:02 +02:00
  • 811a0ef7a7 docs: v0.124.0 backups IA restructure — CHANGELOG + REPORT + CONTEXT (decisions 1-3) + README page map + REUSE; records the HIGH containerized-.fab volume-strand finding and the agent SystemDisks legacy-boot finding admin 2026-07-13 10:17:58 +02:00
  • 753cd83456 controller: .fab browser download — the existing export pipeline staged under the data dir + a guarded streaming exit (estimate-first, io.Copy, post-stream cleanup, 1h TTL sweep); portability framing (decision 3); traversal guard red-proven, export→import round-trip + corrupt-bundle refusal unit-proven admin 2026-07-13 09:47:10 +02:00
  • aa967fbf69 controller: Felhom-offsite status card — three honest states from local data (opt-in pitch / Aktív-nincs-kijelölt / the regular status block); display-only by design (decision 2: never a state change), state-tested incl. the no-form/no-button invariant admin 2026-07-13 09:37:05 +02:00
  • 0ece2ba85c controller: backups IA split — four sub-pages (Áttekintés /backups, Távoli mentés /backups/remote, Alkalmazások /backups/apps, Visszaállítás /backups/restore); sections MOVED verbatim (backups_split_move_check.py enforces vs df7ad37); shared data builder extracted; offbox restore-to-verify relocated to the restore page; flash redirects + tier-3 anchors + tier2 back-link retargeted admin 2026-07-13 09:35:01 +02:00
  • df7ad378f4 docs: v0.123.0 polish batch — CHANGELOG + REPORT + CONTEXT + REUSE (felhomConfirm pattern, new gates) admin 2026-07-13 08:47:58 +02:00
  • b482860c03 controller: zero-toggle honesty — a configured+escrowed offbox with no app selected shows 'Nincs távoli mentésre jelölt alkalmazás…' on the toggle list, and a zero-toggle run reports 'Sikeres — nincs mentésre jelölt alkalmazás' instead of bare success admin 2026-07-13 08:27:52 +02:00
  • a00afcc79d controller: Tier-3 rename — customer-facing 'NAS-mentés' branding becomes 'Távoli mentés' (backups page, offbox flashes, quota copy); manual-target form generalized to any SFTP target; offbox_rename_gate.py enforces zero regressions admin 2026-07-13 08:23:43 +02:00
  • 8987ce0f67 controller: drill F-11 — inline two-step confirm (felhomConfirm + data-confirm) replaces every native confirm(); native_confirm_gate.py enforces zero; stale-data delete keeps its double acknowledgement inline admin 2026-07-13 08:19:39 +02:00
  • 40b53047f1 controller: atomicPromoteTar syncs via an O_RDWR handle — read-only fsync is refused on Windows, which kept the dev-box green gate permanently red (Linux behavior unchanged) admin 2026-07-13 08:19:39 +02:00
  • b4e0a197f9 controller: F-15 instant reset codes — reset-request response hash applied via the ACK's generation-guarded ClaimSync (emailed code works immediately; old-hub bare response = no-op) admin 2026-07-13 08:05:07 +02:00
  • d4641c221d docs: v0.122.0 customer-claim gate — REPORT + CONTEXT admin 2026-07-12 18:56:29 +02:00
  • 3cf49c7fd5 controller: customer-claim password gate v0.122.0 (closes DRILL-day0-vm F-4/F-5) admin 2026-07-12 18:42:39 +02:00
  • dec6fef20d REPORT: v0.121.0 live-validation results (9201, claude-in-chrome a–g green) admin 2026-07-12 12:33:39 +02:00
  • 9d05fa5c35 controller v0.121.0: backups page truth pass — remove dead Részletek card, real Tier-3 off-box state, SQLite-honest DB messaging admin 2026-07-12 12:26:30 +02:00
  • 92d670e8a6 controller v0.120.0: dead-app alerting (fix-3) + ring revision (fix-6) — CLOSES CAMPAIGN-3 (docs+CHANGELOG+REPORT+CONTEXT) admin 2026-07-12 10:31:12 +02:00
  • 40498254c6 fix-6: raise ring display cap to 5000 (viewer + Entries clamp); viewer default limit 1000 admin 2026-07-12 10:21:34 +02:00
  • e030b8d9a9 test: clean message in fix-6 spill tests admin 2026-07-12 10:09:22 +02:00
  • 6ab8f943af test: io.Discard logger in fix-3 tests admin 2026-07-12 10:08:39 +02:00
  • d8f6069b46 controller: fix-3 dead-app alerting + fix-6 ring cap/spill/spam (WIP, pre-build) admin 2026-07-12 10:07:47 +02:00
  • a6da64da15 controller v0.119.0: storage-health coherence F8 + mapped_uid F4 — docs + CHANGELOG + REPORT + CONTEXT admin 2026-07-12 09:44:22 +02:00
  • 5d91fc8cce controller: F8 share-row stub fusion + F4 mapped_uid range validation (WIP, pre-build) admin 2026-07-12 09:37:12 +02:00
  • 0f311adaa1 controller v0.118.0: backup integrity F7/F6/F5 — docs + CHANGELOG + REPORT + CONTEXT admin 2026-07-12 09:18:05 +02:00
  • e3903be0f1 test: F6 restore-point SSD label now clear (was blank) admin 2026-07-12 09:01:17 +02:00
  • 68b3a3932e controller: F7 atomic volume dumps + F6 no-single-copy + F5 stale-primary sweep (WIP, pre-build) admin 2026-07-12 09:00:16 +02:00
  • b389e73fff docs: REPORT for v0.117.0 (deployed 9201; Q1c reboot validation green; stub branches test-level only) admin 2026-07-11 21:25:12 +02:00
  • 4a9c54a105 test: pin netProbeFSClass=network in the C5 child-body suite (real statfs on linux correctly refuses tempdir) admin 2026-07-11 21:15:48 +02:00
  • c0f3e12483 v0.117.0: consuming-namespace NAS verification + deploy-view truth (RCA fixes 2+4) admin 2026-07-11 21:12:48 +02:00
  • 6e9dd1bfa1 docs: REPORT + CONTEXT for v0.116.0/v0.116.1 (deployed 9201, live-validated at info level) admin 2026-07-11 17:19:14 +02:00
  • 458d7e1ebc v0.116.1: ungate /debug + /api/debug from logging.level — the viewer must exist wherever the ring does admin 2026-07-11 17:12:20 +02:00
  • 26a43708b7 v0.116.0: observability pass — always-on debug ring + leveled sweep + agent tab + self-log pull — MinAgent: 0.81.0 admin 2026-07-11 16:45:57 +02:00
  • 647116480a docs: REPORT v0.115.0 + CONTEXT (version-aware Supports, DSM guidance, Q1c FAIL) admin 2026-07-11 15:47:21 +02:00
  • b6842a4bc3 v0.115.0: version-aware Supports (agent header channel) + DSM-validated NFS guidance — MinAgent: 0.81.0 admin 2026-07-11 15:03:41 +02:00
  • ac6adaaa44 docs: REPORT v0.114.0 — capability gate shipped, red-proofs, live validation (supported branch) admin 2026-07-11 14:05:32 +02:00
  • 53ab971fe4 feat: debug-log the capability-gate verdict per add + SupportState.String() admin 2026-07-11 13:59:23 +02:00
  • d9da5a0678 docs: v0.114.0 CHANGELOG (MinAgent header convention) + README NAS gate + CONTEXT + REUSE + coupled-feature rule in CLAUDE.md admin 2026-07-11 13:54:09 +02:00
  • 4a5c40b7cb test: fix TestBackupTier2Restore_DoubleClickRefused scheduling flake admin 2026-07-11 13:50:35 +02:00
  • 50da7329ac feat(ui): agent-outdated banner on the NAS settings page (capability gate, Part 3) admin 2026-07-11 13:49:29 +02:00
  • d347dc48d2 feat: agent-capability gate for coupled features — typed StatusError + Supports probe/cache + netstorage add gate (option-1) admin 2026-07-11 13:45:49 +02:00
  • 5d06ecf374 docs: CHANGELOG v0.113.0 + REPORT + CONTEXT + README NAS section + REUSE seams admin 2026-07-11 10:31:07 +02:00
  • a65dcff85a storage_network: full redesign on the canonical form pattern + protocol-honest guidance (v0.113.0 UI) admin 2026-07-11 10:05:08 +02:00
  • bb8737a81f netstorage: verify-before-commit orchestration — agentapi verify fields, uid-1000 re-exec probe, detached add job, orphan rows admin 2026-07-11 09:59:33 +02:00
  • 3db9126121 docs: REPORT + CONTEXT for v0.112.0 (deployed + live-proven credential-less on demo) admin 2026-07-10 18:02:05 +02:00
  • d910edd4ad docs: v0.112.0 CHANGELOG + README (registry access modes) + REUSE (runner vars seam, WWW-Authenticate parser) admin 2026-07-10 17:53:51 +02:00
  • b25ca60ab7 v0.112.0: self-update without credentials — anonymous Docker v2 token flow admin 2026-07-10 17:52:03 +02:00
  • b1250ad5a0 REPORT: live tail round-trip completed (see felhom.eu REPORT) admin 2026-07-10 16:54:52 +02:00
  • c414ba53b5 docs: REPORT + CONTEXT for v0.111.0 (deployed + live-validated on 9201) admin 2026-07-10 16:25:37 +02:00
  • 30927b6816 docs: v0.111.0 CHANGELOG + README (telemetry context/tails) + REUSE entries admin 2026-07-10 15:45:45 +02:00
  • 544c42a618 v0.111.0: remote app-log diagnostics — error context capture (±5 lines, capped+redacted) + on-demand log tails via ACK pull pattern admin 2026-07-10 15:43:29 +02:00
  • 332725a024 report: v0.110.0 C2/C1 fix deployed + live-validated (crash → next run self-heals) admin 2026-07-10 07:09:26 +02:00
  • cb9e992c7a v0.110.0: offbox stale-lock self-heal (campaign C2) + crash-truthful status (C1) admin 2026-07-10 07:02:23 +02:00
  • 0bd4cd02be docs: v0.109.1 README + REPORT (SLICE 4 deployed + live-verified) admin 2026-07-10 00:24:57 +02:00
  • ddac21cd91 v0.109.1: re-apply preserves escrow custody + runtime status (live finding) admin 2026-07-10 00:06:06 +02:00
  • f830325ca3 offsiteapply: include QuotaGB in the descriptor hash — quota changes re-apply admin 2026-07-09 23:58:30 +02:00
  • 8917014991 v0.109.0: soft-quota gate + usage bar + offsite report status (SLICE 4) admin 2026-07-09 23:48:42 +02:00
  • 994e15896f docs: v0.108.0 README (auto-confirm) + REPORT (deployed, Scenario E live) admin 2026-07-09 23:24:38 +02:00
  • febf6757dc v0.108.0: hub-verified escrow auto-confirm on current-password hash match (SLICE 3) admin 2026-07-09 23:19:17 +02:00
  • fec2e8fd84 docs: v0.107.0 README (key-auth-first + wipe) + REPORT (deployed, one-off cleanup done) admin 2026-07-09 22:46:25 +02:00
  • a38c743926 v0.107.0: key-auth-first bridge + staged-secret wipe on escrow confirm admin 2026-07-09 22:26:53 +02:00
  • 42af088308 readme: document the offsite provisioning apply-bridge (SLICE 2, v0.106.x) admin 2026-07-09 22:07:28 +02:00
  • 78fdec2897 report: offsite provisioning live e2e validation PASS (v0.106.1) admin 2026-07-09 22:05:23 +02:00
  • 0c4a4ec02c v0.106.1: ssh-copy-id -s requires ~/.ssh locally — create it in the installer admin 2026-07-09 21:29:38 +02:00
  • 6d89c186f7 report: record 0.106.0 deploy verification on guest 9201 (healthy, sshpass shipped, bridge no-ops when disabled) admin 2026-07-09 19:26:45 +02:00
  • 9a34887acc harden offsite apply-bridge: pin verified host key on the install/verify sessions (no TOFU) admin 2026-07-09 19:23:39 +02:00
  • aa61fb3411 v0.106.0: offsite provisioning SLICE 2 — controller apply-bridge admin 2026-07-09 19:14:14 +02:00
  • fa9362f36f docs: v0.105.0 REPORT — fork-4 custody hand-off + atomicity gate + DR inject; deployed 9201 admin 2026-07-09 15:19:51 +02:00
  • 0b09a799cb v0.105.0: fork-4 offsite password custody — hand-off + atomicity gate + DR inject + coord admin 2026-07-09 15:13:59 +02:00
  • bde43f3a74 docs: v0.104.0 REPORT — offbox discovery + no-silent-success; deployed 9201, red-proofs recorded admin 2026-07-09 12:35:39 +02:00
  • 908e4b906a v0.104.0: off-box unit discovery (durable, deployment-independent) + no-silent-success admin 2026-07-09 12:32:05 +02:00
  • 59eb3bea76 docs: v0.103.0 REPORT + CONTEXT — F-C2-1 config auth-integrity fix, live-validated admin 2026-07-07 19:08:02 +02:00
  • 02d37a110b fix(config): F-C2-1 — stop os.ExpandEnv corrupting the bcrypt password_hash (v0.103.0) admin 2026-07-07 18:34:52 +02:00
  • cd0ebd2042 docs: v0.102.0 REPORT + CONTEXT — async restore family, F4 UX fixed + live-validated admin 2026-07-06 20:43:11 +02:00
  • c529a455af feat(backup): async restore family — no proxy-timeout error page on a succeeding restore (v0.102.0) admin 2026-07-06 20:23:49 +02:00
  • 9d5a588ca3 docs: REPORT live-validation evidence + F2 verdict; CONTEXT v0.101.0 admin 2026-07-06 14:26:45 +02:00
  • c997d79246 feat(agentapi): surface agent disk-op refusal reasons; v0.101.0 + CHANGELOG/REPORT admin 2026-07-06 14:11:44 +02:00
  • fc28033fe8 fix(sync): 120s deadline on git subprocesses — hung remote no longer wedges sync (campaign F3) admin 2026-07-06 14:05:12 +02:00
  • af7ea0bcc7 docs: REPORT C2 addendum — real-click UI validation completed (confirm dialog + flash + byte-identical restore) admin 2026-07-05 13:38:55 +02:00
  • 7bc6a3c013 docs: REPORT for TASK C2 (v0.100.0 shipped + live-validated — F2 closed, C-series complete) admin 2026-07-05 13:32:43 +02:00
  • 85a5727123 docs: v0.100.0 — CHANGELOG/CONTEXT/REUSE/README for the Tier-2 in-place file restore (F2 closed) admin 2026-07-05 13:23:03 +02:00
  • 27aeb415f4 feat(web): C2 Parts 2+3 — POST /backup/tier2/restore + "Fájlok visszaállítása" button admin 2026-07-05 13:20:56 +02:00
  • 30b11100e0 feat(backup): C2 Part 1 — RestoreTier2Files: in-place, additive-only class-C file restore engine admin 2026-07-05 13:17:40 +02:00
  • 0313ecda51 docs: REPORT for TASK C1 (v0.99.0 shipped + live-validated) + CHANGELOG test-count fix admin 2026-07-05 12:14:45 +02:00
  • 88362dac0a docs: v0.99.0 — CHANGELOG/CONTEXT/REUSE/README for the restore-path fixes (F1/F3/O4) admin 2026-07-05 11:56:48 +02:00
  • a52851e79e fix(backup): O4 — generate a replacement for unrecoverable resettable secrets on restore admin 2026-07-05 11:52:04 +02:00