Commit Graph

  • adaf86ad57 R-330: the agent sends SMART 187/188/199 (raw; omitted when unknown) main admin 2026-10-06 22:01:01 +02:00
  • 74b5eae5b0 R-894: after a restart the agent remembers the last backup per tier admin 2026-10-06 20:33:27 +02:00
  • 7e82f325b8 CHANGELOG: the memory-kill check (unreleased, to ship as v0.150.0 after the night read-back) admin 2026-10-06 19:36:09 +02:00
  • acccb66bd3 R-528 (09 decision 157): after a Docker engine step the wrapper proves the engine reports a memory kill admin 2026-10-06 19:15:06 +02:00
  • de812bc027 The shared rule file (09 §3 decision 152), identical to the other copies; no code change admin 2026-10-06 16:06:46 +02:00
  • 3e8ebeb96c Instruction files kept true (09 §3 decision 150): stale gate lists, paths and facts corrected; no code change admin 2026-10-06 13:43:57 +02:00
  • cefdc731a4 REPORT: the operator's ten answers (2026-10-06) admin 2026-10-06 12:28:58 +02:00
  • e56dcb8a4c CHANGELOG/v0.149.0 released (shas) admin 2026-10-06 11:50:21 +02:00
  • f277e619e2 CHANGELOG: unreleased — R-856 GET /host/crash-guard v0.149.0 admin 2026-10-06 11:48:40 +02:00
  • 386f51edc6 R-856: GET /host/crash-guard — the host crash guard's last-boot record for the controller (09 decision 143) admin 2026-10-06 11:42:56 +02:00
  • 130e3ed882 CHANGELOG: unreleased — R-444 weekly guest disk trim, R-99 runbook pointer admin 2026-10-06 11:25:22 +02:00
  • be398f92e8 R-99: the PBS phantom WARN names the cleanup runbook (09 §3 decision 140) admin 2026-10-06 11:24:13 +02:00
  • ee71abd1d4 R-444: weekly guest disk trim (pct fstrim) outside the night, under the heavy-op gate admin 2026-10-06 11:22:45 +02:00
  • 37e98f452b REPORT: the burn-down night (2026-10-06) admin 2026-10-06 02:13:10 +02:00
  • b2b82ae828 bundle test: the ISO first-boot files the installer names under KEPT are not installer-written (go test red since felhom.eu 85de3f9b); CHANGELOG unreleased (R-426 decoys) admin 2026-10-06 01:42:25 +02:00
  • b78a0ff3ac R-426: decoys for the shared reuse-refs, instructions and observations gates admin 2026-10-06 01:33:32 +02:00
  • 96047453cb R-426: decoys for the release-complete gate admin 2026-10-06 01:33:21 +02:00
  • 4bf5db6875 R-426: decoy suite for the published gate, against a fake Gitea admin 2026-10-06 01:33:02 +02:00
  • 87977ff40a CHANGELOG/v0.148.0 released (shas) admin 2026-10-06 00:37:07 +02:00
  • 861d32a4b4 CHANGELOG: unreleased — R-349 agent_sha256, R-25 agent half (burn-down night) v0.148.0 admin 2026-10-05 21:16:51 +02:00
  • 769c4c3cf2 R-25 (agent half): the format answer carries the NEW filesystem's UUID, bound to the durable id admin 2026-10-05 21:15:01 +02:00
  • 64f704d0f7 R-349: the host report carries the sha256 of the RUNNING agent binary admin 2026-10-05 21:10:43 +02:00
  • 208fac8027 CHANGELOG/REPORT: v0.147.0 released (shas) admin 2026-10-05 18:58:37 +02:00
  • f1b9b41214 R-124 recipe root namespace as PBS spells it; R-118 no root size for an absent drive; R-269 rotated-out token rejected at once; R-317 dnsmasq install probed by its unit (burn-down round 2) v0.147.0 admin 2026-10-05 18:56:13 +02:00
  • d83316326e R-291 retention record source, R-348 restart comment (no binary change; burn-down) admin 2026-10-05 16:56:18 +02:00
  • e06ed97fa8 agent v0.146.1 REPORT admin 2026-10-05 13:00:22 +02:00
  • e4b5cf9693 R-880: build-step-bundle.py — the transition bundle for a release whose bundle adds paths (an installed felhom-os-apply refuses unknown paths, R16) admin 2026-10-05 12:23:55 +02:00
  • faa3cad92e agent v0.146.1 CHANGELOG (released) admin 2026-10-05 12:14:07 +02:00
  • fdd87178d2 R-861 review fixes: the signed update hands the A/B wrapper a root-owned copy of the hashed bytes; mount units accept no Wants/Requires/Before and no continuation lines; the escrow read walks the path without following any symlink v0.146.1 admin 2026-10-05 12:13:42 +02:00
  • 0342c7bb57 agent v0.146.0 CHANGELOG (released) admin 2026-10-05 12:01:25 +02:00
  • 6ab1e7c56c R-861: narrow the agent's root grants — exact sudo patterns, felhom-priv-apply content checker, fixed hook/parent files in the bundle, signed self-update verified as root, escrow root reads pinned v0.146.0 admin 2026-10-05 12:00:43 +02:00
  • 61345790ed REPORT: the 2026-10-05 catch-up session admin 2026-10-05 10:29:12 +02:00
  • 7c4b8e599f v0.145.0: CHANGELOG (released 894da35c…, bundle 78c00adc…) admin 2026-10-05 09:23:48 +02:00
  • 56ef1d6655 v0.145.0 code: the OS wrapper repairs dpkg's update journal by itself after a power cut (R-876); restore-test first check 30 min after start (R-874); neutral "sent late" text (R-875) v0.145.0 admin 2026-10-05 09:23:23 +02:00
  • 78c890e4bb REPORT: the 2026-10-05 night-fixes session admin 2026-10-05 08:25:49 +02:00
  • d48f1bbb23 v0.144.1: CHANGELOG (released 6ccd521d…, bundle e89a9ddf…) admin 2026-10-05 07:49:29 +02:00
  • 8401a30917 v0.144.1 code: the wrapper survives a dead reader (BrokenPipe) so a killed pass still keeps its report; the agent looks for kept copies every 5 min (R-868, measured live) v0.144.1 admin 2026-10-05 07:49:04 +02:00
  • d1b6004458 v0.144.0: CHANGELOG (released f18093c3…, bundle 6acf42fe…) admin 2026-10-05 07:15:07 +02:00
  • ca78c17b29 v0.144.0 code: R8 measures the real download (R-865); an OS pass's report survives a killed agent (R-868); the debug pass runs from the saved block when the hub is away (R-866) v0.144.0 admin 2026-10-05 07:14:32 +02:00
  • c8d12f1f2a REPORT + CONTEXT: 2026-10-04 night (R-840 / R-860) admin 2026-10-04 20:39:47 +02:00
  • dc9164c5af CHANGELOG v0.143.0 (R-840); build-golden.sh 3.2.0: GOLDEN_GUEST_PKGS — the approved guest release at bake time, first-night count admin 2026-10-04 20:08:16 +02:00
  • c9fa2e717b R-840: the config bundle — a signed agent_config_update brings a box's root-owned files (sudoers, wrappers, units) v0.143.0 admin 2026-10-04 19:36:58 +02:00
  • 0af1187e03 CHANGELOG + REPORT: v0.142.1 released (R-858) admin 2026-10-04 18:21:46 +02:00
  • 495003051b R-858: after a Docker engine step the wrapper restarts ONLY the containers that mount the docker socket (controller, traefik); the health rule fails when the controller cannot reach Docker from inside its container (ruling 95) v0.142.1 admin 2026-10-04 18:21:24 +02:00
  • 42af3ab9bc build-golden.sh 3.1.0: live-restore on in the golden (fail-closed assertion), GOLDEN_DOCKER_PKGS pins the approved Docker engine set admin 2026-10-04 17:30:19 +02:00
  • f24dce5b95 CHANGELOG + REPORT: v0.142.0 released admin 2026-10-04 16:15:15 +02:00
  • b1746c25af Docker engine slow lane (live-restore once by reload; ring-0 pending-docker under a root-owned ring-0 mark; ring 1 and undo only by a signed os_docker_step the wrapper re-verifies against a root-owned signers file; same-container-id health), the version report (facts mode -> host report system stanza, R-852), guest restart scan every pass (R-849), the crash guard (kernel.panic=10, the 3rd unclean stop in 60 min stays off, 24 h re-arm) v0.142.0 admin 2026-10-04 16:14:36 +02:00
  • 2e2e8f56b8 CHANGELOG + REPORT: v0.141.1 released (host reboot-needed fixes) admin 2026-10-04 13:39:35 +02:00
  • a6bc3f1197 os-apply: the host restart scan no longer hides lxc-start (skip ':/lxc/' not 'lxc'), and the host scans on every pass so a reboot clears 'reboot needed' (reboot_scanned reaches the hub) — both found live on demo-felhom v0.141.1 admin 2026-10-04 13:39:14 +02:00
  • 3bf77c3423 CHANGELOG + REPORT: v0.141.0 released (host fast lane, true tunnel status, fast leg) admin 2026-10-04 13:19:02 +02:00
  • cfba0d022a contract: the desired-state golden gains host_release (byte-identical with hub v0.131.0); TestOSUpdateGolden_Decodes checks it v0.141.0 admin 2026-10-04 13:18:43 +02:00
  • c3d08b4821 OS updates host fast lane + true tunnel status + fast leg: wrapper host layer (R12 appliance proof from the root-owned install record, R14 kernel/boot/firmware refused), select pending-fast, one call per layer, host-side version checks, restart scan only after an install, reboot-needed for PID 1/lxc-start; the leg runs the host step after a healthy guest step; GuestTunnelProber reads the cloudflared container + its readiness check (R-841) admin 2026-10-04 12:54:02 +02:00
  • a55eedcf2c CHANGELOG + REPORT: v0.140.0 released (OS updates, guest fast lane) admin 2026-10-04 11:30:14 +02:00
  • 9cac3462bb osupdate: the health baseline is the start of the leg (inventory reading merged with the apply's own) — an app that stops during the run fails it (found live on demo-hp) v0.140.0 admin 2026-10-04 11:22:03 +02:00
  • 1bb8608e88 os-apply: tell an UPDATED conffile from a KEPT one (dpkg's two shapes, measured live on demo-hp) admin 2026-10-04 11:08:43 +02:00
  • b84e0dd1bd selftest flag accepts os-update and wgtunnel (both dispatched, both refused); a test pins every dispatched mode admin 2026-10-04 11:04:03 +02:00
  • 23a8ef3de4 OS updates, guest fast lane (11 §8 step 2): felhom-os-apply wrapper (R1-R13 refusals, repair first, snapshot.debian.org fallback), FELHOM_OSAPPLY sudoers, the OS leg after the primary backup, hub os_update block + os-report, --selftest=os-update admin 2026-10-04 10:44:29 +02:00
  • 596238cc2e CHANGELOG + REPORT: v0.139.0 released (R-834) admin 2026-10-04 08:52:57 +02:00
  • 475bdce7e4 DR bring-up refuses beside a live original (R-834): source guest present, drives bind, or unreadable config v0.139.0 admin 2026-10-04 08:52:35 +02:00
  • d766666ff8 CHANGELOG: v0.138.0 vouched with golden 0.283.1 admin 2026-09-30 11:40:20 +02:00
  • a4c09a7c11 REPORT: v0.138.0 (R-727) admin 2026-09-30 11:00:45 +02:00
  • 904dc20466 CHANGELOG: v0.138.0 released (R-727) admin 2026-09-30 10:34:25 +02:00
  • e1b8269be0 restore test takes only this box's archives (R-727): an archive encrypted with another key is another box's v0.138.0 admin 2026-09-30 10:33:52 +02:00
  • 5c68c869b6 docs: v0.137.0 vouched with golden 0.276.0 (2026-09-28) admin 2026-09-28 09:45:08 +02:00
  • 728d12b1a0 CHANGELOG: v0.137.0 released (tag + package verified by download), not vouched admin 2026-09-27 14:01:26 +02:00
  • dd81866b16 REPORT: v0.136.0 and v0.137.0 v0.137.0 admin 2026-09-27 14:01:02 +02:00
  • 3ef095fb71 agent: a guest outside the agent's ACL is not a known guest (R-689, v0.136.0 regression) admin 2026-09-27 14:00:42 +02:00
  • 7c986915ca CHANGELOG: v0.136.0 released (tag + package verified by download), not vouched admin 2026-09-27 13:46:22 +02:00
  • 16dbc83221 agent: the restore test takes only archives of a guest that still exists (R-689, second half) v0.136.0 admin 2026-09-27 13:45:56 +02:00
  • 9555a7f93b REPORT: v0.135.0 released and signed-delivered to both demo hosts admin 2026-09-27 13:02:10 +02:00
  • 9ff937d8fb CHANGELOG: v0.135.0 released (tag + package verified by download), not vouched admin 2026-09-27 12:16:17 +02:00
  • d4be12ca95 agent: the restore test proves only backups of a guest (R-689) v0.135.0 admin 2026-09-27 12:15:42 +02:00
  • 7403c2a838 REPORT + CONTEXT: v0.133.0 and v0.134.0 delivered to both demo boxes; restore test back on admin 2026-09-25 04:55:26 +02:00
  • 309e368731 CHANGELOG: v0.134.0 released (tag + package verified by download), not vouched admin 2026-09-24 22:49:19 +02:00
  • 0722b2cdb0 agent: a whole-box backup that cannot fit its local target is skipped with a reason before anything starts (R-685) v0.134.0 admin 2026-09-24 22:48:51 +02:00
  • 4fe2f81a32 CHANGELOG + REPORT + CONTEXT: v0.133.0 released (tag + package verified by download), not delivered admin 2026-09-24 16:25:13 +02:00
  • 9bdb4dae8f v0.133.0: a restore-test can never fill a box's disk; leftovers retried on a timer (R-672, R-673) v0.133.0 admin 2026-09-24 16:23:15 +02:00
  • d9864a94bf CHANGELOG: v0.132.0 vouched for Day-0 installs with golden 0.246.0 (operator decision) admin 2026-09-17 12:25:49 +02:00
  • 77cd70f7c0 REPORT: agent v0.132.0 - slow crash loop, signed delivery, live proof with the production window admin 2026-09-17 11:30:45 +02:00
  • 1030abd7d6 CHANGELOG: v0.132.0 released (tag + package verified by download) admin 2026-09-17 10:27:16 +02:00
  • 18d03bd437 v0.132.0: the slow crash-loop counter (R-539, operator ruling 3 of 2026-09-16) v0.132.0 admin 2026-09-17 10:26:42 +02:00
  • e98b857684 REPORT: v0.131.0 supervisor + per-tier status, delivery and live validation admin 2026-09-15 11:37:07 +02:00
  • dcdeb3d16d CHANGELOG: v0.131.0 released (tag + package verified by download) admin 2026-09-15 09:50:47 +02:00
  • 610804b98d v0.131.0: controller supervisor (R-523); per-tier backup status + tier storage presence (R-517/R-518) v0.131.0 admin 2026-09-15 09:47:25 +02:00
  • 4586f0f7f6 re-run CI against a register that now carries R-421 admin 2026-09-01 12:45:52 +02:00
  • 205e22babe decoy sweep: no gate changed here, and that is the result (R-421) admin 2026-09-01 12:38:58 +02:00
  • 058b945064 gate 11: register the shared observations gate admin 2026-08-23 13:53:20 +02:00
  • 40d857b527 CHANGELOG: the fleet runs the published bytes, not the proof build (R-349) admin 2026-08-20 12:53:37 +02:00
  • 7ae6990bac v0.130.0 released: tag + package published, heading now claims it admin 2026-08-20 12:47:25 +02:00
  • 7569f34aeb CHANGELOG: correct a claim this session made and then disproved v0.130.0 admin 2026-08-20 12:39:12 +02:00
  • ede49b610d R-344: restore the idle-connection timeout our hand-rolled transports lost admin 2026-08-20 11:09:39 +02:00
  • f17ed11599 REPORT: agent v0.129.0 — the retained-package recovery class, released and deployed admin 2026-08-12 18:49:51 +02:00
  • 1db56bf837 v0.129.0 — a correct code for an earlier package stops being called wrong (R-311) v0.129.0 admin 2026-08-12 18:40:00 +02:00
  • 53d047a6c1 Two guards, one number: bound the published check to the retention it must live with admin 2026-08-09 19:05:05 +02:00
  • 28ba8593b8 v0.128.0 — R-221: the escrow seed is asserted every tick, not remembered once v0.128.0 admin 2026-08-08 16:29:13 +02:00
  • 6981450110 docs: a comment claimed the hub reads a field it has no field for (R-260) admin 2026-08-08 08:46:17 +02:00
  • 703db166e7 v0.127.0: a mount Felhom itself made is not 'something else' (R-220) v0.127.0 admin 2026-08-06 12:55:28 +02:00
  • aa74294a7d docs: felhom-agent CLAUDE.md becomes a core plus path-scoped rules (R-229 leg b) admin 2026-08-06 11:28:27 +02:00
  • 5b2666e3a2 docs: R-168 is CLOSED — the "CI is still owed" sentence was stale (R-229 part 2) admin 2026-08-06 11:02:59 +02:00
  • 062a7027ab docs: remove expired and contradictory blocks from CLAUDE.md (R-229) admin 2026-08-06 09:38:38 +02:00