toolroll 0.5.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 (626) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1113 -0
  3. package/THIRD_PARTY_NOTICES.md +449 -0
  4. package/dist/accent-colors.d.ts +48 -0
  5. package/dist/accent-colors.js +122 -0
  6. package/dist/action-ledger.d.ts +26 -0
  7. package/dist/action-ledger.js +75 -0
  8. package/dist/agent-fence.d.ts +42 -0
  9. package/dist/agent-fence.js +183 -0
  10. package/dist/agentconfig.d.ts +216 -0
  11. package/dist/agentconfig.js +454 -0
  12. package/dist/api-tokens.d.ts +16 -0
  13. package/dist/api-tokens.js +27 -0
  14. package/dist/approval-policy.d.ts +69 -0
  15. package/dist/approval-policy.js +137 -0
  16. package/dist/approval-rules-ui.d.ts +25 -0
  17. package/dist/approval-rules-ui.js +39 -0
  18. package/dist/assignment-adapters.d.ts +180 -0
  19. package/dist/assignment-adapters.js +239 -0
  20. package/dist/assignment-brief.d.ts +71 -0
  21. package/dist/assignment-brief.js +129 -0
  22. package/dist/assignment-delivery.d.ts +56 -0
  23. package/dist/assignment-delivery.js +160 -0
  24. package/dist/assignment-presentation.d.ts +26 -0
  25. package/dist/assignment-presentation.js +80 -0
  26. package/dist/assignment-status.d.ts +62 -0
  27. package/dist/assignment-status.js +152 -0
  28. package/dist/assignment-ui.d.ts +71 -0
  29. package/dist/assignment-ui.js +103 -0
  30. package/dist/assignment.d.ts +222 -0
  31. package/dist/assignment.js +399 -0
  32. package/dist/attest.d.ts +56 -0
  33. package/dist/attest.js +153 -0
  34. package/dist/backend.d.ts +97 -0
  35. package/dist/backend.js +166 -0
  36. package/dist/backup-ui.d.ts +22 -0
  37. package/dist/backup-ui.js +59 -0
  38. package/dist/backup.d.ts +84 -0
  39. package/dist/backup.js +421 -0
  40. package/dist/beads.d.ts +34 -0
  41. package/dist/beads.js +135 -0
  42. package/dist/bin.d.ts +2 -0
  43. package/dist/bin.js +22 -0
  44. package/dist/board.d.ts +150 -0
  45. package/dist/board.js +210 -0
  46. package/dist/boot-identity.d.ts +63 -0
  47. package/dist/boot-identity.js +99 -0
  48. package/dist/browser/THIRD_PARTY_NOTICES.txt +2295 -0
  49. package/dist/browser/workspace.css +4 -0
  50. package/dist/browser/workspace.js +225 -0
  51. package/dist/browser-crew.d.ts +11 -0
  52. package/dist/browser-crew.js +50 -0
  53. package/dist/browser-shell.d.ts +8 -0
  54. package/dist/browser-shell.js +60 -0
  55. package/dist/browser-workspace.d.ts +780 -0
  56. package/dist/browser-workspace.js +47 -0
  57. package/dist/budget-alerts.d.ts +19 -0
  58. package/dist/budget-alerts.js +46 -0
  59. package/dist/builder.d.ts +370 -0
  60. package/dist/builder.js +3262 -0
  61. package/dist/capscan.d.ts +35 -0
  62. package/dist/capscan.js +113 -0
  63. package/dist/chat-acceptance.d.ts +71 -0
  64. package/dist/chat-acceptance.js +120 -0
  65. package/dist/chat-actions.d.ts +265 -0
  66. package/dist/chat-actions.js +1273 -0
  67. package/dist/chat-channel.d.ts +109 -0
  68. package/dist/chat-channel.js +652 -0
  69. package/dist/chat-continuity.d.ts +32 -0
  70. package/dist/chat-continuity.js +317 -0
  71. package/dist/chat-controls.d.ts +113 -0
  72. package/dist/chat-controls.js +53 -0
  73. package/dist/chat-delivery-state.d.ts +159 -0
  74. package/dist/chat-delivery-state.js +309 -0
  75. package/dist/chat-delivery.d.ts +38 -0
  76. package/dist/chat-delivery.js +693 -0
  77. package/dist/chat-display.d.ts +1 -0
  78. package/dist/chat-display.js +18 -0
  79. package/dist/chat-evidence.d.ts +123 -0
  80. package/dist/chat-evidence.js +207 -0
  81. package/dist/chat-flow.d.ts +44 -0
  82. package/dist/chat-flow.js +215 -0
  83. package/dist/chat-inbox.d.ts +57 -0
  84. package/dist/chat-inbox.js +123 -0
  85. package/dist/chat-polish.d.ts +16 -0
  86. package/dist/chat-polish.js +135 -0
  87. package/dist/chat-review.d.ts +46 -0
  88. package/dist/chat-review.js +98 -0
  89. package/dist/chat-rooms.d.ts +123 -0
  90. package/dist/chat-rooms.js +216 -0
  91. package/dist/chat-task-actions.d.ts +44 -0
  92. package/dist/chat-task-actions.js +79 -0
  93. package/dist/check-progress.d.ts +51 -0
  94. package/dist/check-progress.js +290 -0
  95. package/dist/child-database.d.ts +12 -0
  96. package/dist/child-database.js +30 -0
  97. package/dist/claim.d.ts +688 -0
  98. package/dist/claim.js +1740 -0
  99. package/dist/cli.d.ts +137 -0
  100. package/dist/cli.js +1461 -0
  101. package/dist/codex-limits.d.ts +15 -0
  102. package/dist/codex-limits.js +145 -0
  103. package/dist/coding-context.d.ts +55 -0
  104. package/dist/coding-context.js +92 -0
  105. package/dist/coding-handoff.d.ts +57 -0
  106. package/dist/coding-handoff.js +277 -0
  107. package/dist/coding-provider.d.ts +72 -0
  108. package/dist/coding-provider.js +424 -0
  109. package/dist/coding-shipping-ui.d.ts +4 -0
  110. package/dist/coding-shipping-ui.js +12 -0
  111. package/dist/coding-types.d.ts +62 -0
  112. package/dist/coding-types.js +1 -0
  113. package/dist/coding-ui.d.ts +17 -0
  114. package/dist/coding-ui.js +364 -0
  115. package/dist/coding-update.d.ts +15 -0
  116. package/dist/coding-update.js +149 -0
  117. package/dist/coding-workspace.d.ts +124 -0
  118. package/dist/coding-workspace.js +768 -0
  119. package/dist/container-state.d.ts +5 -0
  120. package/dist/container-state.js +62 -0
  121. package/dist/containment.d.ts +197 -0
  122. package/dist/containment.js +559 -0
  123. package/dist/contest.d.ts +318 -0
  124. package/dist/contest.js +753 -0
  125. package/dist/control-setup.d.ts +35 -0
  126. package/dist/control-setup.js +40 -0
  127. package/dist/control-ui.d.ts +29 -0
  128. package/dist/control-ui.js +53 -0
  129. package/dist/controller-service.d.ts +1 -0
  130. package/dist/controller-service.js +19 -0
  131. package/dist/controller-supervisor.d.ts +30 -0
  132. package/dist/controller-supervisor.js +104 -0
  133. package/dist/converse.d.ts +304 -0
  134. package/dist/converse.js +849 -0
  135. package/dist/coordinator-proposals.d.ts +29 -0
  136. package/dist/coordinator-proposals.js +137 -0
  137. package/dist/coordinator.d.ts +186 -0
  138. package/dist/coordinator.js +447 -0
  139. package/dist/credentials-ui.d.ts +25 -0
  140. package/dist/credentials-ui.js +48 -0
  141. package/dist/daemon.d.ts +209 -0
  142. package/dist/daemon.js +604 -0
  143. package/dist/decision.d.ts +120 -0
  144. package/dist/decision.js +388 -0
  145. package/dist/demo.d.ts +55 -0
  146. package/dist/demo.js +992 -0
  147. package/dist/desktop-access.d.ts +28 -0
  148. package/dist/desktop-access.js +88 -0
  149. package/dist/desktop-bundle.d.ts +16 -0
  150. package/dist/desktop-bundle.js +74 -0
  151. package/dist/desktop-host.d.ts +54 -0
  152. package/dist/desktop-host.js +508 -0
  153. package/dist/desktop-update-gate.d.ts +12 -0
  154. package/dist/desktop-update-gate.js +91 -0
  155. package/dist/desktop-update-recovery.d.ts +14 -0
  156. package/dist/desktop-update-recovery.js +243 -0
  157. package/dist/desktop-update.d.ts +110 -0
  158. package/dist/desktop-update.js +740 -0
  159. package/dist/discord-api.d.ts +20 -0
  160. package/dist/discord-api.js +138 -0
  161. package/dist/discord-chat.d.ts +16 -0
  162. package/dist/discord-chat.js +381 -0
  163. package/dist/discord-settings.d.ts +7 -0
  164. package/dist/discord-settings.js +75 -0
  165. package/dist/discord.d.ts +10 -0
  166. package/dist/discord.js +169 -0
  167. package/dist/discover.d.ts +75 -0
  168. package/dist/discover.js +150 -0
  169. package/dist/dispatch.d.ts +100 -0
  170. package/dist/dispatch.js +311 -0
  171. package/dist/dispose.d.ts +161 -0
  172. package/dist/dispose.js +803 -0
  173. package/dist/email-settings.d.ts +34 -0
  174. package/dist/email-settings.js +50 -0
  175. package/dist/envelope.d.ts +47 -0
  176. package/dist/envelope.js +105 -0
  177. package/dist/evidence-pack.d.ts +185 -0
  178. package/dist/evidence-pack.js +258 -0
  179. package/dist/evidence.d.ts +345 -0
  180. package/dist/evidence.js +782 -0
  181. package/dist/exec.d.ts +285 -0
  182. package/dist/exec.js +1841 -0
  183. package/dist/exhaustion.d.ts +85 -0
  184. package/dist/exhaustion.js +141 -0
  185. package/dist/export-ui.d.ts +4 -0
  186. package/dist/export-ui.js +17 -0
  187. package/dist/export.d.ts +48 -0
  188. package/dist/export.js +305 -0
  189. package/dist/flow-actions.d.ts +77 -0
  190. package/dist/flow-actions.js +203 -0
  191. package/dist/flow-code.d.ts +50 -0
  192. package/dist/flow-code.js +159 -0
  193. package/dist/flow-draft.d.ts +38 -0
  194. package/dist/flow-draft.js +80 -0
  195. package/dist/flow-engine.d.ts +66 -0
  196. package/dist/flow-engine.js +416 -0
  197. package/dist/flow-insights.d.ts +95 -0
  198. package/dist/flow-insights.js +149 -0
  199. package/dist/flow-live.d.ts +24 -0
  200. package/dist/flow-live.js +150 -0
  201. package/dist/flow-people.d.ts +24 -0
  202. package/dist/flow-people.js +91 -0
  203. package/dist/flow-replies.d.ts +48 -0
  204. package/dist/flow-replies.js +113 -0
  205. package/dist/flow-scripts.d.ts +38 -0
  206. package/dist/flow-scripts.js +73 -0
  207. package/dist/flow-secrets.d.ts +13 -0
  208. package/dist/flow-secrets.js +45 -0
  209. package/dist/flow-sort.d.ts +82 -0
  210. package/dist/flow-sort.js +153 -0
  211. package/dist/flow-steps.d.ts +40 -0
  212. package/dist/flow-steps.js +408 -0
  213. package/dist/flow-triggers.d.ts +244 -0
  214. package/dist/flow-triggers.js +959 -0
  215. package/dist/flows-ui.d.ts +20 -0
  216. package/dist/flows-ui.js +175 -0
  217. package/dist/flows.d.ts +229 -0
  218. package/dist/flows.js +968 -0
  219. package/dist/fonts.d.ts +19 -0
  220. package/dist/fonts.js +19 -0
  221. package/dist/gaps.d.ts +35 -0
  222. package/dist/gaps.js +101 -0
  223. package/dist/gate-failure.d.ts +40 -0
  224. package/dist/gate-failure.js +66 -0
  225. package/dist/git.d.ts +54 -0
  226. package/dist/git.js +94 -0
  227. package/dist/google-mail.d.ts +58 -0
  228. package/dist/google-mail.js +151 -0
  229. package/dist/grant.d.ts +136 -0
  230. package/dist/grant.js +238 -0
  231. package/dist/graph.d.ts +164 -0
  232. package/dist/graph.js +383 -0
  233. package/dist/guides.d.ts +22 -0
  234. package/dist/guides.js +363 -0
  235. package/dist/held.d.ts +150 -0
  236. package/dist/held.js +799 -0
  237. package/dist/invoke.d.ts +112 -0
  238. package/dist/invoke.js +780 -0
  239. package/dist/issues.d.ts +41 -0
  240. package/dist/issues.js +131 -0
  241. package/dist/job-object-helper.ps1 +252 -0
  242. package/dist/jsonl-discriminants.d.ts +11 -0
  243. package/dist/jsonl-discriminants.js +93 -0
  244. package/dist/keys.d.ts +104 -0
  245. package/dist/keys.js +229 -0
  246. package/dist/kits-ui.d.ts +17 -0
  247. package/dist/kits-ui.js +46 -0
  248. package/dist/kits.d.ts +86 -0
  249. package/dist/kits.js +215 -0
  250. package/dist/knowledge-cli.d.ts +101 -0
  251. package/dist/knowledge-cli.js +92 -0
  252. package/dist/knowledge-ui.d.ts +24 -0
  253. package/dist/knowledge-ui.js +40 -0
  254. package/dist/lead-context.d.ts +8 -0
  255. package/dist/lead-context.js +56 -0
  256. package/dist/lead-follow.d.ts +22 -0
  257. package/dist/lead-follow.js +167 -0
  258. package/dist/lead-status.d.ts +75 -0
  259. package/dist/lead-status.js +285 -0
  260. package/dist/ledger-chain.d.ts +46 -0
  261. package/dist/ledger-chain.js +187 -0
  262. package/dist/ledger-csv.d.ts +4 -0
  263. package/dist/ledger-csv.js +11 -0
  264. package/dist/ledger-view.d.ts +24 -0
  265. package/dist/ledger-view.js +58 -0
  266. package/dist/limits-ui.d.ts +26 -0
  267. package/dist/limits-ui.js +67 -0
  268. package/dist/link.d.ts +72 -0
  269. package/dist/link.js +217 -0
  270. package/dist/live.d.ts +96 -0
  271. package/dist/live.js +366 -0
  272. package/dist/liveness.d.ts +30 -0
  273. package/dist/liveness.js +42 -0
  274. package/dist/log.d.ts +7 -0
  275. package/dist/log.js +25 -0
  276. package/dist/mailbox.d.ts +57 -0
  277. package/dist/mailbox.js +150 -0
  278. package/dist/maintenance.d.ts +11 -0
  279. package/dist/maintenance.js +35 -0
  280. package/dist/mate-cli.d.ts +52 -0
  281. package/dist/mate-cli.js +345 -0
  282. package/dist/mate-contract.d.ts +10 -0
  283. package/dist/mate-contract.js +30 -0
  284. package/dist/mate-doors.d.ts +69 -0
  285. package/dist/mate-doors.js +548 -0
  286. package/dist/mate-progress.d.ts +29 -0
  287. package/dist/mate-progress.js +121 -0
  288. package/dist/mate-tools.d.ts +94 -0
  289. package/dist/mate-tools.js +1878 -0
  290. package/dist/mate.d.ts +92 -0
  291. package/dist/mate.js +435 -0
  292. package/dist/mcp-connect.d.ts +103 -0
  293. package/dist/mcp-connect.js +252 -0
  294. package/dist/mcp.d.ts +27 -0
  295. package/dist/mcp.js +651 -0
  296. package/dist/memory-cli.d.ts +466 -0
  297. package/dist/memory-cli.js +111 -0
  298. package/dist/memory-pass.d.ts +160 -0
  299. package/dist/memory-pass.js +409 -0
  300. package/dist/metrics.d.ts +3 -0
  301. package/dist/metrics.js +56 -0
  302. package/dist/mobile-viewport.d.ts +3 -0
  303. package/dist/mobile-viewport.js +37 -0
  304. package/dist/model-catalog.d.ts +118 -0
  305. package/dist/model-catalog.js +376 -0
  306. package/dist/models-cli.d.ts +102 -0
  307. package/dist/models-cli.js +66 -0
  308. package/dist/models-ui.d.ts +34 -0
  309. package/dist/models-ui.js +68 -0
  310. package/dist/modes.d.ts +80 -0
  311. package/dist/modes.js +182 -0
  312. package/dist/monitoring-settings.d.ts +44 -0
  313. package/dist/monitoring-settings.js +173 -0
  314. package/dist/monitoring-ui.d.ts +20 -0
  315. package/dist/monitoring-ui.js +51 -0
  316. package/dist/monitoring.d.ts +34 -0
  317. package/dist/monitoring.js +221 -0
  318. package/dist/names.d.ts +67 -0
  319. package/dist/names.js +102 -0
  320. package/dist/observations.d.ts +40 -0
  321. package/dist/observations.js +211 -0
  322. package/dist/oidc.d.ts +71 -0
  323. package/dist/oidc.js +182 -0
  324. package/dist/onboard.d.ts +108 -0
  325. package/dist/onboard.js +325 -0
  326. package/dist/openrouter-models.d.ts +30 -0
  327. package/dist/openrouter-models.js +120 -0
  328. package/dist/operate.d.ts +118 -0
  329. package/dist/operate.js +11321 -0
  330. package/dist/peek-cli.d.ts +97 -0
  331. package/dist/peek-cli.js +215 -0
  332. package/dist/peek.d.ts +134 -0
  333. package/dist/peek.js +578 -0
  334. package/dist/phase-routing.d.ts +307 -0
  335. package/dist/phase-routing.js +658 -0
  336. package/dist/plan-auto.d.ts +14 -0
  337. package/dist/plan-auto.js +92 -0
  338. package/dist/plan.d.ts +186 -0
  339. package/dist/plan.js +401 -0
  340. package/dist/planner-source.d.ts +251 -0
  341. package/dist/planner-source.js +460 -0
  342. package/dist/planner.d.ts +75 -0
  343. package/dist/planner.js +992 -0
  344. package/dist/policy-ui.d.ts +20 -0
  345. package/dist/policy-ui.js +41 -0
  346. package/dist/policy.d.ts +111 -0
  347. package/dist/policy.js +231 -0
  348. package/dist/prepared-evidence.d.ts +16 -0
  349. package/dist/prepared-evidence.js +96 -0
  350. package/dist/pricing.d.ts +45 -0
  351. package/dist/pricing.js +77 -0
  352. package/dist/principal.d.ts +42 -0
  353. package/dist/principal.js +82 -0
  354. package/dist/probe.d.ts +46 -0
  355. package/dist/probe.js +79 -0
  356. package/dist/process-custody.d.ts +17 -0
  357. package/dist/process-custody.js +91 -0
  358. package/dist/process-liveness.d.ts +10 -0
  359. package/dist/process-liveness.js +81 -0
  360. package/dist/process-recovery-anchor.d.ts +75 -0
  361. package/dist/process-recovery-anchor.js +188 -0
  362. package/dist/process-recovery-coalition.d.ts +25 -0
  363. package/dist/process-recovery-coalition.js +105 -0
  364. package/dist/process-recovery-eligibility.d.ts +178 -0
  365. package/dist/process-recovery-eligibility.js +170 -0
  366. package/dist/process-recovery-native.d.ts +172 -0
  367. package/dist/process-recovery-native.js +592 -0
  368. package/dist/process-recovery-provenance.d.ts +163 -0
  369. package/dist/process-recovery-provenance.js +292 -0
  370. package/dist/process-recovery-services.d.ts +56 -0
  371. package/dist/process-recovery-services.js +191 -0
  372. package/dist/process-recovery-settlement.d.ts +32 -0
  373. package/dist/process-recovery-settlement.js +132 -0
  374. package/dist/process-recovery.d.ts +41 -0
  375. package/dist/process-recovery.js +91 -0
  376. package/dist/process-tree.d.ts +41 -0
  377. package/dist/process-tree.js +264 -0
  378. package/dist/project-access.d.ts +14 -0
  379. package/dist/project-access.js +34 -0
  380. package/dist/project-cli.d.ts +18 -0
  381. package/dist/project-cli.js +104 -0
  382. package/dist/project-delete-ui.d.ts +22 -0
  383. package/dist/project-delete-ui.js +48 -0
  384. package/dist/project-delete.d.ts +55 -0
  385. package/dist/project-delete.js +413 -0
  386. package/dist/project-knowledge.d.ts +111 -0
  387. package/dist/project-knowledge.js +241 -0
  388. package/dist/project-learning.d.ts +100 -0
  389. package/dist/project-learning.js +438 -0
  390. package/dist/project-memory.d.ts +81 -0
  391. package/dist/project-memory.js +264 -0
  392. package/dist/project-skills.d.ts +152 -0
  393. package/dist/project-skills.js +660 -0
  394. package/dist/project-tools.d.ts +219 -0
  395. package/dist/project-tools.js +796 -0
  396. package/dist/project.d.ts +61 -0
  397. package/dist/project.js +125 -0
  398. package/dist/prompt.d.ts +22 -0
  399. package/dist/prompt.js +72 -0
  400. package/dist/proof.d.ts +513 -0
  401. package/dist/proof.js +1140 -0
  402. package/dist/proposal.d.ts +82 -0
  403. package/dist/proposal.js +210 -0
  404. package/dist/provider-connection.d.ts +22 -0
  405. package/dist/provider-connection.js +98 -0
  406. package/dist/provider-limits.d.ts +35 -0
  407. package/dist/provider-limits.js +95 -0
  408. package/dist/provider.d.ts +279 -0
  409. package/dist/provider.js +935 -0
  410. package/dist/publish.d.ts +107 -0
  411. package/dist/publish.js +650 -0
  412. package/dist/pulls.d.ts +118 -0
  413. package/dist/pulls.js +240 -0
  414. package/dist/push.d.ts +95 -0
  415. package/dist/push.js +353 -0
  416. package/dist/quality.d.ts +8 -0
  417. package/dist/quality.js +6 -0
  418. package/dist/recipe-ui.d.ts +18 -0
  419. package/dist/recipe-ui.js +152 -0
  420. package/dist/recipes.d.ts +81 -0
  421. package/dist/recipes.js +332 -0
  422. package/dist/remote.d.ts +67 -0
  423. package/dist/remote.js +122 -0
  424. package/dist/render.d.ts +64 -0
  425. package/dist/render.js +587 -0
  426. package/dist/report-summary.d.ts +13 -0
  427. package/dist/report-summary.js +15 -0
  428. package/dist/repos.d.ts +65 -0
  429. package/dist/repos.js +277 -0
  430. package/dist/repository-context-ui.d.ts +2 -0
  431. package/dist/repository-context-ui.js +10 -0
  432. package/dist/repository-context.d.ts +67 -0
  433. package/dist/repository-context.js +376 -0
  434. package/dist/restart-certification.d.ts +134 -0
  435. package/dist/restart-certification.js +226 -0
  436. package/dist/result-actions.d.ts +28 -0
  437. package/dist/result-actions.js +270 -0
  438. package/dist/result-completion.d.ts +18 -0
  439. package/dist/result-completion.js +66 -0
  440. package/dist/result-review.d.ts +213 -0
  441. package/dist/result-review.js +430 -0
  442. package/dist/retention-ui.d.ts +12 -0
  443. package/dist/retention-ui.js +39 -0
  444. package/dist/retention.d.ts +72 -0
  445. package/dist/retention.js +288 -0
  446. package/dist/review-context.d.ts +243 -0
  447. package/dist/review-context.js +1043 -0
  448. package/dist/review-evidence.d.ts +33 -0
  449. package/dist/review-evidence.js +56 -0
  450. package/dist/reviewer.d.ts +97 -0
  451. package/dist/reviewer.js +202 -0
  452. package/dist/routine.d.ts +228 -0
  453. package/dist/routine.js +764 -0
  454. package/dist/runner.d.ts +266 -0
  455. package/dist/runner.js +399 -0
  456. package/dist/scan.d.ts +32 -0
  457. package/dist/scan.js +92 -0
  458. package/dist/scope.d.ts +695 -0
  459. package/dist/scope.js +1176 -0
  460. package/dist/scout-report.d.ts +42 -0
  461. package/dist/scout-report.js +108 -0
  462. package/dist/scout.d.ts +69 -0
  463. package/dist/scout.js +351 -0
  464. package/dist/serve.d.ts +313 -0
  465. package/dist/serve.js +21776 -0
  466. package/dist/session-brief.d.ts +8 -0
  467. package/dist/session-brief.js +24 -0
  468. package/dist/session-cli.d.ts +13 -0
  469. package/dist/session-cli.js +284 -0
  470. package/dist/session-contract.d.ts +183 -0
  471. package/dist/session-contract.js +122 -0
  472. package/dist/session-http.d.ts +19 -0
  473. package/dist/session-http.js +154 -0
  474. package/dist/session-server.d.ts +12 -0
  475. package/dist/session-server.js +37 -0
  476. package/dist/session-service.d.ts +22 -0
  477. package/dist/session-service.js +157 -0
  478. package/dist/setup-guide.d.ts +39 -0
  479. package/dist/setup-guide.js +93 -0
  480. package/dist/sign-in-guard.d.ts +45 -0
  481. package/dist/sign-in-guard.js +74 -0
  482. package/dist/skills-ui.d.ts +11 -0
  483. package/dist/skills-ui.js +58 -0
  484. package/dist/skills.d.ts +97 -0
  485. package/dist/skills.js +276 -0
  486. package/dist/slack-api.d.ts +55 -0
  487. package/dist/slack-api.js +229 -0
  488. package/dist/slack-chat.d.ts +28 -0
  489. package/dist/slack-chat.js +413 -0
  490. package/dist/slack-settings.d.ts +7 -0
  491. package/dist/slack-settings.js +75 -0
  492. package/dist/slack-state.d.ts +13 -0
  493. package/dist/slack-state.js +9 -0
  494. package/dist/slack.d.ts +13 -0
  495. package/dist/slack.js +167 -0
  496. package/dist/spend-ui.d.ts +28 -0
  497. package/dist/spend-ui.js +95 -0
  498. package/dist/spend.d.ts +142 -0
  499. package/dist/spend.js +313 -0
  500. package/dist/sqlite-runtime.d.ts +3 -0
  501. package/dist/sqlite-runtime.js +6 -0
  502. package/dist/sso-settings.d.ts +33 -0
  503. package/dist/sso-settings.js +103 -0
  504. package/dist/sso-ui.d.ts +22 -0
  505. package/dist/sso-ui.js +39 -0
  506. package/dist/storage.d.ts +15 -0
  507. package/dist/storage.js +84 -0
  508. package/dist/store.d.ts +7754 -0
  509. package/dist/store.js +23279 -0
  510. package/dist/structured-output.d.ts +58 -0
  511. package/dist/structured-output.js +103 -0
  512. package/dist/style-asset.d.ts +7 -0
  513. package/dist/style-asset.js +41 -0
  514. package/dist/subscription-chat.d.ts +46 -0
  515. package/dist/subscription-chat.js +275 -0
  516. package/dist/summary.d.ts +33 -0
  517. package/dist/summary.js +71 -0
  518. package/dist/supervisor.mjs +297 -0
  519. package/dist/surface.d.ts +63 -0
  520. package/dist/surface.js +352 -0
  521. package/dist/sync.d.ts +94 -0
  522. package/dist/sync.js +279 -0
  523. package/dist/task-composer.d.ts +13 -0
  524. package/dist/task-composer.js +52 -0
  525. package/dist/task-control.d.ts +165 -0
  526. package/dist/task-control.js +214 -0
  527. package/dist/task-outcome-cli.d.ts +10 -0
  528. package/dist/task-outcome-cli.js +92 -0
  529. package/dist/task-text.d.ts +30 -0
  530. package/dist/task-text.js +41 -0
  531. package/dist/team-cli.d.ts +15 -0
  532. package/dist/team-cli.js +618 -0
  533. package/dist/team-contract.d.ts +92 -0
  534. package/dist/team-contract.js +1 -0
  535. package/dist/team-http.d.ts +17 -0
  536. package/dist/team-http.js +144 -0
  537. package/dist/team-leads.d.ts +81 -0
  538. package/dist/team-leads.js +565 -0
  539. package/dist/team-runtime.d.ts +27 -0
  540. package/dist/team-runtime.js +264 -0
  541. package/dist/team-ui.d.ts +3 -0
  542. package/dist/team-ui.js +9 -0
  543. package/dist/team-updates.d.ts +8 -0
  544. package/dist/team-updates.js +57 -0
  545. package/dist/teammate-admin.d.ts +53 -0
  546. package/dist/teammate-admin.js +111 -0
  547. package/dist/teammate-desk.d.ts +60 -0
  548. package/dist/teammate-desk.js +154 -0
  549. package/dist/teammate-memory.d.ts +64 -0
  550. package/dist/teammate-memory.js +196 -0
  551. package/dist/teammate-question.d.ts +59 -0
  552. package/dist/teammate-question.js +175 -0
  553. package/dist/teammate-tools.d.ts +108 -0
  554. package/dist/teammate-tools.js +271 -0
  555. package/dist/teammate-week.d.ts +68 -0
  556. package/dist/teammate-week.js +132 -0
  557. package/dist/teammate-work.d.ts +76 -0
  558. package/dist/teammate-work.js +280 -0
  559. package/dist/teammates-ui.d.ts +20 -0
  560. package/dist/teammates-ui.js +166 -0
  561. package/dist/teammates.d.ts +180 -0
  562. package/dist/teammates.js +253 -0
  563. package/dist/teams-api.d.ts +33 -0
  564. package/dist/teams-api.js +204 -0
  565. package/dist/teams-chat.d.ts +26 -0
  566. package/dist/teams-chat.js +215 -0
  567. package/dist/teams-settings.d.ts +12 -0
  568. package/dist/teams-settings.js +57 -0
  569. package/dist/teams.d.ts +21 -0
  570. package/dist/teams.js +124 -0
  571. package/dist/telegram-flow.d.ts +49 -0
  572. package/dist/telegram-flow.js +110 -0
  573. package/dist/telegram-mate.d.ts +137 -0
  574. package/dist/telegram-mate.js +707 -0
  575. package/dist/telegram-progress.d.ts +14 -0
  576. package/dist/telegram-progress.js +129 -0
  577. package/dist/telegram-settings.d.ts +9 -0
  578. package/dist/telegram-settings.js +36 -0
  579. package/dist/telegram-status.d.ts +75 -0
  580. package/dist/telegram-status.js +265 -0
  581. package/dist/telegram-team.d.ts +85 -0
  582. package/dist/telegram-team.js +359 -0
  583. package/dist/telegram.d.ts +230 -0
  584. package/dist/telegram.js +1931 -0
  585. package/dist/templates.d.ts +65 -0
  586. package/dist/templates.js +118 -0
  587. package/dist/tool-launcher.d.ts +1 -0
  588. package/dist/tool-launcher.js +101 -0
  589. package/dist/tools-ui.d.ts +30 -0
  590. package/dist/tools-ui.js +40 -0
  591. package/dist/transitions-recipes.d.ts +1 -0
  592. package/dist/transitions-recipes.js +203 -0
  593. package/dist/tree-proof.d.ts +34 -0
  594. package/dist/tree-proof.js +58 -0
  595. package/dist/verification-evidence.d.ts +44 -0
  596. package/dist/verification-evidence.js +238 -0
  597. package/dist/version.d.ts +2 -0
  598. package/dist/version.js +10 -0
  599. package/dist/webhooks.d.ts +91 -0
  600. package/dist/webhooks.js +283 -0
  601. package/dist/work-index.d.ts +68 -0
  602. package/dist/work-index.js +384 -0
  603. package/dist/work-summary.d.ts +57 -0
  604. package/dist/work-summary.js +116 -0
  605. package/dist/workspace-motion.d.ts +4 -0
  606. package/dist/workspace-motion.js +133 -0
  607. package/dist/workspace-revision.d.ts +19 -0
  608. package/dist/workspace-revision.js +92 -0
  609. package/dist/workspace-ui.d.ts +204 -0
  610. package/dist/workspace-ui.js +411 -0
  611. package/dist/worktree-notices.d.ts +13 -0
  612. package/dist/worktree-notices.js +17 -0
  613. package/dist/worktree.d.ts +249 -0
  614. package/dist/worktree.js +720 -0
  615. package/package.json +122 -0
  616. package/scripts/canary-assertions.mjs +42 -0
  617. package/scripts/crash-canary.mjs +253 -0
  618. package/scripts/fixtures/crash-process.mjs +74 -0
  619. package/scripts/fixtures/pilot-scenarios.mjs +85 -0
  620. package/scripts/fixtures/restart-service.mjs +27 -0
  621. package/scripts/launchd-certification.mjs +143 -0
  622. package/scripts/pilot.mjs +121 -0
  623. package/scripts/proof-preflight.mjs +140 -0
  624. package/scripts/provider-canary.mjs +379 -0
  625. package/scripts/recovery-canary.mjs +135 -0
  626. package/scripts/restart-certification.mjs +98 -0
