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
@@ -0,0 +1,429 @@
1
+ import { createHash, randomUUID } from "node:crypto";
2
+ import {
3
+ atomicMetadata,
4
+ leasePaths,
5
+ readMetadata,
6
+ type LeaseMetadata,
7
+ type LeaseReleaseOutcome,
8
+ type WorkspaceLease,
9
+ } from "./lease-record.ts";
10
+ export type { LeaseReleaseOutcome, WorkspaceLease } from "./lease-record.ts";
11
+ import { once } from "node:events";
12
+ import { mkdir, readFile, rename, writeFile } from "node:fs/promises";
13
+ import { join } from "node:path";
14
+ import { GovernanceRefusal, refusal } from "../kernel/refusals.ts";
15
+ import type { ValidatedWorkspace, WorkspaceAccess } from "../kernel/workspace.ts";
16
+ import { assertCloseBounds, HELPER_SOURCE, LEASE_READY, unrefStream } from "./lease-helper.ts";
17
+ import { ENV_WORKSPACE_LEASE_DIR } from "../kernel/env-names.ts";
18
+ export { ENV_WORKSPACE_LEASE_DIR } from "../kernel/env-names.ts";
19
+ import { workspaceLeasesDir } from "../kernel/project-paths.ts";
20
+
21
+ export function defaultWorkspaceLeaseDir(env: NodeJS.ProcessEnv = process.env): string {
22
+ return env[ENV_WORKSPACE_LEASE_DIR] ?? workspaceLeasesDir(env);
23
+ }
24
+
25
+ /**
26
+ * The ledger outcome for a release. Exported because call sites had their own copies and the check runner's
27
+ * asserted `released` unconditionally — reproducing in the evidence path the exact defect this union was
28
+ * added to expose (R-100/R-103).
29
+ *
30
+ * **It is NOT the only definition, and saying so here was wrong.** `extensions/workspace-runtime.ts` keeps a
31
+ * private copy with no `not-held` arm, and it is the one the whole delegation path uses — so releasing a
32
+ * *read* lease on a delegated child is still recorded `released`, a handover the kernel never performed.
33
+ * Measured; open as R-141; the sentence claiming a single definition survived two review passes because
34
+ * `test/workspace.test.ts` pins the `not-held` arm on THIS function, which no delegation path calls.
35
+ */
36
+ export function leaseReleaseLedgerOutcome(
37
+ outcome: LeaseReleaseOutcome | "retained",
38
+ reason: string,
39
+ ): "timeout" | "released" | "released-unrecorded" | "lost" | "retained" | "uncontended" {
40
+ if (outcome === "retained") return "retained";
41
+ if (outcome === "lost") return "lost";
42
+ if (outcome === "released-unrecorded") return "released-unrecorded";
43
+ if (outcome === "not-held") return "uncontended";
44
+ // `released-superseded` is a clean handover as far as the ledger is concerned: the lock went back and the
45
+ // record is correct — it just belongs to somebody else now.
46
+ return reason === "timeout" ? "timeout" : "released";
47
+ }
48
+
49
+ /**
50
+ * `acquired` must mean the kernel actually excluded somebody. A read lease takes no lock (R-105), and an
51
+ * unreadable predecessor record is not proof of a crash (R-100) — so neither may be reported as one.
52
+ */
53
+ export function leaseAcquisitionOutcome(
54
+ access: "read" | "write",
55
+ recovered: boolean | "unknown",
56
+ ): "acquired" | "uncontended" | "recovered" {
57
+ if (access === "read") return "uncontended";
58
+ return recovered === true ? "recovered" : "acquired";
59
+ }
60
+
61
+ export async function acquireWorkspaceLease(input: {
62
+ workspace: ValidatedWorkspace;
63
+ access: WorkspaceAccess;
64
+ leaseDir: string;
65
+ ownerId: string;
66
+ signal?: AbortSignal;
67
+ flockCommand?: string;
68
+ acquisitionTimeoutMs?: number;
69
+ /**
70
+ * Bound on how long ONE `herdr tab close` attempt may take before it counts as failed (R-146). A hung
71
+ * herdr is not a failed herdr: without this the attempt never returns and the retry bound below is
72
+ * unreachable.
73
+ */
74
+ herdrCloseTimeoutMs?: number;
75
+ /** Bound on the helper's `herdr tab close` retries before it releases the lock anyway (R-102). */
76
+ herdrCloseAttempts?: number;
77
+ }): Promise<WorkspaceLease> {
78
+ // Before the read-lease return, so both paths are validated (R-152).
79
+ assertCloseBounds(input);
80
+ if (input.access === "read") {
81
+ return {
82
+ workspace: input.workspace,
83
+ access: "read",
84
+ ownerId: input.ownerId,
85
+ recovered: false,
86
+ attachProcess: () => {},
87
+ attachHerdrTab: () => {},
88
+ // A read lease took no kernel lock, so there is nothing to keep: `not-held` is the same answer
89
+ // `release()` gives, and it is the truth rather than a retention that never happened (R-152).
90
+ markRetained: async () => "not-held" as const,
91
+ readCloseFailure: async () => null,
92
+ lost: new Promise(() => {}),
93
+ // No kernel lock was ever taken, so there is no handover to claim (R-105, release side).
94
+ release: async () => "not-held",
95
+ };
96
+ }
97
+ if (input.signal?.aborted) {
98
+ throw new GovernanceRefusal(
99
+ refusal(
100
+ "WORKSPACE_WRITE_CONFLICT",
101
+ `writer lease for ${input.workspace.workspaceId} was cancelled before acquisition`,
102
+ ),
103
+ );
104
+ }
105
+
106
+ await mkdir(input.leaseDir, { recursive: true, mode: 0o700 });
107
+ const paths = leasePaths(input.leaseDir, input.workspace.root);
108
+ const { spawn } = await import("node:child_process");
109
+ const holder = spawn(
110
+ input.flockCommand ?? "flock",
111
+ [
112
+ "--exclusive",
113
+ "--nonblock",
114
+ "--conflict-exit-code",
115
+ "73",
116
+ paths.lock,
117
+ process.execPath,
118
+ "--input-type=module",
119
+ "-e",
120
+ HELPER_SOURCE,
121
+ ],
122
+ {
123
+ stdio: ["pipe", "pipe", "pipe"],
124
+ env: {
125
+ ...process.env,
126
+ PI_DADDY_LEASE_MARKER: paths.marker,
127
+ PI_DADDY_LEASE_CLOSE_ATTEMPTS: String(input.herdrCloseAttempts ?? 10),
128
+ PI_DADDY_LEASE_CLOSE_TIMEOUT_MS: String(input.herdrCloseTimeoutMs ?? 15_000),
129
+ },
130
+ // Own process group, for two reasons. It lets teardown kill `flock` AND the helper holding the lock
131
+ // file descriptor as one unit even before the helper has reported its pid (R-99), and it stops a
132
+ // stray group signal — a terminal Ctrl-C, a closed window — from releasing a live writer's lock as
133
+ // a side effect.
134
+ detached: true,
135
+ },
136
+ );
137
+
138
+ const timeoutMs = input.acquisitionTimeoutMs ?? 2000;
139
+ let ready = false;
140
+ let helperPid: number | undefined;
141
+ let stderr = "";
142
+ /**
143
+ * Kill the whole holder GROUP — one signal, no ordering. (The pid-by-pid fallback below is the
144
+ * only path that kills in sequence, and only when the group is already reaped.) `flock` does not pass `--close`, so the helper inherits
145
+ * the lock file descriptor and holds the lock in its own right — killing only `flock` leaves the
146
+ * lock HELD by an orphan, and every later acquisition then reports WORKSPACE_WRITE_CONFLICT, which
147
+ * is the one message an operator would use to conclude another agent is writing. Measured in
148
+ * `docs/probes/g35-flock-fd-inheritance` (R-99).
149
+ */
150
+ const hardKill = () => {
151
+ // The GROUP, so this works on the readiness-timeout path too — there `helperPid` is usually still
152
+ // unknown, and killing only the wrapper leaves a half-booted helper free to inherit the lock file
153
+ // descriptor and hold it forever. Fall back to individual pids if the group is already reaped.
154
+ if (holder.pid !== undefined) {
155
+ try {
156
+ process.kill(-holder.pid, "SIGKILL");
157
+ return;
158
+ } catch {
159
+ /* group gone */
160
+ }
161
+ }
162
+ if (Number.isInteger(helperPid)) {
163
+ try {
164
+ process.kill(helperPid!, "SIGKILL");
165
+ } catch {
166
+ /* already gone */
167
+ }
168
+ }
169
+ holder.kill("SIGKILL");
170
+ };
171
+ holder.stderr?.on("data", (chunk) => {
172
+ stderr += String(chunk);
173
+ });
174
+ try {
175
+ await new Promise<void>((resolveReady, rejectReady) => {
176
+ const timer = setTimeout(
177
+ () =>
178
+ rejectReady(
179
+ new GovernanceRefusal(
180
+ refusal("WORKSPACE_LEASE_STALE", `writer lease helper did not become ready within ${timeoutMs}ms`),
181
+ ),
182
+ ),
183
+ timeoutMs,
184
+ );
185
+ const cleanup = () => {
186
+ clearTimeout(timer);
187
+ input.signal?.removeEventListener("abort", onAbort);
188
+ };
189
+ const onAbort = () =>
190
+ rejectReady(
191
+ new GovernanceRefusal(
192
+ refusal(
193
+ "WORKSPACE_WRITE_CONFLICT",
194
+ `writer lease for ${input.workspace.workspaceId} was cancelled before acquisition`,
195
+ ),
196
+ ),
197
+ );
198
+ input.signal?.addEventListener("abort", onAbort, { once: true });
199
+ holder.once("error", (error) => {
200
+ cleanup();
201
+ rejectReady(
202
+ new GovernanceRefusal(
203
+ refusal(
204
+ "WORKSPACE_LEASE_STALE",
205
+ `workspace writer leases require a working flock command (${String(error)})`,
206
+ ),
207
+ ),
208
+ );
209
+ });
210
+ holder.once("close", (code) => {
211
+ if (ready) return;
212
+ cleanup();
213
+ const codeName = code === 73 ? "WORKSPACE_WRITE_CONFLICT" : "WORKSPACE_LEASE_STALE";
214
+ rejectReady(
215
+ new GovernanceRefusal(
216
+ refusal(
217
+ codeName,
218
+ code === 73
219
+ ? `workspace ${input.workspace.workspaceId} already has an active pi-daddy-governed writer`
220
+ : `workspace lease helper exited before acquisition${stderr ? ` (${stderr.trim()})` : ""}`,
221
+ { workspace_id: input.workspace.workspaceId, root: input.workspace.root },
222
+ ),
223
+ ),
224
+ );
225
+ });
226
+ holder.stdout?.on("data", (chunk) => {
227
+ const output = String(chunk);
228
+ if (!output.includes(LEASE_READY) || ready) return;
229
+ helperPid = Number(output.match(new RegExp(`${LEASE_READY}:(\\d+)`))?.[1]);
230
+ ready = true;
231
+ cleanup();
232
+ resolveReady();
233
+ });
234
+ });
235
+ } catch (error) {
236
+ hardKill();
237
+ throw error;
238
+ }
239
+
240
+ const previous = await readMetadata(paths.metadata);
241
+ // "malformed" is not "no prior owner": an unreadable record cannot prove a clean handover (R-100).
242
+ const recovered: boolean | "unknown" = previous === "malformed" ? "unknown" : previous?.state === "active";
243
+ const token = randomUUID();
244
+ const metadata: LeaseMetadata = {
245
+ version: 1,
246
+ state: "active",
247
+ token,
248
+ owner_id: input.ownerId,
249
+ workspace_id: input.workspace.workspaceId,
250
+ root: input.workspace.root,
251
+ pid: Number.isInteger(helperPid) ? helperPid! : (holder.pid ?? process.pid),
252
+ acquired_at: new Date().toISOString(),
253
+ };
254
+ try {
255
+ await atomicMetadata(paths.metadata, metadata);
256
+ } catch (error) {
257
+ holder.stdin?.end();
258
+ throw new GovernanceRefusal(
259
+ refusal(
260
+ "WORKSPACE_LEASE_STALE",
261
+ `acquired the kernel writer lock but could not record its owner (${String(error)})`,
262
+ { workspace_id: input.workspace.workspaceId, root: input.workspace.root },
263
+ ),
264
+ );
265
+ }
266
+
267
+ // TWO variables, deliberately. `releasing` goes up the instant release begins, because the handshake
268
+ // below closes the helper on purpose — and if `lost` could still fire during it, an intentional release
269
+ // would report itself as a lost lease. `settled` memoizes the ANSWER, so a second call cannot invent a
270
+ // clean handover. Collapsing these into one flag set at the end broke every check-runner test.
271
+ let releasing = false;
272
+ let settled: LeaseReleaseOutcome | undefined;
273
+ let lose!: (error: Error) => void;
274
+ const lost = new Promise<Error>((resolveLost) => {
275
+ lose = resolveLost;
276
+ });
277
+ const lostError = () => new Error(`workspace writer lease helper exited for ${input.workspace.workspaceId}`);
278
+ holder.once("close", () => {
279
+ if (!releasing) lose(lostError());
280
+ });
281
+ if (holder.exitCode !== null || holder.signalCode !== null) queueMicrotask(() => lose(lostError()));
282
+ const attach = (value: { process_pid: number } | { herdr_tab: string }) => {
283
+ if (releasing || holder.exitCode !== null || holder.signalCode !== null || !holder.stdin?.writable) {
284
+ throw new GovernanceRefusal(
285
+ refusal(
286
+ "WORKSPACE_LEASE_STALE",
287
+ `writer lease for ${input.workspace.workspaceId} was lost before child attachment`,
288
+ ),
289
+ );
290
+ }
291
+ holder.stdin.write(`${JSON.stringify(value)}\n`);
292
+ };
293
+ return {
294
+ workspace: input.workspace,
295
+ access: "write",
296
+ ownerId: input.ownerId,
297
+ recovered,
298
+ attachProcess(pid) {
299
+ attach({ process_pid: pid });
300
+ },
301
+ attachHerdrTab(tabId) {
302
+ attach({ herdr_tab: tabId });
303
+ },
304
+ lost,
305
+ async markRetained(reason = "retained") {
306
+ // Deliberately does NOT touch the kernel lock or the helper: the pane may still be live. It only
307
+ // stops the record from looking like a crash.
308
+ //
309
+ // **Both guards below exist because the CALLER ledgers whatever this returns (R-152).**
310
+ //
311
+ // Already settled: `release()` checked `settled` and this did not, so a completed handover could be
312
+ // rewritten into `retained:…` and the memoized answer flipped with it — the mirror of the defect R-146
313
+ // fixed, reachable by the `try { … } finally { await lease.release() }` shape this API invites.
314
+ if (settled) return settled;
315
+ // Already dead: the helper is gone and the kernel lock with it, so the fact is `lost`. Recording a
316
+ // retention here tells an operator a pane may still be live and tells the next owner nothing crashed —
317
+ // precisely the two facts R-103's outcome union was added to keep apart.
318
+ if (holder.exitCode !== null || holder.signalCode !== null) return (settled = "lost");
319
+ const current = await readMetadata(paths.metadata);
320
+ let recorded = false;
321
+ if (current !== "malformed" && current?.token === token) {
322
+ recorded = await atomicMetadata(paths.metadata, {
323
+ ...metadata,
324
+ state: "released",
325
+ released_at: new Date().toISOString(),
326
+ release_reason: `retained:${reason}`,
327
+ }).then(
328
+ () => true,
329
+ () => false,
330
+ );
331
+ }
332
+ /**
333
+ * **It must, however, let THIS process exit (R-146).** Leaving the helper alone is the decision;
334
+ * leaving the parent's three pipes and the child handle referenced was an accident, and it meant a
335
+ * retained lease wedged its own process forever — measured `exit=124` against `exit=0` for the same
336
+ * sequence ending in `release()`.
337
+ *
338
+ * **Which hosts it actually wedged, corrected after review.** `process.exit()` runs `exit` handlers and
339
+ * ignores pending handles, so this only bites a host that lets the loop drain: pi's **print** mode sets
340
+ * `process.exitCode` and returns (`dist/main.js`), and a library consumer — an ADR-0034 external
341
+ * controller calling this package directly — does the same. pi's interactive and rpc modes call
342
+ * `process.exit()` explicitly (`dist/modes/interactive/interactive-mode.js:3148`), so there the process
343
+ * still leaves and `pane-reaper`'s `process.once("exit")` sweep still runs. An earlier version of this
344
+ * comment claimed the sweep was lost generally and cited `src/cli.ts`, which has one subcommand
345
+ * (`init`) and can neither hold a lease nor open a pane.
346
+ *
347
+ * Unref rather than close, because the lock must outlive this call: when the parent does exit, the
348
+ * helper sees EOF and runs the path it was written for — bounded `herdr tab close` attempts, a marker
349
+ * file, then release anyway (R-102: an unreleasable lock strands a worktree with no in-product
350
+ * recovery, which is strictly worse than a recorded failure to close). Narrowed to this path on
351
+ * purpose: at spawn it would remove the accidental guarantee that a process cannot exit while a lease
352
+ * is still ACTIVE, which is a different decision and not this fix.
353
+ */
354
+ /**
355
+ * **Terminal (R-146).** `releasing` stops a late `holder.close` being reported as a lost lease, and
356
+ * `settled` stops a later `release()` running the clean handshake — which it did: measured, it returned
357
+ * `released`, overwrote `retained:herdr-close-failed` with `completed`, and sent `{release:true}` so the
358
+ * helper exited `clean` and never attempted the close. The pane retention exists to protect was
359
+ * abandoned silently, and the ledger asserted a clean handover for a lease kept *because* a pane would
360
+ * not close. No in-tree caller does this — but `WorkspaceLease` is a public export and
361
+ * `try { … } finally { await lease.release() }` is the obvious shape for the external controllers this
362
+ * whole fix is for.
363
+ */
364
+ releasing = true;
365
+ // **Settle only if the record was actually written.** An unwritable lease directory used to leave the
366
+ // record `state: "active"` while the ledger said `retained`, so the next owner reported a phantom
367
+ // `recovered: true` — and making retention terminal removed the later `release()` that would still have
368
+ // written the handover. Unsettled, that repair is available again; the residue is stated in R-152
369
+ // rather than implied, because nothing here can write a record to a directory that refuses writes.
370
+ if (recorded) settled = "retained";
371
+ holder.unref();
372
+ unrefStream(holder.stdout);
373
+ unrefStream(holder.stderr);
374
+ return "retained";
375
+ },
376
+ async readCloseFailure() {
377
+ try {
378
+ return JSON.parse(await readFile(paths.marker, "utf8")) as { reason: string; herdr_tab?: string };
379
+ } catch {
380
+ return null;
381
+ }
382
+ },
383
+ async release(reason = "completed"): Promise<LeaseReleaseOutcome> {
384
+ // Memoized, not a boolean. A second call used to answer "released" whatever the first returned, so a
385
+ // retry — or a `finally` after an explicit release — read a clean handover that never happened.
386
+ if (settled) return settled;
387
+ releasing = true;
388
+ // Already gone: this owner never released anything, and saying so is the caller's business to
389
+ // record. Throwing here discarded completed work and masked the real error (R-99).
390
+ if (holder.exitCode !== null || holder.signalCode !== null) return (settled = "lost");
391
+
392
+ // Default FALSE: "recorded" must mean this owner actually wrote its own handover. Anything else —
393
+ // an unreadable record, or a successor's token in place of ours — means the lock goes back but the
394
+ // record does not say so, and the NEXT owner will report a recovery that never happened unless the
395
+ // caller ledgers it (R-100). Only the current token may mark the handover, so a stale lease object
396
+ // can never overwrite a live successor.
397
+ // Three outcomes, because they call for three different responses: we wrote our handover; a
398
+ // successor already owns the record and we correctly left it alone; or the record is unreadable or
399
+ // unwritable and somebody has to be told.
400
+ let how: LeaseReleaseOutcome = "released-unrecorded";
401
+ const current = await readMetadata(paths.metadata);
402
+ if (current !== "malformed" && current?.token === token) {
403
+ try {
404
+ await atomicMetadata(paths.metadata, {
405
+ ...metadata,
406
+ state: "released",
407
+ released_at: new Date().toISOString(),
408
+ release_reason: reason,
409
+ });
410
+ how = "released";
411
+ } catch {
412
+ how = "released-unrecorded";
413
+ }
414
+ } else if (current !== "malformed" && current !== null) {
415
+ // A live successor's record. Declining to overwrite it is the token guard working, not a fault.
416
+ how = "released-superseded";
417
+ }
418
+
419
+ holder.stdin?.write(`${JSON.stringify({ release: true })}\n`);
420
+ holder.stdin?.end();
421
+ if (holder.exitCode === null && holder.signalCode === null) {
422
+ await Promise.race([once(holder, "close"), new Promise((resolveWait) => setTimeout(resolveWait, 1000))]);
423
+ }
424
+ // The helper holds the lock fd in its own right, so the wrapper alone is not enough (R-99).
425
+ if (holder.exitCode === null && holder.signalCode === null) hardKill();
426
+ return (settled = how);
427
+ },
428
+ };
429
+ }
package/src/index.ts CHANGED
@@ -6,69 +6,46 @@ export {
6
6
  type Capability,
7
7
  type ResolveInput,
8
8
  type ResolveResult,
9
- } from "./resolve.ts";
9
+ } from "./kernel/resolve.ts";
10
10
 
