pi-daddy 0.28.0 → 0.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1005) hide show
  1. package/CHANGELOG.md +99 -124
  2. package/README.md +18 -896
  3. package/THIRD_PARTY_NOTICES.md +1 -1
  4. package/contracts/ledger-record/v1/README.md +44 -0
  5. package/contracts/ledger-record/v1/fixtures/child-lifecycle.json +45 -0
  6. package/contracts/ledger-record/v1/fixtures/ledger-record.jsonl +3 -0
  7. package/contracts/ledger-record/v1/governance-event.schema.json +747 -0
  8. package/contracts/ledger-record/v1/record.schema.json +91 -0
  9. package/dist/cli.d.ts +6 -4
  10. package/dist/cli.d.ts.map +1 -1
  11. package/dist/cli.js +108 -103
  12. package/dist/cli.js.map +1 -1
  13. package/dist/executors/activity-session.d.ts +12 -0
  14. package/dist/executors/activity-session.d.ts.map +1 -0
  15. package/dist/executors/activity-session.js +43 -0
  16. package/dist/executors/activity-session.js.map +1 -0
  17. package/dist/executors/executor.d.ts +39 -0
  18. package/dist/executors/executor.d.ts.map +1 -0
  19. package/dist/executors/executor.js +95 -0
  20. package/dist/executors/executor.js.map +1 -0
  21. package/dist/executors/herdr-cli.d.ts +78 -0
  22. package/dist/executors/herdr-cli.d.ts.map +1 -0
  23. package/dist/executors/herdr-cli.js +114 -0
  24. package/dist/executors/herdr-cli.js.map +1 -0
  25. package/dist/executors/herdr-name.d.ts.map +1 -0
  26. package/dist/executors/herdr-name.js.map +1 -0
  27. package/dist/executors/herdr-pi-lifecycle.d.ts.map +1 -0
  28. package/dist/executors/herdr-pi-lifecycle.js +22 -0
  29. package/dist/executors/herdr-pi-lifecycle.js.map +1 -0
  30. package/dist/executors/herdr-poll.d.ts +140 -0
  31. package/dist/executors/herdr-poll.d.ts.map +1 -0
  32. package/dist/executors/herdr-poll.js +252 -0
  33. package/dist/executors/herdr-poll.js.map +1 -0
  34. package/dist/executors/herdr-stage.d.ts +40 -0
  35. package/dist/executors/herdr-stage.d.ts.map +1 -0
  36. package/dist/executors/herdr-stage.js +54 -0
  37. package/dist/executors/herdr-stage.js.map +1 -0
  38. package/dist/executors/herdr-start.d.ts.map +1 -0
  39. package/dist/executors/herdr-start.js.map +1 -0
  40. package/dist/executors/native-session-target.d.ts +9 -0
  41. package/dist/executors/native-session-target.d.ts.map +1 -0
  42. package/dist/executors/native-session-target.js +30 -0
  43. package/dist/executors/native-session-target.js.map +1 -0
  44. package/dist/executors/pane-reaper.d.ts +111 -0
  45. package/dist/executors/pane-reaper.d.ts.map +1 -0
  46. package/dist/executors/pane-reaper.js +242 -0
  47. package/dist/executors/pane-reaper.js.map +1 -0
  48. package/dist/executors/process-activity.d.ts +3 -0
  49. package/dist/executors/process-activity.d.ts.map +1 -0
  50. package/dist/executors/process-activity.js +59 -0
  51. package/dist/executors/process-activity.js.map +1 -0
  52. package/dist/executors/run-herdr.d.ts +122 -0
  53. package/dist/executors/run-herdr.d.ts.map +1 -0
  54. package/dist/executors/run-herdr.js +341 -0
  55. package/dist/executors/run-herdr.js.map +1 -0
  56. package/dist/executors/vendor/herdr-pi-lifecycle.d.ts.map +1 -0
  57. package/dist/executors/vendor/herdr-pi-lifecycle.js.map +1 -0
  58. package/dist/governance/approval-prompt.d.ts +119 -0
  59. package/dist/governance/approval-prompt.d.ts.map +1 -0
  60. package/dist/governance/approval-prompt.js +133 -0
  61. package/dist/governance/approval-prompt.js.map +1 -0
  62. package/dist/governance/approval-store.d.ts +149 -0
  63. package/dist/governance/approval-store.d.ts.map +1 -0
  64. package/dist/governance/approval-store.js +309 -0
  65. package/dist/governance/approval-store.js.map +1 -0
  66. package/dist/governance/execution-retention.d.ts +90 -0
  67. package/dist/governance/execution-retention.d.ts.map +1 -0
  68. package/dist/governance/execution-retention.js +317 -0
  69. package/dist/governance/execution-retention.js.map +1 -0
  70. package/dist/governance/file-lock.d.ts.map +1 -0
  71. package/dist/governance/file-lock.js +205 -0
  72. package/dist/governance/file-lock.js.map +1 -0
  73. package/dist/governance/finalization.d.ts.map +1 -0
  74. package/dist/governance/finalization.js.map +1 -0
  75. package/dist/governance/grant-store.d.ts +96 -0
  76. package/dist/governance/grant-store.d.ts.map +1 -0
  77. package/dist/governance/grant-store.js +186 -0
  78. package/dist/governance/grant-store.js.map +1 -0
  79. package/dist/governance/init.d.ts +129 -0
  80. package/dist/governance/init.d.ts.map +1 -0
  81. package/dist/governance/init.js +360 -0
  82. package/dist/governance/init.js.map +1 -0
  83. package/dist/governance/lease-helper.d.ts.map +1 -0
  84. package/dist/governance/lease-helper.js +121 -0
  85. package/dist/governance/lease-helper.js.map +1 -0
  86. package/dist/governance/lease-record.d.ts +90 -0
  87. package/dist/governance/lease-record.d.ts.map +1 -0
  88. package/dist/governance/lease-record.js.map +1 -0
  89. package/dist/governance/ledger-events.d.ts +111 -0
  90. package/dist/governance/ledger-events.d.ts.map +1 -0
  91. package/dist/governance/ledger-events.js +129 -0
  92. package/dist/governance/ledger-events.js.map +1 -0
  93. package/dist/governance/ledger-report.d.ts +134 -0
  94. package/dist/governance/ledger-report.d.ts.map +1 -0
  95. package/dist/governance/ledger-report.js +294 -0
  96. package/dist/governance/ledger-report.js.map +1 -0
  97. package/dist/governance/ledger-v3-validation.d.ts +21 -0
  98. package/dist/governance/ledger-v3-validation.d.ts.map +1 -0
  99. package/dist/governance/ledger-v3-validation.js +353 -0
  100. package/dist/governance/ledger-v3-validation.js.map +1 -0
  101. package/dist/governance/ledger.d.ts +258 -0
  102. package/dist/governance/ledger.d.ts.map +1 -0
  103. package/dist/governance/ledger.js +201 -0
  104. package/dist/governance/ledger.js.map +1 -0
  105. package/dist/governance/native-session.d.ts +59 -0
  106. package/dist/governance/native-session.d.ts.map +1 -0
  107. package/dist/governance/native-session.js +208 -0
  108. package/dist/governance/native-session.js.map +1 -0
  109. package/dist/governance/record.d.ts +65 -0
  110. package/dist/governance/record.d.ts.map +1 -0
  111. package/dist/governance/record.js +259 -0
  112. package/dist/governance/record.js.map +1 -0
  113. package/dist/governance/retention-contract.d.ts.map +1 -0
  114. package/dist/governance/retention-contract.js +187 -0
  115. package/dist/governance/retention-contract.js.map +1 -0
  116. package/dist/governance/retention-json.d.ts.map +1 -0
  117. package/dist/governance/retention-json.js.map +1 -0
  118. package/dist/governance/workspace-lease.d.ts +40 -0
  119. package/dist/governance/workspace-lease.d.ts.map +1 -0
  120. package/dist/governance/workspace-lease.js +357 -0
  121. package/dist/governance/workspace-lease.js.map +1 -0
  122. package/dist/index.d.ts +59 -42
  123. package/dist/index.d.ts.map +1 -1
  124. package/dist/index.js +61 -42
  125. package/dist/index.js.map +1 -1
  126. package/dist/kernel/approval.d.ts +241 -0
  127. package/dist/kernel/approval.d.ts.map +1 -0
  128. package/dist/kernel/approval.js +270 -0
  129. package/dist/kernel/approval.js.map +1 -0
  130. package/dist/kernel/capabilities.d.ts +136 -0
  131. package/dist/kernel/capabilities.d.ts.map +1 -0
  132. package/dist/kernel/capabilities.js +199 -0
  133. package/dist/kernel/capabilities.js.map +1 -0
  134. package/dist/kernel/catalog.d.ts +98 -0
  135. package/dist/kernel/catalog.d.ts.map +1 -0
  136. package/dist/kernel/catalog.js +280 -0
  137. package/dist/kernel/catalog.js.map +1 -0
  138. package/dist/kernel/chain.d.ts.map +1 -0
  139. package/dist/kernel/chain.js.map +1 -0
  140. package/dist/kernel/correlation.d.ts.map +1 -0
  141. package/dist/kernel/correlation.js +267 -0
  142. package/dist/kernel/correlation.js.map +1 -0
  143. package/dist/kernel/definitions.d.ts.map +1 -0
  144. package/dist/kernel/definitions.js +164 -0
  145. package/dist/kernel/definitions.js.map +1 -0
  146. package/dist/kernel/delegate-types.d.ts +160 -0
  147. package/dist/kernel/delegate-types.d.ts.map +1 -0
  148. package/dist/kernel/delegate-types.js +9 -0
  149. package/dist/kernel/delegate-types.js.map +1 -0
  150. package/dist/kernel/delegate.d.ts.map +1 -0
  151. package/dist/kernel/delegate.js +314 -0
  152. package/dist/kernel/delegate.js.map +1 -0
  153. package/dist/kernel/delegation-approval.d.ts.map +1 -0
  154. package/dist/kernel/delegation-approval.js +93 -0
  155. package/dist/kernel/delegation-approval.js.map +1 -0
  156. package/dist/kernel/env-names.d.ts +51 -0
  157. package/dist/kernel/env-names.d.ts.map +1 -0
  158. package/dist/kernel/env-names.js +112 -0
  159. package/dist/kernel/env-names.js.map +1 -0
  160. package/dist/kernel/execution-id.d.ts.map +1 -0
  161. package/dist/kernel/execution-id.js.map +1 -0
  162. package/dist/kernel/fanout.d.ts.map +1 -0
  163. package/dist/kernel/fanout.js +93 -0
  164. package/dist/kernel/fanout.js.map +1 -0
  165. package/dist/kernel/grant-env.d.ts +118 -0
  166. package/dist/kernel/grant-env.d.ts.map +1 -0
  167. package/dist/kernel/grant-env.js +104 -0
  168. package/dist/kernel/grant-env.js.map +1 -0
  169. package/dist/kernel/ledger-identifiers.d.ts.map +1 -0
  170. package/dist/kernel/ledger-identifiers.js.map +1 -0
  171. package/dist/kernel/model-preflight.d.ts +13 -0
  172. package/dist/kernel/model-preflight.d.ts.map +1 -0
  173. package/dist/kernel/model-preflight.js +30 -0
  174. package/dist/kernel/model-preflight.js.map +1 -0
  175. package/dist/kernel/pi-tools.d.ts.map +1 -0
  176. package/dist/kernel/pi-tools.js +29 -0
  177. package/dist/kernel/pi-tools.js.map +1 -0
  178. package/dist/kernel/progress.d.ts.map +1 -0
  179. package/dist/kernel/progress.js.map +1 -0
  180. package/dist/kernel/project-paths.d.ts +43 -0
  181. package/dist/kernel/project-paths.d.ts.map +1 -0
  182. package/dist/kernel/project-paths.js +81 -0
  183. package/dist/kernel/project-paths.js.map +1 -0
  184. package/dist/kernel/propagation.d.ts +195 -0
  185. package/dist/kernel/propagation.d.ts.map +1 -0
  186. package/dist/kernel/propagation.js +275 -0
  187. package/dist/kernel/propagation.js.map +1 -0
  188. package/dist/kernel/refusals.d.ts +16 -0
  189. package/dist/kernel/refusals.d.ts.map +1 -0
  190. package/dist/kernel/refusals.js +53 -0
  191. package/dist/kernel/refusals.js.map +1 -0
  192. package/dist/kernel/resolve.d.ts.map +1 -0
  193. package/dist/kernel/resolve.js +201 -0
  194. package/dist/kernel/resolve.js.map +1 -0
  195. package/dist/kernel/routing-authority.d.ts.map +1 -0
  196. package/dist/kernel/routing-authority.js.map +1 -0
  197. package/dist/kernel/run-child.d.ts +111 -0
  198. package/dist/kernel/run-child.d.ts.map +1 -0
  199. package/dist/kernel/run-child.js +324 -0
  200. package/dist/kernel/run-child.js.map +1 -0
  201. package/dist/kernel/skill-packages.d.ts +116 -0
  202. package/dist/kernel/skill-packages.d.ts.map +1 -0
  203. package/dist/kernel/skill-packages.js +300 -0
  204. package/dist/kernel/skill-packages.js.map +1 -0
  205. package/dist/kernel/skill-resources.d.ts.map +1 -0
  206. package/dist/kernel/skill-resources.js +56 -0
  207. package/dist/kernel/skill-resources.js.map +1 -0
  208. package/dist/kernel/spawn.d.ts.map +1 -0
  209. package/dist/kernel/spawn.js.map +1 -0
  210. package/dist/kernel/workspace.d.ts +51 -0
  211. package/dist/kernel/workspace.d.ts.map +1 -0
  212. package/dist/kernel/workspace.js +223 -0
  213. package/dist/kernel/workspace.js.map +1 -0
  214. package/dist/products/activity-timeline.d.ts +126 -0
  215. package/dist/products/activity-timeline.d.ts.map +1 -0
  216. package/dist/products/activity-timeline.js +542 -0
  217. package/dist/products/activity-timeline.js.map +1 -0
  218. package/dist/products/dashboard-cli.d.ts +26 -0
  219. package/dist/products/dashboard-cli.d.ts.map +1 -0
  220. package/dist/products/dashboard-cli.js +224 -0
  221. package/dist/products/dashboard-cli.js.map +1 -0
  222. package/dist/products/dashboard-display-controls.d.ts +17 -0
  223. package/dist/products/dashboard-display-controls.d.ts.map +1 -0
  224. package/dist/products/dashboard-display-controls.js +38 -0
  225. package/dist/products/dashboard-display-controls.js.map +1 -0
  226. package/dist/products/dashboard-handshake.d.ts +42 -0
  227. package/dist/products/dashboard-handshake.d.ts.map +1 -0
  228. package/dist/products/dashboard-handshake.js +158 -0
  229. package/dist/products/dashboard-handshake.js.map +1 -0
  230. package/dist/products/dashboard-herdr.d.ts +55 -0
  231. package/dist/products/dashboard-herdr.d.ts.map +1 -0
  232. package/dist/products/dashboard-herdr.js +324 -0
  233. package/dist/products/dashboard-herdr.js.map +1 -0
  234. package/dist/products/dashboard-projection.d.ts +62 -0
  235. package/dist/products/dashboard-projection.d.ts.map +1 -0
  236. package/dist/products/dashboard-projection.js +305 -0
  237. package/dist/products/dashboard-projection.js.map +1 -0
  238. package/dist/products/dashboard-render.d.ts.map +1 -0
  239. package/dist/products/dashboard-render.js +208 -0
  240. package/dist/products/dashboard-render.js.map +1 -0
  241. package/extensions/activity-timeline.ts +134 -28
  242. package/extensions/approval-banking.ts +3 -3
  243. package/extensions/approvals.ts +18 -12
  244. package/extensions/chain-approval-facts.ts +9 -6
  245. package/extensions/chain-ledger.ts +4 -4
  246. package/extensions/chain-plan.ts +6 -6
  247. package/extensions/correlation-shape.ts +42 -33
  248. package/extensions/delegate-chain.ts +93 -45
  249. package/extensions/delegation-authority.ts +7 -3
  250. package/extensions/delegation-ledger.ts +2 -2
  251. package/extensions/delegation-native.ts +24 -7
  252. package/extensions/delegation.ts +91 -80
  253. package/extensions/execute-child.ts +440 -293
  254. package/extensions/execution-occurrence.ts +2 -2
  255. package/extensions/executor-session.ts +5 -5
  256. package/extensions/fanout-outcome.ts +8 -6
  257. package/extensions/grant-store-refusal.ts +24 -12
  258. package/extensions/grants-command.ts +41 -33
  259. package/extensions/grants-connected-command.ts +29 -15
  260. package/extensions/grants.ts +73 -73
  261. package/extensions/init-command.ts +18 -12
  262. package/extensions/reload-environment.ts +12 -5
  263. package/extensions/run-delegation.ts +29 -19
  264. package/extensions/session-environment.ts +25 -11
  265. package/extensions/session-report.ts +60 -11
  266. package/extensions/session.ts +58 -34
  267. package/extensions/spawn-summary.ts +5 -5
  268. package/extensions/stored-grant-session.ts +5 -5
  269. package/extensions/tripwire.ts +1 -1
  270. package/extensions/workspace-runtime.ts +26 -24
  271. package/herdr-plugin/herdr-plugin.toml +1 -1
  272. package/package.json +4 -211
  273. package/src/cli.ts +136 -89
  274. package/src/executors/activity-session.ts +54 -0
  275. package/src/executors/executor.ts +123 -0
  276. package/src/executors/herdr-cli.ts +132 -0
  277. package/src/executors/herdr-pi-lifecycle.ts +21 -0
  278. package/src/executors/herdr-poll.ts +305 -0
  279. package/src/executors/herdr-stage.ts +55 -0
  280. package/src/executors/native-session-target.ts +31 -0
  281. package/src/executors/pane-reaper.ts +270 -0
  282. package/src/executors/process-activity.ts +54 -0
  283. package/src/executors/run-herdr.ts +426 -0
  284. package/src/governance/approval-prompt.ts +225 -0
  285. package/src/governance/approval-store.ts +385 -0
  286. package/src/governance/execution-retention.ts +372 -0
  287. package/src/governance/file-lock.ts +210 -0
  288. package/src/governance/finalization.ts +82 -0
  289. package/src/governance/grant-store.ts +235 -0
  290. package/src/governance/init.ts +447 -0
  291. package/src/governance/lease-helper.ts +124 -0
  292. package/src/governance/lease-record.ts +131 -0
  293. package/src/governance/ledger-events.ts +222 -0
  294. package/src/governance/ledger-report.ts +396 -0
  295. package/src/governance/ledger-v3-validation.ts +384 -0
  296. package/src/governance/ledger.ts +419 -0
  297. package/src/governance/native-session.ts +264 -0
  298. package/src/governance/record.ts +294 -0
  299. package/src/governance/retention-contract.ts +201 -0
  300. package/src/governance/retention-json.ts +24 -0
  301. package/src/governance/workspace-lease.ts +429 -0
  302. package/src/index.ts +82 -92
  303. package/src/kernel/approval.ts +406 -0
  304. package/src/kernel/capabilities.ts +216 -0
  305. package/src/kernel/catalog.ts +313 -0
  306. package/src/kernel/correlation.ts +351 -0
  307. package/src/kernel/definitions.ts +215 -0
  308. package/src/kernel/delegate-types.ts +162 -0
  309. package/src/kernel/delegate.ts +370 -0
  310. package/src/kernel/delegation-approval.ts +126 -0
  311. package/src/kernel/env-names.ts +119 -0
  312. package/src/kernel/fanout.ts +106 -0
  313. package/src/kernel/grant-env.ts +174 -0
  314. package/src/kernel/model-preflight.ts +44 -0
  315. package/src/kernel/pi-tools.ts +32 -0
  316. package/src/kernel/project-paths.ts +97 -0
  317. package/src/kernel/propagation.ts +341 -0
  318. package/src/kernel/refusals.ts +64 -0
  319. package/src/kernel/resolve.ts +258 -0
  320. package/src/kernel/run-child.ts +418 -0
  321. package/src/kernel/skill-packages.ts +329 -0
  322. package/src/kernel/skill-resources.ts +64 -0
  323. package/src/kernel/workspace.ts +336 -0
  324. package/src/products/activity-timeline.ts +679 -0
  325. package/src/products/dashboard-cli.ts +250 -0
  326. package/src/products/dashboard-display-controls.ts +44 -0
  327. package/src/products/dashboard-handshake.ts +222 -0
  328. package/src/products/dashboard-herdr.ts +427 -0
  329. package/src/products/dashboard-projection.ts +389 -0
  330. package/src/products/dashboard-render.ts +260 -0
  331. package/PRODUCT-GUIDE.md +0 -155
  332. package/REQUIREMENTS.md +0 -41
  333. package/contracts/daily-view/v1/README.md +0 -114
  334. package/contracts/daily-view/v1/fixtures/view.json +0 -525
  335. package/contracts/daily-view/v1/fixtures/view.txt +0 -75
  336. package/contracts/daily-view/v1/fixtures/work.jsonl +0 -17
  337. package/contracts/daily-view/v1/p03/README.md +0 -26
  338. package/contracts/daily-view/v1/p03/fixtures/retained-executions.json +0 -241
  339. package/contracts/daily-view/v1/p03/projection.schema.json +0 -194
  340. package/contracts/daily-view/v1/p03/provenance.json +0 -21
  341. package/contracts/dashboard-host/v1/README.md +0 -176
  342. package/contracts/debrief/v1/README.md +0 -146
  343. package/contracts/debrief/v1/intervention/README.md +0 -32
  344. package/contracts/debrief/v1/intervention/fixtures/artifact-3ee11136beb864f518252e5024dae9197421fbf97b6e981d3243c782b5c44bd0.txt +0 -1
  345. package/contracts/debrief/v1/intervention/fixtures/artifact-58905d872dd3c54a9705f67b05fa82edbad7af6476ae8993faf1a7b9fadfb905.txt +0 -1
  346. package/contracts/debrief/v1/intervention/fixtures/assessment.json +0 -29
  347. package/contracts/debrief/v1/intervention/fixtures/blind-view.json +0 -20
  348. package/contracts/debrief/v1/intervention/fixtures/choice.json +0 -7
  349. package/contracts/debrief/v1/intervention/fixtures/manifest.json +0 -57
  350. package/contracts/debrief/v1/intervention/fixtures/reveal.json +0 -39
  351. package/contracts/debrief/v1/provenance.json +0 -89
  352. package/contracts/debrief/v1/work-capture/README.md +0 -38
  353. package/contracts/debrief/v1/work-capture/fixtures/batch.json +0 -17
  354. package/contracts/debrief/v1/work-capture/fixtures/cases.json +0 -184
  355. package/contracts/debrief/v1/work-capture/fixtures/review.json +0 -184
  356. package/contracts/debrief/v1/work-capture/review-request.schema.json +0 -41
  357. package/contracts/debrief/v1/work-capture/work-case.schema.json +0 -190
  358. package/contracts/debrief/v2/README.md +0 -71
  359. package/contracts/debrief/v2/input-pin.json +0 -66
  360. package/contracts/debrief/v2/intervention-upstream.md +0 -40
  361. package/contracts/debrief/v2/work-signals-upstream.md +0 -22
  362. package/contracts/dispatch-control/v1/README.md +0 -109
  363. package/contracts/dispatch-control/v1/request.schema.json +0 -19
  364. package/contracts/effect-profile/v1/README.md +0 -124
  365. package/contracts/execution-retention/v1/README.md +0 -109
  366. package/contracts/execution-retention/v2/README.md +0 -148
  367. package/contracts/execution-retention/v2/fixtures/interrupted-native-bytes.json +0 -91
  368. package/contracts/execution-retention/v2/fixtures/missing-native-session.json +0 -91
  369. package/contracts/execution-retention/v2/fixtures/native-file-unknown-branch.json +0 -91
  370. package/contracts/execution-retention/v2/fixtures/native-id-without-bytes.json +0 -91
  371. package/contracts/execution-retention/v2/fixtures/native-live-branch.json +0 -90
  372. package/contracts/execution-retention/v2/fixtures/replaced-native-session.json +0 -92
  373. package/contracts/execution-retention/v2/fixtures/result-82c620cdfeb8ca6b858cf653d7f5e2eedca5315d6244216d60e8b36f03223d6a.bin +0 -1
  374. package/contracts/execution-retention/v2/fixtures/session-2ec1f134bc739984434f7fca689e1c3d1c39fce2dcadae709e9b6faedfcc4ac7.bin +0 -3
  375. package/contracts/execution-retention/v2/fixtures/session-9bdb4bd16a901da31580acf056bda525225259e15ec409e0410480109011772f.bin +0 -3
  376. package/contracts/execution-retention/v2/manifest.schema.json +0 -858
  377. package/contracts/experiment/v1/README.md +0 -164
  378. package/contracts/factory-order/v1/README.md +0 -151
  379. package/contracts/factory-order/v1/adoption-pin.json +0 -8
  380. package/contracts/intent-control/v1/README.md +0 -135
  381. package/contracts/intent-control/v1/request.schema.json +0 -1096
  382. package/contracts/intent-control/v2/README.md +0 -34
  383. package/contracts/intent-control/v2/request.schema.json +0 -1070
  384. package/contracts/ledger/v2/README.md +0 -59
  385. package/contracts/ledger/v2/fixtures/capability-decision.json +0 -95
  386. package/contracts/ledger/v2/fixtures/check-receipt.json +0 -40
  387. package/contracts/ledger/v2/fixtures/child-lifecycle.json +0 -42
  388. package/contracts/ledger/v2/fixtures/workspace-lease.json +0 -41
  389. package/contracts/ledger/v2/ledger-event.schema.json +0 -633
  390. package/contracts/ledger/v3/README.md +0 -36
  391. package/contracts/ledger/v3/fixtures/check-receipt.json +0 -41
  392. package/contracts/ledger/v3/fixtures/child-lifecycle.json +0 -44
  393. package/contracts/ledger/v3/fixtures/workflow-fact.json +0 -40
  394. package/contracts/ledger/v3/ledger-event.schema.json +0 -955
  395. package/contracts/ledger/v4/README.md +0 -241
  396. package/contracts/ledger/v4/fixtures/layout-options.json +0 -428
  397. package/contracts/ledger/v4/fixtures/work-acceptance.json +0 -57
  398. package/contracts/ledger/v4/fixtures/work-occurrence.json +0 -44
  399. package/contracts/ledger/v4/fixtures/work-revision.json +0 -26
  400. package/contracts/ledger/v4/fixtures/work-snapshot.json +0 -73
  401. package/contracts/ledger/v4/ledger-event.schema.json +0 -162
  402. package/contracts/ordinary-control/v1/README.md +0 -59
  403. package/contracts/producer-ipc/v1/README.md +0 -137
  404. package/dist/activity-timeline.d.ts +0 -109
  405. package/dist/activity-timeline.d.ts.map +0 -1
  406. package/dist/activity-timeline.js +0 -208
  407. package/dist/activity-timeline.js.map +0 -1
  408. package/dist/approval-prompt.d.ts +0 -119
  409. package/dist/approval-prompt.d.ts.map +0 -1
  410. package/dist/approval-prompt.js +0 -133
  411. package/dist/approval-prompt.js.map +0 -1
  412. package/dist/approval-store.d.ts +0 -149
  413. package/dist/approval-store.d.ts.map +0 -1
  414. package/dist/approval-store.js +0 -314
  415. package/dist/approval-store.js.map +0 -1
  416. package/dist/approval.d.ts +0 -241
  417. package/dist/approval.d.ts.map +0 -1
  418. package/dist/approval.js +0 -268
  419. package/dist/approval.js.map +0 -1
  420. package/dist/capabilities.d.ts +0 -136
  421. package/dist/capabilities.d.ts.map +0 -1
  422. package/dist/capabilities.js +0 -203
  423. package/dist/capabilities.js.map +0 -1
  424. package/dist/catalog.d.ts +0 -98
  425. package/dist/catalog.d.ts.map +0 -1
  426. package/dist/catalog.js +0 -273
  427. package/dist/catalog.js.map +0 -1
  428. package/dist/chain.d.ts.map +0 -1
  429. package/dist/chain.js.map +0 -1
  430. package/dist/check-runner.d.ts +0 -66
  431. package/dist/check-runner.d.ts.map +0 -1
  432. package/dist/check-runner.js +0 -275
  433. package/dist/check-runner.js.map +0 -1
  434. package/dist/control-journal.d.ts +0 -20
  435. package/dist/control-journal.d.ts.map +0 -1
  436. package/dist/control-journal.js +0 -73
  437. package/dist/control-journal.js.map +0 -1
  438. package/dist/correlation.d.ts.map +0 -1
  439. package/dist/correlation.js +0 -231
  440. package/dist/correlation.js.map +0 -1
  441. package/dist/daily-dashboard-host.d.ts +0 -136
  442. package/dist/daily-dashboard-host.d.ts.map +0 -1
  443. package/dist/daily-dashboard-host.js +0 -164
  444. package/dist/daily-dashboard-host.js.map +0 -1
  445. package/dist/daily-panel.d.ts +0 -36
  446. package/dist/daily-panel.d.ts.map +0 -1
  447. package/dist/daily-panel.js +0 -84
  448. package/dist/daily-panel.js.map +0 -1
  449. package/dist/daily-view-input.d.ts +0 -44
  450. package/dist/daily-view-input.d.ts.map +0 -1
  451. package/dist/daily-view-input.js +0 -68
  452. package/dist/daily-view-input.js.map +0 -1
  453. package/dist/daily-view-render.d.ts +0 -5
  454. package/dist/daily-view-render.d.ts.map +0 -1
  455. package/dist/daily-view-render.js +0 -42
  456. package/dist/daily-view-render.js.map +0 -1
  457. package/dist/daily-view.d.ts +0 -77
  458. package/dist/daily-view.d.ts.map +0 -1
  459. package/dist/daily-view.js +0 -176
  460. package/dist/daily-view.js.map +0 -1
  461. package/dist/dashboard-cli.d.ts +0 -54
  462. package/dist/dashboard-cli.d.ts.map +0 -1
  463. package/dist/dashboard-cli.js +0 -367
  464. package/dist/dashboard-cli.js.map +0 -1
  465. package/dist/dashboard-display-controls.d.ts +0 -15
  466. package/dist/dashboard-display-controls.d.ts.map +0 -1
  467. package/dist/dashboard-display-controls.js +0 -34
  468. package/dist/dashboard-display-controls.js.map +0 -1
  469. package/dist/dashboard-handshake.d.ts +0 -42
  470. package/dist/dashboard-handshake.d.ts.map +0 -1
  471. package/dist/dashboard-handshake.js +0 -147
  472. package/dist/dashboard-handshake.js.map +0 -1
  473. package/dist/dashboard-harness.d.ts +0 -22
  474. package/dist/dashboard-harness.d.ts.map +0 -1
  475. package/dist/dashboard-harness.js +0 -89
  476. package/dist/dashboard-harness.js.map +0 -1
  477. package/dist/dashboard-herdr.d.ts +0 -55
  478. package/dist/dashboard-herdr.d.ts.map +0 -1
  479. package/dist/dashboard-herdr.js +0 -293
  480. package/dist/dashboard-herdr.js.map +0 -1
  481. package/dist/dashboard-host-contract.d.ts +0 -127
  482. package/dist/dashboard-host-contract.d.ts.map +0 -1
  483. package/dist/dashboard-host-contract.js +0 -14
  484. package/dist/dashboard-host-contract.js.map +0 -1
  485. package/dist/dashboard-host-transport.d.ts +0 -16
  486. package/dist/dashboard-host-transport.d.ts.map +0 -1
  487. package/dist/dashboard-host-transport.js +0 -127
  488. package/dist/dashboard-host-transport.js.map +0 -1
  489. package/dist/dashboard-host.d.ts +0 -239
  490. package/dist/dashboard-host.d.ts.map +0 -1
  491. package/dist/dashboard-host.js +0 -474
  492. package/dist/dashboard-host.js.map +0 -1
  493. package/dist/dashboard-menu.d.ts +0 -16
  494. package/dist/dashboard-menu.d.ts.map +0 -1
  495. package/dist/dashboard-menu.js +0 -33
  496. package/dist/dashboard-menu.js.map +0 -1
  497. package/dist/dashboard-observation.d.ts +0 -28
  498. package/dist/dashboard-observation.d.ts.map +0 -1
  499. package/dist/dashboard-observation.js +0 -87
  500. package/dist/dashboard-observation.js.map +0 -1
  501. package/dist/dashboard-projection.d.ts +0 -73
  502. package/dist/dashboard-projection.d.ts.map +0 -1
  503. package/dist/dashboard-projection.js +0 -294
  504. package/dist/dashboard-projection.js.map +0 -1
  505. package/dist/dashboard-render.d.ts.map +0 -1
  506. package/dist/dashboard-render.js +0 -212
  507. package/dist/dashboard-render.js.map +0 -1
  508. package/dist/debrief-contract.d.ts +0 -65
  509. package/dist/debrief-contract.d.ts.map +0 -1
  510. package/dist/debrief-contract.js +0 -151
  511. package/dist/debrief-contract.js.map +0 -1
  512. package/dist/debrief-fixture.d.ts +0 -16
  513. package/dist/debrief-fixture.d.ts.map +0 -1
  514. package/dist/debrief-fixture.js +0 -41
  515. package/dist/debrief-fixture.js.map +0 -1
  516. package/dist/debrief-host.d.ts +0 -59
  517. package/dist/debrief-host.d.ts.map +0 -1
  518. package/dist/debrief-host.js +0 -49
  519. package/dist/debrief-host.js.map +0 -1
  520. package/dist/debrief-render.d.ts +0 -5
  521. package/dist/debrief-render.d.ts.map +0 -1
  522. package/dist/debrief-render.js +0 -65
  523. package/dist/debrief-render.js.map +0 -1
  524. package/dist/debrief.d.ts +0 -90
  525. package/dist/debrief.d.ts.map +0 -1
  526. package/dist/debrief.js +0 -263
  527. package/dist/debrief.js.map +0 -1
  528. package/dist/definitions.d.ts.map +0 -1
  529. package/dist/definitions.js +0 -164
  530. package/dist/definitions.js.map +0 -1
  531. package/dist/delegate-types.d.ts +0 -154
  532. package/dist/delegate-types.d.ts.map +0 -1
  533. package/dist/delegate-types.js +0 -8
  534. package/dist/delegate-types.js.map +0 -1
  535. package/dist/delegate.d.ts.map +0 -1
  536. package/dist/delegate.js +0 -313
  537. package/dist/delegate.js.map +0 -1
  538. package/dist/delegation-approval.d.ts.map +0 -1
  539. package/dist/delegation-approval.js +0 -94
  540. package/dist/delegation-approval.js.map +0 -1
  541. package/dist/dispatch-control.d.ts +0 -45
  542. package/dist/dispatch-control.d.ts.map +0 -1
  543. package/dist/dispatch-control.js +0 -76
  544. package/dist/dispatch-control.js.map +0 -1
  545. package/dist/effect-profile-runtime.d.ts +0 -40
  546. package/dist/effect-profile-runtime.d.ts.map +0 -1
  547. package/dist/effect-profile-runtime.js +0 -51
  548. package/dist/effect-profile-runtime.js.map +0 -1
  549. package/dist/effect-profile.d.ts +0 -40
  550. package/dist/effect-profile.d.ts.map +0 -1
  551. package/dist/effect-profile.js +0 -152
  552. package/dist/effect-profile.js.map +0 -1
  553. package/dist/execution-id.d.ts.map +0 -1
  554. package/dist/execution-id.js.map +0 -1
  555. package/dist/execution-retention.d.ts +0 -90
  556. package/dist/execution-retention.d.ts.map +0 -1
  557. package/dist/execution-retention.js +0 -247
  558. package/dist/execution-retention.js.map +0 -1
  559. package/dist/executor.d.ts +0 -39
  560. package/dist/executor.d.ts.map +0 -1
  561. package/dist/executor.js +0 -94
  562. package/dist/executor.js.map +0 -1
  563. package/dist/experiment-contract.d.ts +0 -56
  564. package/dist/experiment-contract.d.ts.map +0 -1
  565. package/dist/experiment-contract.js +0 -80
  566. package/dist/experiment-contract.js.map +0 -1
  567. package/dist/experiment-state.d.ts +0 -22
  568. package/dist/experiment-state.d.ts.map +0 -1
  569. package/dist/experiment-state.js +0 -79
  570. package/dist/experiment-state.js.map +0 -1
  571. package/dist/experiment-store.d.ts +0 -30
  572. package/dist/experiment-store.d.ts.map +0 -1
  573. package/dist/experiment-store.js +0 -147
  574. package/dist/experiment-store.js.map +0 -1
  575. package/dist/experiment.d.ts +0 -65
  576. package/dist/experiment.d.ts.map +0 -1
  577. package/dist/experiment.js +0 -362
  578. package/dist/experiment.js.map +0 -1
  579. package/dist/factory-contract.d.ts +0 -79
  580. package/dist/factory-contract.d.ts.map +0 -1
  581. package/dist/factory-contract.js +0 -89
  582. package/dist/factory-contract.js.map +0 -1
  583. package/dist/factory-migration.d.ts +0 -20
  584. package/dist/factory-migration.d.ts.map +0 -1
  585. package/dist/factory-migration.js +0 -55
  586. package/dist/factory-migration.js.map +0 -1
  587. package/dist/factory-order.d.ts +0 -848
  588. package/dist/factory-order.d.ts.map +0 -1
  589. package/dist/factory-order.js +0 -83
  590. package/dist/factory-order.js.map +0 -1
  591. package/dist/factory-registry.d.ts +0 -121
  592. package/dist/factory-registry.d.ts.map +0 -1
  593. package/dist/factory-registry.js +0 -133
  594. package/dist/factory-registry.js.map +0 -1
  595. package/dist/fanout.d.ts.map +0 -1
  596. package/dist/fanout.js +0 -93
  597. package/dist/fanout.js.map +0 -1
  598. package/dist/file-lock.d.ts.map +0 -1
  599. package/dist/file-lock.js +0 -201
  600. package/dist/file-lock.js.map +0 -1
  601. package/dist/finalization.d.ts.map +0 -1
  602. package/dist/finalization.js.map +0 -1
  603. package/dist/git-identity.d.ts +0 -13
  604. package/dist/git-identity.d.ts.map +0 -1
  605. package/dist/git-identity.js +0 -47
  606. package/dist/git-identity.js.map +0 -1
  607. package/dist/grant-env.d.ts +0 -75
  608. package/dist/grant-env.d.ts.map +0 -1
  609. package/dist/grant-env.js +0 -154
  610. package/dist/grant-env.js.map +0 -1
  611. package/dist/grant-store.d.ts +0 -96
  612. package/dist/grant-store.d.ts.map +0 -1
  613. package/dist/grant-store.js +0 -188
  614. package/dist/grant-store.js.map +0 -1
  615. package/dist/herdr-cli.d.ts +0 -78
  616. package/dist/herdr-cli.d.ts.map +0 -1
  617. package/dist/herdr-cli.js +0 -113
  618. package/dist/herdr-cli.js.map +0 -1
  619. package/dist/herdr-name.d.ts.map +0 -1
  620. package/dist/herdr-name.js.map +0 -1
  621. package/dist/herdr-pi-lifecycle.d.ts.map +0 -1
  622. package/dist/herdr-pi-lifecycle.js +0 -22
  623. package/dist/herdr-pi-lifecycle.js.map +0 -1
  624. package/dist/herdr-poll.d.ts +0 -133
  625. package/dist/herdr-poll.d.ts.map +0 -1
  626. package/dist/herdr-poll.js +0 -222
  627. package/dist/herdr-poll.js.map +0 -1
  628. package/dist/herdr-stage.d.ts +0 -40
  629. package/dist/herdr-stage.d.ts.map +0 -1
  630. package/dist/herdr-stage.js +0 -54
  631. package/dist/herdr-stage.js.map +0 -1
  632. package/dist/herdr-start.d.ts.map +0 -1
  633. package/dist/herdr-start.js.map +0 -1
  634. package/dist/init.d.ts +0 -117
  635. package/dist/init.d.ts.map +0 -1
  636. package/dist/init.js +0 -323
  637. package/dist/init.js.map +0 -1
  638. package/dist/intent-application.d.ts +0 -17
  639. package/dist/intent-application.d.ts.map +0 -1
  640. package/dist/intent-application.js +0 -114
  641. package/dist/intent-application.js.map +0 -1
  642. package/dist/intent-control.d.ts +0 -201
  643. package/dist/intent-control.d.ts.map +0 -1
  644. package/dist/intent-control.js +0 -110
  645. package/dist/intent-control.js.map +0 -1
  646. package/dist/intent-scheduling.d.ts +0 -9
  647. package/dist/intent-scheduling.d.ts.map +0 -1
  648. package/dist/intent-scheduling.js +0 -15
  649. package/dist/intent-scheduling.js.map +0 -1
  650. package/dist/learning-connection.d.ts +0 -127
  651. package/dist/learning-connection.d.ts.map +0 -1
  652. package/dist/learning-connection.js +0 -54
  653. package/dist/learning-connection.js.map +0 -1
  654. package/dist/lease-helper.d.ts.map +0 -1
  655. package/dist/lease-helper.js +0 -94
  656. package/dist/lease-helper.js.map +0 -1
  657. package/dist/lease-record.d.ts +0 -90
  658. package/dist/lease-record.d.ts.map +0 -1
  659. package/dist/lease-record.js.map +0 -1
  660. package/dist/ledger-append.d.ts +0 -15
  661. package/dist/ledger-append.d.ts.map +0 -1
  662. package/dist/ledger-append.js +0 -94
  663. package/dist/ledger-append.js.map +0 -1
  664. package/dist/ledger-events.d.ts +0 -131
  665. package/dist/ledger-events.d.ts.map +0 -1
  666. package/dist/ledger-events.js +0 -107
  667. package/dist/ledger-events.js.map +0 -1
  668. package/dist/ledger-identifiers.d.ts.map +0 -1
  669. package/dist/ledger-identifiers.js.map +0 -1
  670. package/dist/ledger-report.d.ts +0 -134
  671. package/dist/ledger-report.d.ts.map +0 -1
  672. package/dist/ledger-report.js +0 -271
  673. package/dist/ledger-report.js.map +0 -1
  674. package/dist/ledger-v3-validation.d.ts +0 -11
  675. package/dist/ledger-v3-validation.d.ts.map +0 -1
  676. package/dist/ledger-v3-validation.js +0 -265
  677. package/dist/ledger-v3-validation.js.map +0 -1
  678. package/dist/ledger.d.ts +0 -242
  679. package/dist/ledger.d.ts.map +0 -1
  680. package/dist/ledger.js +0 -142
  681. package/dist/ledger.js.map +0 -1
  682. package/dist/measured-order.d.ts +0 -249
  683. package/dist/measured-order.d.ts.map +0 -1
  684. package/dist/measured-order.js +0 -309
  685. package/dist/measured-order.js.map +0 -1
  686. package/dist/measured-session.d.ts +0 -97
  687. package/dist/measured-session.d.ts.map +0 -1
  688. package/dist/measured-session.js +0 -134
  689. package/dist/measured-session.js.map +0 -1
  690. package/dist/model-preflight.d.ts +0 -13
  691. package/dist/model-preflight.d.ts.map +0 -1
  692. package/dist/model-preflight.js +0 -29
  693. package/dist/model-preflight.js.map +0 -1
  694. package/dist/native-session-target.d.ts +0 -9
  695. package/dist/native-session-target.d.ts.map +0 -1
  696. package/dist/native-session-target.js +0 -29
  697. package/dist/native-session-target.js.map +0 -1
  698. package/dist/native-session.d.ts +0 -59
  699. package/dist/native-session.d.ts.map +0 -1
  700. package/dist/native-session.js +0 -154
  701. package/dist/native-session.js.map +0 -1
  702. package/dist/order-schedule.d.ts +0 -37
  703. package/dist/order-schedule.d.ts.map +0 -1
  704. package/dist/order-schedule.js +0 -81
  705. package/dist/order-schedule.js.map +0 -1
  706. package/dist/ordinary-children.d.ts +0 -52
  707. package/dist/ordinary-children.d.ts.map +0 -1
  708. package/dist/ordinary-children.js +0 -93
  709. package/dist/ordinary-children.js.map +0 -1
  710. package/dist/pane-reaper.d.ts +0 -111
  711. package/dist/pane-reaper.d.ts.map +0 -1
  712. package/dist/pane-reaper.js +0 -242
  713. package/dist/pane-reaper.js.map +0 -1
  714. package/dist/pi-tools.d.ts.map +0 -1
  715. package/dist/pi-tools.js +0 -21
  716. package/dist/pi-tools.js.map +0 -1
  717. package/dist/producer-ipc-contract.d.ts +0 -29
  718. package/dist/producer-ipc-contract.d.ts.map +0 -1
  719. package/dist/producer-ipc-contract.js +0 -29
  720. package/dist/producer-ipc-contract.js.map +0 -1
  721. package/dist/producer-ipc.d.ts +0 -55
  722. package/dist/producer-ipc.d.ts.map +0 -1
  723. package/dist/producer-ipc.js +0 -143
  724. package/dist/producer-ipc.js.map +0 -1
  725. package/dist/product-files.d.ts +0 -6
  726. package/dist/product-files.d.ts.map +0 -1
  727. package/dist/product-files.js +0 -55
  728. package/dist/product-files.js.map +0 -1
  729. package/dist/progress.d.ts.map +0 -1
  730. package/dist/progress.js.map +0 -1
  731. package/dist/propagation.d.ts +0 -203
  732. package/dist/propagation.d.ts.map +0 -1
  733. package/dist/propagation.js +0 -279
  734. package/dist/propagation.js.map +0 -1
  735. package/dist/refusals.d.ts +0 -16
  736. package/dist/refusals.d.ts.map +0 -1
  737. package/dist/refusals.js +0 -55
  738. package/dist/refusals.js.map +0 -1
  739. package/dist/resolve.d.ts.map +0 -1
  740. package/dist/resolve.js +0 -211
  741. package/dist/resolve.js.map +0 -1
  742. package/dist/resource-budget.d.ts +0 -334
  743. package/dist/resource-budget.d.ts.map +0 -1
  744. package/dist/resource-budget.js +0 -415
  745. package/dist/resource-budget.js.map +0 -1
  746. package/dist/retention-contract.d.ts.map +0 -1
  747. package/dist/retention-contract.js +0 -104
  748. package/dist/retention-contract.js.map +0 -1
  749. package/dist/retention-json.d.ts.map +0 -1
  750. package/dist/retention-json.js.map +0 -1
  751. package/dist/routing-authority.d.ts.map +0 -1
  752. package/dist/routing-authority.js.map +0 -1
  753. package/dist/run-child.d.ts +0 -87
  754. package/dist/run-child.d.ts.map +0 -1
  755. package/dist/run-child.js +0 -248
  756. package/dist/run-child.js.map +0 -1
  757. package/dist/run-herdr.d.ts +0 -119
  758. package/dist/run-herdr.d.ts.map +0 -1
  759. package/dist/run-herdr.js +0 -335
  760. package/dist/run-herdr.js.map +0 -1
  761. package/dist/skill-packages.d.ts +0 -116
  762. package/dist/skill-packages.d.ts.map +0 -1
  763. package/dist/skill-packages.js +0 -295
  764. package/dist/skill-packages.js.map +0 -1
  765. package/dist/skill-resources.d.ts.map +0 -1
  766. package/dist/skill-resources.js +0 -52
  767. package/dist/skill-resources.js.map +0 -1
  768. package/dist/spawn.d.ts.map +0 -1
  769. package/dist/spawn.js.map +0 -1
  770. package/dist/vendor/adoption.d.ts +0 -129
  771. package/dist/vendor/adoption.d.ts.map +0 -1
  772. package/dist/vendor/adoption.js +0 -102
  773. package/dist/vendor/adoption.js.map +0 -1
  774. package/dist/vendor/herdr-pi-lifecycle.d.ts.map +0 -1
  775. package/dist/vendor/herdr-pi-lifecycle.js.map +0 -1
  776. package/dist/work-command.d.ts +0 -32
  777. package/dist/work-command.d.ts.map +0 -1
  778. package/dist/work-command.js +0 -179
  779. package/dist/work-command.js.map +0 -1
  780. package/dist/work-ledger-destination.d.ts +0 -20
  781. package/dist/work-ledger-destination.d.ts.map +0 -1
  782. package/dist/work-ledger-destination.js +0 -131
  783. package/dist/work-ledger-destination.js.map +0 -1
  784. package/dist/work-ledger-json.d.ts +0 -25
  785. package/dist/work-ledger-json.d.ts.map +0 -1
  786. package/dist/work-ledger-json.js +0 -267
  787. package/dist/work-ledger-json.js.map +0 -1
  788. package/dist/work-ledger-occurrences.d.ts +0 -227
  789. package/dist/work-ledger-occurrences.d.ts.map +0 -1
  790. package/dist/work-ledger-occurrences.js +0 -115
  791. package/dist/work-ledger-occurrences.js.map +0 -1
  792. package/dist/work-ledger-projection.d.ts +0 -295
  793. package/dist/work-ledger-projection.d.ts.map +0 -1
  794. package/dist/work-ledger-projection.js +0 -237
  795. package/dist/work-ledger-projection.js.map +0 -1
  796. package/dist/work-ledger-snapshot.d.ts +0 -29
  797. package/dist/work-ledger-snapshot.d.ts.map +0 -1
  798. package/dist/work-ledger-snapshot.js +0 -267
  799. package/dist/work-ledger-snapshot.js.map +0 -1
  800. package/dist/work-ledger-types.d.ts +0 -261
  801. package/dist/work-ledger-types.d.ts.map +0 -1
  802. package/dist/work-ledger-types.js +0 -13
  803. package/dist/work-ledger-types.js.map +0 -1
  804. package/dist/work-ledger-validation.d.ts +0 -14
  805. package/dist/work-ledger-validation.d.ts.map +0 -1
  806. package/dist/work-ledger-validation.js +0 -226
  807. package/dist/work-ledger-validation.js.map +0 -1
  808. package/dist/work-ledger.d.ts +0 -43
  809. package/dist/work-ledger.d.ts.map +0 -1
  810. package/dist/work-ledger.js +0 -225
  811. package/dist/work-ledger.js.map +0 -1
  812. package/dist/work-policy-registry.d.ts +0 -133
  813. package/dist/work-policy-registry.d.ts.map +0 -1
  814. package/dist/work-policy-registry.js +0 -128
  815. package/dist/work-policy-registry.js.map +0 -1
  816. package/dist/work-run.d.ts +0 -56
  817. package/dist/work-run.d.ts.map +0 -1
  818. package/dist/work-run.js +0 -102
  819. package/dist/work-run.js.map +0 -1
  820. package/dist/work-setup.d.ts +0 -40
  821. package/dist/work-setup.d.ts.map +0 -1
  822. package/dist/work-setup.js +0 -174
  823. package/dist/work-setup.js.map +0 -1
  824. package/dist/workflow-fact-id.d.ts +0 -4
  825. package/dist/workflow-fact-id.d.ts.map +0 -1
  826. package/dist/workflow-fact-id.js +0 -14
  827. package/dist/workflow-fact-id.js.map +0 -1
  828. package/dist/workflow-facts.d.ts +0 -34
  829. package/dist/workflow-facts.d.ts.map +0 -1
  830. package/dist/workflow-facts.js +0 -43
  831. package/dist/workflow-facts.js.map +0 -1
  832. package/dist/workspace-lease.d.ts +0 -40
  833. package/dist/workspace-lease.d.ts.map +0 -1
  834. package/dist/workspace-lease.js +0 -333
  835. package/dist/workspace-lease.js.map +0 -1
  836. package/dist/workspace.d.ts +0 -57
  837. package/dist/workspace.d.ts.map +0 -1
  838. package/dist/workspace.js +0 -216
  839. package/dist/workspace.js.map +0 -1
  840. package/extensions/daily-dashboard-session.ts +0 -48
  841. package/extensions/daily-work-session.ts +0 -20
  842. package/extensions/learning-outcome-session.ts +0 -38
  843. package/extensions/learning-session.ts +0 -59
  844. package/extensions/ordinary-runtime.ts +0 -14
  845. package/extensions/primary-shadow.ts +0 -11
  846. package/extensions/work-policy-session.ts +0 -139
  847. package/extensions/work-run-session.ts +0 -75
  848. package/extensions/work-runtime.ts +0 -44
  849. package/extensions/work-session.ts +0 -132
  850. package/src/activity-timeline.ts +0 -133
  851. package/src/approval-prompt.ts +0 -225
  852. package/src/approval-store.ts +0 -386
  853. package/src/approval.ts +0 -399
  854. package/src/capabilities.ts +0 -220
  855. package/src/catalog.ts +0 -306
  856. package/src/check-runner.ts +0 -387
  857. package/src/control-journal.ts +0 -26
  858. package/src/correlation.ts +0 -320
  859. package/src/daily-dashboard-host.ts +0 -105
  860. package/src/daily-panel.ts +0 -80
  861. package/src/daily-view-input.ts +0 -59
  862. package/src/daily-view-render.ts +0 -45
  863. package/src/daily-view.ts +0 -160
  864. package/src/dashboard-cli.ts +0 -340
  865. package/src/dashboard-display-controls.ts +0 -21
  866. package/src/dashboard-handshake.ts +0 -199
  867. package/src/dashboard-harness.ts +0 -37
  868. package/src/dashboard-herdr.ts +0 -363
  869. package/src/dashboard-host-contract.ts +0 -50
  870. package/src/dashboard-host-transport.ts +0 -43
  871. package/src/dashboard-host.ts +0 -244
  872. package/src/dashboard-menu.ts +0 -28
  873. package/src/dashboard-observation.ts +0 -46
  874. package/src/dashboard-projection.ts +0 -390
  875. package/src/dashboard-render.ts +0 -259
  876. package/src/debrief-contract.ts +0 -127
  877. package/src/debrief-fixture.ts +0 -29
  878. package/src/debrief-host.ts +0 -53
  879. package/src/debrief-render.ts +0 -49
  880. package/src/debrief.ts +0 -198
  881. package/src/definitions.ts +0 -211
  882. package/src/delegate-types.ts +0 -154
  883. package/src/delegate.ts +0 -348
  884. package/src/delegation-approval.ts +0 -126
  885. package/src/dispatch-control.ts +0 -81
  886. package/src/effect-profile-runtime.ts +0 -46
  887. package/src/effect-profile.ts +0 -129
  888. package/src/execution-retention.ts +0 -230
  889. package/src/executor.ts +0 -123
  890. package/src/experiment-contract.ts +0 -66
  891. package/src/experiment-state.ts +0 -44
  892. package/src/experiment-store.ts +0 -98
  893. package/src/experiment.ts +0 -236
  894. package/src/factory-contract.ts +0 -47
  895. package/src/factory-migration.ts +0 -29
  896. package/src/factory-order.ts +0 -56
  897. package/src/factory-registry.ts +0 -60
  898. package/src/fanout.ts +0 -106
  899. package/src/file-lock.ts +0 -178
  900. package/src/finalization.ts +0 -79
  901. package/src/git-identity.ts +0 -56
  902. package/src/grant-env.ts +0 -221
  903. package/src/grant-store.ts +0 -235
  904. package/src/herdr-cli.ts +0 -125
  905. package/src/herdr-pi-lifecycle.ts +0 -21
  906. package/src/herdr-poll.ts +0 -253
  907. package/src/herdr-stage.ts +0 -55
  908. package/src/init.ts +0 -389
  909. package/src/intent-application.ts +0 -91
  910. package/src/intent-control.ts +0 -107
  911. package/src/intent-scheduling.ts +0 -14
  912. package/src/learning-connection.ts +0 -70
  913. package/src/lease-helper.ts +0 -97
  914. package/src/lease-record.ts +0 -131
  915. package/src/ledger-append.ts +0 -72
  916. package/src/ledger-events.ts +0 -226
  917. package/src/ledger-report.ts +0 -357
  918. package/src/ledger-v3-validation.ts +0 -266
  919. package/src/ledger.ts +0 -369
  920. package/src/measured-order.ts +0 -72
  921. package/src/measured-session.ts +0 -70
  922. package/src/model-preflight.ts +0 -41
  923. package/src/native-session-target.ts +0 -23
  924. package/src/native-session.ts +0 -139
  925. package/src/order-schedule.ts +0 -42
  926. package/src/ordinary-children.ts +0 -59
  927. package/src/pane-reaper.ts +0 -270
  928. package/src/pi-tools.ts +0 -25
  929. package/src/producer-ipc-contract.ts +0 -26
  930. package/src/producer-ipc.ts +0 -107
  931. package/src/product-files.ts +0 -34
  932. package/src/propagation.ts +0 -333
  933. package/src/refusals.ts +0 -70
  934. package/src/resolve.ts +0 -267
  935. package/src/resource-budget.ts +0 -349
  936. package/src/retention-contract.ts +0 -84
  937. package/src/retention-json.ts +0 -20
  938. package/src/run-child.ts +0 -303
  939. package/src/run-herdr.ts +0 -386
  940. package/src/skill-packages.ts +0 -314
  941. package/src/skill-resources.ts +0 -48
  942. package/src/vendor/adoption.ts +0 -109
  943. package/src/work-command.ts +0 -197
  944. package/src/work-ledger-destination.ts +0 -113
  945. package/src/work-ledger-json.ts +0 -228
  946. package/src/work-ledger-occurrences.ts +0 -99
  947. package/src/work-ledger-projection.ts +0 -262
  948. package/src/work-ledger-snapshot.ts +0 -246
  949. package/src/work-ledger-types.ts +0 -229
  950. package/src/work-ledger-validation.ts +0 -174
  951. package/src/work-ledger.ts +0 -186
  952. package/src/work-policy-registry.ts +0 -81
  953. package/src/work-run.ts +0 -79
  954. package/src/work-setup.ts +0 -141
  955. package/src/workflow-fact-id.ts +0 -16
  956. package/src/workflow-facts.ts +0 -65
  957. package/src/workspace-lease.ts +0 -363
  958. package/src/workspace.ts +0 -308
  959. /package/contracts/{ledger/v3 → ledger-record/v1}/fixtures/capability-decision.json +0 -0
  960. /package/contracts/{ledger/v3 → ledger-record/v1}/fixtures/workspace-lease.json +0 -0
  961. /package/dist/{herdr-name.d.ts → executors/herdr-name.d.ts} +0 -0
  962. /package/dist/{herdr-name.js → executors/herdr-name.js} +0 -0
  963. /package/dist/{herdr-pi-lifecycle.d.ts → executors/herdr-pi-lifecycle.d.ts} +0 -0
  964. /package/dist/{herdr-start.d.ts → executors/herdr-start.d.ts} +0 -0
  965. /package/dist/{herdr-start.js → executors/herdr-start.js} +0 -0
  966. /package/dist/{vendor → executors/vendor}/herdr-pi-lifecycle.d.ts +0 -0
  967. /package/dist/{vendor → executors/vendor}/herdr-pi-lifecycle.js +0 -0
  968. /package/dist/{file-lock.d.ts → governance/file-lock.d.ts} +0 -0
  969. /package/dist/{finalization.d.ts → governance/finalization.d.ts} +0 -0
  970. /package/dist/{finalization.js → governance/finalization.js} +0 -0
  971. /package/dist/{lease-helper.d.ts → governance/lease-helper.d.ts} +0 -0
  972. /package/dist/{lease-record.js → governance/lease-record.js} +0 -0
  973. /package/dist/{retention-contract.d.ts → governance/retention-contract.d.ts} +0 -0
  974. /package/dist/{retention-json.d.ts → governance/retention-json.d.ts} +0 -0
  975. /package/dist/{retention-json.js → governance/retention-json.js} +0 -0
  976. /package/dist/{chain.d.ts → kernel/chain.d.ts} +0 -0
  977. /package/dist/{chain.js → kernel/chain.js} +0 -0
  978. /package/dist/{correlation.d.ts → kernel/correlation.d.ts} +0 -0
  979. /package/dist/{definitions.d.ts → kernel/definitions.d.ts} +0 -0
  980. /package/dist/{delegate.d.ts → kernel/delegate.d.ts} +0 -0
  981. /package/dist/{delegation-approval.d.ts → kernel/delegation-approval.d.ts} +0 -0
  982. /package/dist/{execution-id.d.ts → kernel/execution-id.d.ts} +0 -0
  983. /package/dist/{execution-id.js → kernel/execution-id.js} +0 -0
  984. /package/dist/{fanout.d.ts → kernel/fanout.d.ts} +0 -0
  985. /package/dist/{ledger-identifiers.d.ts → kernel/ledger-identifiers.d.ts} +0 -0
  986. /package/dist/{ledger-identifiers.js → kernel/ledger-identifiers.js} +0 -0
  987. /package/dist/{pi-tools.d.ts → kernel/pi-tools.d.ts} +0 -0
  988. /package/dist/{progress.d.ts → kernel/progress.d.ts} +0 -0
  989. /package/dist/{progress.js → kernel/progress.js} +0 -0
  990. /package/dist/{resolve.d.ts → kernel/resolve.d.ts} +0 -0
  991. /package/dist/{routing-authority.d.ts → kernel/routing-authority.d.ts} +0 -0
  992. /package/dist/{routing-authority.js → kernel/routing-authority.js} +0 -0
  993. /package/dist/{skill-resources.d.ts → kernel/skill-resources.d.ts} +0 -0
  994. /package/dist/{spawn.d.ts → kernel/spawn.d.ts} +0 -0
  995. /package/dist/{spawn.js → kernel/spawn.js} +0 -0
  996. /package/dist/{dashboard-render.d.ts → products/dashboard-render.d.ts} +0 -0
  997. /package/src/{herdr-name.ts → executors/herdr-name.ts} +0 -0
  998. /package/src/{herdr-start.ts → executors/herdr-start.ts} +0 -0
  999. /package/src/{vendor → executors/vendor}/herdr-pi-lifecycle.ts +0 -0
  1000. /package/src/{chain.ts → kernel/chain.ts} +0 -0
  1001. /package/src/{execution-id.ts → kernel/execution-id.ts} +0 -0
  1002. /package/src/{ledger-identifiers.ts → kernel/ledger-identifiers.ts} +0 -0
  1003. /package/src/{progress.ts → kernel/progress.ts} +0 -0
  1004. /package/src/{routing-authority.ts → kernel/routing-authority.ts} +0 -0
  1005. /package/src/{spawn.ts → kernel/spawn.ts} +0 -0
