| 1 | # Plan 14 fix3: merge ruling 3 records the released hotfix; merge ruling 4 restores no-census main behavior. Earlier overlays are immutable. |
| 2 | internal/host/agent.go runAdoptUnderRootRelease authority B3,C rev3=merge-ruling-4;basis=Retain the verified running pointer before adoption; share per-pass legacy diagnostics and return errors only after minting and held-stage work. whole:Route@10432,whole:Route@17040,whole:Route@17076,whole:Route@7852 07e79632ccb0e66323fb10fb486308664109da813048dc5301d1225c5cbcd9c9 |
| 3 | internal/host/agent.go runAdoptWithEnsureSystemUnits authority B3,C,D,E1,E2,E3,E4,F rev3=merge-ruling-4;basis=Propagate final adoption error after releasing pass resources so foundation failures exit 1 without skipping remaining work. file:Open@220 21abd9a81113b038cfa5dbed17da9fe4da3cfafa8b80215dd68b85bd15344460 |
| 4 | internal/host/agent.go runAgent authority B,C,D,F rev3=merge-ruling-3;basis=Only Route and preparation Slot wiring changed; claims-on bypasses legacy key backfill and all kept root decisions are unchanged. file:Exec@13447,file:Open@569,registry:App@9838,whole:Route@20948,whole:Route@9830 91afa8ed00ee9f26f047a03f651670ff693aa5bfcb119ac1bc2b7df585ddf897 |
| 5 | @legacy 0655b2d76b56f3c4eb62c9254ae60a968978d8e7c91b53bb0fb549987538f12c internal/host/instancekeys.go backfillInstanceKeys legacy accepted-legacy accepted-legacy;rev3=merge-ruling-3;basis=Released v0.26.1 backfill runs after Start only with claims off; skipped or fenced rows defer to their next launch. registry:Host@516,registry:Host@664,registry:Host@830,whole:Route@251,whole:Route@283,whole:Route@362 72b84a844c91718c379ffe6a644adfaaccc449bc6893b9264bf43029142f2c2b |
| 6 | internal/host/instancekeys.go backfillInstanceKeys legacy accepted-legacy accepted-legacy;rev3=merge-ruling-3;basis=Released v0.26.1 backfill runs after Start only with claims off; skipped or fenced rows defer to their next launch. registry:Host@516,registry:Host@664,registry:Host@830,whole:Route@251,whole:Route@283,whole:Route@362 72b84a844c91718c379ffe6a644adfaaccc449bc6893b9264bf43029142f2c2b |
| 7 | @legacy f48611141d27534443aa79140c0c8b52a0bb2f3934d05ac47545a8286caf41da internal/host/instancekeys.go keyBackfillInSlot.BackfillInstanceKey legacy accepted-legacy accepted-legacy;rev3=merge-ruling-3;basis=Claims-off legacy key backfill rereads registry Host and whole Route inside the per-host preparation slot; claims-on returns before backfill. registry:Host@199,registry:Host@258,whole:Route@351,whole:Route@386,whole:Route@550 4bc87bdff90d1c13fbd6210023377e99303318b0e1d24fa15a143298eb480f05 |
| 8 | internal/host/instancekeys.go keyBackfillInSlot.BackfillInstanceKey legacy accepted-legacy accepted-legacy;rev3=merge-ruling-3;basis=Claims-off legacy key backfill rereads registry Host and whole Route inside the per-host preparation slot; claims-on returns before backfill. registry:Host@199,registry:Host@258,whole:Route@351,whole:Route@386,whole:Route@550 4bc87bdff90d1c13fbd6210023377e99303318b0e1d24fa15a143298eb480f05 |
| 9 | @legacy c78b9ec186c0661d7bff3719593e17e98b9f5a40de827fe44563fc8ccd2abc8b internal/host/layoutleg.go activatorStart.Run legacy accepted-legacy accepted-legacy;rev3=merge-ruling-3;basis=Claims-on starts and returns before the background backfill; legacy layout recovery precedes Start and each backfill row uses the preparation slot. whole:Route@492 b7045ebf921fb26573077273c2cfeef7dc99a73f036a414e8dbf6ce2cbf2eb3c |
| 10 | internal/host/layoutleg.go activatorStart.Run legacy accepted-legacy accepted-legacy;rev3=merge-ruling-3;basis=Claims-on starts and returns before the background backfill; legacy layout recovery precedes Start and each backfill row uses the preparation slot. whole:Route@492 b7045ebf921fb26573077273c2cfeef7dc99a73f036a414e8dbf6ce2cbf2eb3c |
| 11 | internal/host/legacyrestart.go legacyCheckedUnitRestart authority B3 rev3=merge-ruling-4;basis=No-census fallback matches main stamped-unit try-restart and settle behavior; Show or ExecStart mismatch still restarts and history errors are diagnostic. file:EvalSymlinks@378,registry:Host@241,registry:Unit@198,registry:Unit@352,registry:Unit@447,registry:Unit@485,registry:Unit@547,whole:Route@613,whole:Route@733 884d01a2b30cc90df5010341aacc52f5c7a7d3f9c2f9bf98b6dd868fae623133 |
| 12 | internal/host/legacyrestart.go legacyRollbackRestart authority B3 rev3=merge-ruling-4;basis=No-census D1 recovery resets and restarts the stamped unit on the restored pointer and verifies readiness as main does. file:EvalSymlinks@312,registry:Host@359,registry:Unit@157,registry:Unit@193,registry:Unit@259,registry:Unit@425,whole:Route@491 b99366bdf6a7530d83a5dd9d086028a628a33cd1b860ab57cfc4f341d341c8b7 |
| 13 | internal/host/legacyrestart.go legacyRootRestart authority B3,G rev3=merge-ruling-4;basis=Only absent root census with claims off permits main restart fallback; retained or unreadable root state remains strict. b2cf26dd5de78dd8fe57b6aac71b33df8602e9b5b0a0031736261e29f23738db |
| 14 | internal/host/legacyrestart.go legacySettleOptions authority B3 rev3=merge-ruling-4;basis=Legacy settle uses main readiness inputs and limits; these do not authorize root health history. whole:Route@265,whole:Route@335 4bf5a4a5173c9f7d703502ae75d3aa5f8ef8fab7631625ecea2b1341ad855bc9 |
| 15 | internal/host/legacyrestart.go restartEffectFailed authority B3 rev3=merge-ruling-4;basis=Separate actual restart and readiness failure from optional binding refusal before selecting fallback. d847a3853f83e0b4a08183c57294c9e06955cdcabbebbfc62767ca8a05fa880f |
| 16 | internal/host/legacyrestart.go rootRestartChecks.allowLegacy authority B3,G rev3=merge-ruling-4;basis=Evaluate the explicit census selector; omitted test selector remains strict. eee21cfff9fbe73b79fd4da4aa034bf5bebc9db8591663f3ec2e122907590097 |
| 17 | internal/host/legacyrestart.go rootRestartChecks.noteLegacy authority B3 rev3=merge-ruling-4;basis=Log the no-census legacy restart once through the pass-shared diagnostic latch. d2b7aad19cfb90d75fc599cf780195c3726060ac8cb8d677a9caa0ae4be267f6 |
| 18 | internal/host/proofbinding.go pointerBoundUnit authority B3 rev3=merge-ruling-4;basis=Only PID-zero stopped or restarting states may bind without process identity; inactive units are never woken. 7a6ef2f2281f2af98db43cf247d6b3625c3c29b9cad48cbfd555ecc0185bd6ec |
| 19 | internal/host/proofbinding.go proofBindingSource.binding authority B3 rev3=merge-ruling-4;basis=Inactive and PID-zero activating units bind from checked current pointers with the same unit and source checks as failed units. file:EvalSymlinks@2524,file:EvalSymlinks@2763,file:EvalSymlinks@3182,file:EvalSymlinks@3491,registry:Unit@461,registry:Unit@4694,registry:Unit@544,registry:Unit@717,whole:Route@5174,whole:Route@5181 8824e9a950f7d92ddbef2315938ec7702ec93814be24f067c6b8df1009ff4835 |
| 20 | internal/host/rootrestart.go checkedUnitRestart authority B3 rev3=merge-ruling-4;basis=Retain verified rollback binding for active or restarting units; optional binding refusal is distinguished from a failed build. file:EvalSymlinks@1054,file:EvalSymlinks@1831,registry:Account@1400,registry:Account@2199,registry:App@1432,registry:App@2231,registry:Host@1101,registry:Host@1887,registry:Host@2774,registry:Host@3041,registry:Host@3684,registry:Host@510,registry:Unit@3566,registry:Unit@711,whole:Route@1408,whole:Route@1440,whole:Route@2207,whole:Route@2239,whole:Route@3574,whole:Route@638,whole:Route@719 b2abe0330fb6ce30c3f47283cf8ecb5501c60440654af7a05fa78abcce1bac4f |
| 21 | internal/host/rootrestart.go productionRootRestartChecks authority B3 rev3=merge-ruling-4;basis=Production selects fallback from root census and never opens the record store for ordinary or derived-unit routes. file:Open@934,whole:Route@1568,whole:Route@1835,whole:Route@767 15e0904d572fedf1c6aa7925b981a4bfbc02e844a2b70913dd1e7069c52c3a38 |
| 22 | internal/host/rootrestart.go restartBoundUnit authority B3 rev3=merge-ruling-4;basis=PID-zero activating units reset and restart; inactive units stay stopped; binding-only errors cannot roll back a promoted fix without a census. file:EvalSymlinks@635,registry:Account@2355,registry:Account@3825,registry:App@2391,registry:App@3865,registry:Host@1618,registry:Host@2257,registry:Host@2851,registry:Host@3564,registry:Host@682,registry:Unit@1104,registry:Unit@1172,registry:Unit@1927,registry:Unit@1995,registry:Unit@2037,registry:Unit@3200,registry:Unit@395,whole:Route@198,whole:Route@2361,whole:Route@2397,whole:Route@317,whole:Route@3833,whole:Route@3873,whole:Route@4084 9bf816e686f934cc2284ebfdc4e5be8157fd1b11a71bdd3f00174c27571a4c77 |
| 23 | internal/host/rootrestart.go restartOrdinaryUnit authority B3 rev3=merge-ruling-4;basis=No-census derived-unit try-restart is unconditional and nonfatal, matching main for absent rows and systemd lookup failures. 93d374f29ba477a7698ab3360e64eca412667098a48a4078d9a33d53674bb23a |
| 24 | internal/host/rootrestart.go restartVerifiedOrdinaryUnit authority B3 rev3=merge-ruling-4;basis=Retain the checked ordinary-unit path for strict census-backed operation. 1c43012a5dd6791d16dc96e79593a82f6b5e422460e11016e08f85dcf47307dc |
| 25 | internal/host/rootrestart.go rollbackUnitRestart authority B3 rev3=merge-ruling-4;basis=Retained census keeps strict rollback; no-census missing binding falls back to main stamped start or D1 restart and ordinary rows start nothing. file:Read@1458,registry:Host@1750,registry:Unit@1852,registry:Unit@2153,registry:Unit@435,registry:Unit@692,whole:Route@1758,whole:Route@1860,whole:Route@2161,whole:Route@422,whole:Route@774 1121f62300b314b4eb9a7df92ecc65c8bc61f7387732a143760a84080ecd53ba |
| 26 | internal/host/rootrestart.go rootRestartChecks.runningVersion authority B3 rev3=fix3-Astra-P2;basis=Before PointLive replaces previous, resolve the running build against checked root pointers; absent binding cannot block a no-census promotion. registry:Host@151,registry:Unit@104,registry:Unit@121,whole:Route@208 e5c1f372325482e101e6fac6da462578015c8d804dbe8dc73b2f92478ba944bb |
| 27 | internal/host/rootrestart.go rootRestartRouteWith authority B3 rev3=merge-ruling-4;basis=No-census ordinary routes use main without store reads; stamped routes fall back on binding refusal and operator stops preserve the promoted link. registry:Unit@439,registry:Unit@456,whole:Route@1123,whole:Route@1320,whole:Route@426,whole:Route@581,whole:Route@709,whole:Route@832,whole:Route@993 110b8180846fff0a47e20963a86b95bcaec41884abbecce34cc6336e8fa6c105 |
| 28 | internal/host/rootrestart.go rootStartRoute authority B3 rev3=merge-ruling-4;basis=Use main systemctl start for legacy non-NotUp recovery while retaining checked rollback when authority binds. bb4a59f4359808db51f47fb7eff1b89eea4b4d6d927cbd5d517a4caccff56e5f |
| 29 | internal/hostguard/flock_unix.go acquire authority C,J2,J4 rev3=merge-ruling-4;basis=Descriptor checks classify nonregular or foreign-owner locks as unsafe; honest contention waits with bounded exponential backoff. file:Fstat@1356,file:Fstat@398,file:Fstatat@665,file:Openat@1024,file:Openat@897 3f027811822f7c0d967227b3dea6df3c17d0630233559cc016c3dcacfd9db488 |
| 30 | internal/hostguard/guard.go Guard.locked authority C rev3=merge-ruling-4;basis=Only positively unsafe legacy locks durably quarantine; timeout and I/O errors return without changing root installation state. b4cd2e2344a4668cad288cc78b9092e7144505d15c36d5a56faf22e1edb66354 |
| 31 | internal/release/adopt.go WithRunningVersion authority B3 rev3=fix3-Astra-P2;basis=Root-only hook supplies verified current or previous running authority before replacing pointers. d5834f585168970bb17868fdc05cc8eadd9d8b461bb7d831e0327926e9ba23a3 |
| 32 | internal/release/adopt.go adoptHost authority B3,E1 rev3=fix3-Astra-P2;basis=Repoint retains a verified running previous build and uses it as rollback target when a crash left an intermediate live link. registry:App@10271,registry:App@10431,registry:App@11460,registry:App@11917,registry:App@13283,registry:App@17743,registry:App@23119,registry:App@30878,registry:App@3114,registry:App@6423,registry:App@7697,registry:App@7891,registry:Hibernate@31557,registry:Host@10151,registry:Host@10184,registry:Host@10284,registry:Host@10444,registry:Host@10546,registry:Host@10578,registry:Host@10643,registry:Host@11093,registry:Host@11226,registry:Host@11546,registry:Host@12007,registry:Host@12755,registry:Host@13056,registry:Host@13269,registry:Host@13585,registry:Host@17305,registry:Host@17413,registry:Host@17711,registry:Host@18507,registry:Host@18665,registry:Host@19127,registry:Host@19179,registry:Host@19299,registry:Host@19386,registry:Host@20492,registry:Host@20687,registry:Host@2075,registry:Host@21347,registry:Host@21732,registry:Host@21873,registry:Host@2264,registry:Host@23087,registry:Host@23214,registry:Host@2345,registry:Host@24556,registry:Host@25206,registry:Host@28439,registry:Host@29057,registry:Host@29382,registry:Host@29456,registry:Host@29703,registry:Host@29854,registry:Host@31035,registry:Host@31142,registry:Host@3127,registry:Host@31370,registry:Host@31513,registry:Host@32258,registry:Host@32384,registry:Host@32472,registry:Host@4248,registry:Host@5211,registry:Host@5316,registry:Host@6535,registry:Host@6583,registry:Host@6700,registry:Host@6732,registry:Host@7583,registry:Host@7751,registry:Host@7877,registry:Host@7996,registry:Host@8474,registry:Host@8861,registry:Host@9087,registry:Host@9183,registry:Kind@552,registry:Unit@29602,registry:Unit@577,whole:Route@10266,whole:Route@10426,whole:Route@11450,whole:Route@11907,whole:Route@13786,whole:Route@14878,whole:Route@15181,whole:Route@17634,whole:Route@17733,whole:Route@20221,whole:Route@2176,whole:Route@23109,whole:Route@28010,whole:Route@3109,whole:Route@3554,whole:Route@6418,whole:Route@9408 2096f8ff1a3fbfbf393dbf2dbb02a9c876349d9b5f12fc47346ace43c3c75d16 |
| 33 | internal/release/versions.go PointLive authority B3,E2 rev3=fix3-Astra-P2;basis=Optional retained running version must match current or previous; refuse dropping its last pointer, keeping existing sweep pins authoritative. file:Open@1407,file:Readlink@388,file:Readlink@923,file:Stat@147 15c007f95df3b1e29f085276459c5f5a28bc77034a374e30e9229c8efe2ea19f |
| 34 | @coverage internal/host b68d60475aa8a0c501b9e9b3207a5cbd9b5997332ec37f16c0c57bf3470b8c46 |
| 35 | @coverage internal/hostguard b5146fee2ef6c7fac40f140ba687e85b632687eb04bf69fac107b9936551bbc0 |
| 36 | @coverage internal/release b88ee53f7cc078890a0bc6abba55e830542a63077bc1185dcc1f4b37c9c66f49 |
| 37 | |