11
11
  export {
12
12
  appendLedgerEvent,
13
13
  appendRecord,
14
- buildCheckReceiptLedgerEvent,
15
14
  buildChildLifecycleEvent,
16
15
  buildRecord,
17
16
  buildWorkspaceLeaseEvent,
18
- buildWorkflowFactEvent,
19
- WORKFLOW_FACT_KINDS,
20
- WORKFLOW_FACT_PROVENANCE,
21
- WORKFLOW_FACT_STATES,
22
17
  isEscalationAttempt,
23
18
  LEDGER_VERSION,
24
- type CheckReceiptLedgerEvent,
25
19
  type ChildLifecycleEvent,
26
20
  type GrantRecord,
27
21
  type LedgerOptions,
28
22
  type RuntimeLedgerEvent,
29
23
  type WorkspaceLeaseEvent,
30
24
  type WorkspaceLeaseOutcome,
31
- type WorkflowFactEvent,
32
- type WorkflowFactKind,
33
- type WorkflowFactProvenance,
34
- type WorkflowFactState,
35
- } from "./ledger.ts";
25
+ } from "./governance/ledger.ts";
36
26
 
37
- export { createDebriefPresenter, type DebriefPresenter, type DebriefHost, type DebriefFrame, type DebriefCheckpoint, type DebriefPersistence } from "./debrief.ts";
38
- export { ordinaryChildrenFor, ordinaryCancellation, ordinaryCancellationDigest, isOrdinaryChildren, type OrdinaryChildren, type OrdinaryCancellation, type OrdinaryAuthority, type OrdinaryTarget } from "./ordinary-children.ts";
39
- export { loadDashboardHarness, loadedDashboardHarnessDigest, type DashboardHarnessArtifact } from "./dashboard-harness.ts";
40
- export { startDailyDashboardHost, discoverDailyIntentActions, type DailyDashboardHostInput, type DailyIntentAction } from "./daily-dashboard-host.ts";
41
- export { createDashboardHost, openDashboardHost, dashboardHostDigest, dashboardHostRequestDigest, dashboardSelectionDigest, type DashboardHost, type DashboardHostConfig, type DashboardHostRequest, type DashboardHostAuthority, type DashboardHarness, type DashboardHostOptions } from "./dashboard-host.ts";
42
- export { serveDashboardHost, connectDashboardHost, ENV_DASHBOARD_HOST_SOCKET, type DashboardConnection } from "./dashboard-host-transport.ts";
43
- export { createRetainedDebrief, retainDebriefBlind, openDebriefBlindPreview, type DebriefHarness, type CaseSelection, type DurableBlindBinding } from "./debrief-host.ts";
44
- export { renderDebrief, debriefAction as dashboardDebriefAction } from "./debrief-render.ts";
45
- export { type ReviewPort, type ReviewRequest, type BlindPort, type BlindChoice } from "./debrief-contract.ts";
46
- export { readDailyView, createDailyViewReader, DAILY_VIEW_VERSION, type DailyView, type DailyViewOptions,
47
- type DailyAttempt, type DailyObligation } from "./daily-view.ts";
48
- export { renderDailyView, renderDailyDetails } from "./daily-view-render.ts";
49
- export { renderDailyPanel, type PanelOptions, type WorkPresentation } from "./daily-panel.ts";
50
- export { parseArchiveProjection, ARCHIVE_PROJECTION_VERSION } from "./daily-view-input.ts";
51
- export { bindWorkIntent } from "./intent-application.ts";
52
- export { intentRequestDigest, parseIntentRequest, type IntentRequest, type IntentSelection, type IntentPriority,
53
- type IntentAdmission, type IntentSnapshot, type IntentReceipt, type WorkIntentBinding } from "./intent-control.ts";
54
- export { dispatchRequestDigest, parseDispatchRequest, type DispatchRequest, type DispatchAuthority, type DispatchRecord, type DispatchSnapshot } from "./dispatch-control.ts";
55
- export { createFactoryRegistry, openFactoryRegistry, createFactoryOrder, openFactoryOrder, migrateFactoryOrder,
56
- factoryOrderDigest, parseFactoryOrder, fixedPolicyDigest, factoryDecisionDigest, activationRequestDigest, factoryMigrationDigest,
57
- type FactoryRegistryBinding, type FactoryOrderCharter, type FactoryAuthority, type FactoryOrderView, type FixedPolicy, type ActivationRequest, type FactoryMigration } from "./factory-order.ts";
58
- export { createExperiment, openExperiment, experimentCharterDigest, experimentBindingDigest, experimentCancellationDigest, parseExperimentCharter,
59
- type ExperimentBinding, type ExperimentCharter, type ExperimentAuthority, type ExperimentCancellation, type ExperimentRun, type ExperimentView } from "./experiment.ts";
60
- export { createResourceBudget, createDispatchBudget, createIntentBudget, createExperimentBudget, openResourceBudget, resourceBindingDigest, ResourceAdmissionError,
61
- type BudgetBinding, type DispatchBudgetBinding, type IntentBudgetBinding, type ExperimentBudgetBinding, type GovernedBudgetBinding, type ResourceLimits, type AttemptDemand, type ResourcePermit, type BudgetSnapshot } from "./resource-budget.ts";
62
- export { createProducerIpcHost, startProducerIpc, producerIpcBinding, producerIpcBindingDigest, producerIpcDemand, PRODUCER_IPC_LIMITS,
63
- type ProducerIpcBinding, type ProducerIpcReferences, type ProducerIpcContext, type ProducerIpcHost, type ProducerIpcSnapshot, type ProducerIpcRun } from "./producer-ipc.ts";
64
- export { prepareDigestProfile, runDigestProfile, DIGEST_PROFILE, EffectProfileUnavailableError,
65
- type DigestProfile, type DigestAttempt } from "./effect-profile.ts";
66
- export { planSpawn, type SpawnPlan, type SpawnPlanInput } from "./spawn.ts";
67
- export { beginExecutionRetention, drainExecutionRetention, ENV_EXECUTION_ARCHIVE, RETENTION_VERSION, retentionConfigurationDigest, verifyRetainedBytes,
68
- type ExecutionRetentionManifest, type RetainedContent, type RetentionIdentity, type RetentionStatus,
69
- type ExecutionRetention, buildExecutionRetentionManifest, parseExecutionRetentionManifest, RETENTION_SCHEMA,
70
- ENV_NATIVE_SESSION_ROOT, readNativeSession, parseNativeSessionBytes,
71
- type NativeSessionObservation, type NativeSessionManager } from "./execution-retention.ts";
27
+ export { planSpawn, type SpawnPlan, type SpawnPlanInput } from "./kernel/spawn.ts";
28
+ export {
29
+ beginExecutionRetention,
30
+ drainExecutionRetention,
31
+ ENV_EXECUTION_ARCHIVE,
32
+ RETENTION_VERSION,
33
+ retentionConfigurationDigest,
34
+ verifyRetainedBytes,
35
+ type ExecutionRetentionManifest,
36
+ type RetainedContent,
37
+ type RetentionIdentity,
38
+ type RetentionStatus,
39
+ type ExecutionRetention,
40
+ buildExecutionRetentionManifest,
41
+ parseExecutionRetentionManifest,
42
+ RETENTION_SCHEMA,
43
+ ENV_NATIVE_SESSION_ROOT,
44
+ readNativeSession,
45
+ parseNativeSessionBytes,
46
+ type NativeSessionObservation,
47
+ type NativeSessionManager,
48
+ } from "./governance/execution-retention.ts";
72
49
 
