@hearsay-tools/squawk 0.0.0-stage → 0.17.0-dev.5685

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 (1976) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +1846 -2
  3. package/dist/activity/demand.d.ts +21 -0
  4. package/dist/activity/demand.js +49 -0
  5. package/dist/activity/demand.js.map +1 -0
  6. package/dist/activity/publisher.d.ts +48 -0
  7. package/dist/activity/publisher.js +175 -0
  8. package/dist/activity/publisher.js.map +1 -0
  9. package/dist/activity/read-model.d.ts +50 -0
  10. package/dist/activity/read-model.js +143 -0
  11. package/dist/activity/read-model.js.map +1 -0
  12. package/dist/activity/requests.d.ts +27 -0
  13. package/dist/activity/requests.js +81 -0
  14. package/dist/activity/requests.js.map +1 -0
  15. package/dist/activity/text.d.ts +4 -0
  16. package/dist/activity/text.js +13 -0
  17. package/dist/activity/text.js.map +1 -0
  18. package/dist/activity/tool-activity.d.ts +87 -0
  19. package/dist/activity/tool-activity.js +250 -0
  20. package/dist/activity/tool-activity.js.map +1 -0
  21. package/dist/activity/wait.d.ts +19 -0
  22. package/dist/activity/wait.js +91 -0
  23. package/dist/activity/wait.js.map +1 -0
  24. package/dist/agent-config/account-identity.d.ts +28 -0
  25. package/dist/agent-config/account-identity.js +132 -0
  26. package/dist/agent-config/account-identity.js.map +1 -0
  27. package/dist/agent-config/catalog.d.ts +70 -0
  28. package/dist/agent-config/catalog.js +384 -0
  29. package/dist/agent-config/catalog.js.map +1 -0
  30. package/dist/agent-config/files.d.ts +42 -0
  31. package/dist/agent-config/files.js +115 -0
  32. package/dist/agent-config/files.js.map +1 -0
  33. package/dist/agent-config/model-settings/claude.d.ts +2 -0
  34. package/dist/agent-config/model-settings/claude.js +11 -0
  35. package/dist/agent-config/model-settings/claude.js.map +1 -0
  36. package/dist/agent-config/model-settings/codex.d.ts +2 -0
  37. package/dist/agent-config/model-settings/codex.js +16 -0
  38. package/dist/agent-config/model-settings/codex.js.map +1 -0
  39. package/dist/agent-config/model-settings/opencode.d.ts +2 -0
  40. package/dist/agent-config/model-settings/opencode.js +8 -0
  41. package/dist/agent-config/model-settings/opencode.js.map +1 -0
  42. package/dist/agent-config/model-settings/pi.d.ts +2 -0
  43. package/dist/agent-config/model-settings/pi.js +38 -0
  44. package/dist/agent-config/model-settings/pi.js.map +1 -0
  45. package/dist/agent-config/model-settings/shared.d.ts +12 -0
  46. package/dist/agent-config/model-settings/shared.js +100 -0
  47. package/dist/agent-config/model-settings/shared.js.map +1 -0
  48. package/dist/agent-config/model-settings/types.d.ts +9 -0
  49. package/dist/agent-config/model-settings/types.js +2 -0
  50. package/dist/agent-config/model-settings/types.js.map +1 -0
  51. package/dist/agent-config/models.d.ts +9 -0
  52. package/dist/agent-config/models.js +40 -0
  53. package/dist/agent-config/models.js.map +1 -0
  54. package/dist/agent-config/seed.d.ts +15 -0
  55. package/dist/agent-config/seed.js +94 -0
  56. package/dist/agent-config/seed.js.map +1 -0
  57. package/dist/agent-config/service.d.ts +44 -0
  58. package/dist/agent-config/service.js +73 -0
  59. package/dist/agent-config/service.js.map +1 -0
  60. package/dist/agent-config/validate.d.ts +18 -0
  61. package/dist/agent-config/validate.js +82 -0
  62. package/dist/agent-config/validate.js.map +1 -0
  63. package/dist/application-update/bin-recovery.d.ts +5 -0
  64. package/dist/application-update/bin-recovery.js +96 -0
  65. package/dist/application-update/bin-recovery.js.map +1 -0
  66. package/dist/application-update/discovery.d.ts +23 -0
  67. package/dist/application-update/discovery.js +131 -0
  68. package/dist/application-update/discovery.js.map +1 -0
  69. package/dist/application-update/helper.d.ts +58 -0
  70. package/dist/application-update/helper.js +363 -0
  71. package/dist/application-update/helper.js.map +1 -0
  72. package/dist/application-update/launcher.d.ts +12 -0
  73. package/dist/application-update/launcher.js +61 -0
  74. package/dist/application-update/launcher.js.map +1 -0
  75. package/dist/application-update/lock.d.ts +4 -0
  76. package/dist/application-update/lock.js +70 -0
  77. package/dist/application-update/lock.js.map +1 -0
  78. package/dist/application-update/npm-process.d.ts +17 -0
  79. package/dist/application-update/npm-process.js +156 -0
  80. package/dist/application-update/npm-process.js.map +1 -0
  81. package/dist/application-update/runtime-layout.d.ts +20 -0
  82. package/dist/application-update/runtime-layout.js +91 -0
  83. package/dist/application-update/runtime-layout.js.map +1 -0
  84. package/dist/application-update/scoped-recovery.d.ts +32 -0
  85. package/dist/application-update/scoped-recovery.js +210 -0
  86. package/dist/application-update/scoped-recovery.js.map +1 -0
  87. package/dist/application-update/service.d.ts +86 -0
  88. package/dist/application-update/service.js +523 -0
  89. package/dist/application-update/service.js.map +1 -0
  90. package/dist/archive-on-merge-setting.d.ts +15 -0
  91. package/dist/archive-on-merge-setting.js +15 -0
  92. package/dist/archive-on-merge-setting.js.map +1 -0
  93. package/dist/artifacts/cli.d.ts +1 -0
  94. package/dist/artifacts/cli.js +54 -0
  95. package/dist/artifacts/cli.js.map +1 -0
  96. package/dist/artifacts/lifecycle.d.ts +4 -0
  97. package/dist/artifacts/lifecycle.js +42 -0
  98. package/dist/artifacts/lifecycle.js.map +1 -0
  99. package/dist/artifacts/reports-index.d.ts +46 -0
  100. package/dist/artifacts/reports-index.js +279 -0
  101. package/dist/artifacts/reports-index.js.map +1 -0
  102. package/dist/artifacts/reports-watch.d.ts +43 -0
  103. package/dist/artifacts/reports-watch.js +129 -0
  104. package/dist/artifacts/reports-watch.js.map +1 -0
  105. package/dist/artifacts/resolve.d.ts +18 -0
  106. package/dist/artifacts/resolve.js +129 -0
  107. package/dist/artifacts/resolve.js.map +1 -0
  108. package/dist/artifacts/store.d.ts +40 -0
  109. package/dist/artifacts/store.js +513 -0
  110. package/dist/artifacts/store.js.map +1 -0
  111. package/dist/automations/automation-cli.d.ts +61 -0
  112. package/dist/automations/automation-cli.js +519 -0
  113. package/dist/automations/automation-cli.js.map +1 -0
  114. package/dist/automations/builtin-skill.d.ts +7 -0
  115. package/dist/automations/builtin-skill.js +14 -0
  116. package/dist/automations/builtin-skill.js.map +1 -0
  117. package/dist/automations/coordinator.d.ts +53 -0
  118. package/dist/automations/coordinator.js +136 -0
  119. package/dist/automations/coordinator.js.map +1 -0
  120. package/dist/automations/github-baseline.d.ts +3 -0
  121. package/dist/automations/github-baseline.js +17 -0
  122. package/dist/automations/github-baseline.js.map +1 -0
  123. package/dist/automations/github-poller.d.ts +93 -0
  124. package/dist/automations/github-poller.js +303 -0
  125. package/dist/automations/github-poller.js.map +1 -0
  126. package/dist/automations/project-files.d.ts +6 -0
  127. package/dist/automations/project-files.js +43 -0
  128. package/dist/automations/project-files.js.map +1 -0
  129. package/dist/automations/prompts.d.ts +12 -0
  130. package/dist/automations/prompts.js +162 -0
  131. package/dist/automations/prompts.js.map +1 -0
  132. package/dist/automations/schedule-runner.d.ts +153 -0
  133. package/dist/automations/schedule-runner.js +529 -0
  134. package/dist/automations/schedule-runner.js.map +1 -0
  135. package/dist/automations/scheduler.d.ts +95 -0
  136. package/dist/automations/scheduler.js +462 -0
  137. package/dist/automations/scheduler.js.map +1 -0
  138. package/dist/automations/service.d.ts +793 -0
  139. package/dist/automations/service.js +444 -0
  140. package/dist/automations/service.js.map +1 -0
  141. package/dist/automations/store.d.ts +168 -0
  142. package/dist/automations/store.js +805 -0
  143. package/dist/automations/store.js.map +1 -0
  144. package/dist/automations/task-template.d.ts +59 -0
  145. package/dist/automations/task-template.js +285 -0
  146. package/dist/automations/task-template.js.map +1 -0
  147. package/dist/automations/tool-adapter.d.ts +6 -0
  148. package/dist/automations/tool-adapter.js +115 -0
  149. package/dist/automations/tool-adapter.js.map +1 -0
  150. package/dist/automations/types.d.ts +1 -0
  151. package/dist/automations/types.js +2 -0
  152. package/dist/automations/types.js.map +1 -0
  153. package/dist/autosave-cleanup.d.ts +26 -0
  154. package/dist/autosave-cleanup.js +87 -0
  155. package/dist/autosave-cleanup.js.map +1 -0
  156. package/dist/autosave-git.d.ts +23 -0
  157. package/dist/autosave-git.js +211 -0
  158. package/dist/autosave-git.js.map +1 -0
  159. package/dist/autosave-group.d.ts +8 -0
  160. package/dist/autosave-group.js +61 -0
  161. package/dist/autosave-group.js.map +1 -0
  162. package/dist/autosave-holders.d.ts +34 -0
  163. package/dist/autosave-holders.js +228 -0
  164. package/dist/autosave-holders.js.map +1 -0
  165. package/dist/autosave-windows.d.ts +25 -0
  166. package/dist/autosave-windows.js +170 -0
  167. package/dist/autosave-windows.js.map +1 -0
  168. package/dist/cez.d.ts +2 -0
  169. package/dist/cez.js +3 -0
  170. package/dist/cez.js.map +1 -0
  171. package/dist/cezarion.d.ts +2 -0
  172. package/dist/cezarion.js +3 -0
  173. package/dist/cezarion.js.map +1 -0
  174. package/dist/ci-wait/client.d.ts +28 -0
  175. package/dist/ci-wait/client.js +123 -0
  176. package/dist/ci-wait/client.js.map +1 -0
  177. package/dist/ci-wait/controller.d.ts +824 -0
  178. package/dist/ci-wait/controller.js +305 -0
  179. package/dist/ci-wait/controller.js.map +1 -0
  180. package/dist/ci-wait/errors.d.ts +35 -0
  181. package/dist/ci-wait/errors.js +273 -0
  182. package/dist/ci-wait/errors.js.map +1 -0
  183. package/dist/ci-wait/github.d.ts +105 -0
  184. package/dist/ci-wait/github.js +324 -0
  185. package/dist/ci-wait/github.js.map +1 -0
  186. package/dist/ci-wait/injection.d.ts +3 -0
  187. package/dist/ci-wait/injection.js +13 -0
  188. package/dist/ci-wait/injection.js.map +1 -0
  189. package/dist/ci-wait/mcp.d.ts +3 -0
  190. package/dist/ci-wait/mcp.js +30 -0
  191. package/dist/ci-wait/mcp.js.map +1 -0
  192. package/dist/ci-wait/merge-progress.d.ts +84 -0
  193. package/dist/ci-wait/merge-progress.js +50 -0
  194. package/dist/ci-wait/merge-progress.js.map +1 -0
  195. package/dist/ci-wait/progress.d.ts +56 -0
  196. package/dist/ci-wait/progress.js +100 -0
  197. package/dist/ci-wait/progress.js.map +1 -0
  198. package/dist/ci-wait/resources.d.ts +9 -0
  199. package/dist/ci-wait/resources.js +46 -0
  200. package/dist/ci-wait/resources.js.map +1 -0
  201. package/dist/ci-wait/supervisor.d.ts +47 -0
  202. package/dist/ci-wait/supervisor.js +334 -0
  203. package/dist/ci-wait/supervisor.js.map +1 -0
  204. package/dist/ci-wait/text.d.ts +2 -0
  205. package/dist/ci-wait/text.js +5 -0
  206. package/dist/ci-wait/text.js.map +1 -0
  207. package/dist/ci-wait/tools.d.ts +845 -0
  208. package/dist/ci-wait/tools.js +232 -0
  209. package/dist/ci-wait/tools.js.map +1 -0
  210. package/dist/cli-dispatch.d.ts +33 -0
  211. package/dist/cli-dispatch.js +239 -0
  212. package/dist/cli-dispatch.js.map +1 -0
  213. package/dist/config.d.ts +117 -0
  214. package/dist/config.js +343 -0
  215. package/dist/config.js.map +1 -0
  216. package/dist/contract/active-provider.d.ts +12 -0
  217. package/dist/contract/activity.d.ts +1478 -0
  218. package/dist/contract/agent-config.d.ts +160 -0
  219. package/dist/contract/agent-profiles.d.ts +369 -0
  220. package/dist/contract/application-update.d.ts +32 -0
  221. package/dist/contract/artifacts.d.ts +100 -0
  222. package/dist/contract/ask-schema.d.ts +50 -0
  223. package/dist/contract/ask.d.ts +11 -0
  224. package/dist/contract/attachments.d.ts +35 -0
  225. package/dist/contract/attention.d.ts +99 -0
  226. package/dist/contract/automation-requests.d.ts +314 -0
  227. package/dist/contract/automation-schedule.d.ts +89 -0
  228. package/dist/contract/automation-storage.d.ts +518 -0
  229. package/dist/contract/automations.d.ts +1560 -0
  230. package/dist/contract/ci-wait.d.ts +281 -0
  231. package/dist/contract/config-requests.d.ts +36 -0
  232. package/dist/contract/control-locations.d.ts +10 -0
  233. package/dist/contract/conversations.d.ts +415 -0
  234. package/dist/contract/defined.d.ts +8 -0
  235. package/dist/contract/delegation.d.ts +2168 -0
  236. package/dist/contract/discovery.d.ts +228 -0
  237. package/dist/contract/effort.d.ts +18 -0
  238. package/dist/contract/events.d.ts +324 -0
  239. package/dist/contract/github-requests.d.ts +26 -0
  240. package/dist/contract/github.d.ts +732 -0
  241. package/dist/contract/handoff.d.ts +43 -0
  242. package/dist/contract/health.d.ts +128 -0
  243. package/dist/contract/home-recovery.d.ts +71 -0
  244. package/dist/contract/image-path.d.ts +6 -0
  245. package/dist/contract/index.d.ts +68 -0
  246. package/dist/contract/index.js +6709 -0
  247. package/dist/contract/live-coordination.d.ts +164 -0
  248. package/dist/contract/live-limits.d.ts +8 -0
  249. package/dist/contract/live.d.ts +123 -0
  250. package/dist/contract/pending-ask.d.ts +58 -0
  251. package/dist/contract/per-runner-optional-strings.d.ts +10 -0
  252. package/dist/contract/permissions.d.ts +54 -0
  253. package/dist/contract/preview.d.ts +568 -0
  254. package/dist/contract/project-limits.d.ts +35 -0
  255. package/dist/contract/projects.d.ts +716 -0
  256. package/dist/contract/provider-requests.d.ts +77 -0
  257. package/dist/contract/query-requests.d.ts +52 -0
  258. package/dist/contract/repo-requests.d.ts +12 -0
  259. package/dist/contract/repo.d.ts +515 -0
  260. package/dist/contract/report-title.d.ts +3 -0
  261. package/dist/contract/reports.d.ts +101 -0
  262. package/dist/contract/run-labels.d.ts +8 -0
  263. package/dist/contract/run-limits.d.ts +8 -0
  264. package/dist/contract/run-predicates.d.ts +87 -0
  265. package/dist/contract/run-requests.d.ts +33 -0
  266. package/dist/contract/run-search.d.ts +193 -0
  267. package/dist/contract/runs.d.ts +7108 -0
  268. package/dist/contract/scheduled-tasks.d.ts +188 -0
  269. package/dist/contract/self-update.d.ts +255 -0
  270. package/dist/contract/skill-sources.d.ts +125 -0
  271. package/dist/contract/skills.d.ts +56 -0
  272. package/dist/contract/task-options.d.ts +18 -0
  273. package/dist/contract/team-skill-ref.d.ts +10 -0
  274. package/dist/contract/tool-display.d.ts +25 -0
  275. package/dist/contract/ui-state-requests.d.ts +60 -0
  276. package/dist/contract/version.d.ts +3 -0
  277. package/dist/contract/voice.d.ts +213 -0
  278. package/dist/contract/waits.d.ts +1996 -0
  279. package/dist/contract/workflow-file.d.ts +37 -0
  280. package/dist/contract/workflow-requests.d.ts +7 -0
  281. package/dist/contract/workflows.d.ts +250 -0
  282. package/dist/contract/workspace-events.d.ts +410 -0
  283. package/dist/contract/workspace.d.ts +631 -0
  284. package/dist/contract/zoned-time.d.ts +26 -0
  285. package/dist/core/agent-env.d.ts +34 -0
  286. package/dist/core/agent-env.js +411 -0
  287. package/dist/core/agent-env.js.map +1 -0
  288. package/dist/core/agent-model-policy.d.ts +11 -0
  289. package/dist/core/agent-model-policy.js +38 -0
  290. package/dist/core/agent-model-policy.js.map +1 -0
  291. package/dist/core/agent-profiles.d.ts +50 -0
  292. package/dist/core/agent-profiles.js +105 -0
  293. package/dist/core/agent-profiles.js.map +1 -0
  294. package/dist/core/agent-runner.d.ts +425 -0
  295. package/dist/core/agent-runner.js +98 -0
  296. package/dist/core/agent-runner.js.map +1 -0
  297. package/dist/core/ask.d.ts +26 -0
  298. package/dist/core/ask.js +35 -0
  299. package/dist/core/ask.js.map +1 -0
  300. package/dist/core/backend-detect.d.ts +18 -0
  301. package/dist/core/backend-detect.js +216 -0
  302. package/dist/core/backend-detect.js.map +1 -0
  303. package/dist/core/claude-cli-runner.d.ts +85 -0
  304. package/dist/core/claude-cli-runner.js +899 -0
  305. package/dist/core/claude-cli-runner.js.map +1 -0
  306. package/dist/core/claude-executable.d.ts +2 -0
  307. package/dist/core/claude-executable.js +15 -0
  308. package/dist/core/claude-executable.js.map +1 -0
  309. package/dist/core/claude-model-catalog.d.ts +16 -0
  310. package/dist/core/claude-model-catalog.js +198 -0
  311. package/dist/core/claude-model-catalog.js.map +1 -0
  312. package/dist/core/claude-stream.d.ts +38 -0
  313. package/dist/core/claude-stream.js +77 -0
  314. package/dist/core/claude-stream.js.map +1 -0
  315. package/dist/core/claude-ui-mapper.d.ts +88 -0
  316. package/dist/core/claude-ui-mapper.js +851 -0
  317. package/dist/core/claude-ui-mapper.js.map +1 -0
  318. package/dist/core/codex-app-server-runner.d.ts +76 -0
  319. package/dist/core/codex-app-server-runner.js +1271 -0
  320. package/dist/core/codex-app-server-runner.js.map +1 -0
  321. package/dist/core/codex-app-server-transport.d.ts +52 -0
  322. package/dist/core/codex-app-server-transport.js +200 -0
  323. package/dist/core/codex-app-server-transport.js.map +1 -0
  324. package/dist/core/codex-approvals.d.ts +12 -0
  325. package/dist/core/codex-approvals.js +180 -0
  326. package/dist/core/codex-approvals.js.map +1 -0
  327. package/dist/core/codex-hook-mapper.d.ts +15 -0
  328. package/dist/core/codex-hook-mapper.js +73 -0
  329. package/dist/core/codex-hook-mapper.js.map +1 -0
  330. package/dist/core/codex-model-catalog.d.ts +10 -0
  331. package/dist/core/codex-model-catalog.js +110 -0
  332. package/dist/core/codex-model-catalog.js.map +1 -0
  333. package/dist/core/codex-native-frames.d.ts +35 -0
  334. package/dist/core/codex-native-frames.js +80 -0
  335. package/dist/core/codex-native-frames.js.map +1 -0
  336. package/dist/core/codex-permissions.d.ts +6 -0
  337. package/dist/core/codex-permissions.js +27 -0
  338. package/dist/core/codex-permissions.js.map +1 -0
  339. package/dist/core/codex-stream-error.d.ts +2 -0
  340. package/dist/core/codex-stream-error.js +12 -0
  341. package/dist/core/codex-stream-error.js.map +1 -0
  342. package/dist/core/codex-turn-outcome.d.ts +10 -0
  343. package/dist/core/codex-turn-outcome.js +35 -0
  344. package/dist/core/codex-turn-outcome.js.map +1 -0
  345. package/dist/core/codex-ui-mapper-state.d.ts +84 -0
  346. package/dist/core/codex-ui-mapper-state.js +8 -0
  347. package/dist/core/codex-ui-mapper-state.js.map +1 -0
  348. package/dist/core/codex-ui-mapper.d.ts +44 -0
  349. package/dist/core/codex-ui-mapper.js +799 -0
  350. package/dist/core/codex-ui-mapper.js.map +1 -0
  351. package/dist/core/cursor-cli-flags.d.ts +19 -0
  352. package/dist/core/cursor-cli-flags.js +47 -0
  353. package/dist/core/cursor-cli-flags.js.map +1 -0
  354. package/dist/core/cursor-config-options.d.ts +18 -0
  355. package/dist/core/cursor-config-options.js +31 -0
  356. package/dist/core/cursor-config-options.js.map +1 -0
  357. package/dist/core/cursor-model-catalog.d.ts +50 -0
  358. package/dist/core/cursor-model-catalog.js +306 -0
  359. package/dist/core/cursor-model-catalog.js.map +1 -0
  360. package/dist/core/cursor-print-capabilities.d.ts +14 -0
  361. package/dist/core/cursor-print-capabilities.js +169 -0
  362. package/dist/core/cursor-print-capabilities.js.map +1 -0
  363. package/dist/core/cursor-print-process.d.ts +31 -0
  364. package/dist/core/cursor-print-process.js +117 -0
  365. package/dist/core/cursor-print-process.js.map +1 -0
  366. package/dist/core/cursor-print-runner.d.ts +43 -0
  367. package/dist/core/cursor-print-runner.js +574 -0
  368. package/dist/core/cursor-print-runner.js.map +1 -0
  369. package/dist/core/cursor-print-tool-catalog.d.ts +3 -0
  370. package/dist/core/cursor-print-tool-catalog.js +13 -0
  371. package/dist/core/cursor-print-tool-catalog.js.map +1 -0
  372. package/dist/core/cursor-print-ui-mapper.d.ts +47 -0
  373. package/dist/core/cursor-print-ui-mapper.js +574 -0
  374. package/dist/core/cursor-print-ui-mapper.js.map +1 -0
  375. package/dist/core/cursor-provider-error.d.ts +9 -0
  376. package/dist/core/cursor-provider-error.js +15 -0
  377. package/dist/core/cursor-provider-error.js.map +1 -0
  378. package/dist/core/cursor-runner.d.ts +46 -0
  379. package/dist/core/cursor-runner.js +144 -0
  380. package/dist/core/cursor-runner.js.map +1 -0
  381. package/dist/core/defined.d.ts +1 -0
  382. package/dist/core/defined.js +2 -0
  383. package/dist/core/defined.js.map +1 -0
  384. package/dist/core/disclaim-spawn.d.ts +11 -0
  385. package/dist/core/disclaim-spawn.js +60 -0
  386. package/dist/core/disclaim-spawn.js.map +1 -0
  387. package/dist/core/edit-write-key.d.ts +2 -0
  388. package/dist/core/edit-write-key.js +6 -0
  389. package/dist/core/edit-write-key.js.map +1 -0
  390. package/dist/core/hook-items.d.ts +14 -0
  391. package/dist/core/hook-items.js +13 -0
  392. package/dist/core/hook-items.js.map +1 -0
  393. package/dist/core/host-model-catalog.d.ts +7 -0
  394. package/dist/core/host-model-catalog.js +21 -0
  395. package/dist/core/host-model-catalog.js.map +1 -0
  396. package/dist/core/input-submissions.d.ts +14 -0
  397. package/dist/core/input-submissions.js +26 -0
  398. package/dist/core/input-submissions.js.map +1 -0
  399. package/dist/core/managed-session.d.ts +6 -0
  400. package/dist/core/managed-session.js +116 -0
  401. package/dist/core/managed-session.js.map +1 -0
  402. package/dist/core/model-discovery-options.d.ts +8 -0
  403. package/dist/core/model-discovery-options.js +2 -0
  404. package/dist/core/model-discovery-options.js.map +1 -0
  405. package/dist/core/model-identity.d.ts +108 -0
  406. package/dist/core/model-identity.js +137 -0
  407. package/dist/core/model-identity.js.map +1 -0
  408. package/dist/core/model-presets.d.ts +10 -0
  409. package/dist/core/model-presets.js +77 -0
  410. package/dist/core/model-presets.js.map +1 -0
  411. package/dist/core/model-probe-teardown.d.ts +4 -0
  412. package/dist/core/model-probe-teardown.js +20 -0
  413. package/dist/core/model-probe-teardown.js.map +1 -0
  414. package/dist/core/ndjson.d.ts +6 -0
  415. package/dist/core/ndjson.js +23 -0
  416. package/dist/core/ndjson.js.map +1 -0
  417. package/dist/core/omp-model-catalog.d.ts +39 -0
  418. package/dist/core/omp-model-catalog.js +183 -0
  419. package/dist/core/omp-model-catalog.js.map +1 -0
  420. package/dist/core/omp-runner.d.ts +86 -0
  421. package/dist/core/omp-runner.js +818 -0
  422. package/dist/core/omp-runner.js.map +1 -0
  423. package/dist/core/omp-subagent-rows.d.ts +21 -0
  424. package/dist/core/omp-subagent-rows.js +99 -0
  425. package/dist/core/omp-subagent-rows.js.map +1 -0
  426. package/dist/core/omp-ui-mapper.d.ts +112 -0
  427. package/dist/core/omp-ui-mapper.js +807 -0
  428. package/dist/core/omp-ui-mapper.js.map +1 -0
  429. package/dist/core/opencode-model-catalog.d.ts +27 -0
  430. package/dist/core/opencode-model-catalog.js +189 -0
  431. package/dist/core/opencode-model-catalog.js.map +1 -0
  432. package/dist/core/opencode-permissions.d.ts +52 -0
  433. package/dist/core/opencode-permissions.js +101 -0
  434. package/dist/core/opencode-permissions.js.map +1 -0
  435. package/dist/core/opencode-runtime-config.d.ts +9 -0
  436. package/dist/core/opencode-runtime-config.js +26 -0
  437. package/dist/core/opencode-runtime-config.js.map +1 -0
  438. package/dist/core/opencode-server-runner.d.ts +75 -0
  439. package/dist/core/opencode-server-runner.js +1690 -0
  440. package/dist/core/opencode-server-runner.js.map +1 -0
  441. package/dist/core/opencode-session-error.d.ts +19 -0
  442. package/dist/core/opencode-session-error.js +42 -0
  443. package/dist/core/opencode-session-error.js.map +1 -0
  444. package/dist/core/opencode-task-scope.d.ts +9 -0
  445. package/dist/core/opencode-task-scope.js +19 -0
  446. package/dist/core/opencode-task-scope.js.map +1 -0
  447. package/dist/core/opencode-ui-mapper-state.d.ts +82 -0
  448. package/dist/core/opencode-ui-mapper-state.js +7 -0
  449. package/dist/core/opencode-ui-mapper-state.js.map +1 -0
  450. package/dist/core/opencode-ui-mapper.d.ts +59 -0
  451. package/dist/core/opencode-ui-mapper.js +724 -0
  452. package/dist/core/opencode-ui-mapper.js.map +1 -0
  453. package/dist/core/opencode-usage.d.ts +32 -0
  454. package/dist/core/opencode-usage.js +105 -0
  455. package/dist/core/opencode-usage.js.map +1 -0
  456. package/dist/core/pi-model-catalog.d.ts +34 -0
  457. package/dist/core/pi-model-catalog.js +247 -0
  458. package/dist/core/pi-model-catalog.js.map +1 -0
  459. package/dist/core/pi-rpc-turn.d.ts +179 -0
  460. package/dist/core/pi-rpc-turn.js +370 -0
  461. package/dist/core/pi-rpc-turn.js.map +1 -0
  462. package/dist/core/pi-rpc-wire.d.ts +31 -0
  463. package/dist/core/pi-rpc-wire.js +88 -0
  464. package/dist/core/pi-rpc-wire.js.map +1 -0
  465. package/dist/core/pi-runner.d.ts +58 -0
  466. package/dist/core/pi-runner.js +587 -0
  467. package/dist/core/pi-runner.js.map +1 -0
  468. package/dist/core/pi-ui-mapper.d.ts +52 -0
  469. package/dist/core/pi-ui-mapper.js +408 -0
  470. package/dist/core/pi-ui-mapper.js.map +1 -0
  471. package/dist/core/process-usage.d.ts +74 -0
  472. package/dist/core/process-usage.js +219 -0
  473. package/dist/core/process-usage.js.map +1 -0
  474. package/dist/core/product-env.d.ts +21 -0
  475. package/dist/core/product-env.js +38 -0
  476. package/dist/core/product-env.js.map +1 -0
  477. package/dist/core/provider-auth.d.ts +168 -0
  478. package/dist/core/provider-auth.js +661 -0
  479. package/dist/core/provider-auth.js.map +1 -0
  480. package/dist/core/provider-availability.d.ts +3 -0
  481. package/dist/core/provider-availability.js +14 -0
  482. package/dist/core/provider-availability.js.map +1 -0
  483. package/dist/core/runner-factory.d.ts +11 -0
  484. package/dist/core/runner-factory.js +36 -0
  485. package/dist/core/runner-factory.js.map +1 -0
  486. package/dist/core/runner-facts.d.ts +135 -0
  487. package/dist/core/runner-facts.js +59 -0
  488. package/dist/core/runner-facts.js.map +1 -0
  489. package/dist/core/runner-model-catalog.d.ts +34 -0
  490. package/dist/core/runner-model-catalog.js +109 -0
  491. package/dist/core/runner-model-catalog.js.map +1 -0
  492. package/dist/core/runner-runtime.d.ts +40 -0
  493. package/dist/core/runner-runtime.js +88 -0
  494. package/dist/core/runner-runtime.js.map +1 -0
  495. package/dist/core/runner-stderr.d.ts +2 -0
  496. package/dist/core/runner-stderr.js +20 -0
  497. package/dist/core/runner-stderr.js.map +1 -0
  498. package/dist/core/runner-tool-grants.d.ts +19 -0
  499. package/dist/core/runner-tool-grants.js +54 -0
  500. package/dist/core/runner-tool-grants.js.map +1 -0
  501. package/dist/core/secret-redaction.d.ts +20 -0
  502. package/dist/core/secret-redaction.js +95 -0
  503. package/dist/core/secret-redaction.js.map +1 -0
  504. package/dist/core/session-process.d.ts +43 -0
  505. package/dist/core/session-process.js +363 -0
  506. package/dist/core/session-process.js.map +1 -0
  507. package/dist/core/shell-env.d.ts +17 -0
  508. package/dist/core/shell-env.js +51 -0
  509. package/dist/core/shell-env.js.map +1 -0
  510. package/dist/core/ui-events.d.ts +356 -0
  511. package/dist/core/ui-events.js +13 -0
  512. package/dist/core/ui-events.js.map +1 -0
  513. package/dist/core/usage-limit.d.ts +42 -0
  514. package/dist/core/usage-limit.js +152 -0
  515. package/dist/core/usage-limit.js.map +1 -0
  516. package/dist/core/usage.d.ts +11 -0
  517. package/dist/core/usage.js +15 -0
  518. package/dist/core/usage.js.map +1 -0
  519. package/dist/core/v1-text-coalescer.d.ts +36 -0
  520. package/dist/core/v1-text-coalescer.js +72 -0
  521. package/dist/core/v1-text-coalescer.js.map +1 -0
  522. package/dist/data-gitignore.d.ts +6 -0
  523. package/dist/data-gitignore.js +80 -0
  524. package/dist/data-gitignore.js.map +1 -0
  525. package/dist/delegation/capacity.d.ts +15 -0
  526. package/dist/delegation/capacity.js +30 -0
  527. package/dist/delegation/capacity.js.map +1 -0
  528. package/dist/delegation/cli.d.ts +5 -0
  529. package/dist/delegation/cli.js +572 -0
  530. package/dist/delegation/cli.js.map +1 -0
  531. package/dist/delegation/context.d.ts +40 -0
  532. package/dist/delegation/context.js +398 -0
  533. package/dist/delegation/context.js.map +1 -0
  534. package/dist/delegation/conversation-send.d.ts +64 -0
  535. package/dist/delegation/conversation-send.js +74 -0
  536. package/dist/delegation/conversation-send.js.map +1 -0
  537. package/dist/delegation/conversations.d.ts +2186 -0
  538. package/dist/delegation/conversations.js +285 -0
  539. package/dist/delegation/conversations.js.map +1 -0
  540. package/dist/delegation/credentials.d.ts +21 -0
  541. package/dist/delegation/credentials.js +66 -0
  542. package/dist/delegation/credentials.js.map +1 -0
  543. package/dist/delegation/destroy-observation.d.ts +42 -0
  544. package/dist/delegation/destroy-observation.js +115 -0
  545. package/dist/delegation/destroy-observation.js.map +1 -0
  546. package/dist/delegation/effort.d.ts +1 -0
  547. package/dist/delegation/effort.js +11 -0
  548. package/dist/delegation/effort.js.map +1 -0
  549. package/dist/delegation/execution-identity.d.ts +257 -0
  550. package/dist/delegation/execution-identity.js +253 -0
  551. package/dist/delegation/execution-identity.js.map +1 -0
  552. package/dist/delegation/execution-settings.d.ts +11 -0
  553. package/dist/delegation/execution-settings.js +65 -0
  554. package/dist/delegation/execution-settings.js.map +1 -0
  555. package/dist/delegation/idle-test-app.d.ts +4 -0
  556. package/dist/delegation/idle-test-app.js +186 -0
  557. package/dist/delegation/idle-test-app.js.map +1 -0
  558. package/dist/delegation/input.d.ts +12 -0
  559. package/dist/delegation/input.js +50 -0
  560. package/dist/delegation/input.js.map +1 -0
  561. package/dist/delegation/park-notice.d.ts +45 -0
  562. package/dist/delegation/park-notice.js +81 -0
  563. package/dist/delegation/park-notice.js.map +1 -0
  564. package/dist/delegation/policy.d.ts +27 -0
  565. package/dist/delegation/policy.js +110 -0
  566. package/dist/delegation/policy.js.map +1 -0
  567. package/dist/delegation/process-liveness.d.ts +98 -0
  568. package/dist/delegation/process-liveness.js +213 -0
  569. package/dist/delegation/process-liveness.js.map +1 -0
  570. package/dist/delegation/provision.d.ts +36 -0
  571. package/dist/delegation/provision.js +218 -0
  572. package/dist/delegation/provision.js.map +1 -0
  573. package/dist/delegation/questions.d.ts +24 -0
  574. package/dist/delegation/questions.js +56 -0
  575. package/dist/delegation/questions.js.map +1 -0
  576. package/dist/delegation/readiness.d.ts +13 -0
  577. package/dist/delegation/readiness.js +19 -0
  578. package/dist/delegation/readiness.js.map +1 -0
  579. package/dist/delegation/results.d.ts +13 -0
  580. package/dist/delegation/results.js +153 -0
  581. package/dist/delegation/results.js.map +1 -0
  582. package/dist/delegation/retry-backoff.d.ts +31 -0
  583. package/dist/delegation/retry-backoff.js +26 -0
  584. package/dist/delegation/retry-backoff.js.map +1 -0
  585. package/dist/delegation/routes.d.ts +1017 -0
  586. package/dist/delegation/routes.js +85 -0
  587. package/dist/delegation/routes.js.map +1 -0
  588. package/dist/delegation/scratch-cleanup.d.ts +33 -0
  589. package/dist/delegation/scratch-cleanup.js +155 -0
  590. package/dist/delegation/scratch-cleanup.js.map +1 -0
  591. package/dist/delegation/service.d.ts +264 -0
  592. package/dist/delegation/service.js +807 -0
  593. package/dist/delegation/service.js.map +1 -0
  594. package/dist/delegation/task-discovery.d.ts +6 -0
  595. package/dist/delegation/task-discovery.js +27 -0
  596. package/dist/delegation/task-discovery.js.map +1 -0
  597. package/dist/delegation/transport.d.ts +995 -0
  598. package/dist/delegation/transport.js +22 -0
  599. package/dist/delegation/transport.js.map +1 -0
  600. package/dist/delegation/wait.d.ts +7 -0
  601. package/dist/delegation/wait.js +44 -0
  602. package/dist/delegation/wait.js.map +1 -0
  603. package/dist/delegation/windows-test-app.d.ts +5 -0
  604. package/dist/delegation/windows-test-app.js +64 -0
  605. package/dist/delegation/windows-test-app.js.map +1 -0
  606. package/dist/delegation/windows-workspace-identity.d.ts +3 -0
  607. package/dist/delegation/windows-workspace-identity.js +23 -0
  608. package/dist/delegation/windows-workspace-identity.js.map +1 -0
  609. package/dist/delegation/worker-cleanup.d.ts +53 -0
  610. package/dist/delegation/worker-cleanup.js +330 -0
  611. package/dist/delegation/worker-cleanup.js.map +1 -0
  612. package/dist/delegation/workspace.d.ts +40 -0
  613. package/dist/delegation/workspace.js +592 -0
  614. package/dist/delegation/workspace.js.map +1 -0
  615. package/dist/detached-process.d.ts +134 -0
  616. package/dist/detached-process.js +460 -0
  617. package/dist/detached-process.js.map +1 -0
  618. package/dist/discovery/catalog.d.ts +16 -0
  619. package/dist/discovery/catalog.js +31 -0
  620. package/dist/discovery/catalog.js.map +1 -0
  621. package/dist/discovery/cli.d.ts +8 -0
  622. package/dist/discovery/cli.js +122 -0
  623. package/dist/discovery/cli.js.map +1 -0
  624. package/dist/git-command.d.ts +7 -0
  625. package/dist/git-command.js +8 -0
  626. package/dist/git-command.js.map +1 -0
  627. package/dist/git-diff-base.d.ts +41 -0
  628. package/dist/git-diff-base.js +116 -0
  629. package/dist/git-diff-base.js.map +1 -0
  630. package/dist/git-index-copy.d.ts +4 -0
  631. package/dist/git-index-copy.js +10 -0
  632. package/dist/git-index-copy.js.map +1 -0
  633. package/dist/git-private-index.d.ts +11 -0
  634. package/dist/git-private-index.js +51 -0
  635. package/dist/git-private-index.js.map +1 -0
  636. package/dist/git-refs.d.ts +11 -0
  637. package/dist/git-refs.js +14 -0
  638. package/dist/git-refs.js.map +1 -0
  639. package/dist/git-worktree-lock-helper.d.ts +7 -0
  640. package/dist/git-worktree-lock-helper.js +178 -0
  641. package/dist/git-worktree-lock-helper.js.map +1 -0
  642. package/dist/git-worktree-lock.d.ts +17 -0
  643. package/dist/git-worktree-lock.js +90 -0
  644. package/dist/git-worktree-lock.js.map +1 -0
  645. package/dist/git-worktree-release.d.ts +20 -0
  646. package/dist/git-worktree-release.js +27 -0
  647. package/dist/git-worktree-release.js.map +1 -0
  648. package/dist/git-worktree.d.ts +148 -0
  649. package/dist/git-worktree.js +858 -0
  650. package/dist/git-worktree.js.map +1 -0
  651. package/dist/handoff.d.ts +72 -0
  652. package/dist/handoff.js +213 -0
  653. package/dist/handoff.js.map +1 -0
  654. package/dist/headless-run.d.ts +48 -0
  655. package/dist/headless-run.js +158 -0
  656. package/dist/headless-run.js.map +1 -0
  657. package/dist/home/boundary.d.ts +5 -0
  658. package/dist/home/boundary.js +76 -0
  659. package/dist/home/boundary.js.map +1 -0
  660. package/dist/home/changes.d.ts +3 -0
  661. package/dist/home/changes.js +11 -0
  662. package/dist/home/changes.js.map +1 -0
  663. package/dist/home/command.d.ts +9 -0
  664. package/dist/home/command.js +37 -0
  665. package/dist/home/command.js.map +1 -0
  666. package/dist/home/deprecation.d.ts +9 -0
  667. package/dist/home/deprecation.js +17 -0
  668. package/dist/home/deprecation.js.map +1 -0
  669. package/dist/home/display.d.ts +4 -0
  670. package/dist/home/display.js +11 -0
  671. package/dist/home/display.js.map +1 -0
  672. package/dist/home/entry-authorization.d.ts +17 -0
  673. package/dist/home/entry-authorization.js +39 -0
  674. package/dist/home/entry-authorization.js.map +1 -0
  675. package/dist/home/entry.d.ts +16 -0
  676. package/dist/home/entry.js +96 -0
  677. package/dist/home/entry.js.map +1 -0
  678. package/dist/home/file-location.d.ts +14 -0
  679. package/dist/home/file-location.js +24 -0
  680. package/dist/home/file-location.js.map +1 -0
  681. package/dist/home/home.d.ts +42 -0
  682. package/dist/home/home.js +70 -0
  683. package/dist/home/home.js.map +1 -0
  684. package/dist/home/identity.d.ts +22 -0
  685. package/dist/home/identity.js +25 -0
  686. package/dist/home/identity.js.map +1 -0
  687. package/dist/home/install-marker.d.ts +27 -0
  688. package/dist/home/install-marker.js +78 -0
  689. package/dist/home/install-marker.js.map +1 -0
  690. package/dist/home/kind-roots.d.ts +10 -0
  691. package/dist/home/kind-roots.js +36 -0
  692. package/dist/home/kind-roots.js.map +1 -0
  693. package/dist/home/leases.d.ts +14 -0
  694. package/dist/home/leases.js +55 -0
  695. package/dist/home/leases.js.map +1 -0
  696. package/dist/home/legacy-account-paths.d.ts +4 -0
  697. package/dist/home/legacy-account-paths.js +41 -0
  698. package/dist/home/legacy-account-paths.js.map +1 -0
  699. package/dist/home/legacy-merge.d.ts +3 -0
  700. package/dist/home/legacy-merge.js +45 -0
  701. package/dist/home/legacy-merge.js.map +1 -0
  702. package/dist/home/legacy-recovery.d.ts +5 -0
  703. package/dist/home/legacy-recovery.js +154 -0
  704. package/dist/home/legacy-recovery.js.map +1 -0
  705. package/dist/home/legacy-source.d.ts +15 -0
  706. package/dist/home/legacy-source.js +57 -0
  707. package/dist/home/legacy-source.js.map +1 -0
  708. package/dist/home/migrate.d.ts +19 -0
  709. package/dist/home/migrate.js +322 -0
  710. package/dist/home/migrate.js.map +1 -0
  711. package/dist/home/migration-account-source.d.ts +2 -0
  712. package/dist/home/migration-account-source.js +17 -0
  713. package/dist/home/migration-account-source.js.map +1 -0
  714. package/dist/home/migration-accounts.d.ts +23 -0
  715. package/dist/home/migration-accounts.js +174 -0
  716. package/dist/home/migration-accounts.js.map +1 -0
  717. package/dist/home/migration-boot.d.ts +23 -0
  718. package/dist/home/migration-boot.js +84 -0
  719. package/dist/home/migration-boot.js.map +1 -0
  720. package/dist/home/migration-claim.d.ts +4 -0
  721. package/dist/home/migration-claim.js +69 -0
  722. package/dist/home/migration-claim.js.map +1 -0
  723. package/dist/home/migration-cli.d.ts +3 -0
  724. package/dist/home/migration-cli.js +64 -0
  725. package/dist/home/migration-cli.js.map +1 -0
  726. package/dist/home/migration-files.d.ts +14 -0
  727. package/dist/home/migration-files.js +192 -0
  728. package/dist/home/migration-files.js.map +1 -0
  729. package/dist/home/migration-guard.d.ts +2 -0
  730. package/dist/home/migration-guard.js +20 -0
  731. package/dist/home/migration-guard.js.map +1 -0
  732. package/dist/home/migration-plan.d.ts +20 -0
  733. package/dist/home/migration-plan.js +71 -0
  734. package/dist/home/migration-plan.js.map +1 -0
  735. package/dist/home/migration-record.d.ts +79 -0
  736. package/dist/home/migration-record.js +39 -0
  737. package/dist/home/migration-record.js.map +1 -0
  738. package/dist/home/private-files.d.ts +13 -0
  739. package/dist/home/private-files.js +113 -0
  740. package/dist/home/private-files.js.map +1 -0
  741. package/dist/home/process-identity.d.ts +2 -0
  742. package/dist/home/process-identity.js +8 -0
  743. package/dist/home/process-identity.js.map +1 -0
  744. package/dist/home/protected-roots.d.ts +25 -0
  745. package/dist/home/protected-roots.js +91 -0
  746. package/dist/home/protected-roots.js.map +1 -0
  747. package/dist/home/recovery-watch.d.ts +3 -0
  748. package/dist/home/recovery-watch.js +75 -0
  749. package/dist/home/recovery-watch.js.map +1 -0
  750. package/dist/home/recovery.d.ts +10 -0
  751. package/dist/home/recovery.js +94 -0
  752. package/dist/home/recovery.js.map +1 -0
  753. package/dist/home/registry-content.d.ts +2 -0
  754. package/dist/home/registry-content.js +17 -0
  755. package/dist/home/registry-content.js.map +1 -0
  756. package/dist/home/reset-detection.d.ts +5 -0
  757. package/dist/home/reset-detection.js +22 -0
  758. package/dist/home/reset-detection.js.map +1 -0
  759. package/dist/home/resolve.d.ts +10 -0
  760. package/dist/home/resolve.js +28 -0
  761. package/dist/home/resolve.js.map +1 -0
  762. package/dist/home/store.d.ts +48 -0
  763. package/dist/home/store.js +324 -0
  764. package/dist/home/store.js.map +1 -0
  765. package/dist/home/switch.d.ts +2 -0
  766. package/dist/home/switch.js +3 -0
  767. package/dist/home/switch.js.map +1 -0
  768. package/dist/home/version-log.d.ts +48 -0
  769. package/dist/home/version-log.js +216 -0
  770. package/dist/home/version-log.js.map +1 -0
  771. package/dist/home/write-lock.d.ts +6 -0
  772. package/dist/home/write-lock.js +96 -0
  773. package/dist/home/write-lock.js.map +1 -0
  774. package/dist/hsq.d.ts +2 -0
  775. package/dist/hsq.js +3 -0
  776. package/dist/hsq.js.map +1 -0
  777. package/dist/index.d.ts +2 -0
  778. package/dist/index.js +123 -0
  779. package/dist/index.js.map +1 -0
  780. package/dist/install-as-command.d.ts +32 -0
  781. package/dist/install-as-command.js +55 -0
  782. package/dist/install-as-command.js.map +1 -0
  783. package/dist/jobs/cli.d.ts +2 -0
  784. package/dist/jobs/cli.js +53 -0
  785. package/dist/jobs/cli.js.map +1 -0
  786. package/dist/jobs/command.d.ts +9 -0
  787. package/dist/jobs/command.js +19 -0
  788. package/dist/jobs/command.js.map +1 -0
  789. package/dist/jobs/job.d.ts +77 -0
  790. package/dist/jobs/job.js +252 -0
  791. package/dist/jobs/job.js.map +1 -0
  792. package/dist/merge-observations.d.ts +13 -0
  793. package/dist/merge-observations.js +55 -0
  794. package/dist/merge-observations.js.map +1 -0
  795. package/dist/merged-streams.d.ts +13 -0
  796. package/dist/merged-streams.js +33 -0
  797. package/dist/merged-streams.js.map +1 -0
  798. package/dist/open-url.d.ts +2 -0
  799. package/dist/open-url.js +10 -0
  800. package/dist/open-url.js.map +1 -0
  801. package/dist/pack-check.d.ts +17 -0
  802. package/dist/pack-check.js +27 -0
  803. package/dist/pack-check.js.map +1 -0
  804. package/dist/paths.d.ts +118 -0
  805. package/dist/paths.js +192 -0
  806. package/dist/paths.js.map +1 -0
  807. package/dist/planner.d.ts +30 -0
  808. package/dist/planner.js +270 -0
  809. package/dist/planner.js.map +1 -0
  810. package/dist/preview/agent-address.d.ts +34 -0
  811. package/dist/preview/agent-address.js +52 -0
  812. package/dist/preview/agent-address.js.map +1 -0
  813. package/dist/preview/agent-marker.d.ts +17 -0
  814. package/dist/preview/agent-marker.js +71 -0
  815. package/dist/preview/agent-marker.js.map +1 -0
  816. package/dist/preview/browser-launch.d.ts +28 -0
  817. package/dist/preview/browser-launch.js +64 -0
  818. package/dist/preview/browser-launch.js.map +1 -0
  819. package/dist/preview/cdp-proxy.d.ts +54 -0
  820. package/dist/preview/cdp-proxy.js +152 -0
  821. package/dist/preview/cdp-proxy.js.map +1 -0
  822. package/dist/preview/cdp.d.ts +49 -0
  823. package/dist/preview/cdp.js +167 -0
  824. package/dist/preview/cdp.js.map +1 -0
  825. package/dist/preview/chromium-launch-progress.d.ts +10 -0
  826. package/dist/preview/chromium-launch-progress.js +48 -0
  827. package/dist/preview/chromium-launch-progress.js.map +1 -0
  828. package/dist/preview/chromium.d.ts +91 -0
  829. package/dist/preview/chromium.js +500 -0
  830. package/dist/preview/chromium.js.map +1 -0
  831. package/dist/preview/density.d.ts +17 -0
  832. package/dist/preview/density.js +62 -0
  833. package/dist/preview/density.js.map +1 -0
  834. package/dist/preview/dev-server.d.ts +68 -0
  835. package/dist/preview/dev-server.js +318 -0
  836. package/dist/preview/dev-server.js.map +1 -0
  837. package/dist/preview/host.d.ts +215 -0
  838. package/dist/preview/host.js +954 -0
  839. package/dist/preview/host.js.map +1 -0
  840. package/dist/preview/registration.d.ts +68 -0
  841. package/dist/preview/registration.js +111 -0
  842. package/dist/preview/registration.js.map +1 -0
  843. package/dist/preview/run-tools.d.ts +9 -0
  844. package/dist/preview/run-tools.js +72 -0
  845. package/dist/preview/run-tools.js.map +1 -0
  846. package/dist/preview/session.d.ts +139 -0
  847. package/dist/preview/session.js +479 -0
  848. package/dist/preview/session.js.map +1 -0
  849. package/dist/preview/url.d.ts +6 -0
  850. package/dist/preview/url.js +17 -0
  851. package/dist/preview/url.js.map +1 -0
  852. package/dist/process-wait/exit-file.d.ts +29 -0
  853. package/dist/process-wait/exit-file.js +67 -0
  854. package/dist/process-wait/exit-file.js.map +1 -0
  855. package/dist/process-wait/supervisor.d.ts +30 -0
  856. package/dist/process-wait/supervisor.js +71 -0
  857. package/dist/process-wait/supervisor.js.map +1 -0
  858. package/dist/project-commands.d.ts +14 -0
  859. package/dist/project-commands.js +91 -0
  860. package/dist/project-commands.js.map +1 -0
  861. package/dist/project-migration/answer.d.ts +23 -0
  862. package/dist/project-migration/answer.js +37 -0
  863. package/dist/project-migration/answer.js.map +1 -0
  864. package/dist/project-migration/auto.d.ts +73 -0
  865. package/dist/project-migration/auto.js +161 -0
  866. package/dist/project-migration/auto.js.map +1 -0
  867. package/dist/project-migration/cli.d.ts +18 -0
  868. package/dist/project-migration/cli.js +57 -0
  869. package/dist/project-migration/cli.js.map +1 -0
  870. package/dist/project-migration/containment.d.ts +52 -0
  871. package/dist/project-migration/containment.js +200 -0
  872. package/dist/project-migration/containment.js.map +1 -0
  873. package/dist/project-migration/durable.d.ts +25 -0
  874. package/dist/project-migration/durable.js +69 -0
  875. package/dist/project-migration/durable.js.map +1 -0
  876. package/dist/project-migration/engine.d.ts +47 -0
  877. package/dist/project-migration/engine.js +103 -0
  878. package/dist/project-migration/engine.js.map +1 -0
  879. package/dist/project-migration/fresh.d.ts +4 -0
  880. package/dist/project-migration/fresh.js +25 -0
  881. package/dist/project-migration/fresh.js.map +1 -0
  882. package/dist/project-migration/journal.d.ts +139 -0
  883. package/dist/project-migration/journal.js +69 -0
  884. package/dist/project-migration/journal.js.map +1 -0
  885. package/dist/project-migration/live.d.ts +48 -0
  886. package/dist/project-migration/live.js +148 -0
  887. package/dist/project-migration/live.js.map +1 -0
  888. package/dist/project-migration/offline.d.ts +25 -0
  889. package/dist/project-migration/offline.js +54 -0
  890. package/dist/project-migration/offline.js.map +1 -0
  891. package/dist/project-migration/plan.d.ts +91 -0
  892. package/dist/project-migration/plan.js +466 -0
  893. package/dist/project-migration/plan.js.map +1 -0
  894. package/dist/project-migration/recovery.d.ts +28 -0
  895. package/dist/project-migration/recovery.js +78 -0
  896. package/dist/project-migration/recovery.js.map +1 -0
  897. package/dist/project-migration/steps.d.ts +18 -0
  898. package/dist/project-migration/steps.js +312 -0
  899. package/dist/project-migration/steps.js.map +1 -0
  900. package/dist/project-paths.d.ts +61 -0
  901. package/dist/project-paths.js +185 -0
  902. package/dist/project-paths.js.map +1 -0
  903. package/dist/release/compatibility.d.ts +12 -0
  904. package/dist/release/compatibility.js +62 -0
  905. package/dist/release/compatibility.js.map +1 -0
  906. package/dist/release/manifests.d.ts +112 -0
  907. package/dist/release/manifests.js +104 -0
  908. package/dist/release/manifests.js.map +1 -0
  909. package/dist/release/publication.d.ts +3 -0
  910. package/dist/release/publication.js +34 -0
  911. package/dist/release/publication.js.map +1 -0
  912. package/dist/release/snapshot.d.ts +67 -0
  913. package/dist/release/snapshot.js +97 -0
  914. package/dist/release/snapshot.js.map +1 -0
  915. package/dist/release/stable.d.ts +38 -0
  916. package/dist/release/stable.js +55 -0
  917. package/dist/release/stable.js.map +1 -0
  918. package/dist/remote-settings-cli.d.ts +24 -0
  919. package/dist/remote-settings-cli.js +156 -0
  920. package/dist/remote-settings-cli.js.map +1 -0
  921. package/dist/remote-settings.d.ts +41 -0
  922. package/dist/remote-settings.js +110 -0
  923. package/dist/remote-settings.js.map +1 -0
  924. package/dist/runs/agent-tmpdir-removal.d.ts +15 -0
  925. package/dist/runs/agent-tmpdir-removal.js +60 -0
  926. package/dist/runs/agent-tmpdir-removal.js.map +1 -0
  927. package/dist/runs/agent-tmpdir.d.ts +119 -0
  928. package/dist/runs/agent-tmpdir.js +855 -0
  929. package/dist/runs/agent-tmpdir.js.map +1 -0
  930. package/dist/runs/archive-family.d.ts +33 -0
  931. package/dist/runs/archive-family.js +90 -0
  932. package/dist/runs/archive-family.js.map +1 -0
  933. package/dist/runs/arm-repo-handle.d.ts +10 -0
  934. package/dist/runs/arm-repo-handle.js +45 -0
  935. package/dist/runs/arm-repo-handle.js.map +1 -0
  936. package/dist/runs/auto-name.d.ts +77 -0
  937. package/dist/runs/auto-name.js +179 -0
  938. package/dist/runs/auto-name.js.map +1 -0
  939. package/dist/runs/claim-families.d.ts +37 -0
  940. package/dist/runs/claim-families.js +101 -0
  941. package/dist/runs/claim-families.js.map +1 -0
  942. package/dist/runs/client-request.d.ts +11 -0
  943. package/dist/runs/client-request.js +26 -0
  944. package/dist/runs/client-request.js.map +1 -0
  945. package/dist/runs/cold-reads.d.ts +40 -0
  946. package/dist/runs/cold-reads.js +56 -0
  947. package/dist/runs/cold-reads.js.map +1 -0
  948. package/dist/runs/conversation-identity.d.ts +19 -0
  949. package/dist/runs/conversation-identity.js +31 -0
  950. package/dist/runs/conversation-identity.js.map +1 -0
  951. package/dist/runs/delegation-state.d.ts +409 -0
  952. package/dist/runs/delegation-state.js +22 -0
  953. package/dist/runs/delegation-state.js.map +1 -0
  954. package/dist/runs/event-history-agent-context.d.ts +15 -0
  955. package/dist/runs/event-history-agent-context.js +119 -0
  956. package/dist/runs/event-history-agent-context.js.map +1 -0
  957. package/dist/runs/event-history-context.d.ts +15 -0
  958. package/dist/runs/event-history-context.js +109 -0
  959. package/dist/runs/event-history-context.js.map +1 -0
  960. package/dist/runs/event-history.d.ts +53 -0
  961. package/dist/runs/event-history.js +563 -0
  962. package/dist/runs/event-history.js.map +1 -0
  963. package/dist/runs/exit-events.d.ts +27 -0
  964. package/dist/runs/exit-events.js +46 -0
  965. package/dist/runs/exit-events.js.map +1 -0
  966. package/dist/runs/history-compressor.d.ts +29 -0
  967. package/dist/runs/history-compressor.js +116 -0
  968. package/dist/runs/history-compressor.js.map +1 -0
  969. package/dist/runs/history-file.d.ts +36 -0
  970. package/dist/runs/history-file.js +464 -0
  971. package/dist/runs/history-file.js.map +1 -0
  972. package/dist/runs/history-stream.d.ts +2 -0
  973. package/dist/runs/history-stream.js +62 -0
  974. package/dist/runs/history-stream.js.map +1 -0
  975. package/dist/runs/legacy-index.d.ts +49 -0
  976. package/dist/runs/legacy-index.js +156 -0
  977. package/dist/runs/legacy-index.js.map +1 -0
  978. package/dist/runs/legacy-run-rows.d.ts +12 -0
  979. package/dist/runs/legacy-run-rows.js +33 -0
  980. package/dist/runs/legacy-run-rows.js.map +1 -0
  981. package/dist/runs/legacy-waits.d.ts +64 -0
  982. package/dist/runs/legacy-waits.js +335 -0
  983. package/dist/runs/legacy-waits.js.map +1 -0
  984. package/dist/runs/live-item-snapshots.d.ts +15 -0
  985. package/dist/runs/live-item-snapshots.js +95 -0
  986. package/dist/runs/live-item-snapshots.js.map +1 -0
  987. package/dist/runs/loaded-run-exits.d.ts +6 -0
  988. package/dist/runs/loaded-run-exits.js +32 -0
  989. package/dist/runs/loaded-run-exits.js.map +1 -0
  990. package/dist/runs/loaded-run-healing.d.ts +3 -0
  991. package/dist/runs/loaded-run-healing.js +17 -0
  992. package/dist/runs/loaded-run-healing.js.map +1 -0
  993. package/dist/runs/outcome-commit.d.ts +119 -0
  994. package/dist/runs/outcome-commit.js +155 -0
  995. package/dist/runs/outcome-commit.js.map +1 -0
  996. package/dist/runs/owned-run-create.d.ts +33 -0
  997. package/dist/runs/owned-run-create.js +98 -0
  998. package/dist/runs/owned-run-create.js.map +1 -0
  999. package/dist/runs/project-run-connection.d.ts +76 -0
  1000. package/dist/runs/project-run-connection.js +287 -0
  1001. package/dist/runs/project-run-connection.js.map +1 -0
  1002. package/dist/runs/project-run-sources.d.ts +21 -0
  1003. package/dist/runs/project-run-sources.js +86 -0
  1004. package/dist/runs/project-run-sources.js.map +1 -0
  1005. package/dist/runs/pull-requests.d.ts +14 -0
  1006. package/dist/runs/pull-requests.js +96 -0
  1007. package/dist/runs/pull-requests.js.map +1 -0
  1008. package/dist/runs/raw-record.d.ts +40 -0
  1009. package/dist/runs/raw-record.js +133 -0
  1010. package/dist/runs/raw-record.js.map +1 -0
  1011. package/dist/runs/record-write-rules.d.ts +129 -0
  1012. package/dist/runs/record-write-rules.js +326 -0
  1013. package/dist/runs/record-write-rules.js.map +1 -0
  1014. package/dist/runs/report-rows.d.ts +36 -0
  1015. package/dist/runs/report-rows.js +102 -0
  1016. package/dist/runs/report-rows.js.map +1 -0
  1017. package/dist/runs/retention.d.ts +91 -0
  1018. package/dist/runs/retention.js +193 -0
  1019. package/dist/runs/retention.js.map +1 -0
  1020. package/dist/runs/review-gate.d.ts +18 -0
  1021. package/dist/runs/review-gate.js +22 -0
  1022. package/dist/runs/review-gate.js.map +1 -0
  1023. package/dist/runs/run-claims.d.ts +30 -0
  1024. package/dist/runs/run-claims.js +52 -0
  1025. package/dist/runs/run-claims.js.map +1 -0
  1026. package/dist/runs/run-database-peer-page.d.ts +12 -0
  1027. package/dist/runs/run-database-peer-page.js +25 -0
  1028. package/dist/runs/run-database-peer-page.js.map +1 -0
  1029. package/dist/runs/run-database-row.d.ts +39 -0
  1030. package/dist/runs/run-database-row.js +83 -0
  1031. package/dist/runs/run-database-row.js.map +1 -0
  1032. package/dist/runs/run-database-version.d.ts +14 -0
  1033. package/dist/runs/run-database-version.js +19 -0
  1034. package/dist/runs/run-database-version.js.map +1 -0
  1035. package/dist/runs/run-database.d.ts +389 -0
  1036. package/dist/runs/run-database.js +957 -0
  1037. package/dist/runs/run-database.js.map +1 -0
  1038. package/dist/runs/run-exits.d.ts +4510 -0
  1039. package/dist/runs/run-exits.js +191 -0
  1040. package/dist/runs/run-exits.js.map +1 -0
  1041. package/dist/runs/run-index.d.ts +36 -0
  1042. package/dist/runs/run-index.js +262 -0
  1043. package/dist/runs/run-index.js.map +1 -0
  1044. package/dist/runs/run-references.d.ts +61 -0
  1045. package/dist/runs/run-references.js +421 -0
  1046. package/dist/runs/run-references.js.map +1 -0
  1047. package/dist/runs/run-row.d.ts +14 -0
  1048. package/dist/runs/run-row.js +56 -0
  1049. package/dist/runs/run-row.js.map +1 -0
  1050. package/dist/runs/run-summary-page.d.ts +36 -0
  1051. package/dist/runs/run-summary-page.js +46 -0
  1052. package/dist/runs/run-summary-page.js.map +1 -0
  1053. package/dist/runs/run-title.d.ts +8 -0
  1054. package/dist/runs/run-title.js +28 -0
  1055. package/dist/runs/run-title.js.map +1 -0
  1056. package/dist/runs/store-open-error.d.ts +24 -0
  1057. package/dist/runs/store-open-error.js +62 -0
  1058. package/dist/runs/store-open-error.js.map +1 -0
  1059. package/dist/runs/store.d.ts +3974 -0
  1060. package/dist/runs/store.js +3516 -0
  1061. package/dist/runs/store.js.map +1 -0
  1062. package/dist/runs/task-markers.d.ts +29 -0
  1063. package/dist/runs/task-markers.js +78 -0
  1064. package/dist/runs/task-markers.js.map +1 -0
  1065. package/dist/runs/task-refs.d.ts +39 -0
  1066. package/dist/runs/task-refs.js +107 -0
  1067. package/dist/runs/task-refs.js.map +1 -0
  1068. package/dist/runs/transcript-facts-fold.d.ts +64 -0
  1069. package/dist/runs/transcript-facts-fold.js +109 -0
  1070. package/dist/runs/transcript-facts-fold.js.map +1 -0
  1071. package/dist/runs/transcript-facts-load.d.ts +11 -0
  1072. package/dist/runs/transcript-facts-load.js +66 -0
  1073. package/dist/runs/transcript-facts-load.js.map +1 -0
  1074. package/dist/runs/transcript-facts-queue.d.ts +30 -0
  1075. package/dist/runs/transcript-facts-queue.js +227 -0
  1076. package/dist/runs/transcript-facts-queue.js.map +1 -0
  1077. package/dist/runs/transcript-facts-worker.d.ts +15 -0
  1078. package/dist/runs/transcript-facts-worker.js +26 -0
  1079. package/dist/runs/transcript-facts-worker.js.map +1 -0
  1080. package/dist/runs/transcript-facts.d.ts +40 -0
  1081. package/dist/runs/transcript-facts.js +193 -0
  1082. package/dist/runs/transcript-facts.js.map +1 -0
  1083. package/dist/runs/ui-event-sink.d.ts +59 -0
  1084. package/dist/runs/ui-event-sink.js +197 -0
  1085. package/dist/runs/ui-event-sink.js.map +1 -0
  1086. package/dist/runs/wait-capacity.d.ts +8 -0
  1087. package/dist/runs/wait-capacity.js +28 -0
  1088. package/dist/runs/wait-capacity.js.map +1 -0
  1089. package/dist/runs/wait-phases.d.ts +4 -0
  1090. package/dist/runs/wait-phases.js +11 -0
  1091. package/dist/runs/wait-phases.js.map +1 -0
  1092. package/dist/runs/wait-registration-write.d.ts +5 -0
  1093. package/dist/runs/wait-registration-write.js +35 -0
  1094. package/dist/runs/wait-registration-write.js.map +1 -0
  1095. package/dist/runs/webhook.d.ts +193 -0
  1096. package/dist/runs/webhook.js +362 -0
  1097. package/dist/runs/webhook.js.map +1 -0
  1098. package/dist/runs/worker-deletion-proof.d.ts +13 -0
  1099. package/dist/runs/worker-deletion-proof.js +13 -0
  1100. package/dist/runs/worker-deletion-proof.js.map +1 -0
  1101. package/dist/runs/worker-execution.d.ts +22 -0
  1102. package/dist/runs/worker-execution.js +30 -0
  1103. package/dist/runs/worker-execution.js.map +1 -0
  1104. package/dist/runs/worker-resource-holders.d.ts +17 -0
  1105. package/dist/runs/worker-resource-holders.js +34 -0
  1106. package/dist/runs/worker-resource-holders.js.map +1 -0
  1107. package/dist/runs/worker-result-commit.d.ts +26 -0
  1108. package/dist/runs/worker-result-commit.js +121 -0
  1109. package/dist/runs/worker-result-commit.js.map +1 -0
  1110. package/dist/self-update/checkouts.d.ts +46 -0
  1111. package/dist/self-update/checkouts.js +284 -0
  1112. package/dist/self-update/checkouts.js.map +1 -0
  1113. package/dist/self-update/cli.d.ts +19 -0
  1114. package/dist/self-update/cli.js +243 -0
  1115. package/dist/self-update/cli.js.map +1 -0
  1116. package/dist/self-update/installer.d.ts +24 -0
  1117. package/dist/self-update/installer.js +139 -0
  1118. package/dist/self-update/installer.js.map +1 -0
  1119. package/dist/self-update/launcher.d.ts +30 -0
  1120. package/dist/self-update/launcher.js +172 -0
  1121. package/dist/self-update/launcher.js.map +1 -0
  1122. package/dist/self-update/layout.d.ts +108 -0
  1123. package/dist/self-update/layout.js +276 -0
  1124. package/dist/self-update/layout.js.map +1 -0
  1125. package/dist/self-update/pulls.d.ts +30 -0
  1126. package/dist/self-update/pulls.js +128 -0
  1127. package/dist/self-update/pulls.js.map +1 -0
  1128. package/dist/self-update/registry.d.ts +37 -0
  1129. package/dist/self-update/registry.js +86 -0
  1130. package/dist/self-update/registry.js.map +1 -0
  1131. package/dist/self-update/restart.d.ts +25 -0
  1132. package/dist/self-update/restart.js +79 -0
  1133. package/dist/self-update/restart.js.map +1 -0
  1134. package/dist/self-update/semver.d.ts +19 -0
  1135. package/dist/self-update/semver.js +79 -0
  1136. package/dist/self-update/semver.js.map +1 -0
  1137. package/dist/self-update/service.d.ts +115 -0
  1138. package/dist/self-update/service.js +332 -0
  1139. package/dist/self-update/service.js.map +1 -0
  1140. package/dist/self-update/supervisor.d.ts +10 -0
  1141. package/dist/self-update/supervisor.js +52 -0
  1142. package/dist/self-update/supervisor.js.map +1 -0
  1143. package/dist/serve-boot.d.ts +60 -0
  1144. package/dist/serve-boot.js +142 -0
  1145. package/dist/serve-boot.js.map +1 -0
  1146. package/dist/serve-command.d.ts +71 -0
  1147. package/dist/serve-command.js +168 -0
  1148. package/dist/serve-command.js.map +1 -0
  1149. package/dist/serve-listener.d.ts +12 -0
  1150. package/dist/serve-listener.js +52 -0
  1151. package/dist/serve-listener.js.map +1 -0
  1152. package/dist/server/activity-project-topic.d.ts +44 -0
  1153. package/dist/server/activity-project-topic.js +137 -0
  1154. package/dist/server/activity-project-topic.js.map +1 -0
  1155. package/dist/server/activity-routes.d.ts +317 -0
  1156. package/dist/server/activity-routes.js +117 -0
  1157. package/dist/server/activity-routes.js.map +1 -0
  1158. package/dist/server/activity-sources.d.ts +26 -0
  1159. package/dist/server/activity-sources.js +45 -0
  1160. package/dist/server/activity-sources.js.map +1 -0
  1161. package/dist/server/activity-topic.d.ts +33 -0
  1162. package/dist/server/activity-topic.js +48 -0
  1163. package/dist/server/activity-topic.js.map +1 -0
  1164. package/dist/server/app-type.d.ts +6 -0
  1165. package/dist/server/app-type.js +2 -0
  1166. package/dist/server/app-type.js.map +1 -0
  1167. package/dist/server/archive-on-merge.d.ts +45 -0
  1168. package/dist/server/archive-on-merge.js +242 -0
  1169. package/dist/server/archive-on-merge.js.map +1 -0
  1170. package/dist/server/automation-log-retry.d.ts +27 -0
  1171. package/dist/server/automation-log-retry.js +88 -0
  1172. package/dist/server/automation-log-retry.js.map +1 -0
  1173. package/dist/server/capabilities.d.ts +69 -0
  1174. package/dist/server/capabilities.js +111 -0
  1175. package/dist/server/capabilities.js.map +1 -0
  1176. package/dist/server/checkout-progress.d.ts +10 -0
  1177. package/dist/server/checkout-progress.js +27 -0
  1178. package/dist/server/checkout-progress.js.map +1 -0
  1179. package/dist/server/checkout.d.ts +153 -0
  1180. package/dist/server/checkout.js +323 -0
  1181. package/dist/server/checkout.js.map +1 -0
  1182. package/dist/server/cockpit-ownership.d.ts +112 -0
  1183. package/dist/server/cockpit-ownership.js +420 -0
  1184. package/dist/server/cockpit-ownership.js.map +1 -0
  1185. package/dist/server/cold-repo-handles.d.ts +17 -0
  1186. package/dist/server/cold-repo-handles.js +82 -0
  1187. package/dist/server/cold-repo-handles.js.map +1 -0
  1188. package/dist/server/completion-actions.d.ts +37 -0
  1189. package/dist/server/completion-actions.js +261 -0
  1190. package/dist/server/completion-actions.js.map +1 -0
  1191. package/dist/server/config-merge.d.ts +11 -0
  1192. package/dist/server/config-merge.js +74 -0
  1193. package/dist/server/config-merge.js.map +1 -0
  1194. package/dist/server/create-project.d.ts +71 -0
  1195. package/dist/server/create-project.js +467 -0
  1196. package/dist/server/create-project.js.map +1 -0
  1197. package/dist/server/forge/draft-pr.d.ts +8 -0
  1198. package/dist/server/forge/draft-pr.js +123 -0
  1199. package/dist/server/forge/draft-pr.js.map +1 -0
  1200. package/dist/server/forge/github-filters.d.ts +22 -0
  1201. package/dist/server/forge/github-filters.js +128 -0
  1202. package/dist/server/forge/github-filters.js.map +1 -0
  1203. package/dist/server/forge/github-merge-requirements.d.ts +18 -0
  1204. package/dist/server/forge/github-merge-requirements.js +148 -0
  1205. package/dist/server/forge/github-merge-requirements.js.map +1 -0
  1206. package/dist/server/forge/github-merge-state.d.ts +27 -0
  1207. package/dist/server/forge/github-merge-state.js +248 -0
  1208. package/dist/server/forge/github-merge-state.js.map +1 -0
  1209. package/dist/server/forge/github-timeline.d.ts +117 -0
  1210. package/dist/server/forge/github-timeline.js +273 -0
  1211. package/dist/server/forge/github-timeline.js.map +1 -0
  1212. package/dist/server/forge/github.d.ts +393 -0
  1213. package/dist/server/forge/github.js +2881 -0
  1214. package/dist/server/forge/github.js.map +1 -0
  1215. package/dist/server/forge/index.d.ts +47 -0
  1216. package/dist/server/forge/index.js +81 -0
  1217. package/dist/server/forge/index.js.map +1 -0
  1218. package/dist/server/forge/repo-handle-discovery.d.ts +16 -0
  1219. package/dist/server/forge/repo-handle-discovery.js +2 -0
  1220. package/dist/server/forge/repo-handle-discovery.js.map +1 -0
  1221. package/dist/server/forge/types.d.ts +278 -0
  1222. package/dist/server/forge/types.js +2 -0
  1223. package/dist/server/forge/types.js.map +1 -0
  1224. package/dist/server/fs-browse.d.ts +82 -0
  1225. package/dist/server/fs-browse.js +217 -0
  1226. package/dist/server/fs-browse.js.map +1 -0
  1227. package/dist/server/git-changes.d.ts +205 -0
  1228. package/dist/server/git-changes.js +531 -0
  1229. package/dist/server/git-changes.js.map +1 -0
  1230. package/dist/server/git.d.ts +52 -0
  1231. package/dist/server/git.js +174 -0
  1232. package/dist/server/git.js.map +1 -0
  1233. package/dist/server/home-recovery-routes.d.ts +171 -0
  1234. package/dist/server/home-recovery-routes.js +56 -0
  1235. package/dist/server/home-recovery-routes.js.map +1 -0
  1236. package/dist/server/launch-key.d.ts +5 -0
  1237. package/dist/server/launch-key.js +35 -0
  1238. package/dist/server/launch-key.js.map +1 -0
  1239. package/dist/server/live-routes.d.ts +73 -0
  1240. package/dist/server/live-routes.js +161 -0
  1241. package/dist/server/live-routes.js.map +1 -0
  1242. package/dist/server/open-in-app.d.ts +57 -0
  1243. package/dist/server/open-in-app.js +178 -0
  1244. package/dist/server/open-in-app.js.map +1 -0
  1245. package/dist/server/open-in-targets.d.ts +53 -0
  1246. package/dist/server/open-in-targets.js +112 -0
  1247. package/dist/server/open-in-targets.js.map +1 -0
  1248. package/dist/server/open-in-terminal.d.ts +73 -0
  1249. package/dist/server/open-in-terminal.js +160 -0
  1250. package/dist/server/open-in-terminal.js.map +1 -0
  1251. package/dist/server/preview-cdp-socket.d.ts +21 -0
  1252. package/dist/server/preview-cdp-socket.js +112 -0
  1253. package/dist/server/preview-cdp-socket.js.map +1 -0
  1254. package/dist/server/preview-socket.d.ts +36 -0
  1255. package/dist/server/preview-socket.js +142 -0
  1256. package/dist/server/preview-socket.js.map +1 -0
  1257. package/dist/server/preview-sockets.d.ts +14 -0
  1258. package/dist/server/preview-sockets.js +18 -0
  1259. package/dist/server/preview-sockets.js.map +1 -0
  1260. package/dist/server/project-context.d.ts +218 -0
  1261. package/dist/server/project-context.js +525 -0
  1262. package/dist/server/project-context.js.map +1 -0
  1263. package/dist/server/project-run-files.d.ts +13 -0
  1264. package/dist/server/project-run-files.js +52 -0
  1265. package/dist/server/project-run-files.js.map +1 -0
  1266. package/dist/server/provider-action-gate.d.ts +5 -0
  1267. package/dist/server/provider-action-gate.js +28 -0
  1268. package/dist/server/provider-action-gate.js.map +1 -0
  1269. package/dist/server/provider-auth-runtime.d.ts +34 -0
  1270. package/dist/server/provider-auth-runtime.js +118 -0
  1271. package/dist/server/provider-auth-runtime.js.map +1 -0
  1272. package/dist/server/repo-branch-forge.d.ts +61 -0
  1273. package/dist/server/repo-branch-forge.js +158 -0
  1274. package/dist/server/repo-branch-forge.js.map +1 -0
  1275. package/dist/server/repo-branch-sweep.d.ts +21 -0
  1276. package/dist/server/repo-branch-sweep.js +64 -0
  1277. package/dist/server/repo-branch-sweep.js.map +1 -0
  1278. package/dist/server/repo-branches.d.ts +103 -0
  1279. package/dist/server/repo-branches.js +804 -0
  1280. package/dist/server/repo-branches.js.map +1 -0
  1281. package/dist/server/repo-pull.d.ts +18 -0
  1282. package/dist/server/repo-pull.js +97 -0
  1283. package/dist/server/repo-pull.js.map +1 -0
  1284. package/dist/server/reports-api.d.ts +90 -0
  1285. package/dist/server/reports-api.js +21 -0
  1286. package/dist/server/reports-api.js.map +1 -0
  1287. package/dist/server/reports-topic.d.ts +5 -0
  1288. package/dist/server/reports-topic.js +37 -0
  1289. package/dist/server/reports-topic.js.map +1 -0
  1290. package/dist/server/run-checkout.d.ts +56 -0
  1291. package/dist/server/run-checkout.js +141 -0
  1292. package/dist/server/run-checkout.js.map +1 -0
  1293. package/dist/server/run-event-feed.d.ts +20 -0
  1294. package/dist/server/run-event-feed.js +203 -0
  1295. package/dist/server/run-event-feed.js.map +1 -0
  1296. package/dist/server/self-update-routes.d.ts +308 -0
  1297. package/dist/server/self-update-routes.js +80 -0
  1298. package/dist/server/self-update-routes.js.map +1 -0
  1299. package/dist/server/server-deps.d.ts +40 -0
  1300. package/dist/server/server-deps.js +132 -0
  1301. package/dist/server/server-deps.js.map +1 -0
  1302. package/dist/server/server.d.ts +35332 -0
  1303. package/dist/server/server.js +5046 -0
  1304. package/dist/server/server.js.map +1 -0
  1305. package/dist/server/skill-sources.d.ts +264 -0
  1306. package/dist/server/skill-sources.js +130 -0
  1307. package/dist/server/skill-sources.js.map +1 -0
  1308. package/dist/server/start-run-options.d.ts +84 -0
  1309. package/dist/server/start-run-options.js +114 -0
  1310. package/dist/server/start-run-options.js.map +1 -0
  1311. package/dist/server/static-ui.d.ts +49 -0
  1312. package/dist/server/static-ui.js +99 -0
  1313. package/dist/server/static-ui.js.map +1 -0
  1314. package/dist/server/upgrade-router.d.ts +23 -0
  1315. package/dist/server/upgrade-router.js +53 -0
  1316. package/dist/server/upgrade-router.js.map +1 -0
  1317. package/dist/server/validators.d.ts +80 -0
  1318. package/dist/server/validators.js +85 -0
  1319. package/dist/server/validators.js.map +1 -0
  1320. package/dist/server/workflow-files.d.ts +9 -0
  1321. package/dist/server/workflow-files.js +27 -0
  1322. package/dist/server/workflow-files.js.map +1 -0
  1323. package/dist/server/workspace-config-patch.d.ts +11 -0
  1324. package/dist/server/workspace-config-patch.js +75 -0
  1325. package/dist/server/workspace-config-patch.js.map +1 -0
  1326. package/dist/server/workspace-live-routes.d.ts +222 -0
  1327. package/dist/server/workspace-live-routes.js +8 -0
  1328. package/dist/server/workspace-live-routes.js.map +1 -0
  1329. package/dist/server/workspace-projects.d.ts +51 -0
  1330. package/dist/server/workspace-projects.js +161 -0
  1331. package/dist/server/workspace-projects.js.map +1 -0
  1332. package/dist/server/workspace-run-feed.d.ts +66 -0
  1333. package/dist/server/workspace-run-feed.js +171 -0
  1334. package/dist/server/workspace-run-feed.js.map +1 -0
  1335. package/dist/server/ws.d.ts +80 -0
  1336. package/dist/server/ws.js +280 -0
  1337. package/dist/server/ws.js.map +1 -0
  1338. package/dist/server/wsl.d.ts +25 -0
  1339. package/dist/server/wsl.js +92 -0
  1340. package/dist/server/wsl.js.map +1 -0
  1341. package/dist/server-command.d.ts +53 -0
  1342. package/dist/server-command.js +180 -0
  1343. package/dist/server-command.js.map +1 -0
  1344. package/dist/server-install/engine.d.ts +51 -0
  1345. package/dist/server-install/engine.js +358 -0
  1346. package/dist/server-install/engine.js.map +1 -0
  1347. package/dist/server-install/group-migrate.d.ts +26 -0
  1348. package/dist/server-install/group-migrate.js +241 -0
  1349. package/dist/server-install/group-migrate.js.map +1 -0
  1350. package/dist/server-install/migrate-cli.d.ts +12 -0
  1351. package/dist/server-install/migrate-cli.js +44 -0
  1352. package/dist/server-install/migrate-cli.js.map +1 -0
  1353. package/dist/server-install/migrate-journal.d.ts +15 -0
  1354. package/dist/server-install/migrate-journal.js +48 -0
  1355. package/dist/server-install/migrate-journal.js.map +1 -0
  1356. package/dist/server-install/migration-report.d.ts +3 -0
  1357. package/dist/server-install/migration-report.js +21 -0
  1358. package/dist/server-install/migration-report.js.map +1 -0
  1359. package/dist/server-install/npx-cache.d.ts +34 -0
  1360. package/dist/server-install/npx-cache.js +142 -0
  1361. package/dist/server-install/npx-cache.js.map +1 -0
  1362. package/dist/server-install/platforms/macosx-launchd-files.d.ts +11 -0
  1363. package/dist/server-install/platforms/macosx-launchd-files.js +60 -0
  1364. package/dist/server-install/platforms/macosx-launchd-files.js.map +1 -0
  1365. package/dist/server-install/platforms/macosx-migration.d.ts +17 -0
  1366. package/dist/server-install/platforms/macosx-migration.js +239 -0
  1367. package/dist/server-install/platforms/macosx-migration.js.map +1 -0
  1368. package/dist/server-install/platforms/macosx-ngrok.d.ts +12 -0
  1369. package/dist/server-install/platforms/macosx-ngrok.js +490 -0
  1370. package/dist/server-install/platforms/macosx-ngrok.js.map +1 -0
  1371. package/dist/server-install/platforms/service-env.d.ts +4 -0
  1372. package/dist/server-install/platforms/service-env.js +17 -0
  1373. package/dist/server-install/platforms/service-env.js.map +1 -0
  1374. package/dist/server-install/platforms/ubuntu-vps-files.d.ts +18 -0
  1375. package/dist/server-install/platforms/ubuntu-vps-files.js +43 -0
  1376. package/dist/server-install/platforms/ubuntu-vps-files.js.map +1 -0
  1377. package/dist/server-install/platforms/ubuntu-vps-migration.d.ts +26 -0
  1378. package/dist/server-install/platforms/ubuntu-vps-migration.js +391 -0
  1379. package/dist/server-install/platforms/ubuntu-vps-migration.js.map +1 -0
  1380. package/dist/server-install/platforms/ubuntu-vps-names.d.ts +30 -0
  1381. package/dist/server-install/platforms/ubuntu-vps-names.js +50 -0
  1382. package/dist/server-install/platforms/ubuntu-vps-names.js.map +1 -0
  1383. package/dist/server-install/platforms/ubuntu-vps-redeploy.d.ts +42 -0
  1384. package/dist/server-install/platforms/ubuntu-vps-redeploy.js +127 -0
  1385. package/dist/server-install/platforms/ubuntu-vps-redeploy.js.map +1 -0
  1386. package/dist/server-install/platforms/ubuntu-vps.d.ts +57 -0
  1387. package/dist/server-install/platforms/ubuntu-vps.js +945 -0
  1388. package/dist/server-install/platforms/ubuntu-vps.js.map +1 -0
  1389. package/dist/server-install/state.d.ts +51 -0
  1390. package/dist/server-install/state.js +178 -0
  1391. package/dist/server-install/state.js.map +1 -0
  1392. package/dist/server-install/steps.d.ts +108 -0
  1393. package/dist/server-install/steps.js +348 -0
  1394. package/dist/server-install/steps.js.map +1 -0
  1395. package/dist/server-install/strategies.d.ts +6 -0
  1396. package/dist/server-install/strategies.js +24 -0
  1397. package/dist/server-install/strategies.js.map +1 -0
  1398. package/dist/server-install/types.d.ts +316 -0
  1399. package/dist/server-install/types.js +118 -0
  1400. package/dist/server-install/types.js.map +1 -0
  1401. package/dist/server-install/ui.d.ts +36 -0
  1402. package/dist/server-install/ui.js +131 -0
  1403. package/dist/server-install/ui.js.map +1 -0
  1404. package/dist/session-context.d.ts +66 -0
  1405. package/dist/session-context.js +266 -0
  1406. package/dist/session-context.js.map +1 -0
  1407. package/dist/skills-provision.d.ts +64 -0
  1408. package/dist/skills-provision.js +325 -0
  1409. package/dist/skills-provision.js.map +1 -0
  1410. package/dist/skills-remote.d.ts +144 -0
  1411. package/dist/skills-remote.js +847 -0
  1412. package/dist/skills-remote.js.map +1 -0
  1413. package/dist/skills.d.ts +81 -0
  1414. package/dist/skills.js +288 -0
  1415. package/dist/skills.js.map +1 -0
  1416. package/dist/subcommands.d.ts +12 -0
  1417. package/dist/subcommands.js +59 -0
  1418. package/dist/subcommands.js.map +1 -0
  1419. package/dist/task-cli/cli.d.ts +39 -0
  1420. package/dist/task-cli/cli.js +773 -0
  1421. package/dist/task-cli/cli.js.map +1 -0
  1422. package/dist/task-cli/discovery.d.ts +32 -0
  1423. package/dist/task-cli/discovery.js +133 -0
  1424. package/dist/task-cli/discovery.js.map +1 -0
  1425. package/dist/task-cli/hint.d.ts +20 -0
  1426. package/dist/task-cli/hint.js +15 -0
  1427. package/dist/task-cli/hint.js.map +1 -0
  1428. package/dist/task-cli/http.d.ts +42 -0
  1429. package/dist/task-cli/http.js +110 -0
  1430. package/dist/task-cli/http.js.map +1 -0
  1431. package/dist/task-cli/projections.d.ts +68 -0
  1432. package/dist/task-cli/projections.js +76 -0
  1433. package/dist/task-cli/projections.js.map +1 -0
  1434. package/dist/task-cli/watch.d.ts +119 -0
  1435. package/dist/task-cli/watch.js +494 -0
  1436. package/dist/task-cli/watch.js.map +1 -0
  1437. package/dist/ui-state.d.ts +41 -0
  1438. package/dist/ui-state.js +93 -0
  1439. package/dist/ui-state.js.map +1 -0
  1440. package/dist/update-check.d.ts +2 -0
  1441. package/dist/update-check.js +28 -0
  1442. package/dist/update-check.js.map +1 -0
  1443. package/dist/use-command-notice.d.ts +1 -0
  1444. package/dist/use-command-notice.js +6 -0
  1445. package/dist/use-command-notice.js.map +1 -0
  1446. package/dist/voice/decide.d.ts +35 -0
  1447. package/dist/voice/decide.js +329 -0
  1448. package/dist/voice/decide.js.map +1 -0
  1449. package/dist/voice/decision-log.d.ts +48 -0
  1450. package/dist/voice/decision-log.js +117 -0
  1451. package/dist/voice/decision-log.js.map +1 -0
  1452. package/dist/voice/engine.d.ts +119 -0
  1453. package/dist/voice/engine.js +61 -0
  1454. package/dist/voice/engine.js.map +1 -0
  1455. package/dist/voice/fake-engine.d.ts +10 -0
  1456. package/dist/voice/fake-engine.js +192 -0
  1457. package/dist/voice/fake-engine.js.map +1 -0
  1458. package/dist/voice/jev-engine.d.ts +17 -0
  1459. package/dist/voice/jev-engine.js +110 -0
  1460. package/dist/voice/jev-engine.js.map +1 -0
  1461. package/dist/voice/pending-ask.d.ts +17 -0
  1462. package/dist/voice/pending-ask.js +51 -0
  1463. package/dist/voice/pending-ask.js.map +1 -0
  1464. package/dist/voice/routes.d.ts +115 -0
  1465. package/dist/voice/routes.js +92 -0
  1466. package/dist/voice/routes.js.map +1 -0
  1467. package/dist/voice/sentence.d.ts +21 -0
  1468. package/dist/voice/sentence.js +61 -0
  1469. package/dist/voice/sentence.js.map +1 -0
  1470. package/dist/voice/thresholds.d.ts +28 -0
  1471. package/dist/voice/thresholds.js +29 -0
  1472. package/dist/voice/thresholds.js.map +1 -0
  1473. package/dist/webhooks/cli.d.ts +18 -0
  1474. package/dist/webhooks/cli.js +127 -0
  1475. package/dist/webhooks/cli.js.map +1 -0
  1476. package/dist/webhooks/prompt.d.ts +5 -0
  1477. package/dist/webhooks/prompt.js +26 -0
  1478. package/dist/webhooks/prompt.js.map +1 -0
  1479. package/dist/workflows/active-run.d.ts +46 -0
  1480. package/dist/workflows/active-run.js +46 -0
  1481. package/dist/workflows/active-run.js.map +1 -0
  1482. package/dist/workflows/attachment-path.d.ts +6 -0
  1483. package/dist/workflows/attachment-path.js +40 -0
  1484. package/dist/workflows/attachment-path.js.map +1 -0
  1485. package/dist/workflows/completion-policy.d.ts +98 -0
  1486. package/dist/workflows/completion-policy.js +77 -0
  1487. package/dist/workflows/completion-policy.js.map +1 -0
  1488. package/dist/workflows/continuation-admission.d.ts +1229 -0
  1489. package/dist/workflows/continuation-admission.js +277 -0
  1490. package/dist/workflows/continuation-admission.js.map +1 -0
  1491. package/dist/workflows/execution-account.d.ts +13 -0
  1492. package/dist/workflows/execution-account.js +18 -0
  1493. package/dist/workflows/execution-account.js.map +1 -0
  1494. package/dist/workflows/grouped-command.d.ts +31 -0
  1495. package/dist/workflows/grouped-command.js +147 -0
  1496. package/dist/workflows/grouped-command.js.map +1 -0
  1497. package/dist/workflows/input-acknowledgement.d.ts +233 -0
  1498. package/dist/workflows/input-acknowledgement.js +41 -0
  1499. package/dist/workflows/input-acknowledgement.js.map +1 -0
  1500. package/dist/workflows/line-order.d.ts +5 -0
  1501. package/dist/workflows/line-order.js +25 -0
  1502. package/dist/workflows/line-order.js.map +1 -0
  1503. package/dist/workflows/load.d.ts +19 -0
  1504. package/dist/workflows/load.js +74 -0
  1505. package/dist/workflows/load.js.map +1 -0
  1506. package/dist/workflows/outcome-batches.d.ts +32 -0
  1507. package/dist/workflows/outcome-batches.js +55 -0
  1508. package/dist/workflows/outcome-batches.js.map +1 -0
  1509. package/dist/workflows/pasted-content.d.ts +60 -0
  1510. package/dist/workflows/pasted-content.js +69 -0
  1511. package/dist/workflows/pasted-content.js.map +1 -0
  1512. package/dist/workflows/question-routing.d.ts +16 -0
  1513. package/dist/workflows/question-routing.js +28 -0
  1514. package/dist/workflows/question-routing.js.map +1 -0
  1515. package/dist/workflows/run/attachment-writer.d.ts +34 -0
  1516. package/dist/workflows/run/attachment-writer.js +98 -0
  1517. package/dist/workflows/run/attachment-writer.js.map +1 -0
  1518. package/dist/workflows/run/auto-resume.d.ts +91 -0
  1519. package/dist/workflows/run/auto-resume.js +247 -0
  1520. package/dist/workflows/run/auto-resume.js.map +1 -0
  1521. package/dist/workflows/run/cezar-tools.d.ts +45 -0
  1522. package/dist/workflows/run/cezar-tools.js +117 -0
  1523. package/dist/workflows/run/cezar-tools.js.map +1 -0
  1524. package/dist/workflows/run/completion-gate.d.ts +77 -0
  1525. package/dist/workflows/run/completion-gate.js +93 -0
  1526. package/dist/workflows/run/completion-gate.js.map +1 -0
  1527. package/dist/workflows/run/compose.d.ts +181 -0
  1528. package/dist/workflows/run/compose.js +413 -0
  1529. package/dist/workflows/run/compose.js.map +1 -0
  1530. package/dist/workflows/run/constants.d.ts +48 -0
  1531. package/dist/workflows/run/constants.js +49 -0
  1532. package/dist/workflows/run/constants.js.map +1 -0
  1533. package/dist/workflows/run/continuation-acceptance.d.ts +70 -0
  1534. package/dist/workflows/run/continuation-acceptance.js +188 -0
  1535. package/dist/workflows/run/continuation-acceptance.js.map +1 -0
  1536. package/dist/workflows/run/continuation-session.d.ts +130 -0
  1537. package/dist/workflows/run/continuation-session.js +597 -0
  1538. package/dist/workflows/run/continuation-session.js.map +1 -0
  1539. package/dist/workflows/run/drop-active.d.ts +4 -0
  1540. package/dist/workflows/run/drop-active.js +11 -0
  1541. package/dist/workflows/run/drop-active.js.map +1 -0
  1542. package/dist/workflows/run/family-reconciler.d.ts +78 -0
  1543. package/dist/workflows/run/family-reconciler.js +308 -0
  1544. package/dist/workflows/run/family-reconciler.js.map +1 -0
  1545. package/dist/workflows/run/human-waits.d.ts +85 -0
  1546. package/dist/workflows/run/human-waits.js +163 -0
  1547. package/dist/workflows/run/human-waits.js.map +1 -0
  1548. package/dist/workflows/run/inbox-claims.d.ts +38 -0
  1549. package/dist/workflows/run/inbox-claims.js +108 -0
  1550. package/dist/workflows/run/inbox-claims.js.map +1 -0
  1551. package/dist/workflows/run/input-batch.d.ts +15 -0
  1552. package/dist/workflows/run/input-batch.js +32 -0
  1553. package/dist/workflows/run/input-batch.js.map +1 -0
  1554. package/dist/workflows/run/input-delivery.d.ts +202 -0
  1555. package/dist/workflows/run/input-delivery.js +818 -0
  1556. package/dist/workflows/run/input-delivery.js.map +1 -0
  1557. package/dist/workflows/run/input-receipts.d.ts +65 -0
  1558. package/dist/workflows/run/input-receipts.js +221 -0
  1559. package/dist/workflows/run/input-receipts.js.map +1 -0
  1560. package/dist/workflows/run/input-timers.d.ts +10 -0
  1561. package/dist/workflows/run/input-timers.js +32 -0
  1562. package/dist/workflows/run/input-timers.js.map +1 -0
  1563. package/dist/workflows/run/launch-context.d.ts +62 -0
  1564. package/dist/workflows/run/launch-context.js +119 -0
  1565. package/dist/workflows/run/launch-context.js.map +1 -0
  1566. package/dist/workflows/run/launch-read-resolver.d.ts +510 -0
  1567. package/dist/workflows/run/launch-read-resolver.js +658 -0
  1568. package/dist/workflows/run/launch-read-resolver.js.map +1 -0
  1569. package/dist/workflows/run/launch-settings.d.ts +10 -0
  1570. package/dist/workflows/run/launch-settings.js +11 -0
  1571. package/dist/workflows/run/launch-settings.js.map +1 -0
  1572. package/dist/workflows/run/live-session-state.d.ts +49 -0
  1573. package/dist/workflows/run/live-session-state.js +83 -0
  1574. package/dist/workflows/run/live-session-state.js.map +1 -0
  1575. package/dist/workflows/run/maintenance-claims.d.ts +47 -0
  1576. package/dist/workflows/run/maintenance-claims.js +83 -0
  1577. package/dist/workflows/run/maintenance-claims.js.map +1 -0
  1578. package/dist/workflows/run/memory-guard.d.ts +25 -0
  1579. package/dist/workflows/run/memory-guard.js +64 -0
  1580. package/dist/workflows/run/memory-guard.js.map +1 -0
  1581. package/dist/workflows/run/opening.d.ts +30 -0
  1582. package/dist/workflows/run/opening.js +6 -0
  1583. package/dist/workflows/run/opening.js.map +1 -0
  1584. package/dist/workflows/run/pending-ask-facts.d.ts +10 -0
  1585. package/dist/workflows/run/pending-ask-facts.js +19 -0
  1586. package/dist/workflows/run/pending-ask-facts.js.map +1 -0
  1587. package/dist/workflows/run/prompts.d.ts +74 -0
  1588. package/dist/workflows/run/prompts.js +140 -0
  1589. package/dist/workflows/run/prompts.js.map +1 -0
  1590. package/dist/workflows/run/queued-input.d.ts +108 -0
  1591. package/dist/workflows/run/queued-input.js +249 -0
  1592. package/dist/workflows/run/queued-input.js.map +1 -0
  1593. package/dist/workflows/run/queued-revival.d.ts +44 -0
  1594. package/dist/workflows/run/queued-revival.js +124 -0
  1595. package/dist/workflows/run/queued-revival.js.map +1 -0
  1596. package/dist/workflows/run/readonly-collections.d.ts +24 -0
  1597. package/dist/workflows/run/readonly-collections.js +33 -0
  1598. package/dist/workflows/run/readonly-collections.js.map +1 -0
  1599. package/dist/workflows/run/repo-root-lease.d.ts +34 -0
  1600. package/dist/workflows/run/repo-root-lease.js +71 -0
  1601. package/dist/workflows/run/repo-root-lease.js.map +1 -0
  1602. package/dist/workflows/run/resolved-wait-input-batch.d.ts +7 -0
  1603. package/dist/workflows/run/resolved-wait-input-batch.js +23 -0
  1604. package/dist/workflows/run/resolved-wait-input-batch.js.map +1 -0
  1605. package/dist/workflows/run/run-cancel.d.ts +36 -0
  1606. package/dist/workflows/run/run-cancel.js +130 -0
  1607. package/dist/workflows/run/run-cancel.js.map +1 -0
  1608. package/dist/workflows/run/run-finish.d.ts +72 -0
  1609. package/dist/workflows/run/run-finish.js +256 -0
  1610. package/dist/workflows/run/run-finish.js.map +1 -0
  1611. package/dist/workflows/run/run-guards.d.ts +15 -0
  1612. package/dist/workflows/run/run-guards.js +39 -0
  1613. package/dist/workflows/run/run-guards.js.map +1 -0
  1614. package/dist/workflows/run/run-line.d.ts +187 -0
  1615. package/dist/workflows/run/run-line.js +438 -0
  1616. package/dist/workflows/run/run-line.js.map +1 -0
  1617. package/dist/workflows/run/run-recovery.d.ts +116 -0
  1618. package/dist/workflows/run/run-recovery.js +422 -0
  1619. package/dist/workflows/run/run-recovery.js.map +1 -0
  1620. package/dist/workflows/run/run-settlement.d.ts +177 -0
  1621. package/dist/workflows/run/run-settlement.js +504 -0
  1622. package/dist/workflows/run/run-settlement.js.map +1 -0
  1623. package/dist/workflows/run/run-skills.d.ts +114 -0
  1624. package/dist/workflows/run/run-skills.js +233 -0
  1625. package/dist/workflows/run/run-skills.js.map +1 -0
  1626. package/dist/workflows/run/run-start.d.ts +64 -0
  1627. package/dist/workflows/run/run-start.js +126 -0
  1628. package/dist/workflows/run/run-start.js.map +1 -0
  1629. package/dist/workflows/run/run-workspace.d.ts +25 -0
  1630. package/dist/workflows/run/run-workspace.js +66 -0
  1631. package/dist/workflows/run/run-workspace.js.map +1 -0
  1632. package/dist/workflows/run/session-events.d.ts +155 -0
  1633. package/dist/workflows/run/session-events.js +282 -0
  1634. package/dist/workflows/run/session-events.js.map +1 -0
  1635. package/dist/workflows/run/step-decisions.d.ts +37 -0
  1636. package/dist/workflows/run/step-decisions.js +43 -0
  1637. package/dist/workflows/run/step-decisions.js.map +1 -0
  1638. package/dist/workflows/run/step-loop.d.ts +143 -0
  1639. package/dist/workflows/run/step-loop.js +488 -0
  1640. package/dist/workflows/run/step-loop.js.map +1 -0
  1641. package/dist/workflows/run/step-session.d.ts +65 -0
  1642. package/dist/workflows/run/step-session.js +280 -0
  1643. package/dist/workflows/run/step-session.js.map +1 -0
  1644. package/dist/workflows/run/steps.d.ts +13 -0
  1645. package/dist/workflows/run/steps.js +14 -0
  1646. package/dist/workflows/run/steps.js.map +1 -0
  1647. package/dist/workflows/run/subagent-waits.d.ts +138 -0
  1648. package/dist/workflows/run/subagent-waits.js +305 -0
  1649. package/dist/workflows/run/subagent-waits.js.map +1 -0
  1650. package/dist/workflows/run/tracked-work.d.ts +12 -0
  1651. package/dist/workflows/run/tracked-work.js +29 -0
  1652. package/dist/workflows/run/tracked-work.js.map +1 -0
  1653. package/dist/workflows/run/turn-bookkeeping.d.ts +67 -0
  1654. package/dist/workflows/run/turn-bookkeeping.js +173 -0
  1655. package/dist/workflows/run/turn-bookkeeping.js.map +1 -0
  1656. package/dist/workflows/run/turn-boundary.d.ts +215 -0
  1657. package/dist/workflows/run/turn-boundary.js +329 -0
  1658. package/dist/workflows/run/turn-boundary.js.map +1 -0
  1659. package/dist/workflows/run/turn-markers.d.ts +62 -0
  1660. package/dist/workflows/run/turn-markers.js +86 -0
  1661. package/dist/workflows/run/turn-markers.js.map +1 -0
  1662. package/dist/workflows/run/turn-nudges.d.ts +104 -0
  1663. package/dist/workflows/run/turn-nudges.js +244 -0
  1664. package/dist/workflows/run/turn-nudges.js.map +1 -0
  1665. package/dist/workflows/run/turn-settler.d.ts +161 -0
  1666. package/dist/workflows/run/turn-settler.js +469 -0
  1667. package/dist/workflows/run/turn-settler.js.map +1 -0
  1668. package/dist/workflows/run/types.d.ts +293 -0
  1669. package/dist/workflows/run/types.js +2 -0
  1670. package/dist/workflows/run/types.js.map +1 -0
  1671. package/dist/workflows/run/usage-accounting.d.ts +49 -0
  1672. package/dist/workflows/run/usage-accounting.js +213 -0
  1673. package/dist/workflows/run/usage-accounting.js.map +1 -0
  1674. package/dist/workflows/run/wait-engine.d.ts +1210 -0
  1675. package/dist/workflows/run/wait-engine.js +456 -0
  1676. package/dist/workflows/run/wait-engine.js.map +1 -0
  1677. package/dist/workflows/run/wait-kinds.d.ts +336 -0
  1678. package/dist/workflows/run/wait-kinds.js +471 -0
  1679. package/dist/workflows/run/wait-kinds.js.map +1 -0
  1680. package/dist/workflows/run/wait-registration-tool.d.ts +3 -0
  1681. package/dist/workflows/run/wait-registration-tool.js +68 -0
  1682. package/dist/workflows/run/wait-registration-tool.js.map +1 -0
  1683. package/dist/workflows/run/wait-registration.d.ts +7 -0
  1684. package/dist/workflows/run/wait-registration.js +39 -0
  1685. package/dist/workflows/run/wait-registration.js.map +1 -0
  1686. package/dist/workflows/run/wait-registry.d.ts +120 -0
  1687. package/dist/workflows/run/wait-registry.js +365 -0
  1688. package/dist/workflows/run/wait-registry.js.map +1 -0
  1689. package/dist/workflows/run/wait-watches.d.ts +13 -0
  1690. package/dist/workflows/run/wait-watches.js +12 -0
  1691. package/dist/workflows/run/wait-watches.js.map +1 -0
  1692. package/dist/workflows/run/wake-admission.d.ts +150 -0
  1693. package/dist/workflows/run/wake-admission.js +397 -0
  1694. package/dist/workflows/run/wake-admission.js.map +1 -0
  1695. package/dist/workflows/run/wake-ledger.d.ts +61 -0
  1696. package/dist/workflows/run/wake-ledger.js +78 -0
  1697. package/dist/workflows/run/wake-ledger.js.map +1 -0
  1698. package/dist/workflows/run/wake-retries.d.ts +31 -0
  1699. package/dist/workflows/run/wake-retries.js +93 -0
  1700. package/dist/workflows/run/wake-retries.js.map +1 -0
  1701. package/dist/workflows/run/worker-executions.d.ts +54 -0
  1702. package/dist/workflows/run/worker-executions.js +149 -0
  1703. package/dist/workflows/run/worker-executions.js.map +1 -0
  1704. package/dist/workflows/run/worker-orphans.d.ts +91 -0
  1705. package/dist/workflows/run/worker-orphans.js +275 -0
  1706. package/dist/workflows/run/worker-orphans.js.map +1 -0
  1707. package/dist/workflows/run/worker-questions.d.ts +169 -0
  1708. package/dist/workflows/run/worker-questions.js +464 -0
  1709. package/dist/workflows/run/worker-questions.js.map +1 -0
  1710. package/dist/workflows/run/workflow-position.d.ts +7 -0
  1711. package/dist/workflows/run/workflow-position.js +9 -0
  1712. package/dist/workflows/run/workflow-position.js.map +1 -0
  1713. package/dist/workflows/run/worktree-autosave.d.ts +48 -0
  1714. package/dist/workflows/run/worktree-autosave.js +175 -0
  1715. package/dist/workflows/run/worktree-autosave.js.map +1 -0
  1716. package/dist/workflows/run-scheduling.d.ts +38 -0
  1717. package/dist/workflows/run-scheduling.js +76 -0
  1718. package/dist/workflows/run-scheduling.js.map +1 -0
  1719. package/dist/workflows/run-states.d.ts +73 -0
  1720. package/dist/workflows/run-states.js +233 -0
  1721. package/dist/workflows/run-states.js.map +1 -0
  1722. package/dist/workflows/run.d.ts +275 -0
  1723. package/dist/workflows/run.js +626 -0
  1724. package/dist/workflows/run.js.map +1 -0
  1725. package/dist/workflows/turn-end.d.ts +119 -0
  1726. package/dist/workflows/turn-end.js +74 -0
  1727. package/dist/workflows/turn-end.js.map +1 -0
  1728. package/dist/workflows/types.d.ts +83 -0
  1729. package/dist/workflows/types.js +192 -0
  1730. package/dist/workflows/types.js.map +1 -0
  1731. package/dist/workflows/wait-scope.d.ts +75 -0
  1732. package/dist/workflows/wait-scope.js +115 -0
  1733. package/dist/workflows/wait-scope.js.map +1 -0
  1734. package/dist/workflows/waits.d.ts +58 -0
  1735. package/dist/workflows/waits.js +89 -0
  1736. package/dist/workflows/waits.js.map +1 -0
  1737. package/dist/workspace/agent-accounts.d.ts +135 -0
  1738. package/dist/workspace/agent-accounts.js +353 -0
  1739. package/dist/workspace/agent-accounts.js.map +1 -0
  1740. package/dist/workspace/agent-profiles.d.ts +125 -0
  1741. package/dist/workspace/agent-profiles.js +190 -0
  1742. package/dist/workspace/agent-profiles.js.map +1 -0
  1743. package/dist/workspace/backup-cli.d.ts +9 -0
  1744. package/dist/workspace/backup-cli.js +147 -0
  1745. package/dist/workspace/backup-cli.js.map +1 -0
  1746. package/dist/workspace/backups.d.ts +36 -0
  1747. package/dist/workspace/backups.js +249 -0
  1748. package/dist/workspace/backups.js.map +1 -0
  1749. package/dist/workspace/config.d.ts +179 -0
  1750. package/dist/workspace/config.js +396 -0
  1751. package/dist/workspace/config.js.map +1 -0
  1752. package/dist/workspace/migrations.d.ts +37 -0
  1753. package/dist/workspace/migrations.js +149 -0
  1754. package/dist/workspace/migrations.js.map +1 -0
  1755. package/dist/workspace/projects-cli.d.ts +27 -0
  1756. package/dist/workspace/projects-cli.js +175 -0
  1757. package/dist/workspace/projects-cli.js.map +1 -0
  1758. package/dist/workspace/projects.d.ts +131 -0
  1759. package/dist/workspace/projects.js +274 -0
  1760. package/dist/workspace/projects.js.map +1 -0
  1761. package/dist/workspace/root-probe-cache.d.ts +10 -0
  1762. package/dist/workspace/root-probe-cache.js +43 -0
  1763. package/dist/workspace/root-probe-cache.js.map +1 -0
  1764. package/dist/workspace/semaphore.d.ts +147 -0
  1765. package/dist/workspace/semaphore.js +196 -0
  1766. package/dist/workspace/semaphore.js.map +1 -0
  1767. package/dist/workspace/ui-state.d.ts +17 -0
  1768. package/dist/workspace/ui-state.js +59 -0
  1769. package/dist/workspace/ui-state.js.map +1 -0
  1770. package/dist/workspace/webhooks.d.ts +40 -0
  1771. package/dist/workspace/webhooks.js +146 -0
  1772. package/dist/workspace/webhooks.js.map +1 -0
  1773. package/dist/worktree-manifest.d.ts +165 -0
  1774. package/dist/worktree-manifest.js +535 -0
  1775. package/dist/worktree-manifest.js.map +1 -0
  1776. package/dist/worktree-setup.d.ts +88 -0
  1777. package/dist/worktree-setup.js +170 -0
  1778. package/dist/worktree-setup.js.map +1 -0
  1779. package/package.json +80 -4
  1780. package/scripts/benchmark-family-reconcile.ts +119 -0
  1781. package/scripts/benchmark-home.ts +32 -0
  1782. package/scripts/benchmark-project-probes.mjs +158 -0
  1783. package/scripts/benchmark-run-store-fixture.ts +432 -0
  1784. package/scripts/benchmark-run-store.ts +767 -0
  1785. package/scripts/benchmark-stuck-destroys.ts +144 -0
  1786. package/scripts/benchmark-workspace-events.ts +339 -0
  1787. package/scripts/check-pack.mjs +48 -0
  1788. package/scripts/inline-contract.mjs +165 -0
  1789. package/scripts/install-as-command.mjs +125 -0
  1790. package/scripts/measure-transcript-facts-health.mjs +103 -0
  1791. package/scripts/measure-transcript-facts-lag.mjs +69 -0
  1792. package/scripts/mock-autonomous.mjs +13 -0
  1793. package/scripts/mock-ci-tool.mjs +159 -0
  1794. package/scripts/mock-claude-model-refusal.mjs +76 -0
  1795. package/scripts/mock-claude-subagents.mjs +54 -0
  1796. package/scripts/mock-claude.mjs +800 -0
  1797. package/scripts/mock-codex-app-server.mjs +767 -0
  1798. package/scripts/mock-codex-coalesce-steer.mjs +59 -0
  1799. package/scripts/mock-codex-reverse-steer.mjs +143 -0
  1800. package/scripts/mock-codex-subagents.mjs +52 -0
  1801. package/scripts/mock-controls.d.mts +11 -0
  1802. package/scripts/mock-controls.mjs +13 -0
  1803. package/scripts/mock-cursor-hang-stdin-late.mjs +35 -0
  1804. package/scripts/mock-cursor-hang-stdin.mjs +30 -0
  1805. package/scripts/mock-cursor-print.mjs +237 -0
  1806. package/scripts/mock-deferred-turn-start.mjs +16 -0
  1807. package/scripts/mock-delivery-control.d.mts +23 -0
  1808. package/scripts/mock-delivery-control.mjs +80 -0
  1809. package/scripts/mock-env-record.mjs +11 -0
  1810. package/scripts/mock-failure-control.d.mts +13 -0
  1811. package/scripts/mock-failure-control.mjs +68 -0
  1812. package/scripts/mock-lifecycle.mjs +51 -0
  1813. package/scripts/mock-multi-pr.mjs +10 -0
  1814. package/scripts/mock-nudge.mjs +43 -0
  1815. package/scripts/mock-omp-rpc.mjs +536 -0
  1816. package/scripts/mock-opencode-serve.mjs +1000 -0
  1817. package/scripts/mock-pi-rpc.mjs +421 -0
  1818. package/scripts/mock-publish.mjs +13 -0
  1819. package/scripts/mock-runner-crash.mjs +64 -0
  1820. package/scripts/mock-scenario.d.mts +71 -0
  1821. package/scripts/mock-scenario.mjs +295 -0
  1822. package/scripts/mock-session-context.d.mts +5 -0
  1823. package/scripts/mock-session-context.mjs +56 -0
  1824. package/scripts/mock-silent-tail.mjs +93 -0
  1825. package/scripts/mock-turn-messages.mjs +5 -0
  1826. package/scripts/mock-wire-evidence.config.mjs +12 -0
  1827. package/scripts/mock-wire-recorder.mjs +66 -0
  1828. package/scripts/mock-wire-tools.mjs +7 -0
  1829. package/scripts/omp-ci-wait.mjs +29 -0
  1830. package/scripts/opencode-task-scope.d.mts +18 -0
  1831. package/scripts/opencode-task-scope.mjs +59 -0
  1832. package/scripts/parity-rows.ts +160 -0
  1833. package/scripts/pi-ci-wait.mjs +17 -0
  1834. package/scripts/pi-default-tools.mjs +22 -0
  1835. package/scripts/pi-project-skills.mjs +59 -0
  1836. package/scripts/pi-retry-degraded-service.mjs +16 -0
  1837. package/scripts/probe-cursor-print.mjs +699 -0
  1838. package/scripts/probe-session-env.ts +8 -0
  1839. package/scripts/product-env.mjs +6 -0
  1840. package/scripts/product-identity.mjs +12 -0
  1841. package/scripts/record-mock-wires.mjs +16 -0
  1842. package/scripts/seed-archive-profile.ts +53 -0
  1843. package/scripts/sync-readme.mjs +20 -0
  1844. package/scripts/test-process-usage.mjs +47 -0
  1845. package/scripts/transcript-facts-fixture.mjs +53 -0
  1846. package/scripts/transcript-facts-timing.mjs +42 -0
  1847. package/scripts/voice-replay.ts +50 -0
  1848. package/scripts/windows-workspace-identity.cs +208 -0
  1849. package/scripts/windows-workspace-identity.ps1 +10 -0
  1850. package/web/dist/assets/activity-motion-0wHCeUs7.css +1 -0
  1851. package/web/dist/assets/activity-motion-SGth5vR4.js +2 -0
  1852. package/web/dist/assets/activity-route-D8otXwOA.js +1 -0
  1853. package/web/dist/assets/agent-accounts-6EuZhy-N.js +18 -0
  1854. package/web/dist/assets/alert-dialog-vFjLgfK4.js +1 -0
  1855. package/web/dist/assets/app-window-CSHwDX9N.js +1 -0
  1856. package/web/dist/assets/arrow-right-Dh_Lx3um.js +1 -0
  1857. package/web/dist/assets/bundle-mjs-BT31bpU6.js +1 -0
  1858. package/web/dist/assets/button-BEK7XKhS.js +3 -0
  1859. package/web/dist/assets/centered-state-CPgI8cCO.js +1 -0
  1860. package/web/dist/assets/cez-idle-BT0U4GN_.js +1 -0
  1861. package/web/dist/assets/chunk-BO2N2NFS-DE6qKn3r.js +131 -0
  1862. package/web/dist/assets/commit-diff-panel-DzyWgn1Z.js +1 -0
  1863. package/web/dist/assets/control-locations-CexZsd3M.js +1 -0
  1864. package/web/dist/assets/core-BCsw8oQw.js +12 -0
  1865. package/web/dist/assets/createLucideIcon-BHp8sXmF.js +1 -0
  1866. package/web/dist/assets/css-BsVw1vtW.js +1 -0
  1867. package/web/dist/assets/design-icons-DmYTv2r1.js +1 -0
  1868. package/web/dist/assets/diff-DBDiZl58.js +3 -0
  1869. package/web/dist/assets/diff-controls-DXyB0aDl.js +1 -0
  1870. package/web/dist/assets/diff-view-DiKAwVMH.js +11 -0
  1871. package/web/dist/assets/diff-woXpYk--.js +1 -0
  1872. package/web/dist/assets/dropdown-menu-DYflHa4m.js +1 -0
  1873. package/web/dist/assets/engine-javascript-FQvzRocB.js +141 -0
  1874. package/web/dist/assets/es2015-BO600Xfi.js +41 -0
  1875. package/web/dist/assets/eye-B8okNWXU.js +1 -0
  1876. package/web/dist/assets/file-preview-DTSRkmMo.js +2 -0
  1877. package/web/dist/assets/git-toolbar-U4s46kUd.js +1 -0
  1878. package/web/dist/assets/github-UaBp2yRF.js +1 -0
  1879. package/web/dist/assets/github-sidebar-model-czjLsgVJ.js +1 -0
  1880. package/web/dist/assets/global-activity-route-B2N2Nz0H.js +1 -0
  1881. package/web/dist/assets/go-rLFTqkRN.js +1 -0
  1882. package/web/dist/assets/highlighted-body-OFNGDK62-BL-MfFgl.js +1 -0
  1883. package/web/dist/assets/hourglass-B0lPAJvT.js +1 -0
  1884. package/web/dist/assets/html-BY76lXLH.js +1 -0
  1885. package/web/dist/assets/image-preview-XPCPclpG.js +1 -0
  1886. package/web/dist/assets/index-B18AqW0Z.css +1 -0
  1887. package/web/dist/assets/index-xj-3O89_.js +14 -0
  1888. package/web/dist/assets/index.global-D3Ga_D3Y.js +1 -0
  1889. package/web/dist/assets/info-DA1x_4bz.js +1 -0
  1890. package/web/dist/assets/javascript-BgS3c2Ky.js +1 -0
  1891. package/web/dist/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2 +0 -0
  1892. package/web/dist/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2 +0 -0
  1893. package/web/dist/assets/json-qhed-kSA.js +1 -0
  1894. package/web/dist/assets/jsonc-CYpm1nAK.js +1 -0
  1895. package/web/dist/assets/jsx-Bz0zcwM4.js +1 -0
  1896. package/web/dist/assets/lib-BxQXEXDF.js +1 -0
  1897. package/web/dist/assets/live-protocol-BDY7JJpT.js +64 -0
  1898. package/web/dist/assets/live-refetch-C-Ony2Yr.js +1 -0
  1899. package/web/dist/assets/live-worker-BWdeGzQX.ts +34 -0
  1900. package/web/dist/assets/loader-circle-CZkGEdoI.js +1 -0
  1901. package/web/dist/assets/markdown-BBDDg-4t.js +1 -0
  1902. package/web/dist/assets/markdown-BYOwaDjH.js +1 -0
  1903. package/web/dist/assets/markdown-UdZ_toya.js +6 -0
  1904. package/web/dist/assets/mermaid-GHXKKRXX-C4jxqUUb.js +1 -0
  1905. package/web/dist/assets/mermaid.min-3O9YjB2l.js +1 -0
  1906. package/web/dist/assets/message-square-B-MD-8rD.js +1 -0
  1907. package/web/dist/assets/nav-row-styles-BE99gD3_.js +1 -0
  1908. package/web/dist/assets/popover-CpULuQSm.js +1 -0
  1909. package/web/dist/assets/poppins-devanagari-400-normal-CJDn6rn8.woff2 +0 -0
  1910. package/web/dist/assets/poppins-devanagari-400-normal-CqVvlrh5.woff +0 -0
  1911. package/web/dist/assets/poppins-devanagari-500-normal-BIdkeU1p.woff2 +0 -0
  1912. package/web/dist/assets/poppins-devanagari-500-normal-DMPDjHtT.woff +0 -0
  1913. package/web/dist/assets/poppins-devanagari-600-normal-ClASKHrr.woff +0 -0
  1914. package/web/dist/assets/poppins-devanagari-600-normal-STEjXBNN.woff2 +0 -0
  1915. package/web/dist/assets/poppins-latin-400-normal-BOb3E3N0.woff +0 -0
  1916. package/web/dist/assets/poppins-latin-400-normal-cpxAROuN.woff2 +0 -0
  1917. package/web/dist/assets/poppins-latin-500-normal-C8OXljZJ.woff2 +0 -0
  1918. package/web/dist/assets/poppins-latin-500-normal-DGXqpDMm.woff +0 -0
  1919. package/web/dist/assets/poppins-latin-600-normal-BJdTmd5m.woff +0 -0
  1920. package/web/dist/assets/poppins-latin-600-normal-zEkxB9Mr.woff2 +0 -0
  1921. package/web/dist/assets/poppins-latin-ext-400-normal-DaBSavcJ.woff +0 -0
  1922. package/web/dist/assets/poppins-latin-ext-400-normal-by3JarPu.woff2 +0 -0
  1923. package/web/dist/assets/poppins-latin-ext-500-normal-CK-6C4Hw.woff2 +0 -0
  1924. package/web/dist/assets/poppins-latin-ext-500-normal-CgAe2rWW.woff +0 -0
  1925. package/web/dist/assets/poppins-latin-ext-600-normal-CAhIAdZj.woff2 +0 -0
  1926. package/web/dist/assets/poppins-latin-ext-600-normal-Df5ffKXP.woff +0 -0
  1927. package/web/dist/assets/preview-pane-connected-CgRK7GzB.js +3 -0
  1928. package/web/dist/assets/project-router-CimAoN1H.js +1 -0
  1929. package/web/dist/assets/project-scope-context-DMpvJqIm.js +4 -0
  1930. package/web/dist/assets/python-gzcpVVnB.js +1 -0
  1931. package/web/dist/assets/queries-BIOp8jLx.js +1 -0
  1932. package/web/dist/assets/react-runtime-CCIEwYL0.js +9 -0
  1933. package/web/dist/assets/repo-git-DVXNOJDT.css +1 -0
  1934. package/web/dist/assets/repo-git-XkyTfP9G.js +1 -0
  1935. package/web/dist/assets/report-reader-CZjYS5Aw.js +1 -0
  1936. package/web/dist/assets/report-title-D4Mbu2Er.js +1 -0
  1937. package/web/dist/assets/reports-B7QAzibP.css +1 -0
  1938. package/web/dist/assets/reports-D_2sFE1y.js +1 -0
  1939. package/web/dist/assets/rolldown-runtime-QTnfLwEv.js +1 -0
  1940. package/web/dist/assets/run-header-BwPDVPpg.js +2 -0
  1941. package/web/dist/assets/run-header-CC7VUTg9.css +1 -0
  1942. package/web/dist/assets/rust-Cfkwpbl8.js +1 -0
  1943. package/web/dist/assets/shellscript-CLZ0U2zV.js +1 -0
  1944. package/web/dist/assets/skill-empty-hint-YDmkqgo-.js +1 -0
  1945. package/web/dist/assets/skills-BkXe4p4q.js +1 -0
  1946. package/web/dist/assets/skills-DFBiAuJG.js +1 -0
  1947. package/web/dist/assets/skills-workflows-C21NystW.css +1 -0
  1948. package/web/dist/assets/sortable.esm-zp_qkYGV.js +5 -0
  1949. package/web/dist/assets/sql-BsFa4tDR.js +1 -0
  1950. package/web/dist/assets/tab-link-BIweqlIZ.js +1 -0
  1951. package/web/dist/assets/task-changes-USNHNm_T.js +1 -0
  1952. package/web/dist/assets/task-commits-kHqlOJe_.js +1 -0
  1953. package/web/dist/assets/task-files-wTWwLR39.js +1 -0
  1954. package/web/dist/assets/task-github-item-GzaQjkF1.js +1 -0
  1955. package/web/dist/assets/task-thread-BZX863UN.js +9 -0
  1956. package/web/dist/assets/task-thread-DtQ6uGfQ.css +1 -0
  1957. package/web/dist/assets/textarea-FAUkHz1K.js +1 -0
  1958. package/web/dist/assets/thread-state-CBzx2hmX.js +4 -0
  1959. package/web/dist/assets/toaster-pthKGWiE.js +1 -0
  1960. package/web/dist/assets/toml-CcmNWLt0.js +1 -0
  1961. package/web/dist/assets/tsx-udAQXfEw.js +1 -0
  1962. package/web/dist/assets/typescript-bsJCZSQ-.js +1 -0
  1963. package/web/dist/assets/use-hand-to-agent-state-Bav9eT3b.js +1 -0
  1964. package/web/dist/assets/use-hand-to-agent-state-C7esPJ-N.css +1 -0
  1965. package/web/dist/assets/useInfiniteQuery-CQI4BO4C.js +1 -0
  1966. package/web/dist/assets/useQuery-Bkq-x4Id.js +1 -0
  1967. package/web/dist/assets/workflows-D871Gx--.js +7 -0
  1968. package/web/dist/assets/ws-DspW9wBH.js +1 -0
  1969. package/web/dist/assets/yaml-rwi0_p6S.js +1 -0
  1970. package/web/dist/assets/zoomable-image-DNc6ORaF.js +1 -0
  1971. package/web/dist/cezarion-lockup-dark.svg +9 -0
  1972. package/web/dist/cezarion-lockup-light.svg +9 -0
  1973. package/web/dist/cezarion-mark-dark.svg +4 -0
  1974. package/web/dist/cezarion-mark-light.svg +4 -0
  1975. package/web/dist/index.html +90 -0
  1976. package/web/dist/live-worker.js +4 -0
