carlos / platform Public

Clone
git clone https://amadan.net/carlos/platform

Plain git — no account needed to clone.

Download

Download this file

1# Plan 14 census ruling zddr4 (zero-downtime deploys rev 19 amendment, Gate F, amadan #272): generation sockets keep the flag-off file name in a directory of their own. The changed and new activator units are accepted legacy because they stay agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before.
2# An over-long flat host counted as foreign for generation decisions is an agent-side deny and fits that boundary. If any of these units ever runs as root or reads outside that boundary it stops being legacy and needs the Plan 14 owner's ruling. Earlier overlays are immutable.
3@legacy dc698b892747c4be0ec17b83d180edf2da154c92fc224abc3ab391666db7ef9f internal/activator/backend_exec.go ExecBackend.startGenFrom legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; the generation socket path is chosen through genLayout on the same row's Host, an over-long flat host is logged and keeps its canonical socket as a foreign row does, and the leftover canonical link is cleared for any spawn on the canonical socket. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. registry:Host@1084,registry:Host@1709,registry:Host@1871,registry:Host@380,registry:Host@436,registry:Host@685,registry:Socket@1126,registry:Socket@1615,registry:Socket@1745,registry:Socket@328,whole:Route@1933,whole:Route@315,whole:Route@960 9d1788ec9700865c6046e1c466b1e06e654d00e605d2b35297cc192bc731861c
4internal/activator/backend_exec.go ExecBackend.startGenFrom legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; the generation socket path is chosen through genLayout on the same row's Host, an over-long flat host is logged and keeps its canonical socket as a foreign row does, and the leftover canonical link is cleared for any spawn on the canonical socket. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. registry:Host@1084,registry:Host@1709,registry:Host@1871,registry:Host@380,registry:Host@436,registry:Host@685,registry:Socket@1126,registry:Socket@1615,registry:Socket@1745,registry:Socket@328,whole:Route@1933,whole:Route@315,whole:Route@960 9d1788ec9700865c6046e1c466b1e06e654d00e605d2b35297cc192bc731861c
5@legacy 795ff1d9aa340c52bd2b08601cb090c9e318c93eee0b7eaa70d0996f1541ed51 internal/activator/genbackend.go ExecBackend.GenPaths legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; the same Classify layout is passed through genLayout on the same row's Host, so an over-long flat host has no generation path, as a foreign row has none. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. registry:Host@140,registry:Host@194,whole:Route@91 34d63dd48fd86a2e3d4ea4bf7d7022bb5e39eab9e820b8a1df12887fd0ccc2f4
6internal/activator/genbackend.go ExecBackend.GenPaths legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; the same Classify layout is passed through genLayout on the same row's Host, so an over-long flat host has no generation path, as a foreign row has none. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. registry:Host@140,registry:Host@194,whole:Route@91 34d63dd48fd86a2e3d4ea4bf7d7022bb5e39eab9e820b8a1df12887fd0ccc2f4
7@legacy 36678d5f13f63fa11f515dd04da937963c16f589701aee2829ac1e1aa39dc722 internal/activator/genbackend.go ExecBackend.StartStaged legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; the same layout switch goes through genLayout on the same row's Host, so an over-long flat host takes the existing foreign arm on its canonical socket. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. registry:Host@1701,registry:Host@221,registry:Host@276,registry:Host@398,registry:Host@898,registry:Socket@1067,registry:Socket@1078,registry:Socket@809,registry:Socket@960,whole:Route@1467,whole:Route@156,whole:Route@189,whole:Route@456,whole:Route@956 2561db67e458818736964d27fe18b2b16027f6b4ed523bc23f9bf99c2700ad18
8internal/activator/genbackend.go ExecBackend.StartStaged legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; the same layout switch goes through genLayout on the same row's Host, so an over-long flat host takes the existing foreign arm on its canonical socket. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. registry:Host@1701,registry:Host@221,registry:Host@276,registry:Host@398,registry:Host@898,registry:Socket@1067,registry:Socket@1078,registry:Socket@809,registry:Socket@960,whole:Route@1467,whole:Route@156,whole:Route@189,whole:Route@456,whole:Route@956 2561db67e458818736964d27fe18b2b16027f6b4ed523bc23f9bf99c2700ad18
9@legacy 03bddaccf2f9196bf5f3d9ebeb9f2c1ae27721d52ed43cadf7754ec0247e82f4 internal/activator/opset.go Service.genTerminated legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; after the unchanged termination proof holds, removeGenDir removes the generation's own empty socket directory. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. whole:Route@266,whole:Route@368,whole:Route@435 ce408258825ac8650517a004d9d1868912c0b3ab9920f04c132060a5564bd496
10internal/activator/opset.go Service.genTerminated legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; after the unchanged termination proof holds, removeGenDir removes the generation's own empty socket directory. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. whole:Route@266,whole:Route@368,whole:Route@435 ce408258825ac8650517a004d9d1868912c0b3ab9920f04c132060a5564bd496
11@legacy df0ed90064b7ae08e98bf26cae8752828d8cf2525b1d5acf9ffb99fd89bbbe5f internal/activator/opset.go Service.handlelessGenEmpty legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; after the unchanged KillGen proof holds, removeGenDir removes the generation's own empty socket directory. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. whole:Route@123,whole:Route@181 9ab9046c4eaa787968a51629564812a11f9b16f79d6b2ed48e1b6259127d0f82
12internal/activator/opset.go Service.handlelessGenEmpty legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; after the unchanged KillGen proof holds, removeGenDir removes the generation's own empty socket directory. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. whole:Route@123,whole:Route@181 9ab9046c4eaa787968a51629564812a11f9b16f79d6b2ed48e1b6259127d0f82
13@legacy 3f25557f06cf9a8d84cb79f405766afdb355108faeca9337ae953563d43368b3 internal/activator/opset.go Service.failedWakeStopped legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; after the unchanged proof holds, the host-cgroup proof included where it is needed, removeGenDir removes the generation's own empty socket directory. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. registry:Host@266,whole:Route@514,whole:Route@622,whole:Route@959 ce0575660e2528b04edb7d69de3fb8cda9761182431629b6a591e63d153ee433
14internal/activator/opset.go Service.failedWakeStopped legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; after the unchanged proof holds, the host-cgroup proof included where it is needed, removeGenDir removes the generation's own empty socket directory. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. registry:Host@266,whole:Route@514,whole:Route@622,whole:Route@959 ce0575660e2528b04edb7d69de3fb8cda9761182431629b6a591e63d153ee433
15@legacy 364c06e030c985f9071eb6240813c5a26915e83e2fbf3154a49a92cb7299df0c internal/activator/prepare.go ExecBackend.prepareAt legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; a generation socket's own g<n> directory inside the instance run dir is made, 0750 setgid, before the unchanged stale-file removal. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. file:ReadDir@1842,registry:Host@1035,registry:Host@1280,registry:Host@4027,registry:Host@4188,registry:Host@443,registry:Host@940,whole:Route@1113,whole:Route@1356,whole:Route@197,whole:Route@3532,whole:Route@3871,whole:Route@4061 87013e6a3295e78f1ca06f34698dedf87a548ac211d5d9099e1f876e9df5bfb4
16internal/activator/prepare.go ExecBackend.prepareAt legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; a generation socket's own g<n> directory inside the instance run dir is made, 0750 setgid, before the unchanged stale-file removal. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. file:ReadDir@1842,registry:Host@1035,registry:Host@1280,registry:Host@4027,registry:Host@4188,registry:Host@443,registry:Host@940,whole:Route@1113,whole:Route@1356,whole:Route@197,whole:Route@3532,whole:Route@3871,whole:Route@4061 87013e6a3295e78f1ca06f34698dedf87a548ac211d5d9099e1f876e9df5bfb4
17@legacy 4bd1a38bcae29e6b5861d4ce33e54cf8b00f7ab94383f84f293d104117f72293 internal/activator/swap.go Service.swapOverlap legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; the overlap admission's layout check reads the same entry route through swapLayout instead of Classifier.Layout, so an over-long flat host is refused as a foreign row is (an agent-side deny). Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. registry:Kind@1902,whole:Route@1904,whole:Route@2228,whole:Route@2631,whole:Route@2649,whole:Route@3244,whole:Route@3292,whole:Route@3807,whole:Route@5291,whole:Route@7681,whole:Route@9215,whole:Route@9222,whole:Route@9262 b4f0c2b27d9b66bd4ce34f0bb36d41ab663be4b3bf0818eecdb9f4b9705a8c42
18internal/activator/swap.go Service.swapOverlap legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; the overlap admission's layout check reads the same entry route through swapLayout instead of Classifier.Layout, so an over-long flat host is refused as a foreign row is (an agent-side deny). Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. registry:Kind@1902,whole:Route@1904,whole:Route@2228,whole:Route@2631,whole:Route@2649,whole:Route@3244,whole:Route@3292,whole:Route@3807,whole:Route@5291,whole:Route@7681,whole:Route@9215,whole:Route@9222,whole:Route@9262 b4f0c2b27d9b66bd4ce34f0bb36d41ab663be4b3bf0818eecdb9f4b9705a8c42
19@legacy 034d3f17d51fdc2f6eba5388983c25029ec69362530807afb04183298bc7ebbe internal/activator/swaphold.go Service.foreignRow legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; the same entry route is read through swapLayout instead of Classifier.Layout, so an over-long flat host counts as foreign and its overlap runs as a hold (an agent-side deny). Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. whole:Route@124,whole:Route@131,whole:Route@211 202e99f9b25f5d72b055610ce6c5702115a192bc5e3eb8dccf2ae13ec2ec6782
20internal/activator/swaphold.go Service.foreignRow legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; the same entry route is read through swapLayout instead of Classifier.Layout, so an over-long flat host counts as foreign and its overlap runs as a hold (an agent-side deny). Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. whole:Route@124,whole:Route@131,whole:Route@211 202e99f9b25f5d72b055610ce6c5702115a192bc5e3eb8dccf2ae13ec2ec6782
21@legacy 74cc7260b1589d9ce1008dff776047452059a23b491d59b78b8085a939f7d529 internal/activator/swaphold.go Service.holdAdmitLocked legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; the same entry route's layout is read through swapLayout instead of Classifier.Layout; the accepted layouts are unchanged. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. registry:Backing@216,registry:Kind@186,whole:Route@188,whole:Route@218,whole:Route@454 d799942b4dd82aff68e3cd893a5454b4064cccabc8c223cd00b01cce8c94c27f
22internal/activator/swaphold.go Service.holdAdmitLocked legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: changed legacy row; the same entry route's layout is read through swapLayout instead of Classifier.Layout; the accepted layouts are unchanged. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. registry:Backing@216,registry:Kind@186,whole:Route@188,whole:Route@218,whole:Route@454 d799942b4dd82aff68e3cd893a5454b4064cccabc8c223cd00b01cce8c94c27f
23@legacy 0ad95a7feaff196ab33517d84c7093216e99a50cd8949139784c733bf063a1b7 internal/activator/genbackend.go ExecBackend.GenLayout legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: new unit; ExecBackend.Layout of the row passed through genLayout on its Host, a pure length check on a path under /run/carlos. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. registry:Host@103,whole:Route@78 006f4773612ecc5331b82dcb68d2d7ccae12ef1ebf112c4969bacab1286b64ae
24internal/activator/genbackend.go ExecBackend.GenLayout legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: new unit; ExecBackend.Layout of the row passed through genLayout on its Host, a pure length check on a path under /run/carlos. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. registry:Host@103,whole:Route@78 006f4773612ecc5331b82dcb68d2d7ccae12ef1ebf112c4969bacab1286b64ae
25@legacy e13b5ef5bb44d76fc8461aa39deb429642ebd786b0a59201f0525f3e22472a88 internal/activator/genbackend.go SplitBackend.GenLayout legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: new unit; forwards an exec row to the exec half's GenLayout and reads a unit row's Backing as SplitBackend.Layout already does. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. file:Exec@116,registry:Backing@65,whole:Route@165,whole:Route@194 446df7024a611a62293f8a296b51631ab90251874b7e475daf0c3912b21dc624
26internal/activator/genbackend.go SplitBackend.GenLayout legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: new unit; forwards an exec row to the exec half's GenLayout and reads a unit row's Backing as SplitBackend.Layout already does. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. file:Exec@116,registry:Backing@65,whole:Route@165,whole:Route@194 446df7024a611a62293f8a296b51631ab90251874b7e475daf0c3912b21dc624
27@legacy 5ecb1a3f92c17838124aa0f6e4e33e63d02c07e0e875ad23c4d786b75e014411 internal/activator/generations.go removeGenDir legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: new unit; reads the agent's own generation socket directory (ReadDir) to remove it only when empty, and the row's Host only for a log line; only a directory named for the generation's number that holds its socket is a candidate. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. file:ReadDir@254,registry:Host@470,whole:Route@78 f61d1d2caab7cf3b16428a7f052b1b8266135532569a8a239415e66f75f1a459
28internal/activator/generations.go removeGenDir legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: new unit; reads the agent's own generation socket directory (ReadDir) to remove it only when empty, and the row's Host only for a log line; only a directory named for the generation's number that holds its socket is a candidate. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. file:ReadDir@254,registry:Host@470,whole:Route@78 f61d1d2caab7cf3b16428a7f052b1b8266135532569a8a239415e66f75f1a459
29@legacy f4db0317506a91218701894b9343de98ba491519066006172485f45cd6fff4ba internal/activator/swaphold.go Service.swapLayout legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: new unit; passes an entry route to the backend's GenLayout, else to its Classifier.Layout, as the callers did before. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. whole:Route@129,whole:Route@203 a18de2da8d0bfa931af0ff6d65f1095abadf5271ef753eba385aba3aab2d3c46
30internal/activator/swaphold.go Service.swapLayout legacy accepted-legacy accepted-legacy;rev3=census-ruling-zddr4;basis=Census ruling zddr4: new unit; passes an entry route to the backend's GenLayout, else to its Classifier.Layout, as the callers did before. Boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree; no root decision; no registry, /data, release or claim read beyond what the unit read before. whole:Route@129,whole:Route@203 a18de2da8d0bfa931af0ff6d65f1095abadf5271ef753eba385aba3aab2d3c46
31# Envelopes, census ruling zddr4: each changed root source envelope below is accepted only because the units inside it are the ones listed above; boundary: agent-side, running as carlos; generation socket directories under the agent's own /run/carlos tree.
32@coverage cmd/zddprobe 7caf15d5b0663091108482a70ed71d1970eff947b0fe1860e560dd3822f0e675
33@coverage internal/activator 000f17d496e5791e7404952f0f4236a7cb3b02306042e3dc03149369a2878cf7
34