73
50
  export {
74
51
  APPROVAL_TTL_DAYS,
@@ -86,7 +63,7 @@ export {
86
63
  type ApprovalSource,
87
64
  type EntryVerdict,
88
65
  type SubjectSnapshot,
89
- } from "./approval.ts";
66
+ } from "./kernel/approval.ts";
90
67
 
91
68
  export {
92
69
  approvalsPath,
@@ -96,7 +73,7 @@ export {
96
73
  saveApproval,
97
74
  type DroppedApproval,
98
75
  type SubjectLookup,
99
- } from "./approval-store.ts";
76
+ } from "./governance/approval-store.ts";
100
77
 
101
78
  export {
102
79
  approvalBindingDigest,
@@ -109,7 +86,7 @@ export {
109
86
  type ApprovalBinding,
110
87
  type CorrelationMetadata,
111
88
  type JsonValue,
112
- } from "./correlation.ts";
89
+ } from "./kernel/correlation.ts";
113
90
 
114
91
  export {
115
92
  GovernanceRefusal,
@@ -117,33 +94,20 @@ export {
117
94
  refusal,
118
95
  type RefusalCode,
119
96
  type StructuredRefusal,
120
- } from "./refusals.ts";
97
+ } from "./kernel/refusals.ts";
121
98
 