@@ -0,0 +1,767 @@
1
+ /**
2
+ * Run-store benchmark (#779): what the run index costs as it grows, and whether saving it is the
3
+ * cost worth moving to SQLite. Rerun it unchanged after the migration.
4
+ *
5
+ * npm run bench:run-store -w @wjarka/cezarion # full run, about 4 hours
6
+ * npm run bench:run-store -w @wjarka/cezarion -- --quick # smoke, a few minutes
7
+ * node --import tsx packages/cezar/scripts/benchmark-run-store.ts --sizes 100,5000 --profiles legacy
8
+ *
9
+ * Flags: --sizes (100,500,1000,2000,5000) --profiles (legacy,post-778) --processes (5)
10
+ * --samples (100) --budget-seconds (60) --duration (30, seconds of active simulation) --seed (779)
11
+ * --metrics (all: open,coldRead,save,commit,runs,runsIndex,runSummaries,runSummariesRecent,archivedPage,runsSearch,active,heap,getRun)
12
+ * --out-dir (a new /tmp directory) --resume (reuse child results already in --out-dir, run the rest) --quick (sizes 100,1000, 2 processes, 10 samples, 10 s budget,
13
+ * 3 s simulation). Results land in <out-dir>/results.{md,json}; the Markdown also goes to stdout.
14
+ * `--metrics heap,getRun,runSummaries` is the pass #779's second amendment added; a plain run
15
+ * measures everything.
16
+ *
17
+ * Method:
18
+ * - Fixtures come from `benchmark-run-store-fixture.ts` (seeded, two profiles; see its header for
19
+ * how #778 is modeled, and the live share: max(3, 1% of runs) queued/running/waiting records on
20
+ * top of the finished ones, which keep the bytes the first table measured) and are generated
21
+ * before any timer starts. `seedRunStore` is the ONLY place that knows the storage format: since
22
+ * #779 it writes `runs.db` through the tests' shared seeder, so "open" reads the database and
23
+ * "cold read" reads its summaries, the way a migrated project does. Every store opens with
24
+ * `keepLive`, as `serve` does, so live records load as themselves.
25
+ * - The parent spawns one fresh process per size x profile x process index, in shuffled order,
26
+ * one at a time. Each process measures every operation after 3 untimed warm-up calls, taking up
27
+ * to --samples samples and stopping early once it has 20 and --budget-seconds have passed.
28
+ * The table pools every process's samples per cell (median, p95, n). A failed child is
29
+ * reported and the rest still aggregate; the parent stops launching children when less than
30
+ * 1 GB is free, and exits 1 after writing what it has. `--resume` reruns only missing children.
31
+ * - Everything goes through public APIs: `RunStore.open`, `getRun`, `updateRun` + `flush`,
32
+ * `updateStep`, `commitDelegation`, `readRunIndexFromDisk`, and the Hono app from `createApp`.
33
+ * - "heap after open" is `heapUsed` after `RunStore.open` and a forced gc, minus `heapUsed` after a
34
+ * forced gc just before it, in MB; 3 samples per process, measured first, before anything else
35
+ * has run in the process.
36
+ * - "getRun" is per-call time in microseconds: each sample cycles `getRun` through a fixed id set
37
+ * until 2 ms have passed, then divides. "live" is every live record; "finished" is 49 evenly
38
+ * spaced finished records plus the largest one (50 ids, or 49 when the largest is among them).
39
+ * - Synchronous calls are timed with `performance.now()` around the call.
40
+ * - "save (flush)" is `updateRun` + `flush()`: `flush` runs the same `saveNow` the 300 ms debounce
41
+ * timer calls, synchronously, so it is the debounced write without the timer. Both save rows
42
+ * write the finished record closest to the median finished size (`pickSaveTarget`), and the
43
+ * results table prints that size per cell.
44
+ * - "save (debounced)" is the real path: `updateRun`, then the timer fires on its own. It is
45
+ * measured as the longest gap a `setImmediate` loop sees while waiting for the save (stop after
46
+ * a gap of at least half the flush median once 300 ms have passed, or at a timeout).
47
+ * - "commit (1 row)" / "commit (10 rows)" are `commitDelegation` with each row's own delegation,
48
+ * the durable `commitIndex` path.
49
+ * - The list routes (`/runs`, `/run-summaries`, `/workspace/runs-index`, and since #864 the windowed
50
+ * `/run-summaries?archived=recent`, the first `/run-summaries/archived` page and
51
+ * `/workspace/runs-search?q=the`) run in-process through
52
+ * `app.request` (no socket), against a second store
53
+ * opened on the same files, so app listeners never touch the store-under-test. "wall" is call
54
+ * to fully read body; "block" is the longest synchronous stretch inside it, from the same
55
+ * `setImmediate` gap detector. `/workspace/runs-index` reads a second, registered project cold
56
+ * from disk; the boot project is not registered, so the index measures the cold reader only.
57
+ * - "open" and "cold read" repeat on the same files, so the OS page cache is warm: they measure
58
+ * parse and validation, not disk.
59
+ * - The active simulation touches one unarchived run every 5 ms (`updateStep`, fixed-width token
60
+ * counts) for --duration seconds while `monitorEventLoopDelay` (1 ms resolution) records.
61
+ */
62
+ import { spawn, execFileSync } from 'node:child_process';
63
+ import { randomInt } from 'node:crypto';
64
+ import { existsSync, mkdirSync, mkdtempSync, readFileSync, rmSync, statSync, statfsSync, writeFileSync } from 'node:fs';
65
+ import { cpus, totalmem, tmpdir, type as osType, release, arch } from 'node:os';
66
+ import { join } from 'node:path';
67
+ import { fileURLToPath } from 'node:url';
68
+ import { parseArgs } from 'node:util';
69
+ import { monitorEventLoopDelay, performance } from 'node:perf_hooks';
70
+ import { setTimeout as sleep } from 'node:timers/promises';
71
+ import type { RunRecord, RunStore as RunStoreInstance } from '../src/runs/store.ts';
72
+ import { DEFAULT_FIXTURE_SEED, FIXTURE_PROFILES, generateRunFixture, isLiveRun, pickSaveTarget, type FixtureProfile } from './benchmark-run-store-fixture.ts';
73
+
74
+ const SCRIPT = fileURLToPath(import.meta.url);
75
+ const WARM_UP = 3;
76
+ const MIN_SAMPLES = 20;
77
+ const DEBOUNCE_MS = 300;
78
+ const TOUCH_EVERY_MS = 5;
79
+ const MULTI_ROWS = 10;
80
+ const MIN_FREE_BYTES = 1e9;
81
+ const HEAP_SAMPLES = 3;
82
+ const GET_RUN_MIN_MS = 2;
83
+ const GET_RUN_FINISHED_IDS = 50;
84
+
85
+ const METRICS = ['open', 'coldRead', 'save', 'commit', 'runs', 'runsIndex', 'runSummaries', 'runSummariesRecent', 'archivedPage', 'runsSearch', 'active', 'heap', 'getRun'] as const;
86
+ type Metric = typeof METRICS[number];
87
+ /** What a child result measured before `--metrics` existed. */
88
+ const FIRST_TABLE_METRICS: readonly Metric[] = ['open', 'coldRead', 'save', 'commit', 'runs', 'runsIndex', 'active'];
89
+ const SYNC_OPS = ['open', 'cold read', 'save (flush)', 'save (debounced)', 'commit (1 row)', 'commit (10 rows)', 'commit (held run)', 'commit (cold run)'] as const;
90
+ type SyncOp = typeof SYNC_OPS[number];
91
+ const SYNC_OP_METRIC: Record<SyncOp, Metric> = {
92
+ open: 'open', 'cold read': 'coldRead', 'save (flush)': 'save', 'save (debounced)': 'save', 'commit (1 row)': 'commit', 'commit (10 rows)': 'commit',
93
+ 'commit (held run)': 'commit', 'commit (cold run)': 'commit',
94
+ };
95
+ /** The same one-row commit split by claim state (#779, plan step 3): on a run this store already
96
+ * holds and claims (the fence alone), and on a run it must claim first. Reported, never gated:
97
+ * `commit (1 row)` is the gate's commit and the first table's. */
98
+ const CLAIM_OPS: readonly SyncOp[] = ['commit (held run)', 'commit (cold run)'];
99
+ const ROUTE_PATHS = {
100
+ 'GET /runs': { metric: 'runs', path: '/api/v1/runs' },
101
+ 'GET /run-summaries': { metric: 'runSummaries', path: '/api/v1/run-summaries' },
102
+ 'GET /workspace/runs-index': { metric: 'runsIndex', path: '/api/v1/workspace/runs-index' },
103
+ // The bounded lists (#864): the cockpit's windowed list, the first archived page past it, and
104
+ // the workspace search over a common fixture word (the cold project, as the index reads it).
105
+ 'GET /run-summaries?archived=recent': { metric: 'runSummariesRecent', path: '/api/v1/run-summaries?archived=recent' },
106
+ 'GET /run-summaries/archived': { metric: 'archivedPage', path: '/api/v1/run-summaries/archived?limit=50' },
107
+ 'GET /workspace/runs-search': { metric: 'runsSearch', path: '/api/v1/workspace/runs-search?q=the' },
108
+ } as const satisfies Record<string, { metric: Metric; path: string }>;
109
+ type Route = keyof typeof ROUTE_PATHS;
110
+ const ROUTES = Object.keys(ROUTE_PATHS) as Route[];
111
+
112
+ interface ChildOptions { size: number; profile: FixtureProfile; process: number; samples: number; budgetSeconds: number; duration: number; seed: number; metrics: Metric[] }
113
+ interface ChildResult {
114
+ size: number; profile: FixtureProfile; process: number; fixtureBytes: number; records: number;
115
+ /** Live records among `records`; absent on results written before the fixture had any. */
116
+ liveRecords?: number;
117
+ /** Serialized size of the record the save rows write; absent on results written before the target was a median-size record. */
118
+ saveTargetBytes?: number;
119
+ /** Absent on results written before `--metrics` existed: those measured `FIRST_TABLE_METRICS`. */
120
+ metrics?: Metric[];
121
+ /** Added by the parent; absent on results written before `--resume` existed. */
122
+ revision?: string;
123
+ sync: Partial<Record<SyncOp, number[]>>;
124
+ routes: Partial<Record<Route, { wall: number[]; block: number[]; responseBytes: number }>>;
125
+ loop?: { p50: number; p99: number; max: number; mean: number; touches: number; expectedTouches: number };
126
+ /** MB per sample. */
127
+ heap?: number[];
128
+ /** Microseconds per call, per sample. */
129
+ getRun?: { live: number[]; finished: number[]; liveIds: number; finishedIds: number };
130
+ }
131
+
132
+ // ---- measurement helpers ------------------------------------------------------------------
133
+
134
+ /** Times `fn` per sample; when `fn` returns a number, that number is the sample instead. */
135
+ async function sampleSync(options: ChildOptions, fn: (iteration: number) => number | void): Promise<number[]> {
136
+ for (let i = 0; i < WARM_UP; i++) { fn(-1 - i); await yieldLoop(); }
137
+ const samples: number[] = [];
138
+ const started = performance.now();
139
+ while (samples.length < options.samples &&
140
+ !(samples.length >= Math.min(MIN_SAMPLES, options.samples) && performance.now() - started > options.budgetSeconds * 1000)) {
141
+ const t0 = performance.now();
142
+ const value = fn(samples.length);
143
+ const elapsed = performance.now() - t0;
144
+ samples.push(value ?? elapsed);
145
+ await yieldLoop();
146
+ }
147
+ return samples;
148
+ }
149
+
150
+ async function sampleAsync(options: ChildOptions, fn: (iteration: number) => Promise<void>): Promise<void> {
151
+ for (let i = 0; i < WARM_UP; i++) await fn(-1 - i);
152
+ const started = performance.now();
153
+ let taken = 0;
154
+ while (taken < options.samples &&
155
+ !(taken >= Math.min(MIN_SAMPLES, options.samples) && performance.now() - started > options.budgetSeconds * 1000)) {
156
+ await fn(taken++);
157
+ }
158
+ }
159
+
160
+ const yieldLoop = () => new Promise<void>((resolve) => setImmediate(resolve));
161
+
162
+ /**
163
+ * The longest synchronous stretch while `body` runs: a `setImmediate` loop records the gap
164
+ * between its turns, and a gap is time the loop could not run. Without `until` the window ends
165
+ * when `body` resolves; with it, watching continues until `until` returns true.
166
+ */
167
+ async function watchBlocking(body: () => Promise<unknown>, until?: (elapsed: number, maxGap: number) => boolean): Promise<{ wall: number; block: number }> {
168
+ let last = performance.now();
169
+ let maxGap = 0;
170
+ let stop = false;
171
+ const start = last;
172
+ const tick = () => {
173
+ const now = performance.now();
174
+ maxGap = Math.max(maxGap, now - last);
175
+ last = now;
176
+ if (!stop) setImmediate(tick);
177
+ };
178
+ setImmediate(tick);
179
+ await body();
180
+ const end = performance.now();
181
+ let block = Math.max(maxGap, end - last);
182
+ if (until) {
183
+ while (!until(performance.now() - start, maxGap)) await sleep(1);
184
+ block = Math.max(maxGap, performance.now() - last);
185
+ }
186
+ stop = true;
187
+ await yieldLoop();
188
+ return { wall: end - start, block };
189
+ }
190
+
191
+ const isoAt = (iteration: number) => new Date(Date.UTC(2026, 9, 2) + (iteration + 10) * 1000).toISOString();
192
+
193
+ function quantile(values: readonly number[], q: number): number {
194
+ if (values.length === 0) return Number.NaN;
195
+ const sorted = [...values].sort((a, b) => a - b);
196
+ const index = Math.min(sorted.length - 1, Math.max(0, Math.ceil(q * sorted.length) - 1));
197
+ return sorted[index]!;
198
+ }
199
+
200
+ // ---- child: one size x profile in a fresh process --------------------------------------------
201
+
202
+ async function runChild(options: ChildOptions, resultPath: string): Promise<void> {
203
+ const root = mkdtempSync(join(tmpdir(), 'cez-bench-'));
204
+ process.env.HSQ_HOME = process.env.CEZ_HOME = join(root, 'home');
205
+ const { resolveHome } = await import('../src/home/resolve.ts');
206
+ const home = resolveHome({ purpose: 'cli' });
207
+ const { Home } = await import('../src/home/home.ts');
208
+ Home.sandbox(home.rootOverride ?? home.root, { layout: home.layout });
209
+ process.env.HSQ_DRY_RUN = process.env.CEZ_DRY_RUN = '1';
210
+ try {
211
+ const { RunStore } = await import('../src/runs/store.ts');
212
+ const { seedRuns } = await import('../src/runs/run-store.testkit.ts');
213
+ // ---- fixture seeding: the one storage-format-specific step ----
214
+ /** Put `records` where `RunStore.open(dataDir)` finds them and return the bytes stored. */
215
+ const seedRunStore = (dataDir: string, records: readonly RunRecord[]): number => {
216
+ seedRuns(dataDir, records);
217
+ return statSync(join(dataDir, 'runs.db')).size;
218
+ };
219
+ const { readRunIndexFromDisk } = await import('../src/runs/run-index.ts');
220
+ const { createApp } = await import('../src/server/server.ts');
221
+ const { registerProject } = await import('../src/workspace/projects.ts');
222
+ const gc = (globalThis as { gc?: () => void }).gc ?? (() => {});
223
+
224
+ const records = generateRunFixture({ runs: options.size, profile: options.profile, seed: options.seed });
225
+ const bootDir = join(root, 'boot/.ai/cezar');
226
+ const coldRoot = join(root, 'cold');
227
+ const fixtureBytes = seedRunStore(bootDir, records);
228
+ seedRunStore(join(coldRoot, '.ai/cezar'), records);
229
+ await registerProject(coldRoot, undefined, home);
230
+ const has = (metric: Metric) => options.metrics.includes(metric);
231
+ // Each open stands for a freshly started process, so the store opened before it is closed
232
+ // first, untimed: left open, its claims (#779, plan step 3) would keep the new one off every
233
+ // live run.
234
+ let opened: RunStoreInstance | undefined;
235
+ const closePrevious = () => { opened?.close(); opened = undefined; };
236
+ const open = () => (opened = RunStore.open(bootDir, { keepLive: true }));
237
+
238
+ // Targets are picked from the fixture data, never from store internals. The first table's
239
+ // targets come from the finished records, which are that table's whole fixture.
240
+ const live = records.filter(isLiveRun);
241
+ const finished = records.filter((run) => !isLiveRun(run));
242
+ const roots = finished.filter((run) => run.delegation?.role === 'root');
243
+ const singleTarget = roots.find((run) => run.delegation?.role === 'root' && run.delegation.conversation)?.id ?? roots[0]!.id;
244
+ const multiTargets = finished.filter((run) => run.delegation && run.delegation.role !== 'invalid').slice(0, MULTI_ROWS).map((run) => run.id);
245
+ const active = finished.find((run) => !run.archived)!;
246
+ // A median-size record, not `finished[length / 2]` (see `pickSaveTarget`): save cost tracks the
247
+ // changed record's size, and that position was 231 KB at 2,000 runs.
248
+ const saveRecord = pickSaveTarget(finished);
249
+ const saveTarget = saveRecord.id;
250
+ const bytes = finished.map((run) => JSON.stringify(run).length);
251
+ const largest = finished[bytes.indexOf(Math.max(...bytes))]!;
252
+ const spaced = Math.min(finished.length, GET_RUN_FINISHED_IDS - 1);
253
+ const finishedIds = [...new Set([largest.id,
254
+ ...Array.from({ length: spaced }, (_, i) => finished[Math.floor((i * finished.length) / spaced)]!.id)])];
255
+
256
+ const result: ChildResult = {
257
+ size: options.size, profile: options.profile, process: options.process, fixtureBytes, records: records.length,
258
+ liveRecords: live.length, saveTargetBytes: JSON.stringify(saveRecord).length, metrics: options.metrics, sync: {}, routes: {},
259
+ };
260
+ const sync = result.sync;
261
+ let store: RunStoreInstance | undefined;
262
+ if (has('heap')) {
263
+ const heap: number[] = [];
264
+ for (let i = 0; i < HEAP_SAMPLES; i++) {
265
+ closePrevious();
266
+ store = undefined;
267
+ gc();
268
+ const before = process.memoryUsage().heapUsed;
269
+ store = open();
270
+ gc();
271
+ heap.push((process.memoryUsage().heapUsed - before) / 1e6);
272
+ }
273
+ result.heap = heap;
274
+ }
275
+ gc();
276
+ if (has('open')) {
277
+ sync.open = await sampleSync(options, () => {
278
+ closePrevious();
279
+ const t0 = performance.now();
280
+ store = open();
281
+ return performance.now() - t0;
282
+ });
283
+ }
284
+ store ??= open();
285
+ gc();
286
+ if (has('getRun')) {
287
+ const s = store;
288
+ /** Microseconds per `getRun`, cycling through `ids` until GET_RUN_MIN_MS have passed. */
289
+ const perCall = (ids: readonly string[]) => {
290
+ let calls = 0;
291
+ let found = 0;
292
+ let elapsed = 0;
293
+ const t0 = performance.now();
294
+ do {
295
+ for (const id of ids) if (s.getRun(id)) found++;
296
+ calls += ids.length;
297
+ elapsed = performance.now() - t0;
298
+ } while (elapsed < GET_RUN_MIN_MS);
299
+ if (found !== calls) throw new Error('getRun missed a fixture id');
300
+ return (elapsed * 1000) / calls;
301
+ };
302
+ const liveIds = live.map((run) => run.id);
303
+ const liveSamples = await sampleSync(options, () => perCall(liveIds));
304
+ gc();
305
+ const finishedSamples = await sampleSync(options, () => perCall(finishedIds));
306
+ result.getRun = { live: liveSamples, finished: finishedSamples, liveIds: liveIds.length, finishedIds: finishedIds.length };
307
+ gc();
308
+ }
309
+ if (has('coldRead')) {
310
+ // The limit `/workspace/runs-index` reads with.
311
+ sync['cold read'] = await sampleSync(options, () => { readRunIndexFromDisk(join(coldRoot, '.ai/cezar'), { archivedWindow: 200 }); });
312
+ gc();
313
+ }
314
+ if (has('save')) {
315
+ const s = store;
316
+ sync['save (flush)'] = await sampleSync(options, (iteration) => {
317
+ s.updateRun(saveTarget, { seenAt: isoAt(iteration) });
318
+ s.flush();
319
+ });
320
+ gc();
321
+ const flushMedian = quantile(sync['save (flush)'], 0.5);
322
+ const flushP95 = quantile(sync['save (flush)'], 0.95);
323
+ const debounced: number[] = [];
324
+ await sampleAsync(options, async (iteration) => {
325
+ const { block } = await watchBlocking(async () => { s.updateRun(saveTarget, { seenAt: isoAt(iteration) }); },
326
+ (elapsed, maxGap) => (elapsed > DEBOUNCE_MS && maxGap >= Math.max(2, flushMedian / 2)) ||
327
+ elapsed > DEBOUNCE_MS + 3 * flushP95 + 200);
328
+ if (iteration >= 0) debounced.push(block);
329
+ await sleep(20);
330
+ });
331
+ sync['save (debounced)'] = debounced;
332
+ gc();
333
+ }
334
+ if (has('commit')) {
335
+ const s = store;
336
+ const commit = (ids: readonly string[]) => s.commitDelegation(ids.map((id) => ({ id, delegation: s.getRun(id)!.delegation! })));
337
+ sync['commit (1 row)'] = await sampleSync(options, () => { commit([singleTarget]); });
338
+ gc();
339
+ sync['commit (10 rows)'] = await sampleSync(options, () => { commit(multiTargets); });
340
+ gc();
341
+ // #779 plan step 3: every durable commit is fenced (claim and revision checked in its
342
+ // transaction). A run already held and claimed pays the fence alone; a run that left memory
343
+ // is claimed first. Its claim is released when it leaves again — the untimed flush.
344
+ s.pin(singleTarget, 'cleanup');
345
+ sync['commit (held run)'] = await sampleSync(options, () => { commit([singleTarget]); });
346
+ s.unpin(singleTarget, 'cleanup');
347
+ gc();
348
+ sync['commit (cold run)'] = await sampleSync(options, () => {
349
+ s.flush();
350
+ const t0 = performance.now();
351
+ commit([singleTarget]);
352
+ return performance.now() - t0;
353
+ });
354
+ gc();
355
+ }
356
+
357
+ const routes = ROUTES.filter((route) => has(ROUTE_PATHS[route].metric));
358
+ if (routes.length > 0) {
359
+ closePrevious();
360
+ const routeStore = open();
361
+ const app = createApp({
362
+ home, repoRoot: join(root, 'boot'), store: routeStore, version: '0.0.0-bench',
363
+ manager: { finishBlockedReason: () => null } as unknown as Parameters<typeof createApp>[0]['manager'],
364
+ });
365
+ for (const route of routes) {
366
+ const wall: number[] = [];
367
+ const block: number[] = [];
368
+ let responseBytes = 0;
369
+ await sampleAsync(options, async (iteration) => {
370
+ const measured = await watchBlocking(async () => {
371
+ const response = await app.request(ROUTE_PATHS[route].path, { headers: { host: '127.0.0.1:4321' } });
372
+ if (response.status !== 200) throw new Error(`${route} answered ${response.status}`);
373
+ responseBytes = (await response.text()).length;
374
+ });
375
+ if (iteration >= 0) { wall.push(measured.wall); block.push(measured.block); }
376
+ });
377
+ result.routes[route] = { wall, block, responseBytes };
378
+ gc();
379
+ }
380
+ }
381
+
382
+ if (has('active')) {
383
+ if (opened !== store) { closePrevious(); store = open(); }
384
+ const s = store;
385
+ const histogram = monitorEventLoopDelay({ resolution: 1 });
386
+ let touches = 0;
387
+ histogram.enable();
388
+ const timer = setInterval(() => {
389
+ s.updateStep(active.id, 'task', { tokensUsed: 100_000 + (touches++ % 900_000) });
390
+ }, TOUCH_EVERY_MS);
391
+ await sleep(options.duration * 1000);
392
+ clearInterval(timer);
393
+ histogram.disable();
394
+ s.flush();
395
+ const ms = (ns: number) => ns / 1e6;
396
+ result.loop = {
397
+ p50: ms(histogram.percentile(50)), p99: ms(histogram.percentile(99)), max: ms(histogram.max), mean: ms(histogram.mean),
398
+ touches, expectedTouches: Math.floor((options.duration * 1000) / TOUCH_EVERY_MS),
399
+ };
400
+ }
401
+
402
+ writeFileSync(resultPath, JSON.stringify(result));
403
+ } finally {
404
+ rmSync(root, { recursive: true, force: true });
405
+ }
406
+ }
407
+
408
+ // ---- parent: orchestrate, aggregate, report -------------------------------------------------
409
+
410
+ interface ParentOptions { sizes: number[]; profiles: FixtureProfile[]; processes: number; samples: number; budgetSeconds: number; duration: number; seed: number; metrics: Metric[]; outDir: string; resume: boolean }
411
+
412
+ function runChildProcess(options: ChildOptions, resultPath: string): Promise<void> {
413
+ const env = { ...process.env };
414
+ for (const key of Object.keys(env)) if (/^(CEZ|HSQ)_/.test(key)) delete env[key];
415
+ const args = [...process.execArgv, '--expose-gc', '--max-old-space-size=8192', SCRIPT, '--child',
416
+ '--size', String(options.size), '--profile', options.profile, '--process', String(options.process),
417
+ '--samples', String(options.samples), '--budget-seconds', String(options.budgetSeconds),
418
+ '--duration', String(options.duration), '--seed', String(options.seed),
419
+ '--metrics', options.metrics.join(','), '--result', resultPath];
420
+ return new Promise((resolve, reject) => {
421
+ const child = spawn(process.execPath, args, { env, stdio: ['ignore', 'inherit', 'inherit'] });
422
+ child.on('error', reject);
423
+ child.on('exit', (code, signal) => code === 0 ? resolve() : reject(new Error(`child ${options.size}/${options.profile}/${options.process} exited ${code ?? signal}`)));
424
+ });
425
+ }
426
+
427
+ function environment() {
428
+ const git = (...args: string[]) => { try { return execFileSync('git', args, { cwd: join(SCRIPT, '..'), encoding: 'utf8' }).trim(); } catch { return 'unknown'; } };
429
+ const cpu = cpus();
430
+ return {
431
+ node: process.version, os: `${osType()} ${release()} ${arch()}`, cpu: `${cpu[0]?.model ?? 'unknown'} x${cpu.length}`,
432
+ memoryGb: Math.round(totalmem() / 1e9), revision: git('rev-parse', 'HEAD'), dirty: git('status', '--porcelain', '--untracked-files=no') !== '',
433
+ date: new Date().toISOString(),
434
+ };
435
+ }
436
+
437
+ interface Cell { median: number; p95: number; n: number; spread: [number, number] }
438
+ const cell = (perProcess: number[][]): Cell => {
439
+ const pooled = perProcess.flat();
440
+ const medians = perProcess.map((values) => quantile(values, 0.5));
441
+ return { median: quantile(pooled, 0.5), p95: quantile(pooled, 0.95), n: pooled.length, spread: [Math.min(...medians), Math.max(...medians)] };
442
+ };
443
+ /** A cell over the processes that measured `pick`, or nothing when none did. */
444
+ const cellOf = (group: readonly ChildResult[], pick: (result: ChildResult) => number[] | undefined): Cell | undefined => {
445
+ const perProcess = group.map(pick).filter((values): values is number[] => values !== undefined);
446
+ return perProcess.length > 0 ? cell(perProcess) : undefined;
447
+ };
448
+
449
+ interface SizeAggregate {
450
+ metrics: Record<string, Cell>; fixtureBytes: number; records: number; liveRecords: number; saveTargetBytes?: number;
451
+ responseBytes: Partial<Record<Route, number>>; getRunIds?: { live: number; finished: number };
452
+ loop?: Record<'p50' | 'p99' | 'max' | 'touchRate', Cell>;
453
+ }
454
+
455
+ function aggregate(results: ChildResult[], options: ParentOptions) {
456
+ const out: Record<string, Record<number, SizeAggregate>> = {};
457
+ for (const profile of options.profiles) {
458
+ out[profile] = {};
459
+ for (const size of options.sizes) {
460
+ const group = results.filter((result) => result.profile === profile && result.size === size);
461
+ if (group.length === 0) continue;
462
+ const metrics: Record<string, Cell> = {};
463
+ const put = (key: string, value: Cell | undefined) => { if (value) metrics[key] = value; };
464
+ const selected = (metric: Metric) => options.metrics.includes(metric);
465
+ if (selected('heap')) put('heap', cellOf(group, (result) => result.heap));
466
+ if (selected('getRun')) {
467
+ put('getRun live', cellOf(group, (result) => result.getRun?.live));
468
+ put('getRun finished', cellOf(group, (result) => result.getRun?.finished));
469
+ }
470
+ for (const op of SYNC_OPS) if (selected(SYNC_OP_METRIC[op])) put(op, cellOf(group, (result) => result.sync[op]));
471
+ const responseBytes: SizeAggregate['responseBytes'] = {};
472
+ for (const route of ROUTES.filter((route) => selected(ROUTE_PATHS[route].metric))) {
473
+ put(`${route} block`, cellOf(group, (result) => result.routes[route]?.block));
474
+ put(`${route} wall`, cellOf(group, (result) => result.routes[route]?.wall));
475
+ const measured = group.find((result) => result.routes[route]);
476
+ if (measured) responseBytes[route] = measured.routes[route]!.responseBytes;
477
+ }
478
+ const loops = selected('active') ? group.flatMap((result) => result.loop ? [result.loop] : []) : [];
479
+ const withGetRun = group.find((result) => result.getRun);
480
+ out[profile]![size] = {
481
+ metrics,
482
+ fixtureBytes: group[0]!.fixtureBytes,
483
+ records: group[0]!.records,
484
+ liveRecords: group[0]!.liveRecords ?? 0,
485
+ ...(group[0]!.saveTargetBytes !== undefined ? { saveTargetBytes: group[0]!.saveTargetBytes } : {}),
486
+ responseBytes,
487
+ ...(withGetRun ? { getRunIds: { live: withGetRun.getRun!.liveIds, finished: withGetRun.getRun!.finishedIds } } : {}),
488
+ ...(loops.length > 0 ? {
489
+ loop: {
490
+ p50: cell(loops.map((loop) => [loop.p50])), p99: cell(loops.map((loop) => [loop.p99])),
491
+ max: cell(loops.map((loop) => [loop.max])),
492
+ touchRate: cell(loops.map((loop) => [loop.touches / loop.expectedTouches])),
493
+ },
494
+ } : {}),
495
+ };
496
+ }
497
+ }
498
+ return out;
499
+ }
500
+
501
+ const fmt = (value: number) => value >= 100 ? value.toFixed(0) : value >= 10 ? value.toFixed(1) : value >= 0.01 ? value.toFixed(2) : value.toPrecision(2);
502
+ const mb = (bytes: number) => `${(bytes / 1e6).toFixed(1)} MB`;
503
+ const SAVE_METRICS = ['save (flush)', 'save (debounced)', 'commit (1 row)', 'commit (10 rows)'];
504
+ /** The gate's "largest block" candidates. `GET /runs` is left out: since #817 the cockpit lists
505
+ * through `GET /run-summaries`, and `GET /runs` serves only older clients. */
506
+ const BLOCKING_METRICS = [...SYNC_OPS.filter((op) => !CLAIM_OPS.includes(op)), 'GET /workspace/runs-index block', 'GET /run-summaries block'];
507
+ const BLOCKING_INPUTS: Record<string, Metric> = {
508
+ ...SYNC_OP_METRIC, 'GET /workspace/runs-index block': 'runsIndex', 'GET /run-summaries block': 'runSummaries',
509
+ };
510
+
511
+ interface RunOutcome { failures: { job: string; error: string }[]; missing: string[]; stopped?: string }
512
+
513
+ function report(aggregated: ReturnType<typeof aggregate>, options: ParentOptions, env: ReturnType<typeof environment>, order: string[],
514
+ results: readonly ChildResult[], outcome: RunOutcome): { markdown: string; gate: unknown } {
515
+ const lines: string[] = ['# Run-store benchmark (#779)', ''];
516
+ reportHeader(env, options, results, lines);
517
+ reportProfileTables(aggregated, options, lines);
518
+ if (options.metrics.includes('active')) lines.push('Loop-delay cells are the median across processes of each process\'s p50, p99 and max.', '');
519
+ if (options.metrics.includes('getRun')) {
520
+ lines.push(`\`getRun\` ids: every live record; finished = up to ${GET_RUN_FINISHED_IDS - 1} evenly spaced finished records plus the largest (${
521
+ Object.values(aggregated).flatMap((bySize) => Object.entries(bySize)).filter(([, entry]) => entry.getRunIds)
522
+ .map(([size, entry]) => `${size} runs: ${entry.getRunIds!.live} live, ${entry.getRunIds!.finished} finished`)
523
+ .filter((value, index, all) => all.indexOf(value) === index).join('; ')}).`, '');
524
+ }
525
+
526
+ // Gate: does single-run save blocking grow with run count beyond noise, and is it the largest?
527
+ const gate = reportGate(aggregated, options, lines);
528
+ reportIncomplete(outcome, lines);
529
+ lines.push('## Run order', '', order.join(', '), '');
530
+ return { markdown: lines.join('\n'), gate };
531
+ }
532
+
533
+ function reportHeader(env: ReturnType<typeof environment>, options: ParentOptions, results: readonly ChildResult[], lines: string[]): void {
534
+ const revisions = new Map<string, number>();
535
+ for (const result of results) revisions.set(result.revision ?? 'unrecorded', (revisions.get(result.revision ?? 'unrecorded') ?? 0) + 1);
536
+ lines.push(`- Revision: \`${env.revision}\`${env.dirty ? ' (uncommitted changes)' : ''}`,
537
+ `- Child results by revision: ${[...revisions].map(([revision, count]) => `\`${revision}\` x${count}`).join(', ')}`, `- Node ${env.node}, ${env.os}, ${env.cpu}, ${env.memoryGb} GB RAM`,
538
+ `- Date: ${env.date}`,
539
+ `- Metrics: ${options.metrics.length === METRICS.length ? 'all' : options.metrics.join(', ')}`,
540
+ `- ${options.processes} fresh processes per size x profile, shuffled; up to ${options.samples} samples per operation after ${WARM_UP} warm-ups, stopping after ${options.budgetSeconds} s once ${MIN_SAMPLES} are taken; ${options.duration} s active simulation; fixture seed ${options.seed}`,
541
+ '- Cells: median / p95 over all processes\' samples, in ms unless the row says otherwise; `n` when the time budget cut sampling short', '');
542
+ }
543
+
544
+ function reportProfileTables(aggregated: ReturnType<typeof aggregate>, options: ParentOptions, lines: string[]): void {
545
+ for (const [profile, bySize] of Object.entries(aggregated)) {
546
+ const sizes = Object.keys(bySize).map(Number);
547
+ if (sizes.length === 0) continue;
548
+ lines.push(`## ${profile}`, '', `| Metric | ${sizes.map((size) => `${size} runs`).join(' | ')} |`, `| --- | ${sizes.map(() => '---:').join(' | ')} |`);
549
+ lines.push(`| Records (live) | ${sizes.map((size) => `${bySize[size]!.records} (${bySize[size]!.liveRecords})`).join(' | ')} |`);
550
+ lines.push(`| Fixture bytes | ${sizes.map((size) => mb(bySize[size]!.fixtureBytes)).join(' | ')} |`);
551
+ if (sizes.some((size) => bySize[size]!.saveTargetBytes !== undefined)) {
552
+ lines.push(`| Save target bytes (median-size finished record) | ${sizes.map((size) => bySize[size]!.saveTargetBytes?.toLocaleString('en-US') ?? '-').join(' | ')} |`);
553
+ }
554
+ const row = (label: string, key: string, expectedN = options.processes * options.samples) => {
555
+ if (!sizes.some((size) => bySize[size]!.metrics[key])) return;
556
+ lines.push(`| ${label} | ${sizes.map((size) => {
557
+ const value = bySize[size]!.metrics[key];
558
+ if (!value) return '-';
559
+ return `${fmt(value.median)} / ${fmt(value.p95)}${value.n < expectedN ? ` (n=${value.n})` : ''}`;
560
+ }).join(' | ')} |`);
561
+ };
562
+ row('Heap after open (MB, `heapUsed` delta after gc)', 'heap', options.processes * HEAP_SAMPLES);
563
+ row('`getRun`, live records (µs per call)', 'getRun live');
564
+ row('`getRun`, finished records incl. the largest (µs per call)', 'getRun finished');
565
+ row('Open, sync', 'open');
566
+ row('Cold read (`readRunIndexFromDisk`), sync', 'cold read');
567
+ row('Save (`updateRun` + `flush`), sync', 'save (flush)');
568
+ row('Save (real 300 ms debounce), longest block', 'save (debounced)');
569
+ row('Commit 1 row (`commitDelegation`), sync', 'commit (1 row)');
570
+ row(`Commit ${MULTI_ROWS} rows (\`commitDelegation\`), sync`, 'commit (10 rows)');
571
+ row('Commit 1 row, run held and claimed (fence only), sync', 'commit (held run)');
572
+ row('Commit 1 row, run claimed first (claim + fence), sync', 'commit (cold run)');
573
+ for (const route of ROUTES) {
574
+ const label = route === 'GET /runs' ? 'GET /runs (older clients)' : route;
575
+ row(`${label}, longest block`, `${route} block`);
576
+ row(`${label}, wall (in-process)`, `${route} wall`);
577
+ }
578
+ for (const route of ROUTES) {
579
+ if (!sizes.some((size) => bySize[size]!.responseBytes[route] !== undefined)) continue;
580
+ lines.push(`| ${route} response | ${sizes.map((size) => {
581
+ const bytes = bySize[size]!.responseBytes[route];
582
+ return bytes === undefined ? '-' : bytes < 1e6 ? `${(bytes / 1e3).toFixed(0)} KB` : mb(bytes);
583
+ }).join(' | ')} |`);
584
+ }
585
+ if (sizes.some((size) => bySize[size]!.loop)) {
586
+ const loopCell = (size: number, render: (loop: NonNullable<SizeAggregate['loop']>) => string) => {
587
+ const loop = bySize[size]!.loop;
588
+ return loop ? render(loop) : '-';
589
+ };
590
+ lines.push(`| Active run: loop delay p50 / p99 / max | ${sizes.map((size) => loopCell(size, (loop) =>
591
+ `${fmt(loop.p50.median)} / ${fmt(loop.p99.median)} / ${fmt(loop.max.median)}`)).join(' | ')} |`);
592
+ lines.push(`| Active run: touches done / scheduled | ${sizes.map((size) => loopCell(size, (loop) =>
593
+ `${(loop.touchRate.median * 100).toFixed(0)}%`)).join(' | ')} |`);
594
+ }
595
+ lines.push('');
596
+ }
597
+ }
598
+
599
+ function reportGate(aggregated: ReturnType<typeof aggregate>, options: ParentOptions, lines: string[]): Record<string, unknown> {
600
+ const gate: Record<string, unknown> = {};
601
+ lines.push('## Gate', '', '`GET /runs` is left out of the comparison: since #817 the cockpit lists through `GET /run-summaries`, and `GET /runs` serves older clients only.', '');
602
+ const missingInputs = [...new Set(Object.values(BLOCKING_INPUTS))].filter((metric) => !options.metrics.includes(metric));
603
+ for (const [profile, bySize] of Object.entries(aggregated)) gateProfile(profile, bySize, options, missingInputs, gate, lines);
604
+ return gate;
605
+ }
606
+
607
+ function gateProfile(profile: string, bySize: Record<number, SizeAggregate>, options: ParentOptions, missingInputs: Metric[],
608
+ gate: Record<string, unknown>, lines: string[]): void {
609
+ const sizes = Object.keys(bySize).map(Number).sort((a, b) => a - b);
610
+ if (sizes.length < 2) { lines.push(`- ${profile}: needs at least two sizes.`); return; }
611
+ const small = sizes[0]!;
612
+ const large = sizes[sizes.length - 1]!;
613
+ const absent = [...new Set([...missingInputs.map((metric) => `\`${metric}\` (not selected)`),
614
+ ...(missingInputs.includes('save') || bySize[small]!.metrics['save (flush)'] ? [] : [`save (flush) at ${small} runs`]),
615
+ ...BLOCKING_METRICS.filter((metric) => !missingInputs.includes(BLOCKING_INPUTS[metric]!) && !bySize[large]!.metrics[metric])
616
+ .map((metric) => `${metric} at ${large} runs`)])];
617
+ if (absent.length > 0) {
618
+ gate[profile] = { small, large, verdict: null, missingInputs: absent };
619
+ lines.push(`### ${profile}`, '', `- No verdict: this pass is missing gate inputs: ${absent.join(', ')}. Rerun with every metric (the default) for one.`, '');
620
+ return;
621
+ }
622
+ const save = (size: number) => bySize[size]!.metrics['save (flush)']!;
623
+ const grows = save(large).median > save(small).p95;
624
+ const threshold = save(small).median + Math.max(0.25 * save(small).median, 1);
625
+ const ranking = BLOCKING_METRICS.map((metric) => ({ metric, median: bySize[large]!.metrics[metric]!.median }))
626
+ .sort((a, b) => b.median - a.median);
627
+ const recurring = ranking.filter((entry) => entry.metric !== 'open');
628
+ const saveLargest = SAVE_METRICS.includes(ranking[0]!.metric);
629
+ const saveLargestRecurring = SAVE_METRICS.includes(recurring[0]!.metric);
630
+ gate[profile] = { small, large, saveSmall: save(small), saveLarge: save(large), grows, threshold, ranking, saveLargest, saveLargestRecurring };
631
+ lines.push(`### ${profile}`, '',
632
+ `- Single-run save (\`updateRun\` + \`flush\`): median ${fmt(save(small).median)} ms (p95 ${fmt(save(small).p95)}) at ${small} runs, ${fmt(save(large).median)} ms (p95 ${fmt(save(large).p95)}) at ${large} runs. ` +
633
+ (grows ? `**It grows beyond noise**: the ${large}-run median is above the ${small}-run p95.` : `**It does not grow beyond noise**: the ${large}-run median is within the ${small}-run p95.`),
634
+ `- For reference, the post-migration criterion x_N <= x_${small} + max(0.25 x_${small}, 1 ms) allows ${fmt(threshold)} ms; today's ${large}-run median ${save(large).median <= threshold ? 'meets' : 'misses'} it.`,
635
+ `- Largest synchronous block at ${large} runs: ${ranking.slice(0, 4).map((entry) => `${entry.metric} ${fmt(entry.median)} ms`).join(', ')}. ` +
636
+ (saveLargest ? '**A save is the largest component.**' : `**A save is not the largest component**; ${ranking[0]!.metric} is.`) +
637
+ (ranking[0]!.metric === 'open' ? ` Excluding open (once per boot), the largest is ${recurring[0]!.metric}${saveLargestRecurring ? ', a save' : ''}.` : ''),
638
+ `- Verdict: ${grows && saveLargest ? 'the evidence gate passes' : grows && saveLargestRecurring ? 'save grows beyond noise and is the largest recurring block, but open is larger' : 'the evidence gate does not pass'} for ${profile}.`, '');
639
+ }
640
+
641
+ function reportIncomplete(outcome: RunOutcome, lines: string[]): void {
642
+ if (outcome.failures.length > 0 || outcome.missing.length > 0 || outcome.stopped) {
643
+ lines.push('## Incomplete run', '', 'Cells aggregate the children that finished.', '');
644
+ if (outcome.stopped) lines.push(`- ${outcome.stopped}`);
645
+ for (const failure of outcome.failures) lines.push(`- ${failure.job} failed: ${failure.error}`);
646
+ if (outcome.missing.length > 0) lines.push(`- Not run: ${outcome.missing.join(', ')}`);
647
+ lines.push('');
648
+ }
649
+ }
650
+
651
+ /** Bytes free to this user on the file systems the children write to. */
652
+ function freeBytes(paths: readonly string[]): number {
653
+ return Math.min(...paths.map((path) => { const fs = statfsSync(path); return fs.bavail * fs.bsize; }));
654
+ }
655
+
656
+ async function runParent(options: ParentOptions): Promise<void> {
657
+ mkdirSync(options.outDir, { recursive: true });
658
+ const jobs: ChildOptions[] = [];
659
+ for (const size of options.sizes) for (const profile of options.profiles) for (let p = 0; p < options.processes; p++) {
660
+ jobs.push({ size, profile, process: p, samples: options.samples, budgetSeconds: options.budgetSeconds, duration: options.duration, seed: options.seed, metrics: options.metrics });
661
+ }
662
+ for (let i = jobs.length - 1; i > 0; i--) { const j = randomInt(i + 1); [jobs[i], jobs[j]] = [jobs[j]!, jobs[i]!]; }
663
+ const env = environment();
664
+ const results: ChildResult[] = [];
665
+ const outcome: RunOutcome = { failures: [], missing: [] };
666
+ const status = new Map<ChildOptions, string>();
667
+ const started = performance.now();
668
+ for (const [index, job] of jobs.entries()) {
669
+ const name = `${job.size}/${job.profile}/${job.process}`;
670
+ const resultPath = join(options.outDir, `child-${job.size}-${job.profile}-${job.process}.json`);
671
+ if (options.resume && existsSync(resultPath)) {
672
+ try {
673
+ const saved = JSON.parse(readFileSync(resultPath, 'utf8')) as ChildResult;
674
+ const measured = saved.metrics ?? FIRST_TABLE_METRICS;
675
+ const lacking = options.metrics.filter((metric) => !measured.includes(metric));
676
+ if (lacking.length === 0) {
677
+ results.push(saved);
678
+ status.set(job, 'reused');
679
+ process.stderr.write(`[bench] ${index + 1}/${jobs.length} ${name} reused\n`);
680
+ continue;
681
+ }
682
+ process.stderr.write(`[bench] ${name}: saved result lacks ${lacking.join(', ')}, running it again\n`);
683
+ } catch {
684
+ process.stderr.write(`[bench] ${name}: saved result unreadable, running it again\n`);
685
+ }
686
+ }
687
+ const free = freeBytes([options.outDir, tmpdir()]);
688
+ if (free < MIN_FREE_BYTES) {
689
+ outcome.stopped = `stopped before ${name}: ${(free / 1e9).toFixed(2)} GB free, ${MIN_FREE_BYTES / 1e9} GB required`;
690
+ process.stderr.write(`[bench] ${outcome.stopped}\n`);
691
+ break;
692
+ }
693
+ process.stderr.write(`[bench] ${index + 1}/${jobs.length} ${name} (${((performance.now() - started) / 60_000).toFixed(1)} min elapsed)\n`);
694
+ try {
695
+ await runChildProcess(job, resultPath);
696
+ // Tag the result with the revision that produced it, so a resumed run can name every revision.
697
+ const result = { ...(JSON.parse(readFileSync(resultPath, 'utf8')) as ChildResult), revision: env.revision };
698
+ writeFileSync(resultPath, JSON.stringify(result));
699
+ results.push(result);
700
+ status.set(job, 'ran');
701
+ } catch (err) {
702
+ const error = err instanceof Error ? err.message : String(err);
703
+ outcome.failures.push({ job: name, error });
704
+ status.set(job, 'failed');
705
+ process.stderr.write(`[bench] ${name} failed: ${error}\n`);
706
+ }
707
+ }
708
+ outcome.missing = jobs.filter((job) => !status.has(job)).map((job) => `${job.size}/${job.profile}/${job.process}`);
709
+ const aggregated = aggregate(results, options);
710
+ const order = jobs.map((job) => `${job.size}/${job.profile}/${job.process}${status.get(job) === 'ran' ? '' : ` (${status.get(job) ?? 'not run'})`}`);
711
+ const { markdown, gate } = report(aggregated, options, env, order, results, outcome);
712
+ writeFileSync(join(options.outDir, 'results.md'), markdown);
713
+ writeFileSync(join(options.outDir, 'results.json'), JSON.stringify({ environment: env, options, order, outcome, aggregated, gate, results }, null, 2));
714
+ process.stdout.write(`${markdown}\n`);
715
+ process.stderr.write(`[bench] wrote ${join(options.outDir, 'results.md')} and results.json\n`);
716
+ if (outcome.failures.length > 0 || outcome.stopped) process.exitCode = 1;
717
+ }
718
+
719
+ // ---- entry ------------------------------------------------------------------------------------
720
+
721
+ const { values } = parseArgs({
722
+ options: {
723
+ child: { type: 'boolean', default: false }, quick: { type: 'boolean', default: false }, resume: { type: 'boolean', default: false },
724
+ sizes: { type: 'string' }, profiles: { type: 'string' }, processes: { type: 'string' }, samples: { type: 'string' },
725
+ 'budget-seconds': { type: 'string' }, duration: { type: 'string' }, seed: { type: 'string' }, metrics: { type: 'string' }, 'out-dir': { type: 'string' },
726
+ size: { type: 'string' }, profile: { type: 'string' }, process: { type: 'string' }, result: { type: 'string' },
727
+ },
728
+ });
729
+ const positive = (raw: string | undefined, fallback: number, name: string) => {
730
+ const value = raw === undefined ? fallback : Number(raw);
731
+ if (!Number.isFinite(value) || value <= 0) throw new Error(`--${name} must be a positive number`);
732
+ return value;
733
+ };
734
+ const profileOf = (raw: string): FixtureProfile => {
735
+ if (!(FIXTURE_PROFILES as readonly string[]).includes(raw)) throw new Error(`unknown profile ${raw}; use ${FIXTURE_PROFILES.join(', ')}`);
736
+ return raw as FixtureProfile;
737
+ };
738
+ const metricOf = (raw: string): Metric => {
739
+ if (!(METRICS as readonly string[]).includes(raw)) throw new Error(`unknown metric ${raw}; use ${METRICS.join(', ')}`);
740
+ return raw as Metric;
741
+ };
742
+ const quick = values.quick;
743
+ const shared = {
744
+ samples: positive(values.samples, quick ? 10 : 100, 'samples'),
745
+ budgetSeconds: positive(values['budget-seconds'], quick ? 10 : 60, 'budget-seconds'),
746
+ duration: positive(values.duration, quick ? 3 : 30, 'duration'),
747
+ seed: positive(values.seed, DEFAULT_FIXTURE_SEED, 'seed'),
748
+ // In METRICS order, so a child's list compares and prints the same however it was typed.
749
+ metrics: (() => {
750
+ const selected = new Set((values.metrics ?? METRICS.join(',')).split(',').map(metricOf));
751
+ return METRICS.filter((metric) => selected.has(metric));
752
+ })(),
753
+ };
754
+
755
+ if (values.child) {
756
+ await runChild({ ...shared, size: positive(values.size, 0, 'size'), profile: profileOf(values.profile ?? ''), process: Number(values.process ?? 0) }, values.result!);
757
+ process.exit(0);
758
+ } else {
759
+ await runParent({
760
+ ...shared,
761
+ sizes: (values.sizes ?? (quick ? '100,1000' : '100,500,1000,2000,5000')).split(',').map((size) => positive(size, 0, 'sizes')),
762
+ profiles: (values.profiles ?? FIXTURE_PROFILES.join(',')).split(',').map(profileOf),
763
+ processes: positive(values.processes, quick ? 2 : 5, 'processes'),
764
+ outDir: values['out-dir'] ?? mkdtempSync(join(tmpdir(), 'cezar-run-store-bench-')),
765
+ resume: values.resume,
766
+ });
767
+ }