Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

§23. Changes from v4

planarian @ a924e09 · Spec v4.6 · snapshot main · all versions

  • §12: exclusive transaction ownership with lease epochs; worker fencing via pidfd and job draining; the watchdog may not commit before Published; the daemon waits for a watchdog-held lease; I15 added; gym case for overlapping owners.
  • §9/§12: immutable staged source (NAR-hashed) evaluated with pure-eval; build before approval; verify_candidate before activation; the token binds expectation, revert target, and recovery strategy; activate_live and publish_boot separated; Published/Promoted journaled; atomic-rename-plus-dir-fsync promotion; watchdog revert restores the override source; crash-recovery table.
  • §8/§9/§10: ProbeRole Readiness vs Diagnostic; side-effect probes are Diagnostic; status derivation puts definite Failed above Unknown; probe applicability follows the candidate’s authorized desired state, distinct from definition tampering.
  • §8/§9: Condition::SessionEstablished from logind replaces the circular AfterLogin; the session probe is the result, not the prerequisite.
  • §8/§12/§14: StopAndSuppress composite; suppression journaled before stop; no post-hoc prompt; CLI StopUnit rewritten.
  • §11: SO_PEERCRED authentication; authorization rule separate from risk; actor fields overwritten; global floors for NonReversible and disruption apply to every transition kind.
  • §8/§9/§13: Wants edge kind preserved as weak; SCC-based root-causing for cycles.
  • §10/§12c: per-filesystem storage units; preallocated journal; ENOSPC behavior by state; CollectGarbage { emergency }; BudgetUnsatisfiable.
  • §12: read-only vs mutating backend calls; Prepared on the Allow path; per-transition RecoveryStrategy; Runtime outcomes never trigger generation reversion; restartIfChanged/stopIfChanged as the real self-protection mechanism.
  • §16: accepted_baseline distinct from boot-confirmed known_good; initial enrollment; operational limits made normative.
  • §17a: progress assumptions stated for I12; fencing and idempotence added to the trusted-assumptions list.
  • §12a, §14, §20, §21 made self-contained.