122
99
  export {
123
- acquireWorkspaceLease,
124
- defaultWorkspaceLeaseDir,
125
100
  loadWorkspaceRegistry,
126
101
  resolveWorkspace,
127
102
  validateRegisteredWorkspace,
128
103
  type ValidatedWorkspace,
129
104
  type WorkspaceAccess,
130
- type WorkspaceLease,
131
105
  type WorkspaceRegistryFile,
132
- } from "./workspace.ts";
106
+ } from "./kernel/workspace.ts";
133
107
 
134
- export {
135
- buildCheckEnvironment,
136
- runNamedCheck,
137
- type CheckDefinition,
138
- type CheckReceipt,
139
- type CheckRegistry,
140
- } from "./check-runner.ts";
108
+ export { acquireWorkspaceLease, defaultWorkspaceLeaseDir, type WorkspaceLease } from "./governance/workspace-lease.ts";
141
109
 
142
- export {
143
- isExecutionId,
144
- newExecutionId,
145
- type ExecutionId,
146
- } from "./execution-id.ts";
110
+ export { isExecutionId, newExecutionId, type ExecutionId } from "./kernel/execution-id.ts";
147
111
 
148
112
  export {
149
113
  parseDashboardLedger,
@@ -151,31 +115,9 @@ export {
151
115
  type DashboardProjection,
152
116
  type DashboardState,
153
117
  type DashboardWorkflow,
154
- type DashboardWorkflowFact,
155
- } from "./dashboard-projection.ts";
118
+ } from "./products/dashboard-projection.ts";
156
119
 