@@ -0,0 +1,34 @@
1
+ /** The mail server (v87), and where Inbox triggers read it (v89: its IMAP address; same sign-in). */
2
+ export type EmailSettings = {
3
+ host: string;
4
+ port: number;
5
+ secure: boolean;
6
+ user: string;
7
+ from: string;
8
+ imap: {
9
+ host: string;
10
+ port: number;
11
+ secure: boolean;
12
+ } | null;
13
+ };
14
+ export declare const ADDRESS: RegExp;
15
+ export declare function readEmailSettings(dir: string | null): (EmailSettings & {
16
+ password: string;
17
+ }) | null;
18
+ /** Save the mail server from Settings; an empty password keeps the saved one. An IMAP address lets Inbox triggers read it. */
19
+ export declare function saveEmailSettings(dir: string, input: {
20
+ host: unknown;
21
+ port: unknown;
22
+ secure: unknown;
23
+ user: unknown;
24
+ from: unknown;
25
+ password: unknown;
26
+ imapHost?: unknown;
27
+ imapPort?: unknown;
28
+ }): {
29
+ ok: true;
30
+ said: string;
31
+ } | {
32
+ ok: false;
33
+ message: string;
34
+ };
@@ -0,0 +1,50 @@
1
+ /**
2
+ * The mail server (v87) and where Inbox triggers read it (v89), saved from
3
+ * Settings → Email in a 0600 file beside the database. Its own module, with
4
+ * nothing but the file system, so the mailbox and triggers can read it
5
+ * without pulling in the step runners.
6
+ */
7
+ import { chmodSync, existsSync, readFileSync, writeFileSync } from "node:fs";
8
+ import { join } from "node:path";
9
+ const EMAIL_FILE = "email.json";
10
+ export const ADDRESS = /^[A-Za-z0-9._%+-]+@[A-Za-z0-9-]+(?:\.[A-Za-z0-9-]+)*\.[A-Za-z]{2,}$/;
11
+ export function readEmailSettings(dir) {
12
+ if (dir === null || !existsSync(join(dir, EMAIL_FILE)))
13
+ return null;
14
+ try {
15
+ const raw = JSON.parse(readFileSync(join(dir, EMAIL_FILE), "utf8"));
16
+ if (typeof raw["host"] !== "string" || typeof raw["from"] !== "string")
17
+ return null;
18
+ const imap = raw["imap"] !== null && typeof raw["imap"] === "object" ? raw["imap"] : null;
19
+ return { host: raw["host"], port: Number(raw["port"]) || 587, secure: raw["secure"] === true, user: typeof raw["user"] === "string" ? raw["user"] : "", from: raw["from"], password: typeof raw["password"] === "string" ? raw["password"] : "",
20
+ imap: imap !== null && typeof imap["host"] === "string" ? { host: imap["host"], port: Number(imap["port"]) || 993, secure: imap["secure"] !== false } : null };
21
+ }
22
+ catch {
23
+ return null;
24
+ }
25
+ }
26
+ /** Save the mail server from Settings; an empty password keeps the saved one. An IMAP address lets Inbox triggers read it. */
27
+ export function saveEmailSettings(dir, input) {
28
+ const host = typeof input.host === "string" ? input.host.trim() : "";
29
+ if (!/^[A-Za-z0-9.-]{1,253}$/.test(host))
30
+ return { ok: false, message: "Give the mail server's name, like smtp.gmail.com." };
31
+ const port = Number(input.port);
32
+ if (!Number.isInteger(port) || port < 1 || port > 65535)
33
+ return { ok: false, message: "The port is a number, usually 587 or 465." };
34
+ const from = typeof input.from === "string" ? input.from.trim() : "";
35
+ if (!ADDRESS.test(from))
36
+ return { ok: false, message: "Give the address emails come from." };
37
+ const user = typeof input.user === "string" ? input.user.trim().slice(0, 254) : "";
38
+ const imapHost = typeof input.imapHost === "string" ? input.imapHost.trim() : "";
39
+ if (imapHost !== "" && !/^[A-Za-z0-9.-]{1,253}$/.test(imapHost))
40
+ return { ok: false, message: "Give the server Inbox triggers read from, like imap.gmail.com, or leave it empty." };
41
+ const imapPort = input.imapPort === undefined || input.imapPort === "" || input.imapPort === null ? 993 : Number(input.imapPort);
42
+ if (!Number.isInteger(imapPort) || imapPort < 1 || imapPort > 65535)
43
+ return { ok: false, message: "The reading port is a number, usually 993." };
44
+ const password = typeof input.password === "string" && input.password !== "" ? input.password : readEmailSettings(dir)?.password ?? "";
45
+ writeFileSync(join(dir, EMAIL_FILE), JSON.stringify({ host, port, secure: input.secure === true || input.secure === "on" || input.secure === "true" || port === 465, user, from, password,
46
+ // 993 is TLS from the start; any other port must upgrade with STARTTLS before the password is sent.
47
+ imap: imapHost === "" ? null : { host: imapHost, port: imapPort, secure: imapPort === 993 } }), { mode: 0o600 });
48
+ chmodSync(join(dir, EMAIL_FILE), 0o600);
49
+ return { ok: true, said: imapHost === "" ? `Email is set up: it comes from ${from}.` : `Email is set up: it comes from ${from}, and Inbox triggers read ${imapHost}.` };
50
+ }
@@ -0,0 +1,47 @@
1
+ /**
2
+ * The machine envelope — the one shape every `--json` answer takes.
3
+ *
4
+ * Agents branch on this output ten thousand times a night, so the contract
5
+ * is versioned and deliberately dull: `envelopeVersion` first, then `ok`,
6
+ * then `command`, then whatever the command has to say. Failures add a
7
+ * stable `reason` token and a human `message`. Nothing else about the
8
+ * shape is promised, and consumers are told to ignore keys they do not
9
+ * recognize — that is what lets the envelope grow without breaking anyone.
10
+ *
11
+ * Every emission in the CLI routes through `envelopeJson` (a source-level
12
+ * test enforces it), which is also what makes `-o <file>` possible: the
13
+ * entry point asks this module for the last envelope written and copies it
14
+ * to the file, so an agent never has to scrape a terminal.
15
+ */
16
+ export declare const ENVELOPE_VERSION = 1;
17
+ /**
18
+ * Feature detection for agent consumers, Claude-`system/init` style:
19
+ * a bounded list of protocol behaviors this build honors. Consumers must
20
+ * ignore values they do not recognize. Behaviors, not versions — an agent
21
+ * should ask "can I rely on stable reasons", never "is this 0.1.2".
22
+ */
23
+ export declare const CAPABILITIES: readonly string[];
24
+ /**
25
+ * DOCUMENTED reasons — the curated vocabulary the command guide's
26
+ * `notableReasons` may cite. Deliberately named for what it is: a list of
27
+ * tokens that are DOCUMENTED, not a proof of runtime exhaustiveness (the
28
+ * runtime `reason` field remains the truth; consumers branch on tokens
29
+ * and ignore ones they do not recognize). A test ties every entry to a
30
+ * literal in the source so a typo cannot ship.
31
+ */
32
+ export declare const DOCUMENTED_REASONS: readonly string[];
33
+ export type EnvelopePayload = {
34
+ ok: boolean;
35
+ command: string;
36
+ [key: string]: unknown;
37
+ };
38
+ /** The entry point's early-flush hook (arc 2): for long-running commands,
39
+ * `-o` lands the startup envelope the moment it exists. The hook must not
40
+ * throw — the entry point's own hook catches internally. */
41
+ export declare function onEnvelopeCaptured(hook: ((body: string) => void) | null): void;
42
+ /** Serialize one envelope, remembering it for `-o` teeing at the entry point. */
43
+ export declare function envelopeJson(payload: EnvelopePayload): string;
44
+ /** The last envelope this process serialized, or null if none has been. */
45
+ export declare function capturedEnvelope(): string | null;
46
+ /** Forget the captured envelope — the entry point calls this before dispatch. */
47
+ export declare function resetCapturedEnvelope(): void;
@@ -0,0 +1,105 @@
1
+ /**
2
+ * The machine envelope — the one shape every `--json` answer takes.
3
+ *
4
+ * Agents branch on this output ten thousand times a night, so the contract
5
+ * is versioned and deliberately dull: `envelopeVersion` first, then `ok`,
6
+ * then `command`, then whatever the command has to say. Failures add a
7
+ * stable `reason` token and a human `message`. Nothing else about the
8
+ * shape is promised, and consumers are told to ignore keys they do not
9
+ * recognize — that is what lets the envelope grow without breaking anyone.
10
+ *
11
+ * Every emission in the CLI routes through `envelopeJson` (a source-level
12
+ * test enforces it), which is also what makes `-o <file>` possible: the
13
+ * entry point asks this module for the last envelope written and copies it
14
+ * to the file, so an agent never has to scrape a terminal.
15
+ */
16
+ export const ENVELOPE_VERSION = 1;
17
+ /**
18
+ * Feature detection for agent consumers, Claude-`system/init` style:
19
+ * a bounded list of protocol behaviors this build honors. Consumers must
20
+ * ignore values they do not recognize. Behaviors, not versions — an agent
21
+ * should ask "can I rely on stable reasons", never "is this 0.1.2".
22
+ */
23
+ export const CAPABILITIES = [
24
+ "envelope/1", // every --json answer is one versioned envelope on stdout
25
+ "stable-reasons", // failure `reason` is a token that survives rewording
26
+ "idempotency-keys", // every mutation takes --key; retries return the first answer
27
+ "exit-codes/0-1-2-3", // 0 ok · 1 broke · 2 usage · 3 ran fine, answer is no
28
+ "output-file", // -o <file> writes the same envelope to a file
29
+ "command-schema/1", // contract --commands dumps the declared command guide
30
+ "skill-guides/1", // skills list / skills get serve version-matched guides
31
+ "session-client/1", // typed operator transport; query the service for actual availability
32
+ ];
33
+ /**
34
+ * DOCUMENTED reasons — the curated vocabulary the command guide's
35
+ * `notableReasons` may cite. Deliberately named for what it is: a list of
36
+ * tokens that are DOCUMENTED, not a proof of runtime exhaustiveness (the
37
+ * runtime `reason` field remains the truth; consumers branch on tokens
38
+ * and ignore ones they do not recognize). A test ties every entry to a
39
+ * literal in the source so a typo cannot ship.
40
+ */
41
+ export const DOCUMENTED_REASONS = [
42
+ "usage", // the invocation itself was malformed
43
+ "database-busy", // another writer held the selected database for the full wait
44
+ "unknown-task", // the named task does not exist
45
+ "timeout", // task wait reached its caller-supplied deadline
46
+ "failed", // the watched attempt or task failed
47
+ "needs-person", // the task reached a decision or approval only a person can provide
48
+ "unknown-skill", // the named guide does not exist (skills get)
49
+ "unconfirmed", // a preview answered; add --yes to apply
50
+ "foreign-file", // an installer target exists but is not managed by it
51
+ "not-an-approver", // the credential offered does not authenticate
52
+ "held", // somebody else holds it
53
+ "fenced", // a newer lease superseded yours — stop
54
+ "claimed", // already being worked
55
+ "unapproved", // no person has agreed to the scope yet
56
+ "reserved", // the task belongs to another worker's queue
57
+ "external", // a tracker mirror is not dispatchable (see detail)
58
+ "contest-open", // a tournament is running; a person picks
59
+ "all-lanes-raceable", // every compared agent could hold a real budget — race them instead
60
+ "provider-unattested", // the provider binary is outside its attested range
61
+ "daily-runs", // the active mode's daily run cap is spent
62
+ "daily-dollars", // the active mode's daily measured-spend rail is reached
63
+ "steering-pending", // a steering note is waiting; contests refuse
64
+ "not-ready", // blocked, held, or otherwise not dispatchable
65
+ "not-leased", // the lease does not exist or already ended
66
+ "not-yours", // held or reserved by someone else
67
+ "no-op", // nothing to do — an answer, not an error
68
+ "duplicate", // the identity already exists
69
+ "empty", // nothing matched
70
+ "quota", // a budget or cap refused the act
71
+ "not-a-repo", // the path has no .git
72
+ "stale-approval", // what would run no longer matches what was approved
73
+ "profile-unresolved", // the scope cannot say exactly what would run — restate it
74
+ "repair-attempts-spent", // the chain's signed attempt cap is spent
75
+ "repair-no-progress", // two consecutive repair attempts failed to shrink the unresolved set
76
+ "repair-refused-integrity", // a refutation named an altered term, not a gap — no automatic repair
77
+ ];
78
+ let captured = null;
79
+ let captureHook = null;
80
+ /** The entry point's early-flush hook (arc 2): for long-running commands,
81
+ * `-o` lands the startup envelope the moment it exists. The hook must not
82
+ * throw — the entry point's own hook catches internally. */
83
+ export function onEnvelopeCaptured(hook) {
84
+ captureHook = hook;
85
+ }
86
+ /** Serialize one envelope, remembering it for `-o` teeing at the entry point. */
87
+ export function envelopeJson(payload) {
88
+ const body = JSON.stringify({ envelopeVersion: ENVELOPE_VERSION, ...payload }, null, 2);
89
+ captured = body;
90
+ try {
91
+ captureHook?.(body);
92
+ }
93
+ catch {
94
+ // A hook that throws must never reach the command's envelope path.
95
+ }
96
+ return body;
97
+ }
98
+ /** The last envelope this process serialized, or null if none has been. */
99
+ export function capturedEnvelope() {
100
+ return captured;
101
+ }
102
+ /** Forget the captured envelope — the entry point calls this before dispatch. */
103
+ export function resetCapturedEnvelope() {
104
+ captured = null;
105
+ }
@@ -0,0 +1,185 @@
1
+ import { type Filer } from "./approval-policy.js";
2
+ import { type AssignmentAccess, type AssignmentSnapshot } from "./assignment.js";
3
+ import type { SealedLedgerEntry, Store } from "./store.js";
4
+ import type { LedgerChainReport } from "./ledger-chain.js";
5
+ export declare const EVIDENCE_PACK_FORMAT = "standing-orders/evidence-pack/v1";
6
+ /** How to recheck one entry's seal, for whoever reads the JSON. */
7
+ export declare const SEAL_RECIPE = "hash = sha256(prev + \"\\n\" + JSON.stringify([id, at, actor, repo, taskId, runId, action, outcome, source, detail]))";
8
+ type SealedEntry = SealedLedgerEntry;
9
+ export type EvidencePack = {
10
+ format: typeof EVIDENCE_PACK_FORMAT;
11
+ generatedAt: string;
12
+ generatedBy: string;
13
+ task: {
14
+ id: string;
15
+ title: string;
16
+ state: string;
17
+ repo: string | null;
18
+ project: string | null;
19
+ filedAt: string;
20
+ };
21
+ rules: {
22
+ now: string;
23
+ changes: {
24
+ id: number;
25
+ at: string;
26
+ by: string;
27
+ change: string | null;
28
+ }[];
29
+ } | null;
30
+ /** The task and each revision of it, oldest first. */
31
+ versions: {
32
+ id: string;
33
+ title: string;
34
+ state: string;
35
+ filedAt: string;
36
+ filedBy: Filer | null;
37
+ scope: {
38
+ goal: string;
39
+ outOfScope: string | null;
40
+ touches: string[];
41
+ acceptance: {
42
+ id: string;
43
+ statement: string;
44
+ }[];
45
+ budgetUsd: number | null;
46
+ digest: string;
47
+ approved: {
48
+ by: string;
49
+ at: string;
50
+ digest: string;
51
+ basis: "person" | "mode";
52
+ current: boolean;
53
+ } | null;
54
+ writtenBy: {
55
+ digest: string;
56
+ author: string;
57
+ at: string;
58
+ }[];
59
+ approvals: {
60
+ digest: string;
61
+ approver: string;
62
+ at: string;
63
+ }[];
64
+ } | null;
65
+ runs: {
66
+ id: number;
67
+ role: string;
68
+ agent: string;
69
+ model: string | null;
70
+ outcome: string | null;
71
+ reason: string | null;
72
+ base: string | null;
73
+ head: string | null;
74
+ startedAt: string;
75
+ finishedAt: string | null;
76
+ tokensIn: number | null;
77
+ tokensOut: number | null;
78
+ costUsd: number | null;
79
+ /** The files a build changed (renames on both sides); null when its record can't be read whole. */
80
+ changedFiles: string[] | null;
81
+ diff: {
82
+ sha256: string;
83
+ bytes: number;
84
+ complete: boolean;
85
+ } | null;
86
+ proof: {
87
+ verdict: string;
88
+ decidedAt: string;
89
+ reasons: string[];
90
+ } | null;
91
+ publication: {
92
+ repo: string;
93
+ branch: string;
94
+ commit: string;
95
+ state: string;
96
+ pr: number | null;
97
+ url: string | null;
98
+ remoteState: string | null;
99
+ checks: string | null;
100
+ } | null;
101
+ }[];
102
+ }[];
103
+ result: {
104
+ runId: number;
105
+ base: string | null;
106
+ head: string | null;
107
+ kind: string | null;
108
+ checks: {
109
+ status: string;
110
+ command: string | null;
111
+ exitCode: number | null;
112
+ detail: string;
113
+ };
114
+ completedBy: string | null;
115
+ completedAt: string | null;
116
+ caveats: string[];
117
+ publication: AssignmentSnapshot["publication"];
118
+ } | null;
119
+ totals: {
120
+ runs: number;
121
+ costUsd: number;
122
+ tokensIn: number;
123
+ tokensOut: number;
124
+ };
125
+ ledger: {
126
+ entries: SealedEntry[];
127
+ /** More entries (or requests) exist than a pack carries; the ledger export has them all. */
128
+ truncated: boolean;
129
+ /** `checkedAt`: when the whole chain was last walked (entries since were checked as they came). */
130
+ chain: {
131
+ ok: boolean;
132
+ entries: number;
133
+ through: number | null;
134
+ head: string;
135
+ problem: string | null;
136
+ checkedAt: string | null;
137
+ };
138
+ checkpoint: {
139
+ through: number;
140
+ hash: string;
141
+ at: string;
142
+ } | null;
143
+ recipe: string;
144
+ };
145
+ /** sha256 of this pack's JSON without this field. */
146
+ digest: string;
147
+ };
148
+ /** The pack for one task (the whole family: the task and every revision), as `who` may see it. null when they can't. */
149
+ export declare function evidencePack(store: Store, taskId: string, access: AssignmentAccess, who: string, now: Date, evidenceRoot: string, checked?: LedgerChainReport): EvidencePack | null;
150
+ export declare function packDigest(body: Omit<EvidencePack, "digest">): string;
151
+ /** A day as the export takes it (YYYY-MM-DD, UTC), or null. */
152
+ export declare function exportDay(value: string | null): string | null;
153
+ export type LedgerExport = {
154
+ format: "standing-orders/ledger-export/v1";
155
+ generatedAt: string;
156
+ generatedBy: string;
157
+ from: string;
158
+ to: string;
159
+ chain: EvidencePack["ledger"]["chain"];
160
+ checkpoint: EvidencePack["ledger"]["checkpoint"];
161
+ recipe: string;
162
+ entries: SealedEntry[];
163
+ /** An evidence pack for every task the range's entries name. */
164
+ packs: EvidencePack[];
165
+ truncated: {
166
+ entries: boolean;
167
+ packs: boolean;
168
+ };
169
+ };
170
+ /** Every ledger entry in [from, to) that `who` may read, sealed, with a pack for each task they name: one JSON
171
+ * document (a `LedgerExport`), a piece at a time (a page of entries, or one pack), so an export never holds
172
+ * the whole range at once. */
173
+ export declare function ledgerExportChunks(store: Store, range: {
174
+ from: string;
175
+ to: string;
176
+ }, scope: {
177
+ repos: readonly string[] | null;
178
+ instance: boolean;
179
+ }, access: AssignmentAccess, who: string, now: Date, evidenceRoot: string): Generator<string, void, undefined>;
180
+ export declare const EVIDENCE_PACK_CSS: string;
181
+ /** The pack as a page: the same facts, in the order an auditor reads them. No script. */
182
+ export declare function evidencePackHtml(pack: EvidencePack): string;
183
+ /** The page as a file on its own (the CLI's --html): the same facts with just enough style to print. */
184
+ export declare function standaloneEvidenceHtml(pack: EvidencePack): string;
185
+ export {};