@@ -1,66 +0,0 @@
1
- {
2
- "repository": "https://github.com/mojomanyana/skill-harness",
3
- "commit": "638494af0a0058edf9a9b1b02e57af894ab46ed6",
4
- "sources": [
5
- {
6
- "source": "packages/core/src/work-capture.ts",
7
- "target": "work-capture.ts.txt",
8
- "commit": "638494af0a0058edf9a9b1b02e57af894ab46ed6",
9
- "sha256": "a258861619e92d5b41336ee83d41c42fec33212643c22b7d6ace8e55561b98ea"
10
- },
11
- {
12
- "source": "packages/core/src/work-signals.ts",
13
- "target": "work-signals.ts.txt",
14
- "commit": "638494af0a0058edf9a9b1b02e57af894ab46ed6",
15
- "sha256": "5e14a6069bcecfd358b5e3d034a78ee896c6f7f646c8208d8233cb9dd751dca4"
16
- },
17
- {
18
- "source": "packages/core/src/intervention.ts",
19
- "target": "intervention.ts.txt",
20
- "commit": "638494af0a0058edf9a9b1b02e57af894ab46ed6",
21
- "sha256": "05377d1045942334016e7154bb092cf2fdeb4d95c86c2c4170b321f11d9d0312"
22
- },
23
- {
24
- "source": "packages/adapters/src/evidence-archive.ts",
25
- "target": "evidence-archive.ts.txt",
26
- "commit": "638494af0a0058edf9a9b1b02e57af894ab46ed6",
27
- "sha256": "f41fd69daa4326cefad673fbf4eee2e0c44aa12de595d8a9c4deec209fe38807"
28
- },
29
- {
30
- "source": "packages/adapters/src/work-case-archive.ts",
31
- "target": "work-case-archive.ts.txt",
32
- "commit": "638494af0a0058edf9a9b1b02e57af894ab46ed6",
33
- "sha256": "6998556f29c068ae8d5f383b76e913f429235aa90bb6f50e34a20785d870d4a6"
34
- },
35
- {
36
- "source": "packages/adapters/src/work-case-review.ts",
37
- "target": "work-case-review.ts.txt",
38
- "commit": "638494af0a0058edf9a9b1b02e57af894ab46ed6",
39
- "sha256": "d7b374c80f182b20367a3968d9815fffae8ca70a452a5c6f246e7678158c7a7a"
40
- },
41
- {
42
- "source": "packages/adapters/src/work-signal-cases.ts",
43
- "target": "work-signal-cases.ts.txt",
44
- "commit": "638494af0a0058edf9a9b1b02e57af894ab46ed6",
45
- "sha256": "947dc22f35e8f40510e8a37c5630fd38afe2400c112993f322e2bce8af4f467f"
46
- },
47
- {
48
- "source": "packages/adapters/src/work-signal-observation.ts",
49
- "target": "work-signal-observation.ts.txt",
50
- "commit": "638494af0a0058edf9a9b1b02e57af894ab46ed6",
51
- "sha256": "b97b727f2c90634f977abbba837411d01b96eb24c85430ea129c97956b48efac"
52
- },
53
- {
54
- "source": "packages/adapters/src/blind-intervention.ts",
55
- "target": "blind-intervention.ts.txt",
56
- "commit": "638494af0a0058edf9a9b1b02e57af894ab46ed6",
57
- "sha256": "9b73d85927cc3386b9ab2fae7e647793929e360e5fda892e4db2ab692ab756e4"
58
- },
59
- {
60
- "source": "packages/adapters/src/work-candidates.ts",
61
- "target": "work-candidates.ts.txt",
62
- "commit": "638494af0a0058edf9a9b1b02e57af894ab46ed6",
63
- "sha256": "2b0bd7188b9da6951f050e9889ed3fdf5adafbd4b5cc5a81ec417a14fac20117"
64
- }
65
- ]
66
- }
@@ -1,40 +0,0 @@
1
- # Frozen intervention comparison primitives — P12 partial, P08 fixture input
2
-
3
- This is a SEPARATE family from existing fixed-model `buildComparison`/`compare`. Their same-model/judge/input guards are unchanged. No model is launched here.
4
-
5
- `freezeIntervention` binds an investigation digest, common scenario/rubric/fixture/held-out/harness/judge-policy inputs, mode, repetition/criterion/critical thresholds, resource metric and explicit candidate axes. Undeclared model/effort/skill/prompt/configuration changes reject. Multiple changed axes are a package intervention, not evidence of one variable's causal effect. LLM sampling is not claimed deterministic.
6
-
7
- `assertInterventionRoles` is a pre-spend check over independently resolved HOST context. Missing roles and proposer/judge/subject canonical identity conflicts refuse. Same subjects may repeat across arms. It does not resolve providers, authenticate arbitrary context or qualify a delivery route. Do not derive qualification or expected evidence digests from incoming arm claims.
8
-
9
- `assessIntervention` checks exact host-confirmed evidence digests and frozen input/cell policy. Delivery NOT-MEASURED/ERROR and missing/unknown/suspect cells keep the comparison incomplete; objective failure prevents judging/eligibility. Votes are retained per criterion. Actual output bytes must match per-cell/arm hashes; digests alone are missing evidence. Retained bytes are copied for later blind reads. Cheap failed arms cannot become eligible. Cheapest eligible is only a conditional measurement; routingDefault is always null and adoptionAuthorized false.
10
-
11
- `interventionEvidenceFromResults` uses existing schema3 validation and retains complete source results/votes beside the summary. It requires recorded `source_hashes['intervention:manifest']` and `['intervention:inputs']`, matching model/mode/judge/plan, and supplied output bytes. It never stamps missing bindings onto historical runs. Multi-judge conversion is not yet supported rather than choosing a convenient panel vote. The orchestrator that records these bindings and qualifies actual execution remains integration work.
12
-
13
- ## Blind view API
14
-
15
- ```ts
16
- const blind = createBlindComparison(manifest, recomputedAssessment);
17
- const view = blind.view(); // opaque labels + artifact hashes + explicit clue limitation; no configuration/cost
18
- const bytes = blind.readArtifact(label, artifactHash); // only retained bytes admitted to that label
19
- blind.choose({kind:'one'|'tie'|'none'|'insufficient', labels:[/* opaque labels, or [] */]});
20
- const revealed = blind.reveal(); // refuses before choice; different choice refuses after reveal
21
- ```
22
-
23
- An optional private seed supports fixtures/host-controlled restoration; real independent views need fresh private randomness, not a public fixed seed. Public view omits identity metadata, but arbitrary artifact text may reveal clues. The host must enforce user/judge identity, persist quality/seed/reveal state before exposure, and expose only the public view/read methods before choice. This in-memory API is not durable human authentication or proof a host did not leak the assessment/configuration. P08 must keep its total five-card budget and real pause/exposure boundaries.
24
-
25
- `fixtures/` is generated by actual code from fixed synthetic evidence, retained Layout A/B bytes, fixture role identities and a public zero seed. It is NOT live qualification, real human blinding, efficacy or casting evidence. It supplies a concrete UI contract: blind-view.json before choice; choice.json; reveal.json only afterward.
26
-
27
- ## Durable local blind review
28
-
29
- `retainBlindIntervention(root, manifest, evidence, qualification, author)` explicitly retains a private comparison and returns its immutable archive ID. It checks the actual supplied output bytes and complete assessment before retention; roles remain independently supplied host declarations, not authentication. An independent random seed is retained privately with each new comparison. `openBlindIntervention(root, id, author)` reopens exactly that comparison. Each `view`, `quality`, `readArtifact`, `choose` and `reveal` re-reads verified archive inputs and recomputes the assessment and label mapping; no stored eligibility verdict is trusted. Artifact loss blocks access, including reveal.
30
-
31
- The durable adapter intentionally commits ONE immutable initial quality choice, stricter than the in-memory primitive's editable pre-reveal choice. `quality()` reads it without revealing identity/cost; `reveal()` refuses until it exists. Same-choice resubmission is read-only and idempotent; a different choice refuses even after process restart. An atomic directory claim admits one initial writer; a competing writer may observe a conflict or incomplete claim, never overwrite it. Partial/missing/malformed claimed records require explicit recovery, not automatic deletion or another vote. A write/fsync error can follow a committed choice: retain unknown acknowledgement and inspect that same comparison. No automatic retry or filesystem cleanup occurs.
32
-
33
- Private archive ownership is required. This is not protection against a malicious same-UID owner deleting/rewriting an archive or creating a separate comparison, remote user authentication, automatic exposure, a claim that artifact content cannot disclose identity, or crash-durability proof beyond successful file/directory synchronization. Choice files live under `blind-decisions/<comparison-id>/choice.json`; archive metadata (including seed/roles/cost) is operator-private, never a dashboard payload. Only the restricted view/artifact/quality methods go to a pre-reveal client. Records are bounded (2MiB input JSON, 8MiB per artifact/64MiB aggregate, 4096 artifacts, 16KiB choice read). No provider call, routing default or adoption is introduced.
34
-
35
- Remaining P12: qualified model-backed orchestration, complete panel/authenticated blind workflow, verified role/receipt integration, applicable casting rows/uncertainty/revalidation and live P08 demonstration. Full acceptance and any routing/adoption default remain pending.
36
-
37
- ```sh
38
- node scripts/generate-intervention-fixture.mjs --check
39
- node node_modules/vitest/vitest.mjs run packages/core/test/intervention.test.ts packages/core/test/intervention-results.test.ts packages/core/test/comparison.test.ts
40
- ```
@@ -1,22 +0,0 @@
1
- # Frozen work signals and explicit review bridge — v1
2
-
3
- Additive adapter APIs, not a reinterpretation of `contracts/work-capture/v2`.
4
-
5
- 1. `retainWorkSignalObservation(root, snapshot, facts)` validates closed bounded host declarations and retains canonical `work-signal-observation-v1` bytes. Returns `{manifestId,inputSha256}`.
6
- 2. `readWorkSignalObservation(root, manifestId)` reopens verified bytes and rederives `work-signals-v1` cases. It rejects missing/corrupt/mismatched/unsupported input; unknown scope stays an explicit issue, not an empty success claim.
7
- 3. `captureWorkSignalCases(root, observationId)` creates immutable case references and a selected batch. Case parser `work-signal-case`/`1` stores `{version:'work-signal-case-v1',observationId,caseId}`; no cached verdict. Batch parser `work-signal-batch`/`1` stores `{version:'work-signal-batch-v1',observationId,candidateIds,visibility:'silent',promotion:'not-authorized'}`. Both source identities bind the referenced observation/case.
8
- 4. `createWorkSignalReviewer(root,batchId,operatorAuthor)` exposes `list(offset=0,limit=5)`, `history(caseManifestId)` and `decide({caseManifestId,priorDecisionId,disposition,note})`. Decisions use the existing durable lock/CAS/history writer and `decision_schema:1`. No new history engine or worker control path.
9
-
10
- Each selected case is rederived from its original input on access, including immediately before decision storage. Case membership in the exact observation is checked; a valid case from a different observation cannot be substituted. Missing original input blocks decisions. `list` additionally returns `observationId` and observation `issues`, so unresolved scope with zero cards is not hidden. Counts describe the selected batch, not exhaustive live work or calibration denominators.
11
-
12
- Defect cards have `capture_schema:3` and explicit `overdue_checkpoint`, `reopened_acceptance`, or `intent_conflict` reason/metrics. Coverage issues retain `capture_schema:2`. Both remain silent/unresolved/causal-not-established nominations. The old `createWorkCaseReviewer` accepts only its original v2 batch contract and REFUSES these new batches. A UI must opt into this bridge and these card versions; existing pi-daddy pinned v2 clients are not upgraded by this library addition.
13
-
14
- `operatorAuthor` and supplied facts are conditional host declarations, not authentication. Retained inputs do not prove the truth/availability of external referenced evidence, active branch, an authenticated human pause or authority to expose/promote/adopt. Live source capture, actual dashboard version selection, privacy/role authority and automatic pause/exposure policy remain integration work.
15
-
16
- Limits: closed input arrays at most256 entries, input bytes at most1MiB, selected batch at most1024 unique case manifest IDs, batch/case payload reads at most128KiB, pages at most5. Existing non-expiring decision locks and1MiB history bound remain. Trusted local archive integrity is not hostile same-UID containment, rollback resistance or a storage quota.
17
-
18
- `captureArchivedWorkSignals(root,workManifestId,independentWorkContext,facts)` additionally consumes the pinned real Work-v4 reader. It derives scope, binding identities, coverage and acceptance from the actual projection rather than accepting replacement fields from the signal caller. Its `archived-work-signals-v1` link retains the raw source identity, producer pin, full projection, frozen observation and review batch references. Missing/malformed/unselected work refuses. Missing authority remains coverage, even when a supplied objective fact says FAIL.
19
-
20
- This adapter's `work-v4-revision-digests-v1` binding profile uses obligation/intent/policy/artifact REVISION digests, not artifact content digests; prior-acceptance facts must use the same profile. A valid P01 selection with multiple bindings for the same obligation digest is currently refused by the narrower signal profile, never collapsed. The retained full projection preserves detailed coverage/problems; the signal projection remains conservative. Supplied checkpoint/outcome facts and Work context still need independent host provenance/authorization. No live collection or authentication is created by this mapping. Original work bytes are verified at capture; the case reader subsequently verifies its retained input, not every external artifact mentioned in that input.
21
-
22
- Changing rule semantics requires a new explicit observation format/reader. Preserve old inputs, outcomes and decision corrections; never silently relabel a saved nomination or erase an unknown result.
@@ -1,109 +0,0 @@
1
- # P05 bounded dispatch control v1 — contract for P15
2
-
3
- Later local continuation: [actual P01 intent application](../../intent-control/v1/README.md) supplies
4
- scope/priority/alternative adapters under a separate v3 resource binding and intent protocol. The matrix
5
- below remains the contract for **this v1 dispatch-only protocol**, not a permanent claim of external blockers.
6
-
7
- Implemented local candidate; overall review and formal acceptance pending. This is **not general live
8
- worker steering**. No new dashboard authority database, model judgment, worker prompt, terminal typing,
9
- Herdr control call or background reconciler is introduced. P04 status remains read-only and unchanged.
10
-
11
- ## Exact action matrix
12
-
13
- | Request | Supported target/boundary | Result |
14
- | --- | --- | --- |
15
- | `pause-dispatch` | One independently bound **v2 resource budget**; application only under the reservation lock with zero active reservations | Pause future reservations; never interrupt admitted work |
16
- | `resume-dispatch` | Same exact budget and zero-reservation boundary | Re-enable only its original fixed limits; no scope/effect expansion |
17
- | Busy pause/resume | Same budget, original live permits still outstanding | Pending; admission barrier blocks new reservations; explicit authorized reconciliation after settlement |
18
- | `cancel-execution` | No atomic durable request-to-live-executor cancellation primitive implemented | Explicit unsupported/not-applied, never ordinary steering or terminal fallback |
19
- | `revise-scope`, `reprioritize`, `select-alternative` | No supported atomic P01 revision application adapter supplied | Explicit unsupported/not-applied; work-v4 remains sole intent source |
20
- | Targeted live pi/Herdr steering | No verified atomic session/target/safe-boundary mechanism established | BLOCKED; pane/title/PID/idle/last-entry facts are not authority |
21
- | Arbitrary bash/model/shared-write or alternative budget/lease stores | Outside the partial P06 profile | BLOCKED; no global dispatch/containment claim |
22
-
23
- The useful demonstrated route is `prepareDigestProfile(v2Binding)` / `runDigestProfile`: its actual existing
24
- reservation seam obeys the gate. Preparation probes are not workload dispatch and are not disabled by the
25
- workload gate. Other budgets and executors that do not use this binding are not governed. The boundary is
26
- **verified reservation quiescence**, not global process silence or an authenticated live-pi safe point.
27
- P06's original live owner settles its own permit after executor finalization; orphan reservations remain
28
- active across restart. There is no PID/TTL/receipt-based recovery or general worker-state inference.
29
-
30
- ## Authority and revision
31
-
32
- The host retains the independently created budget binding and supplies independent `DispatchAuthority`
33
- declarations: its exact authority digest plus at most 128 approved request digests. These are trusted host
34
- inputs, not request metadata, authentication credentials or a wire-authority loader. A host must not derive
35
- approval from an incoming request/claimed result or merely copy its identifiers. Defaults are denied.
36
- No mutable approval list is persisted. Existing trusted-store/same-UID/rollback limitations still apply;
37
- this library is not a remote authentication boundary or a revocable distributed authority service.
38
-
39
- `DispatchRequest` has a closed version `1.0`, immutable request ID, exact `bindingDigest`, expected **dispatch
40
- revision**, action and nullable execution target. That revision is operational budget state, **not a P01
41
- scope revision**. Requests cannot rewrite P01 intent or claim acceptance. `targetExecutionId` is non-null
42
- only for the distinct unsupported cancellation route. Wire input uses `parseDispatchRequest` (4096-byte
43
- limit, duplicate-aware/exact numeric parsing); `request.schema.json` describes the decoded closed shape.
44
- Do not first round lossy numeric tokens through JSON.parse and call them validated original wire bytes.
45
-
46
- Use `dispatchRequestDigest` over the complete canonical request to join independent approval. Missing/wrong
47
- authority refuses; then unsupported route, stale revision and another pending decision refuse. One approved
48
- request advances dispatch revision immediately, including when busy; stale UI cannot supersede it. A busy
49
- admission barrier prevents new reservations while existing work drains. The application itself waits for
50
- zero active reservations under the same non-stale-recoverable lock used by reserve/settle. A barrier is not
51
- a claim that pause has already applied, or that the active worker stopped.
52
-
53
- ```ts
54
- import { createDispatchBudget, openResourceBudget } from 'pi-daddy/resource-budget';
55
- import { parseDispatchRequest } from 'pi-daddy/dispatch-control';
56
- // One-time host creation under an explicitly owned private parent; persist binding independently.
57
- const binding = await createDispatchBudget({ directory, authorityDigest, limits });
58
- const budget = openResourceBudget(binding);
59
- const controls = budget.controls(independentHostDeclarations); // or null: no authority
60
- const request = parseDispatchRequest(operatorRequestBytes);
61
- const result = await controls.request(request);
62
- const observed = await controls.inspect(); // read-only; never calls request/reconcile
63
- // Only an explicit authorized controller operation may apply pending work:
64
- const reconciled = await controls.reconcile(request.requestId);
65
- ```
66
-
67
- ## Durable request / decision / application / outcome
68
-
69
- No parallel intent store: controls extend the existing pinned `budget.jsonl` transaction and reservation
70
- replay. **Explicit binding/header version 2.0** opts into these semantics; unchanged `createResourceBudget`
71
- still creates v1.0 and retains its v1 static return type. Old v1 readers reject a v2 binding rather than
72
- silently skipping controls. No conversion/reset/in-place upgrade API exists.
73
-
74
- - `control-request` atomically records the exact request and its approved/refused decision. Approved state
75
- starts pending with boundary-pending outcome; refusals are not-applied/refused. Each ID occupies one slot.
76
- - `control-apply` records application of the one approved pending request and projects its paused/enabled
77
- outcome. It is invalid when reservations are active. No transport callback or caller-supplied receipt
78
- may mark application. `reserve` replays and enforces both committed pause and the pending barrier.
79
- - `DispatchSnapshot` version `dispatch-control-snapshot-v1` includes exact binding digest, revision, paused
80
- flag, **admission: blocked-pending|paused|enabled**, immutable records and `acceptance:not-assessed`.
81
- Freshness is `snapshot-unknown`. Readback is not work acceptance or new host authorization.
82
- - An exact duplicate ID/digest only reads the existing result, including pending. It never applies, emits
83
- another record or repeats an effect. Reusing an ID for another digest rejects. Reconciliation explicitly
84
- names one exact request ID and rechecks its independently supplied approval and boundary; another ID
85
- cannot reconcile the pending request. Repeated reconciliation is idempotent.
86
- - No acknowledgement or a thrown I/O/cleanup error means the caller must retain **unknown application**;
87
- it must not assume success or silently retry a new ID. A complete append may precede an error, including
88
- fsync/close/lock-cleanup failure: this is not a no-write/no-effect-on-error guarantee. Inspect/reconcile
89
- the exact ID in the bound store. A pending record is not application; a complete current application
90
- record is readback, not proof of crash durability, authenticated remote delivery or live worker state.
91
-
92
- Mandatory failures reject, including after bytes were written. Partial/invalid/replaced journals refuse
93
- further admission; no truncation, alternate store or recovery credit is attempted. Capacity is bounded by
94
- 128 request records and at most 128 applications in addition to the existing attempt/settlement limits,
95
- 2305 total v2 lines and 2 MiB. Cumulative attempts/bytes are never refunded. Read-only inspections use
96
- O_RDONLY, no lock creation, bounded descriptor/path consistency checks and no write/control callbacks.
97
- Concurrent changes can make an inspection fail; no old state is substituted.
98
-
99
- ## Evidence and exclusions
100
-
101
- Ordinary owned fixtures exercise real file locking, cross-process duplicate delivery, exact independent
102
- fixture declarations, busy original permits, stale revisions, missing authority, mandatory-sync failure,
103
- source replacement/partial data, read-only byte/directory preservation and actual probed fixed-digest
104
- execution behind the gate. They do not qualify hostile same-UID writers, rollback resistance, complete
105
- controller-crash cleanup or installed/live pi/Herdr operation. No native/model test messages were sent.
106
-
107
- P02 native branch/availability gaps, P04 unqualified live freshness/transport, and P06 arbitrary-effect and
108
- aggregate CPU/memory/PID/disk/provider-money limitations remain. P15 must preserve this exact bounded matrix,
109
- unknown acknowledgements, independent approval, request identity and acceptance separation.
@@ -1,19 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "title": "P05 bounded dispatch request v1 (not authority)",
4
- "type": "object",
5
- "additionalProperties": false,
6
- "required": ["version", "requestId", "bindingDigest", "expectedRevision", "action", "targetExecutionId"],
7
- "properties": {
8
- "version": { "const": "1.0" },
9
- "requestId": { "type": "string", "pattern": "^[a-zA-Z0-9:_-]{1,128}$" },
10
- "bindingDigest": { "type": "string", "pattern": "^[a-f0-9]{64}$" },
11
- "expectedRevision": { "type": "integer", "minimum": 0, "maximum": 128 },
12
- "action": { "enum": ["pause-dispatch", "resume-dispatch", "cancel-execution", "revise-scope", "reprioritize", "select-alternative"] },
13
- "targetExecutionId": { "anyOf": [{ "type": "null" }, { "type": "string", "pattern": "^[a-zA-Z0-9:_-]{1,128}$" }] }
14
- },
15
- "anyOf": [
16
- { "properties": { "action": { "const": "cancel-execution" }, "targetExecutionId": { "type": "string" } } },
17
- { "properties": { "action": { "enum": ["pause-dispatch", "resume-dispatch", "revise-scope", "reprioritize", "select-alternative"] }, "targetExecutionId": { "type": "null" } } }
18
- ]
19
- }
@@ -1,124 +0,0 @@
1
- # P06 local candidate: a fixed digest boundary and durable resource accounting
2
-
3
- **Version 1.0, local only; overall review and formal acceptance pending.** This is not a sandbox for pi,
4
- bash, arbitrary JavaScript, model invocations, or writable workspaces. Existing delegation/check behavior
5
- is unchanged. The one supported new operation is `linux-bwrap-digest-v1`: hash at most 16 KiB of byte input
6
- with a fixed trusted worker and return its digest/length on stdout. It is useful for independently checking
7
- small evidence payloads, not executing an arbitrary factory order. Full P06 remains only partially covered.
8
-
9
- The unchanged executable guard checks Linux, resolved Node then exact bwrap/prlimit paths, regular-file
10
- type, no group/other write bits, and size<=256MiB. Refusals keep the original error message and add exact
11
- path/details plus RUNTIME_NOT_REGULAR / RUNTIME_WRITABLE / RUNTIME_TOO_LARGE. Independent read-only CI
12
- telemetry observes all prerequisites; conforms:false is not namespace success and does not skip tests.
13
- No installation, shared chmod, runner provisioning or host policy weakening is performed. Actual remote
14
- 24.20 predicate remains unknown in the old logs; Node22's missing bwrap remains a provisioning blocker.
15
-
16
- ## Public API
17
-
18
- `pi-daddy/resource-budget`: `createResourceBudget`, `openResourceBudget`, `resourceBindingDigest` and types.
19
- `pi-daddy/effect-profile`: `prepareDigestProfile`, `runDigestProfile`, `DIGEST_PROFILE` and types.
20
- Both are also exported from the root. Historical dist is not a build of these exports.
21
-
22
- ```ts
23
- const binding = await createResourceBudget({
24
- directory: '/operator-private/new-budget', // fresh child of a canonical owner-private directory
25
- authorityDigest: independentlySelectedPolicyDigest,
26
- limits: { maxAttempts: 8, maxInputBytes: 65536, maxConcurrent: 2 },
27
- });
28
- // Persist this detached/frozen binding in the trusted controller, separately from its journal.
29
- const profile = await prepareDigestProfile(binding); // actual bounded native probes; may reject
30
- const result = await runDigestProfile(profile, {
31
- attempt: { attemptId: 'exec:unique', orderId: 'order:a', experimentId: 'experiment:b',
32
- kind: 'primary', parentAttemptId: null },
33
- bytes: Buffer.from('evidence'),
34
- }, signal);
35
- ```
36
-
37
- The byte input and identity are detached before asynchronous work. No input is interpreted as code, an
38
- option, path, command, environment, lease store or destination. Byte input is base64-encoded in process
39
- argv; this is **not a secret-transport API**. Worker output is just digest/length, not raw input. The
40
- profile token is process-local and opaque: a JSON roundtrip or receipt-shaped object cannot admit work.
41
- The public producer validator/retention manifest is not an admission capability or work approval.
42
-
43
- ## Actual boundary and supported/unsupported matrix
44
-
45
- | Route/property | Disposition |
46
- | --- | --- |
47
- | Linux bwrap user/mount/PID/network namespace setup | Observed supported on the measured WSL2 host; re-probed per prepared handle |
48
- | Owned outside-file read/write; mutation of owned read-only mount | Actual fixture attempts denied (`ENOENT`, `EROFS`), allowed fixture read succeeds |
49
- | Reach host loopback listener | Actual owned listener remains unreachable from the network namespace |
50
- | Untrusted code / shell / child launch API | Not exposed by this profile; Node permission child-process tripwire also actually denies spawn |
51
- | Worker cancellation | Existing `runChild` signal/deadline path; actual owned namespace worker/helpers observed stopped |
52
- | Cgroup aggregate CPU/memory/PID enforcement | Unsupported: no writable delegated cgroup measured |
53
- | `prlimit` | Per-process CPU/FD tripwire only, not aggregate limits; V8 heap flag is not an OS memory cap |
54
- | Persistent destinations / writable or shared workspace roots / alternative lease stores | Unsupported; absent from the closed API, no host workspace/store mounted |
55
- | Arbitrary pi/bash/model profiles; provider-money hard cap | Unsupported before workload launch; no fallback or inferred/posthoc dollar allowance |
56
-
57
- The launcher uses existing `/usr/bin/bwrap`, `/usr/bin/prlimit` and the current trusted Node executable.
58
- It drops capabilities **inside the child**, clears its environment, creates new namespaces and exposes
59
- only read-only system runtime directories plus the fixed Node binary. No host capability configuration,
60
- installation, privilege escalation or service/cgroup configuration changes are performed. The preparation
61
- probe alone mounts a fresh owned read-only fixture. That exact fixture is removed only after every awaited
62
- probe child has settled, on success and failure; removal failure is loud and does not replace an earlier
63
- probe failure. Old or caller-selected directories are never cleanup targets. The production worker mounts no user workspace.
64
- The production Node worker has permission mode enabled; Node permission mode by itself is not claimed
65
- as a hostile-JavaScript sandbox. Only fixed package code executes, so ungoverned descendants are not an
66
- admitted operation. Internal Node/helper threads/processes are not separate billable attempts.
67
-
68
- The selected binary fingerprints are pinned and rechecked before each workload. The operator/kernel,
69
- trusted package code, runtime installation and control-owned filesystem are the trust boundary. Runtime
70
- updates during an invocation, malicious same-UID host writers, rollback of trusted storage, kernel/runtime
71
- exploits and hostile-process containment are not qualified. Read-only bind mounts do not freeze a host
72
- administrator's runtime files. This route therefore cannot be relabelled a general shared-root sandbox.
73
- No user payload launches merely because executables exist or a caller claims a profile name.
74
-
75
- ## What is actually reserved
76
-
77
- One independently retained `BudgetBinding` pins the canonical private directory and journal device/inode,
78
- external authority digest and closed limits. The budget is **one scope across all orders and experiments**
79
- using that binding, not a new allowance per logical name. A different binding is a different explicit
80
- scope, never proof of sharing an aggregate limit. There is exactly one fixed journal/lock location; the
81
- API offers no alternative lease-store override. Binding/header mismatch or physical replacement fails.
82
-
83
- Admission reserves **one cumulative attempt, its full input-byte count, and one active invocation slot**
84
- before the existing execution seam is called. Those are the only aggregate hard counters claimed. A
85
- maximum of 1024 attempts, 16 MiB cumulative inputs and 32 active invocations is configurable downward.
86
- No aggregate CPU, memory, disk, PID or money cap is asserted. Bounded trusted preparation probes are
87
- control/setup work, not admitted user attempts. There are no provider calls or money estimates.
88
-
89
- Primary, retry, shadow and explicitly governed descendant attempts all consume allowance; non-primary
90
- attempts require an existing parent reference in the same scope. A duplicate attempt ID is rejected,
91
- including redelivery after completion. Cancellation/failure never refunds attempts or bytes. The live
92
- controller releases only the active slot, after executor settlement; a mandatory settlement failure still
93
- rejects even if the worker exited zero. Existing finalization helpers preserve primary errors.
94
-
95
- Reopening preserves all outstanding charges/slots. An exited PID, timeout, new controller, late result or
96
- receipt-shaped data does **not** reclaim an orphan. Only the original live permit can settle its exact
97
- reservation; exact repeated settlement is idempotent and contradictory late settlement rejects. There is
98
- no recovery/reclaim API. Exhausted orphan capacity requires a separately designed, authorized quiescent
99
- reconciliation—not deleting a journal, new lease store, renamed directory or pretending a retry is free.
100
-
101
- The private journal is strict bounded JSONL, opened without symlink following, validated against independent
102
- binding/counters, serialized with the existing no-stale-recovery lock, and fsynced before launch. Incomplete
103
- writes fail closed without truncation/repair. A completed append can precede a cleanup error: no exactly-once
104
- blind retry guarantee. Creation is explicit/exclusive; reopening never creates/reset state. This relies on
105
- a trusted durable filesystem and sole cooperative host protocol, not tamper-proof consensus storage.
106
-
107
- Opt-in P02 retention records exact attempt/parent IDs, actual raw/result bytes and runtime outcomes. It is
108
- still `not-assessed`, and missing native session/branch fields do not become complete evidence.
109
-
110
- ## Checks and limitations
111
-
112
- Direct Node tests (retained dependencies only):
113
-
114
- ```sh
115
- node --test packages/pi-daddy/test/resource-budget.test.ts packages/pi-daddy/test/effect-profile.test.ts
116
- ```
117
-
118
- These native effect tests require the demonstrated Linux/bwrap/Node primitive and deliberately fail rather
119
- than silently count unavailable containment as a passing qualification. Arithmetic tests include real
120
- cross-process contention, duplicate delivery, byte/count exhaustion, cancellation/restart, replaced stores,
121
- partial journals and immutable authority. Native tests use disposable owned fixtures and a local listener,
122
- not provider traffic or an untrusted hostile executable. A forwarding spawn observer verifies zero real
123
- spawn calls for unsupported inputs and a real post-spawn mandatory-accounting failure. No production test
124
- control, guard bypass, model review/test, installation or mutation machinery is introduced.
@@ -1,109 +0,0 @@
1
- # Execution retention 1.0 — producer contract for P03
2
-
3
- Opt-in candidate API: `pi-daddy/execution-retention` (also the root export). This is a new archive
4
- manifest, **not** ledger v3/v4, a check-receipt schema revision, or acceptance authority. The TypeScript
5
- wire definition is `src/execution-retention.ts::ExecutionRetentionManifest`.
6
-
7
- ## Activation and actual wiring
8
-
9
- The operator sets `PI_GRANTS_EXECUTION_ARCHIVE` to an absolute, private, operator-owned archive directory.
10
- No model-facing parameter is added. `delegate`, `delegate_all` and `delegate_chain` carry the actual
11
- public execute call ID into their shared governed executor. Each launch has its existing unique
12
- execution ID and parent execution ID; logical child names are NOT join keys. `runNamedCheck` uses the
13
- same retention writer and also accepts host `retentionDirectory` and `toolCallId` options. Unknown check
14
- parentage stays null. No correlation claim supplies any of these identities.
15
-
16
- The archive is asynchronous observation. Required provisioning/lease/check ledger writes retain their
17
- previous failure semantics; archive publication is never awaited on the worker path. No extra worker
18
- turn, prompt, message, extension or Herdr RPC is introduced. Herdr observation reuses existing reads.
19
- Absent configuration disables archival without changing spawn argv or granting any authority.
20
-
21
- ## Directory and wire contract
22
-
23
- Each admitted observation gets a random archive ID, independent of the logical name and execution ID:
24
-
25
- ```
26
- <operator-directory>/<archiveId>/manifest.json
27
- <operator-directory>/<archiveId>/<kind>-<sha256>.bin
28
- ```
29
-
30
- The manifest is a small JSON object plus LF, atomically renamed from `manifest.pending`. Blob paths
31
- are relative basenames. Existing blobs are not overwritten; unexpected pre-existing blobs fail the
32
- observation. Completed generations remain readable while a new checkpoint publishes. Superseded blob
33
- files are retained, not deleted. External archival owns retention duration and garbage collection.
34
-
35
- - `version`: exactly `1.0`; reject unknown versions.
36
- - `identity`: execution/parent/child/public-call identity; executor; task, definition and configuration
37
- digests; resolved workspace ID. Configuration hashes the exact plan argv/effective grant/timeout, or
38
- the check's explicit executable/argv/access/bounds. It does **not** dump environment or credentials.
39
- Task/definition/configuration digests are pins, **not retained instruction bytes**.
40
- - `native`: actual process PID or actual Herdr pane/tab/launch name. Session ID and branch leaf are null
41
- in this slice. An explicitly supplied `--session` path can be recorded, but does not prove existence.
42
- - `state`: `running` checkpoint or `terminal`; no terminal manifest means observation is incomplete.
43
- - `outcome`: nullable numeric exit code and signal, timeout/abort/truncation/failure flags. A check whose
44
- control record fails can have child exit code 0 and `failed:true`; its required receipt failure still throws.
45
- - `content`: `stdout`, `stderr`, `paneSnapshot`, `result`, `checkReceipt`, `session`. Every member is either
46
- `{status:"missing",path:null,sha256:null,bytes:null}` or
47
- `{status:"retained",path:<basename>,sha256:<hex>,bytes:<length>}`. `retained` means the producer wrote those
48
- exact bytes before publishing that checkpoint, **not** that an external archive still possesses them.
49
- - `coverage`: `complete:false` and explicit loss reasons. This slice never claims evidence completeness.
50
- - `acceptance`: always `not-assessed`. No receipt, tool result, terminal outcome or digest implies acceptance.
51
-
52
- `stdout`/`stderr` are separate raw bytes, including available structured JSON output, not parsed into
53
- trusted facts. Their cross-stream interleaving is not reconstructed. `result` is the exact executor's
54
- assembled UTF-8 result before delegation display trimming; for checks its digest matches the returned
55
- receipt's `output_sha256`. `paneSnapshot` replaces prior snapshots and is not a session transcript.
56
- `checkReceipt` contains **the complete JSON serialization of the actual CheckReceipt plus LF**, including
57
- all fields, not just `receipt_id`. Available receipt bytes survive later required ledger failure; that
58
- failure still rejects the check. Absent receipt content stays missing.
59
-
60
- ## Bounds, loss, and privacy
61
-
62
- At most 32 admitted observations are active. Each buffers at most 1 MiB of stream/snapshot data,
63
- plus separate 1 MiB allowances for an indivisible result and an indivisible receipt. Oversize receipts
64
- or results are missing, never represented by partial retained bytes. Streams may drop with explicit
65
- loss reasons. Checkpoints coalesce; this is not an unbounded event queue. Archive errors become `lost`;
66
- returned tool details may still say `pending` when publication has not completed. Treat pending,
67
- missing files, invalid hashes, running-only checkpoints and all coverage gaps as incomplete, not success.
68
- A whole producer-process crash can prevent final publication; this is not an fsync/crash-durability promise.
69
- External hosts may call `flush()` at quiescence with their own timeout; worker control never does so.
70
-
71
- No auth files, ambient environment dump, task text, monitoring state, or native transcript directory is
72
- harvested. Retained output is untrusted and **can itself contain secrets printed by a worker**; no general
73
- secret-redaction claim is made. Opt in only at an access-controlled harness archive boundary with an
74
- appropriate content-handling policy. This is not malicious-filesystem race containment.
75
-
76
- ## Explicit prerequisite gap
77
-
78
- Existing governed plans normally use `--no-session`. Existing Herdr replies used here expose pane/tab
79
- identity, not a verified pi session ID, session file, or active branch. This slice does not change that
80
- privacy/control default, read auth/session directories, invent a session join, or infer branch identity
81
- from output. Therefore native session/transcript retention and verified session/branch TUI joins remain
82
- **missing** pending a separately agreed native identity/session-export seam. P03 must not treat pane ID,
83
- logical name, process PID, a requested session path, or output-shaped labels as that seam.
84
-
85
- ## Public consumer example
86
-
87
- After a fresh build (the owner's historical dist is NOT current compiled proof):
88
-
89
- ```js
90
- import { readFile } from 'node:fs/promises';
91
- import { dirname, join } from 'node:path';
92
- import { verifyRetainedBytes } from 'pi-daddy/execution-retention';
93
-
94
- const m = JSON.parse(await readFile(manifestPath, 'utf8'));
95
- if (m.version !== '1.0') throw Error('unsupported retention version');
96
- const ref = m.content.checkReceipt;
97
- let bytes;
98
- if (ref.status === 'retained' && /^checkReceipt-[a-f0-9]{64}\.bin$/.test(ref.path)) {
99
- try { bytes = await readFile(join(dirname(manifestPath), ref.path)); } catch { /* missing */ }
100
- }
101
- const observed = verifyRetainedBytes(ref, bytes); // retained | missing | mismatch
102
- // Even retained + terminal is NOT accepted work. Reconstruct independent P01 authority separately.
103
- ```
104
-
105
- Apply archive size/path policies before reading untrusted manifests/blobs; never follow arbitrary paths.
106
- `test/execution-retention.test.ts` supplies ordinary producer/consumer fixtures: real credential-free
107
- fixture processes through public concurrent tools, interrupted structured bytes, complete real check
108
- receipt generation with a **synthetic Git identity transport**, and deterministic Herdr replies. These
109
- are not real pi/model/Herdr integration, real Git candidate assurance, installed smoke or formal acceptance.