157
- export { renderDashboard, type DashboardRenderOptions } from "./dashboard-render.ts";
158
- export { declareWork, loadDeclaredWork, type DeclaredWorkState } from "./work-command.ts";
159
- export { workSetup, recordWorkSetup, selectRecordedWork, loadWorkSetup, listWorkSetups, workPresentation, type WorkSetup, type WorkTaskSetup, type RecordedWorkSetup } from "./work-setup.ts";
160
- export { runWorkSetup, inspectWorkRun, type WorkRunResult, type WorkRunInitial, type WorkPolicyPin } from "./work-run.ts";
161
- export { workPolicy, workPolicyDigest, policyForSetup, createWorkPolicyRegistry, openWorkPolicyRegistry, workPolicyActivationDigest, type WorkPolicy, type WorkPolicyRegistry, type WorkPolicyActivation } from "./work-policy-registry.ts";
162
- export { learningHarness, bindLearningConnection, loadLearningConnection, bindLearningAdoption, learningScopeDigest, type LearningConnection, type LearningWorkspace } from "./learning-connection.ts";
163
-
164
- export {
165
- runMeasuredAgentSession,
166
- piSdkMeasuredSessionHost,
167
- verifyMeasuredSubscription,
168
- MeasuredSessionFailure,
169
- MeasuredSessionUnknownError,
170
- type MeasuredSessionInput,
171
- type MeasuredSessionHost,
172
- type MeasuredSessionHostInput,
173
- type MeasuredSessionHostResult,
174
- type ProviderUsage,
175
- } from "./measured-session.ts";
176
- export { createMeasuredOrder, openMeasuredOrder, measuredOrderDigest, measuredOrderAcknowledgementDigest, qualifyMeasuredOutput,
177
- type MeasuredOrder, type MeasuredOrderNode, type MeasuredOrderAttempt, type MeasuredOutputContract, type MeasuredOrderBinding, type MeasuredOrderAuthority,
178
- type MeasuredOrderAcknowledgement, type MeasuredOrderNodeView } from "./measured-order.ts";
120
+ export { renderDashboard, type DashboardRenderOptions } from "./products/dashboard-render.ts";
179
121
 
180
122
  export {
181
123
  createApprovalGate,
@@ -187,4 +129,52 @@ export {
187
129
  type PromptOutcome,
188
130
  type PromptOutcomeKind,
189
131
  type PromptRequest,
190
- } from "./approval-prompt.ts";
132
+ } from "./governance/approval-prompt.ts";
133
+
134
+ // ADR-0076 cleanup: the `pi-daddy/kernel`, `/ledger`, `/approvals`, `/executors` and `/dashboard` subpaths are
135
+ // gone; the root is the one public surface. Wildcard re-exports of the layers keep every name reachable.
136
+ export * from "./kernel/capabilities.ts";
137
+ export * from "./kernel/catalog.ts";
138
+ export * from "./kernel/chain.ts";
139
+ export * from "./kernel/definitions.ts";
140
+ export * from "./kernel/delegate-types.ts";
141
+ export * from "./kernel/delegate.ts";
142
+ export * from "./kernel/delegation-approval.ts";
143
+ export * from "./kernel/env-names.ts";
144
+ export * from "./kernel/fanout.ts";
145
+ export * from "./kernel/grant-env.ts";
146
+ export * from "./kernel/ledger-identifiers.ts";
147
+ export * from "./kernel/model-preflight.ts";
148
+ export * from "./kernel/pi-tools.ts";
149
+ export * from "./kernel/progress.ts";
150
+ export * from "./kernel/propagation.ts";
151
+ export * from "./kernel/routing-authority.ts";
152
+ export * from "./kernel/run-child.ts";
153
+ export * from "./kernel/skill-packages.ts";
154
+ export * from "./kernel/skill-resources.ts";
155
+ export * from "./governance/ledger-events.ts";
156
+ export * from "./governance/ledger-report.ts";
157
+ export * from "./governance/ledger-v3-validation.ts";
158
+ export * from "./governance/record.ts";
159
+ export * from "./governance/retention-json.ts";
160
+ export * from "./governance/finalization.ts";
161
+ export * from "./governance/grant-store.ts";
162
+ export * from "./governance/lease-helper.ts";
163
+ export * from "./governance/lease-record.ts";
164
+ export * from "./governance/file-lock.ts";
165
+ export * from "./governance/init.ts";
166
+ export * from "./executors/executor.ts";
167
+ export * from "./executors/herdr-cli.ts";
168
+ export * from "./executors/herdr-name.ts";
169
+ export * from "./executors/herdr-pi-lifecycle.ts";
170
+ export * from "./executors/herdr-poll.ts";
171
+ export * from "./executors/herdr-stage.ts";
172
+ export * from "./executors/herdr-start.ts";
173
+ export * from "./executors/native-session-target.ts";
174
+ export * from "./executors/pane-reaper.ts";
175
+ export * from "./executors/run-herdr.ts";
176
+ export * from "./products/dashboard-display-controls.ts";
177
+ export * from "./products/dashboard-handshake.ts";
178
+ export * from "./products/dashboard-herdr.ts";
179
+ export * from "./products/activity-timeline.ts";
180
+ export { runDashboard, dashboardFrame, DASHBOARD_PROTOCOL_VERSION } from "./products/dashboard-cli.ts";