@openagt/dashboard 0.8.0 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (940) hide show
  1. package/README.md +6 -6
  2. package/dist/agent-view.d.ts +3 -3
  3. package/dist/bridge-browser.d.ts +4 -4
  4. package/dist/bridge-browser.d.ts.map +1 -1
  5. package/dist/bridge-browser.js +8 -8
  6. package/dist/bridge-browser.js.map +1 -1
  7. package/dist/built-in.d.ts +13 -4
  8. package/dist/built-in.d.ts.map +1 -1
  9. package/dist/built-in.js +45 -4
  10. package/dist/built-in.js.map +1 -1
  11. package/dist/chrome-extension/background.js +11 -11
  12. package/dist/chrome-extension/content.js +37 -37
  13. package/dist/chrome-extension/driver-plan.js +1 -1
  14. package/dist/chrome-extension/fingerprint.js +1 -1
  15. package/dist/chrome-extension/manifest.json +3 -3
  16. package/dist/chrome-extension/options.html +4 -4
  17. package/dist/chrome-extension/options.js +4 -4
  18. package/dist/cli.d.ts +1 -1
  19. package/dist/cli.js +7 -7
  20. package/dist/cli.js.map +1 -1
  21. package/dist/client.d.ts +1 -1
  22. package/dist/client.js +2 -2
  23. package/dist/cloud-run-state.d.ts +1 -1
  24. package/dist/cloud-scratch-refs.js +7 -7
  25. package/dist/cloud-scratch-refs.js.map +1 -1
  26. package/dist/cloud-work.js +2 -2
  27. package/dist/daemon-runtime.d.ts +5 -4
  28. package/dist/daemon-runtime.d.ts.map +1 -1
  29. package/dist/daemon-runtime.js +59 -9
  30. package/dist/daemon-runtime.js.map +1 -1
  31. package/dist/daemon-services.d.ts +4 -3
  32. package/dist/daemon-services.d.ts.map +1 -1
  33. package/dist/daemon-services.js +14 -8
  34. package/dist/daemon-services.js.map +1 -1
  35. package/dist/daemon-tick.js +1 -1
  36. package/dist/daemon.d.ts +1 -12
  37. package/dist/daemon.d.ts.map +1 -1
  38. package/dist/daemon.js +9 -32
  39. package/dist/daemon.js.map +1 -1
  40. package/dist/dashboard/agent-handoff.d.ts +4 -4
  41. package/dist/dashboard/agent-handoff.js +7 -7
  42. package/dist/dashboard/agent-handoff.js.map +1 -1
  43. package/dist/dashboard/bridge-endpoints.d.ts +3 -3
  44. package/dist/dashboard/bridge-endpoints.js +3 -3
  45. package/dist/dashboard/content-type.js +1 -1
  46. package/dist/dashboard/docs.d.ts +1 -1
  47. package/dist/dashboard/docs.js +1 -1
  48. package/dist/dashboard/git-status.d.ts +1 -1
  49. package/dist/dashboard/index.d.ts +1 -1
  50. package/dist/dashboard/index.d.ts.map +1 -1
  51. package/dist/dashboard/interventions.d.ts +2 -2
  52. package/dist/dashboard/open-in-app.d.ts +3 -3
  53. package/dist/dashboard/open-in-app.js +4 -4
  54. package/dist/dashboard/open-questions.d.ts +2 -2
  55. package/dist/dashboard/projects.d.ts +6 -5
  56. package/dist/dashboard/projects.d.ts.map +1 -1
  57. package/dist/dashboard/projects.js.map +1 -1
  58. package/dist/dashboard/pull-requests.d.ts +5 -5
  59. package/dist/dashboard/pull-requests.d.ts.map +1 -1
  60. package/dist/dashboard/pull-requests.js +2 -2
  61. package/dist/dashboard/pull-requests.js.map +1 -1
  62. package/dist/dashboard/relay-endpoints.d.ts +3 -3
  63. package/dist/dashboard/relay-endpoints.js +1 -1
  64. package/dist/dashboard/remote-run.d.ts +5 -5
  65. package/dist/dashboard/remote-run.js +3 -3
  66. package/dist/dashboard/rpc-serve.d.ts +7 -4
  67. package/dist/dashboard/rpc-serve.d.ts.map +1 -1
  68. package/dist/dashboard/rpc-serve.js.map +1 -1
  69. package/dist/dashboard/run-inbox.d.ts +2 -2
  70. package/dist/dashboard/run-inbox.js +4 -4
  71. package/dist/dashboard/run-inbox.js.map +1 -1
  72. package/dist/dashboard/server.d.ts +6 -4
  73. package/dist/dashboard/server.d.ts.map +1 -1
  74. package/dist/dashboard/server.js +3 -2
  75. package/dist/dashboard/server.js.map +1 -1
  76. package/dist/dashboard/static.js +1 -1
  77. package/dist/dashboard/types.d.ts +29 -3
  78. package/dist/dashboard/types.d.ts.map +1 -1
  79. package/dist/dashboard/web-start-endpoints.d.ts +1 -1
  80. package/dist/dashboard/web-start-endpoints.d.ts.map +1 -1
  81. package/dist/dashboard/web-start-endpoints.js +1 -1
  82. package/dist/dashboard/web-start-endpoints.js.map +1 -1
  83. package/dist/dashboard-bundle/assets/{main-om0WOAku.js → main-B98UOA3_.js} +48 -48
  84. package/dist/dashboard-bundle/assets/main-ByRjbCiA.css +2 -0
  85. package/dist/dashboard-bundle/assets/{module-jASZmfSB.js → module-v213KWfH.js} +4 -4
  86. package/dist/dashboard-bundle/host/module.js +1 -1
  87. package/dist/dashboard-bundle/index.html +6 -6
  88. package/dist/dashboard-rpc/context.d.ts +2 -0
  89. package/dist/dashboard-rpc/context.d.ts.map +1 -1
  90. package/dist/dashboard-rpc/context.js +4 -0
  91. package/dist/dashboard-rpc/context.js.map +1 -1
  92. package/dist/dashboard-rpc/control.d.ts +1 -1
  93. package/dist/dashboard-rpc/control.js +3 -3
  94. package/dist/dashboard-rpc/control.js.map +1 -1
  95. package/dist/dashboard-rpc/events.d.ts +3 -3
  96. package/dist/dashboard-rpc/index.d.ts +1 -1
  97. package/dist/dashboard-rpc/index.d.ts.map +1 -1
  98. package/dist/dashboard-rpc/index.js +1 -1
  99. package/dist/dashboard-rpc/index.js.map +1 -1
  100. package/dist/dashboard-rpc/modules.d.ts +8 -6
  101. package/dist/dashboard-rpc/modules.d.ts.map +1 -1
  102. package/dist/dashboard-rpc/modules.js +8 -6
  103. package/dist/dashboard-rpc/modules.js.map +1 -1
  104. package/dist/dashboard-rpc/preferences.d.ts +2 -2
  105. package/dist/dashboard-rpc/preferences.d.ts.map +1 -1
  106. package/dist/dashboard-rpc/preferences.js +2 -2
  107. package/dist/dashboard-rpc/preferences.js.map +1 -1
  108. package/dist/dashboard-rpc/projects.d.ts +29 -3
  109. package/dist/dashboard-rpc/projects.d.ts.map +1 -1
  110. package/dist/dashboard-rpc/projects.js +49 -7
  111. package/dist/dashboard-rpc/projects.js.map +1 -1
  112. package/dist/dashboard-rpc/reads.d.ts +3 -3
  113. package/dist/dashboard-rpc/reads.js +1 -1
  114. package/dist/dashboard-rpc/test-context.d.ts.map +1 -1
  115. package/dist/dashboard-rpc/test-context.js +4 -3
  116. package/dist/dashboard-rpc/test-context.js.map +1 -1
  117. package/dist/event-stream.d.ts +1 -1
  118. package/dist/event-stream.js +1 -1
  119. package/dist/events.d.ts +8 -8
  120. package/dist/events.d.ts.map +1 -1
  121. package/dist/index.d.ts +3 -2
  122. package/dist/index.d.ts.map +1 -1
  123. package/dist/install.d.ts +9 -7
  124. package/dist/install.d.ts.map +1 -1
  125. package/dist/install.js +28 -14
  126. package/dist/install.js.map +1 -1
  127. package/dist/module-server.d.ts +1 -1
  128. package/dist/module-types/dashboard/lib/route.d.ts +2 -1
  129. package/dist/module-types/dashboard/lib/use-modules.d.ts +4 -3
  130. package/dist/module-types/dashboard/module/index.d.ts +5 -5
  131. package/dist/module-types/src/agent-view.d.ts +3 -3
  132. package/dist/module-types/src/bridge-browser.d.ts +4 -4
  133. package/dist/module-types/src/built-in.d.ts +13 -4
  134. package/dist/module-types/src/client.d.ts +1 -1
  135. package/dist/module-types/src/cloud-run-state.d.ts +1 -1
  136. package/dist/module-types/src/dashboard/agent-handoff.d.ts +4 -4
  137. package/dist/module-types/src/dashboard/bridge-endpoints.d.ts +3 -3
  138. package/dist/module-types/src/dashboard/docs.d.ts +1 -1
  139. package/dist/module-types/src/dashboard/git-status.d.ts +1 -1
  140. package/dist/module-types/src/dashboard/interventions.d.ts +2 -2
  141. package/dist/module-types/src/dashboard/open-in-app.d.ts +3 -3
  142. package/dist/module-types/src/dashboard/open-questions.d.ts +2 -2
  143. package/dist/module-types/src/dashboard/projects.d.ts +6 -5
  144. package/dist/module-types/src/dashboard/pull-requests.d.ts +5 -5
  145. package/dist/module-types/src/dashboard/remote-run.d.ts +5 -5
  146. package/dist/module-types/src/dashboard/rpc-serve.d.ts +7 -4
  147. package/dist/module-types/src/dashboard/run-inbox.d.ts +2 -2
  148. package/dist/module-types/src/dashboard/types.d.ts +29 -3
  149. package/dist/module-types/src/dashboard-rpc/context.d.ts +2 -0
  150. package/dist/module-types/src/dashboard-rpc/control.d.ts +1 -1
  151. package/dist/module-types/src/dashboard-rpc/events.d.ts +3 -3
  152. package/dist/module-types/src/dashboard-rpc/index.d.ts +1 -1
  153. package/dist/module-types/src/dashboard-rpc/modules.d.ts +8 -6
  154. package/dist/module-types/src/dashboard-rpc/preferences.d.ts +2 -2
  155. package/dist/module-types/src/dashboard-rpc/projects.d.ts +29 -3
  156. package/dist/module-types/src/dashboard-rpc/reads.d.ts +3 -3
  157. package/dist/module-types/src/event-stream.d.ts +1 -1
  158. package/dist/module-types/src/events.d.ts +8 -8
  159. package/dist/module-types/src/index.d.ts +3 -2
  160. package/dist/module-types/src/open-choices.d.ts +2 -2
  161. package/dist/module-types/src/{framework-dir.d.ts → openagent-dir.d.ts} +2 -2
  162. package/dist/module-types/src/openagent-gitignore.d.ts +11 -0
  163. package/dist/module-types/src/project-commands.d.ts +1 -1
  164. package/dist/module-types/src/project-errors.d.ts +11 -7
  165. package/dist/module-types/src/project-hooks.d.ts +4 -4
  166. package/dist/module-types/src/project-modules.d.ts +5 -5
  167. package/dist/module-types/src/project-presets.d.ts +4 -4
  168. package/dist/module-types/src/project.d.ts +6 -6
  169. package/dist/module-types/src/publish-levels.d.ts +4 -4
  170. package/dist/module-types/src/quota-boundary.d.ts +2 -2
  171. package/dist/module-types/src/registry.d.ts +13 -7
  172. package/dist/module-types/src/store/agent-checkout.d.ts +1 -1
  173. package/dist/module-types/src/store/agent-store.d.ts +6 -6
  174. package/dist/module-types/src/store/branches.d.ts +7 -7
  175. package/dist/module-types/src/store/git-host.d.ts +7 -7
  176. package/dist/module-types/src/store/provided.d.ts +3 -3
  177. package/dist/module-types/src/store/queue.d.ts +8 -8
  178. package/dist/module-types/src/store/repository.d.ts +2 -2
  179. package/dist/module-types/src/store/run-record.d.ts +10 -10
  180. package/dist/module-types/src/store/runs.d.ts +6 -6
  181. package/dist/module-types/src/store/tickets.d.ts +7 -7
  182. package/dist/module-types/src/terminal.d.ts +3 -3
  183. package/dist/open-choices.d.ts +2 -2
  184. package/dist/{framework-dir.js → openagent-dir.d.ts} +3 -3
  185. package/dist/openagent-dir.d.ts.map +1 -0
  186. package/dist/{framework-dir.d.ts → openagent-dir.js} +3 -3
  187. package/dist/openagent-dir.js.map +1 -0
  188. package/dist/openagent-gitignore.d.ts +12 -0
  189. package/dist/openagent-gitignore.d.ts.map +1 -0
  190. package/dist/openagent-gitignore.js +19 -0
  191. package/dist/openagent-gitignore.js.map +1 -0
  192. package/dist/pick-directory.js +2 -2
  193. package/dist/pick-directory.js.map +1 -1
  194. package/dist/project-commands.d.ts +1 -1
  195. package/dist/project-commands.js +1 -1
  196. package/dist/project-errors.d.ts +11 -7
  197. package/dist/project-errors.d.ts.map +1 -1
  198. package/dist/project-errors.js +10 -8
  199. package/dist/project-errors.js.map +1 -1
  200. package/dist/project-hooks.d.ts +4 -4
  201. package/dist/project-hooks.d.ts.map +1 -1
  202. package/dist/project-hooks.js +8 -8
  203. package/dist/project-hooks.js.map +1 -1
  204. package/dist/project-modules.d.ts +5 -5
  205. package/dist/project-modules.js +2 -2
  206. package/dist/project-presets.d.ts +4 -4
  207. package/dist/project-presets.d.ts.map +1 -1
  208. package/dist/project-presets.js +9 -9
  209. package/dist/project-presets.js.map +1 -1
  210. package/dist/project.d.ts +6 -6
  211. package/dist/project.js +6 -6
  212. package/dist/publish-levels.d.ts +4 -4
  213. package/dist/publish-levels.d.ts.map +1 -1
  214. package/dist/publish-levels.js +7 -5
  215. package/dist/publish-levels.js.map +1 -1
  216. package/dist/quota-boundary.d.ts +2 -2
  217. package/dist/quota-boundary.js +2 -2
  218. package/dist/registry.d.ts +13 -7
  219. package/dist/registry.d.ts.map +1 -1
  220. package/dist/registry.js +19 -3
  221. package/dist/registry.js.map +1 -1
  222. package/dist/remove-files.d.ts +24 -0
  223. package/dist/remove-files.d.ts.map +1 -0
  224. package/dist/remove-files.js +98 -0
  225. package/dist/remove-files.js.map +1 -0
  226. package/dist/store/agent-checkout.d.ts +1 -1
  227. package/dist/store/agent-checkout.js +3 -3
  228. package/dist/store/agent-checkout.js.map +1 -1
  229. package/dist/store/agent-store.d.ts +6 -6
  230. package/dist/store/agent-store.js +8 -8
  231. package/dist/store/agent-store.js.map +1 -1
  232. package/dist/store/branches.d.ts +7 -7
  233. package/dist/store/branches.d.ts.map +1 -1
  234. package/dist/store/branches.js +1 -1
  235. package/dist/store/branches.js.map +1 -1
  236. package/dist/store/git-host.d.ts +7 -7
  237. package/dist/store/git-host.d.ts.map +1 -1
  238. package/dist/store/git-host.js +1 -1
  239. package/dist/store/git-host.js.map +1 -1
  240. package/dist/store/provided.d.ts +3 -3
  241. package/dist/store/provided.d.ts.map +1 -1
  242. package/dist/store/provided.js +3 -3
  243. package/dist/store/provided.js.map +1 -1
  244. package/dist/store/queue.d.ts +8 -8
  245. package/dist/store/queue.d.ts.map +1 -1
  246. package/dist/store/queue.js +1 -1
  247. package/dist/store/queue.js.map +1 -1
  248. package/dist/store/repository.d.ts +2 -2
  249. package/dist/store/run-record.d.ts +10 -10
  250. package/dist/store/run-record.d.ts.map +1 -1
  251. package/dist/store/run-record.js +7 -7
  252. package/dist/store/run-record.js.map +1 -1
  253. package/dist/store/runs.d.ts +6 -6
  254. package/dist/store/runs.d.ts.map +1 -1
  255. package/dist/store/runs.js +2 -2
  256. package/dist/store/runs.js.map +1 -1
  257. package/dist/store/tickets.d.ts +7 -7
  258. package/dist/store/tickets.d.ts.map +1 -1
  259. package/dist/store/tickets.js +1 -1
  260. package/dist/store/tickets.js.map +1 -1
  261. package/dist/terminal.d.ts +3 -3
  262. package/dist/terminal.js +3 -3
  263. package/package.json +19 -19
  264. package/dist/agent-archive.d.ts +0 -35
  265. package/dist/agent-archive.d.ts.map +0 -1
  266. package/dist/agent-archive.js +0 -67
  267. package/dist/agent-archive.js.map +0 -1
  268. package/dist/agent-commit.d.ts +0 -140
  269. package/dist/agent-commit.d.ts.map +0 -1
  270. package/dist/agent-commit.js +0 -254
  271. package/dist/agent-commit.js.map +0 -1
  272. package/dist/agent-driver.d.ts +0 -28
  273. package/dist/agent-driver.d.ts.map +0 -1
  274. package/dist/agent-driver.js +0 -18
  275. package/dist/agent-driver.js.map +0 -1
  276. package/dist/agent-location.d.ts +0 -11
  277. package/dist/agent-location.d.ts.map +0 -1
  278. package/dist/agent-location.js +0 -10
  279. package/dist/agent-location.js.map +0 -1
  280. package/dist/agent-messages.d.ts +0 -55
  281. package/dist/agent-messages.d.ts.map +0 -1
  282. package/dist/agent-messages.js +0 -73
  283. package/dist/agent-messages.js.map +0 -1
  284. package/dist/agent-names.d.ts +0 -24
  285. package/dist/agent-names.d.ts.map +0 -1
  286. package/dist/agent-names.js +0 -33
  287. package/dist/agent-names.js.map +0 -1
  288. package/dist/agent-options.d.ts +0 -45
  289. package/dist/agent-options.d.ts.map +0 -1
  290. package/dist/agent-options.js +0 -83
  291. package/dist/agent-options.js.map +0 -1
  292. package/dist/agent-spec.d.ts +0 -56
  293. package/dist/agent-spec.d.ts.map +0 -1
  294. package/dist/agent-spec.js +0 -56
  295. package/dist/agent-spec.js.map +0 -1
  296. package/dist/agent-telemetry.d.ts +0 -88
  297. package/dist/agent-telemetry.d.ts.map +0 -1
  298. package/dist/agent-telemetry.js +0 -97
  299. package/dist/agent-telemetry.js.map +0 -1
  300. package/dist/agent.d.ts +0 -113
  301. package/dist/agent.d.ts.map +0 -1
  302. package/dist/agent.js +0 -168
  303. package/dist/agent.js.map +0 -1
  304. package/dist/archived-agent-patch.d.ts +0 -14
  305. package/dist/archived-agent-patch.d.ts.map +0 -1
  306. package/dist/archived-agent-patch.js +0 -22
  307. package/dist/archived-agent-patch.js.map +0 -1
  308. package/dist/auto-pm.d.ts +0 -538
  309. package/dist/auto-pm.d.ts.map +0 -1
  310. package/dist/auto-pm.js +0 -707
  311. package/dist/auto-pm.js.map +0 -1
  312. package/dist/await-gate.d.ts +0 -184
  313. package/dist/await-gate.d.ts.map +0 -1
  314. package/dist/await-gate.js +0 -252
  315. package/dist/await-gate.js.map +0 -1
  316. package/dist/branch-links-pass.d.ts +0 -15
  317. package/dist/branch-links-pass.d.ts.map +0 -1
  318. package/dist/branch-links-pass.js +0 -13
  319. package/dist/branch-links-pass.js.map +0 -1
  320. package/dist/branch-links.d.ts +0 -53
  321. package/dist/branch-links.d.ts.map +0 -1
  322. package/dist/branch-links.js +0 -94
  323. package/dist/branch-links.js.map +0 -1
  324. package/dist/branch-names.d.ts +0 -57
  325. package/dist/branch-names.d.ts.map +0 -1
  326. package/dist/branch-names.js +0 -72
  327. package/dist/branch-names.js.map +0 -1
  328. package/dist/ci-watch.d.ts +0 -123
  329. package/dist/ci-watch.d.ts.map +0 -1
  330. package/dist/ci-watch.js +0 -228
  331. package/dist/ci-watch.js.map +0 -1
  332. package/dist/claude-trust.d.ts +0 -16
  333. package/dist/claude-trust.d.ts.map +0 -1
  334. package/dist/claude-trust.js +0 -72
  335. package/dist/claude-trust.js.map +0 -1
  336. package/dist/cli-exec.d.ts +0 -36
  337. package/dist/cli-exec.d.ts.map +0 -1
  338. package/dist/cli-exec.js +0 -44
  339. package/dist/cli-exec.js.map +0 -1
  340. package/dist/closing-keywords.d.ts +0 -28
  341. package/dist/closing-keywords.d.ts.map +0 -1
  342. package/dist/closing-keywords.js +0 -49
  343. package/dist/closing-keywords.js.map +0 -1
  344. package/dist/config-layers.d.ts +0 -62
  345. package/dist/config-layers.d.ts.map +0 -1
  346. package/dist/config-layers.js +0 -70
  347. package/dist/config-layers.js.map +0 -1
  348. package/dist/config.d.ts +0 -54
  349. package/dist/config.d.ts.map +0 -1
  350. package/dist/config.js +0 -78
  351. package/dist/config.js.map +0 -1
  352. package/dist/consumption-guard.d.ts +0 -53
  353. package/dist/consumption-guard.d.ts.map +0 -1
  354. package/dist/consumption-guard.js +0 -69
  355. package/dist/consumption-guard.js.map +0 -1
  356. package/dist/control.d.ts +0 -75
  357. package/dist/control.d.ts.map +0 -1
  358. package/dist/control.js +0 -68
  359. package/dist/control.js.map +0 -1
  360. package/dist/conversation-commit.d.ts +0 -166
  361. package/dist/conversation-commit.d.ts.map +0 -1
  362. package/dist/conversation-commit.js +0 -309
  363. package/dist/conversation-commit.js.map +0 -1
  364. package/dist/conversations.d.ts +0 -93
  365. package/dist/conversations.d.ts.map +0 -1
  366. package/dist/conversations.js +0 -176
  367. package/dist/conversations.js.map +0 -1
  368. package/dist/daemon-writes.d.ts +0 -33
  369. package/dist/daemon-writes.d.ts.map +0 -1
  370. package/dist/daemon-writes.js +0 -45
  371. package/dist/daemon-writes.js.map +0 -1
  372. package/dist/dashboard/agent-tree.d.ts +0 -106
  373. package/dist/dashboard/agent-tree.d.ts.map +0 -1
  374. package/dist/dashboard/agent-tree.js +0 -180
  375. package/dist/dashboard/agent-tree.js.map +0 -1
  376. package/dist/dashboard/browser-proxy.d.ts +0 -41
  377. package/dist/dashboard/browser-proxy.d.ts.map +0 -1
  378. package/dist/dashboard/browser-proxy.js +0 -96
  379. package/dist/dashboard/browser-proxy.js.map +0 -1
  380. package/dist/dashboard/discord-webhook.d.ts +0 -17
  381. package/dist/dashboard/discord-webhook.d.ts.map +0 -1
  382. package/dist/dashboard/discord-webhook.js +0 -36
  383. package/dist/dashboard/discord-webhook.js.map +0 -1
  384. package/dist/dashboard/file-diff.d.ts +0 -67
  385. package/dist/dashboard/file-diff.d.ts.map +0 -1
  386. package/dist/dashboard/file-diff.js +0 -132
  387. package/dist/dashboard/file-diff.js.map +0 -1
  388. package/dist/dashboard/file-read.d.ts +0 -42
  389. package/dist/dashboard/file-read.d.ts.map +0 -1
  390. package/dist/dashboard/file-read.js +0 -69
  391. package/dist/dashboard/file-read.js.map +0 -1
  392. package/dist/dashboard/file-status.d.ts +0 -21
  393. package/dist/dashboard/file-status.d.ts.map +0 -1
  394. package/dist/dashboard/file-status.js +0 -37
  395. package/dist/dashboard/file-status.js.map +0 -1
  396. package/dist/dashboard/gh.d.ts +0 -131
  397. package/dist/dashboard/gh.d.ts.map +0 -1
  398. package/dist/dashboard/gh.js +0 -150
  399. package/dist/dashboard/gh.js.map +0 -1
  400. package/dist/dashboard/github.d.ts +0 -11
  401. package/dist/dashboard/github.d.ts.map +0 -1
  402. package/dist/dashboard/github.js +0 -33
  403. package/dist/dashboard/github.js.map +0 -1
  404. package/dist/dashboard/run-handoff.d.ts +0 -311
  405. package/dist/dashboard/run-handoff.d.ts.map +0 -1
  406. package/dist/dashboard/run-handoff.js +0 -485
  407. package/dist/dashboard/run-handoff.js.map +0 -1
  408. package/dist/dashboard/scheduler-state.d.ts +0 -73
  409. package/dist/dashboard/scheduler-state.d.ts.map +0 -1
  410. package/dist/dashboard/scheduler-state.js +0 -120
  411. package/dist/dashboard/scheduler-state.js.map +0 -1
  412. package/dist/dashboard/subagent-settings.d.ts +0 -26
  413. package/dist/dashboard/subagent-settings.d.ts.map +0 -1
  414. package/dist/dashboard/subagent-settings.js +0 -52
  415. package/dist/dashboard/subagent-settings.js.map +0 -1
  416. package/dist/dashboard/telefunc-serve.d.ts +0 -118
  417. package/dist/dashboard/telefunc-serve.d.ts.map +0 -1
  418. package/dist/dashboard/telefunc-serve.js +0 -108
  419. package/dist/dashboard/telefunc-serve.js.map +0 -1
  420. package/dist/dashboard/tickets.d.ts +0 -29
  421. package/dist/dashboard/tickets.d.ts.map +0 -1
  422. package/dist/dashboard/tickets.js +0 -38
  423. package/dist/dashboard/tickets.js.map +0 -1
  424. package/dist/dashboard/widget-serve.d.ts +0 -15
  425. package/dist/dashboard/widget-serve.d.ts.map +0 -1
  426. package/dist/dashboard/widget-serve.js +0 -45
  427. package/dist/dashboard/widget-serve.js.map +0 -1
  428. package/dist/dashboard-bundle/assets/main-B3HghPQy.css +0 -2
  429. package/dist/dashboard-client/assets/chunks/chunk-BF9pJudf.js +0 -4
  430. package/dist/dashboard-client/assets/entries/entry-client-routing.CT1e9F0o.js +0 -1
  431. package/dist/dashboard-client/assets/entries/pages_index.CkW5JQ8X.js +0 -428
  432. package/dist/dashboard-client/assets/static/layouts_tailwind-00e65532.8OjKGAbA.css +0 -2
  433. package/dist/dashboard-client/index.html +0 -27
  434. package/dist/dashboard-client/index.pageContext.json +0 -1
  435. package/dist/dashboard-client/logo-animated.svg +0 -34
  436. package/dist/dashboard-client/logo.svg +0 -16
  437. package/dist/dashboard-rpc/control.telefunc.d.ts +0 -176
  438. package/dist/dashboard-rpc/control.telefunc.d.ts.map +0 -1
  439. package/dist/dashboard-rpc/control.telefunc.js +0 -373
  440. package/dist/dashboard-rpc/control.telefunc.js.map +0 -1
  441. package/dist/dashboard-rpc/devices.telefunc.d.ts +0 -9
  442. package/dist/dashboard-rpc/devices.telefunc.d.ts.map +0 -1
  443. package/dist/dashboard-rpc/devices.telefunc.js +0 -12
  444. package/dist/dashboard-rpc/devices.telefunc.js.map +0 -1
  445. package/dist/dashboard-rpc/events.telefunc.d.ts +0 -36
  446. package/dist/dashboard-rpc/events.telefunc.d.ts.map +0 -1
  447. package/dist/dashboard-rpc/events.telefunc.js +0 -70
  448. package/dist/dashboard-rpc/events.telefunc.js.map +0 -1
  449. package/dist/dashboard-rpc/preferences.telefunc.d.ts +0 -97
  450. package/dist/dashboard-rpc/preferences.telefunc.d.ts.map +0 -1
  451. package/dist/dashboard-rpc/preferences.telefunc.js +0 -157
  452. package/dist/dashboard-rpc/preferences.telefunc.js.map +0 -1
  453. package/dist/dashboard-rpc/projects.telefunc.d.ts +0 -56
  454. package/dist/dashboard-rpc/projects.telefunc.d.ts.map +0 -1
  455. package/dist/dashboard-rpc/projects.telefunc.js +0 -96
  456. package/dist/dashboard-rpc/projects.telefunc.js.map +0 -1
  457. package/dist/dashboard-rpc/quota.telefunc.d.ts +0 -40
  458. package/dist/dashboard-rpc/quota.telefunc.d.ts.map +0 -1
  459. package/dist/dashboard-rpc/quota.telefunc.js +0 -84
  460. package/dist/dashboard-rpc/quota.telefunc.js.map +0 -1
  461. package/dist/dashboard-rpc/reads.telefunc.d.ts +0 -197
  462. package/dist/dashboard-rpc/reads.telefunc.d.ts.map +0 -1
  463. package/dist/dashboard-rpc/reads.telefunc.js +0 -403
  464. package/dist/dashboard-rpc/reads.telefunc.js.map +0 -1
  465. package/dist/dashboard-rpc/register.d.ts +0 -18
  466. package/dist/dashboard-rpc/register.d.ts.map +0 -1
  467. package/dist/dashboard-rpc/register.js +0 -66
  468. package/dist/dashboard-rpc/register.js.map +0 -1
  469. package/dist/dashboard-rpc/relay-run.d.ts +0 -9
  470. package/dist/dashboard-rpc/relay-run.d.ts.map +0 -1
  471. package/dist/dashboard-rpc/relay-run.js +0 -21
  472. package/dist/dashboard-rpc/relay-run.js.map +0 -1
  473. package/dist/dashboard-rpc/stream-channel.d.ts +0 -23
  474. package/dist/dashboard-rpc/stream-channel.d.ts.map +0 -1
  475. package/dist/dashboard-rpc/stream-channel.js +0 -52
  476. package/dist/dashboard-rpc/stream-channel.js.map +0 -1
  477. package/dist/dashboard-rpc/subagents.d.ts +0 -12
  478. package/dist/dashboard-rpc/subagents.d.ts.map +0 -1
  479. package/dist/dashboard-rpc/subagents.js +0 -13
  480. package/dist/dashboard-rpc/subagents.js.map +0 -1
  481. package/dist/dashboard-rpc/widgets.d.ts +0 -33
  482. package/dist/dashboard-rpc/widgets.d.ts.map +0 -1
  483. package/dist/dashboard-rpc/widgets.js +0 -54
  484. package/dist/dashboard-rpc/widgets.js.map +0 -1
  485. package/dist/data-branch.d.ts +0 -120
  486. package/dist/data-branch.d.ts.map +0 -1
  487. package/dist/data-branch.js +0 -319
  488. package/dist/data-branch.js.map +0 -1
  489. package/dist/discord/bot.d.ts +0 -61
  490. package/dist/discord/bot.d.ts.map +0 -1
  491. package/dist/discord/bot.js +0 -94
  492. package/dist/discord/bot.js.map +0 -1
  493. package/dist/discord/gateway.d.ts +0 -137
  494. package/dist/discord/gateway.d.ts.map +0 -1
  495. package/dist/discord/gateway.js +0 -315
  496. package/dist/discord/gateway.js.map +0 -1
  497. package/dist/discord/live-run.d.ts +0 -31
  498. package/dist/discord/live-run.d.ts.map +0 -1
  499. package/dist/discord/live-run.js +0 -57
  500. package/dist/discord/live-run.js.map +0 -1
  501. package/dist/discord/reply-mirror.d.ts +0 -83
  502. package/dist/discord/reply-mirror.d.ts.map +0 -1
  503. package/dist/discord/reply-mirror.js +0 -84
  504. package/dist/discord/reply-mirror.js.map +0 -1
  505. package/dist/discord/rest.d.ts +0 -20
  506. package/dist/discord/rest.d.ts.map +0 -1
  507. package/dist/discord/rest.js +0 -41
  508. package/dist/discord/rest.js.map +0 -1
  509. package/dist/discord/routing.d.ts +0 -81
  510. package/dist/discord/routing.d.ts.map +0 -1
  511. package/dist/discord/routing.js +0 -91
  512. package/dist/discord/routing.js.map +0 -1
  513. package/dist/discord-credentials-store.d.ts +0 -14
  514. package/dist/discord-credentials-store.d.ts.map +0 -1
  515. package/dist/discord-credentials-store.js +0 -53
  516. package/dist/discord-credentials-store.js.map +0 -1
  517. package/dist/discord-credentials.d.ts +0 -80
  518. package/dist/discord-credentials.d.ts.map +0 -1
  519. package/dist/discord-credentials.js +0 -55
  520. package/dist/discord-credentials.js.map +0 -1
  521. package/dist/driver/actions-zip.d.ts +0 -2
  522. package/dist/driver/actions-zip.d.ts.map +0 -1
  523. package/dist/driver/actions-zip.js +0 -70
  524. package/dist/driver/actions-zip.js.map +0 -1
  525. package/dist/driver/actions.d.ts +0 -130
  526. package/dist/driver/actions.d.ts.map +0 -1
  527. package/dist/driver/actions.js +0 -261
  528. package/dist/driver/actions.js.map +0 -1
  529. package/dist/driver/agent-cli.d.ts +0 -57
  530. package/dist/driver/agent-cli.d.ts.map +0 -1
  531. package/dist/driver/agent-cli.js +0 -134
  532. package/dist/driver/agent-cli.js.map +0 -1
  533. package/dist/driver/child-registry.d.ts +0 -25
  534. package/dist/driver/child-registry.d.ts.map +0 -1
  535. package/dist/driver/child-registry.js +0 -53
  536. package/dist/driver/child-registry.js.map +0 -1
  537. package/dist/driver/claude-code-quota.d.ts +0 -40
  538. package/dist/driver/claude-code-quota.d.ts.map +0 -1
  539. package/dist/driver/claude-code-quota.js +0 -144
  540. package/dist/driver/claude-code-quota.js.map +0 -1
  541. package/dist/driver/claude-code.d.ts +0 -104
  542. package/dist/driver/claude-code.d.ts.map +0 -1
  543. package/dist/driver/claude-code.js +0 -314
  544. package/dist/driver/claude-code.js.map +0 -1
  545. package/dist/driver/cli-session.d.ts +0 -57
  546. package/dist/driver/cli-session.d.ts.map +0 -1
  547. package/dist/driver/cli-session.js +0 -134
  548. package/dist/driver/cli-session.js.map +0 -1
  549. package/dist/driver/cloud.d.ts +0 -109
  550. package/dist/driver/cloud.d.ts.map +0 -1
  551. package/dist/driver/cloud.js +0 -232
  552. package/dist/driver/cloud.js.map +0 -1
  553. package/dist/driver/codex.d.ts +0 -99
  554. package/dist/driver/codex.d.ts.map +0 -1
  555. package/dist/driver/codex.js +0 -190
  556. package/dist/driver/codex.js.map +0 -1
  557. package/dist/driver/fake.d.ts +0 -54
  558. package/dist/driver/fake.d.ts.map +0 -1
  559. package/dist/driver/fake.js +0 -73
  560. package/dist/driver/fake.js.map +0 -1
  561. package/dist/driver/index.d.ts +0 -10
  562. package/dist/driver/index.d.ts.map +0 -1
  563. package/dist/driver/index.js +0 -14
  564. package/dist/driver/index.js.map +0 -1
  565. package/dist/driver/session-support.d.ts +0 -14
  566. package/dist/driver/session-support.d.ts.map +0 -1
  567. package/dist/driver/session-support.js +0 -37
  568. package/dist/driver/session-support.js.map +0 -1
  569. package/dist/driver/types.d.ts +0 -310
  570. package/dist/driver/types.d.ts.map +0 -1
  571. package/dist/driver/types.js +0 -5
  572. package/dist/driver/types.js.map +0 -1
  573. package/dist/driver-cli.d.ts +0 -61
  574. package/dist/driver-cli.d.ts.map +0 -1
  575. package/dist/driver-cli.js +0 -66
  576. package/dist/driver-cli.js.map +0 -1
  577. package/dist/fake-script.d.ts +0 -15
  578. package/dist/fake-script.d.ts.map +0 -1
  579. package/dist/fake-script.js +0 -58
  580. package/dist/fake-script.js.map +0 -1
  581. package/dist/framework-dir.d.ts.map +0 -1
  582. package/dist/framework-dir.js.map +0 -1
  583. package/dist/framework-gitignore.d.ts +0 -12
  584. package/dist/framework-gitignore.d.ts.map +0 -1
  585. package/dist/framework-gitignore.js +0 -19
  586. package/dist/framework-gitignore.js.map +0 -1
  587. package/dist/gate-keepalive.d.ts +0 -47
  588. package/dist/gate-keepalive.d.ts.map +0 -1
  589. package/dist/gate-keepalive.js +0 -62
  590. package/dist/gate-keepalive.js.map +0 -1
  591. package/dist/git-exclude.d.ts +0 -11
  592. package/dist/git-exclude.d.ts.map +0 -1
  593. package/dist/git-exclude.js +0 -23
  594. package/dist/git-exclude.js.map +0 -1
  595. package/dist/handoff-level.d.ts +0 -56
  596. package/dist/handoff-level.d.ts.map +0 -1
  597. package/dist/handoff-level.js +0 -62
  598. package/dist/handoff-level.js.map +0 -1
  599. package/dist/host-exec.d.ts +0 -21
  600. package/dist/host-exec.d.ts.map +0 -1
  601. package/dist/host-exec.js +0 -30
  602. package/dist/host-exec.js.map +0 -1
  603. package/dist/layout.d.ts +0 -41
  604. package/dist/layout.d.ts.map +0 -1
  605. package/dist/layout.js +0 -69
  606. package/dist/layout.js.map +0 -1
  607. package/dist/logs.d.ts +0 -73
  608. package/dist/logs.d.ts.map +0 -1
  609. package/dist/logs.js +0 -218
  610. package/dist/logs.js.map +0 -1
  611. package/dist/maintenance.d.ts +0 -90
  612. package/dist/maintenance.d.ts.map +0 -1
  613. package/dist/maintenance.js +0 -141
  614. package/dist/maintenance.js.map +0 -1
  615. package/dist/merged-worktrees.d.ts +0 -74
  616. package/dist/merged-worktrees.d.ts.map +0 -1
  617. package/dist/merged-worktrees.js +0 -84
  618. package/dist/merged-worktrees.js.map +0 -1
  619. package/dist/module-types/src/dashboard/agent-tree.d.ts +0 -105
  620. package/dist/module-types/src/dashboard/file-diff.d.ts +0 -66
  621. package/dist/module-types/src/dashboard/file-read.d.ts +0 -41
  622. package/dist/module-types/src/dashboard/file-status.d.ts +0 -20
  623. package/dist/module-types/src/dashboard/scheduler-state.d.ts +0 -72
  624. package/dist/module-types/src/dashboard/subagent-settings.d.ts +0 -25
  625. package/dist/module-types/src/dashboard-rpc/subagents.d.ts +0 -11
  626. package/dist/module-types/src/framework-gitignore.d.ts +0 -11
  627. package/dist/module-types/src/subagent-settings.d.ts +0 -26
  628. package/dist/on-before-mergeable-prompt.d.ts +0 -32
  629. package/dist/on-before-mergeable-prompt.d.ts.map +0 -1
  630. package/dist/on-before-mergeable-prompt.js +0 -26
  631. package/dist/on-before-mergeable-prompt.js.map +0 -1
  632. package/dist/planned-quick-wins.d.ts +0 -102
  633. package/dist/planned-quick-wins.d.ts.map +0 -1
  634. package/dist/planned-quick-wins.js +0 -171
  635. package/dist/planned-quick-wins.js.map +0 -1
  636. package/dist/preflight.d.ts +0 -77
  637. package/dist/preflight.d.ts.map +0 -1
  638. package/dist/preflight.js +0 -91
  639. package/dist/preflight.js.map +0 -1
  640. package/dist/preset-catalog.d.ts +0 -98
  641. package/dist/preset-catalog.d.ts.map +0 -1
  642. package/dist/preset-catalog.js +0 -129
  643. package/dist/preset-catalog.js.map +0 -1
  644. package/dist/preset-prompt.d.ts +0 -81
  645. package/dist/preset-prompt.d.ts.map +0 -1
  646. package/dist/preset-prompt.js +0 -51
  647. package/dist/preset-prompt.js.map +0 -1
  648. package/dist/preset-registry.d.ts +0 -32
  649. package/dist/preset-registry.d.ts.map +0 -1
  650. package/dist/preset-registry.js +0 -35
  651. package/dist/preset-registry.js.map +0 -1
  652. package/dist/presets.d.ts +0 -20
  653. package/dist/presets.d.ts.map +0 -1
  654. package/dist/presets.js +0 -33
  655. package/dist/presets.js.map +0 -1
  656. package/dist/preview-runtime.d.ts +0 -33
  657. package/dist/preview-runtime.d.ts.map +0 -1
  658. package/dist/preview-runtime.js +0 -96
  659. package/dist/preview-runtime.js.map +0 -1
  660. package/dist/preview.d.ts +0 -78
  661. package/dist/preview.d.ts.map +0 -1
  662. package/dist/preview.js +0 -301
  663. package/dist/preview.js.map +0 -1
  664. package/dist/project-widgets.d.ts +0 -46
  665. package/dist/project-widgets.d.ts.map +0 -1
  666. package/dist/project-widgets.js +0 -93
  667. package/dist/project-widgets.js.map +0 -1
  668. package/dist/prompt-run.d.ts +0 -104
  669. package/dist/prompt-run.d.ts.map +0 -1
  670. package/dist/prompt-run.js +0 -112
  671. package/dist/prompt-run.js.map +0 -1
  672. package/dist/prompt-template.d.ts +0 -16
  673. package/dist/prompt-template.d.ts.map +0 -1
  674. package/dist/prompt-template.js +0 -56
  675. package/dist/prompt-template.js.map +0 -1
  676. package/dist/prompts.generated.d.ts +0 -53
  677. package/dist/prompts.generated.d.ts.map +0 -1
  678. package/dist/prompts.generated.js +0 -55
  679. package/dist/prompts.generated.js.map +0 -1
  680. package/dist/queue-promote.d.ts +0 -70
  681. package/dist/queue-promote.d.ts.map +0 -1
  682. package/dist/queue-promote.js +0 -118
  683. package/dist/queue-promote.js.map +0 -1
  684. package/dist/relay.d.ts +0 -84
  685. package/dist/relay.d.ts.map +0 -1
  686. package/dist/relay.js +0 -199
  687. package/dist/relay.js.map +0 -1
  688. package/dist/repos-directory.d.ts +0 -19
  689. package/dist/repos-directory.d.ts.map +0 -1
  690. package/dist/repos-directory.js +0 -23
  691. package/dist/repos-directory.js.map +0 -1
  692. package/dist/retired-project-settings.d.ts +0 -43
  693. package/dist/retired-project-settings.d.ts.map +0 -1
  694. package/dist/retired-project-settings.js +0 -125
  695. package/dist/retired-project-settings.js.map +0 -1
  696. package/dist/routine-locks.d.ts +0 -53
  697. package/dist/routine-locks.d.ts.map +0 -1
  698. package/dist/routine-locks.js +0 -125
  699. package/dist/routine-locks.js.map +0 -1
  700. package/dist/run-driver.d.ts +0 -26
  701. package/dist/run-driver.d.ts.map +0 -1
  702. package/dist/run-driver.js +0 -17
  703. package/dist/run-driver.js.map +0 -1
  704. package/dist/run-locks.d.ts +0 -3
  705. package/dist/run-locks.d.ts.map +0 -1
  706. package/dist/run-locks.js +0 -39
  707. package/dist/run-locks.js.map +0 -1
  708. package/dist/run-messages.d.ts +0 -64
  709. package/dist/run-messages.d.ts.map +0 -1
  710. package/dist/run-messages.js +0 -76
  711. package/dist/run-messages.js.map +0 -1
  712. package/dist/run-options.d.ts +0 -53
  713. package/dist/run-options.d.ts.map +0 -1
  714. package/dist/run-options.js +0 -110
  715. package/dist/run-options.js.map +0 -1
  716. package/dist/run-telemetry.d.ts +0 -115
  717. package/dist/run-telemetry.d.ts.map +0 -1
  718. package/dist/run-telemetry.js +0 -137
  719. package/dist/run-telemetry.js.map +0 -1
  720. package/dist/run-view.d.ts +0 -109
  721. package/dist/run-view.d.ts.map +0 -1
  722. package/dist/run-view.js +0 -118
  723. package/dist/run-view.js.map +0 -1
  724. package/dist/run.d.ts +0 -261
  725. package/dist/run.d.ts.map +0 -1
  726. package/dist/run.js +0 -420
  727. package/dist/run.js.map +0 -1
  728. package/dist/runtime-keys.d.ts +0 -17
  729. package/dist/runtime-keys.d.ts.map +0 -1
  730. package/dist/runtime-keys.js +0 -17
  731. package/dist/runtime-keys.js.map +0 -1
  732. package/dist/sandbox.d.ts +0 -27
  733. package/dist/sandbox.d.ts.map +0 -1
  734. package/dist/sandbox.js +0 -63
  735. package/dist/sandbox.js.map +0 -1
  736. package/dist/session-link.d.ts +0 -19
  737. package/dist/session-link.d.ts.map +0 -1
  738. package/dist/session-link.js +0 -26
  739. package/dist/session-link.js.map +0 -1
  740. package/dist/sessions.d.ts +0 -77
  741. package/dist/sessions.d.ts.map +0 -1
  742. package/dist/sessions.js +0 -146
  743. package/dist/sessions.js.map +0 -1
  744. package/dist/spike-locks.d.ts +0 -75
  745. package/dist/spike-locks.d.ts.map +0 -1
  746. package/dist/spike-locks.js +0 -208
  747. package/dist/spike-locks.js.map +0 -1
  748. package/dist/stale-branch.d.ts +0 -21
  749. package/dist/stale-branch.d.ts.map +0 -1
  750. package/dist/stale-branch.js +0 -32
  751. package/dist/stale-branch.js.map +0 -1
  752. package/dist/steps.d.ts +0 -9
  753. package/dist/steps.d.ts.map +0 -1
  754. package/dist/steps.js +0 -13
  755. package/dist/steps.js.map +0 -1
  756. package/dist/store/forge.d.ts +0 -110
  757. package/dist/store/forge.d.ts.map +0 -1
  758. package/dist/store/forge.js +0 -97
  759. package/dist/store/forge.js.map +0 -1
  760. package/dist/store/run-checkout.d.ts +0 -33
  761. package/dist/store/run-checkout.d.ts.map +0 -1
  762. package/dist/store/run-checkout.js +0 -59
  763. package/dist/store/run-checkout.js.map +0 -1
  764. package/dist/store/run-store.d.ts +0 -501
  765. package/dist/store/run-store.d.ts.map +0 -1
  766. package/dist/store/run-store.js +0 -806
  767. package/dist/store/run-store.js.map +0 -1
  768. package/dist/store/suspend.d.ts +0 -38
  769. package/dist/store/suspend.d.ts.map +0 -1
  770. package/dist/store/suspend.js +0 -45
  771. package/dist/store/suspend.js.map +0 -1
  772. package/dist/store/worktree-deps.d.ts +0 -30
  773. package/dist/store/worktree-deps.d.ts.map +0 -1
  774. package/dist/store/worktree-deps.js +0 -115
  775. package/dist/store/worktree-deps.js.map +0 -1
  776. package/dist/store/worktree.d.ts +0 -194
  777. package/dist/store/worktree.d.ts.map +0 -1
  778. package/dist/store/worktree.js +0 -331
  779. package/dist/store/worktree.js.map +0 -1
  780. package/dist/subagent-settings.d.ts +0 -27
  781. package/dist/subagent-settings.d.ts.map +0 -1
  782. package/dist/subagent-settings.js +0 -35
  783. package/dist/subagent-settings.js.map +0 -1
  784. package/dist/system-prompt-file.d.ts +0 -18
  785. package/dist/system-prompt-file.d.ts.map +0 -1
  786. package/dist/system-prompt-file.js +0 -28
  787. package/dist/system-prompt-file.js.map +0 -1
  788. package/dist/system-prompt.d.ts +0 -148
  789. package/dist/system-prompt.d.ts.map +0 -1
  790. package/dist/system-prompt.js +0 -170
  791. package/dist/system-prompt.js.map +0 -1
  792. package/dist/target-driver.d.ts +0 -28
  793. package/dist/target-driver.d.ts.map +0 -1
  794. package/dist/target-driver.js +0 -18
  795. package/dist/target-driver.js.map +0 -1
  796. package/dist/ticket-locks.d.ts +0 -61
  797. package/dist/ticket-locks.d.ts.map +0 -1
  798. package/dist/ticket-locks.js +0 -137
  799. package/dist/ticket-locks.js.map +0 -1
  800. package/dist/tickets-file.d.ts +0 -7
  801. package/dist/tickets-file.d.ts.map +0 -1
  802. package/dist/tickets-file.js +0 -21
  803. package/dist/tickets-file.js.map +0 -1
  804. package/dist/tickets.d.ts +0 -18
  805. package/dist/tickets.d.ts.map +0 -1
  806. package/dist/tickets.js +0 -23
  807. package/dist/tickets.js.map +0 -1
  808. package/dist/todo-loop.d.ts +0 -110
  809. package/dist/todo-loop.d.ts.map +0 -1
  810. package/dist/todo-loop.js +0 -175
  811. package/dist/todo-loop.js.map +0 -1
  812. package/dist/turn-gate.d.ts +0 -144
  813. package/dist/turn-gate.d.ts.map +0 -1
  814. package/dist/turn-gate.js +0 -217
  815. package/dist/turn-gate.js.map +0 -1
  816. package/dist/usage.d.ts +0 -32
  817. package/dist/usage.d.ts.map +0 -1
  818. package/dist/usage.js +0 -46
  819. package/dist/usage.js.map +0 -1
  820. package/dist/widget-types/dashboard/components/LinkActions.d.ts +0 -26
  821. package/dist/widget-types/dashboard/components/Markdown.d.ts +0 -4
  822. package/dist/widget-types/dashboard/components/StartAgentButton.d.ts +0 -39
  823. package/dist/widget-types/dashboard/components/ui/badge.d.ts +0 -2
  824. package/dist/widget-types/dashboard/components/ui/button.d.ts +0 -10
  825. package/dist/widget-types/dashboard/components/ui/card.d.ts +0 -5
  826. package/dist/widget-types/dashboard/components/ui/checkbox.d.ts +0 -7
  827. package/dist/widget-types/dashboard/components/ui/dropdown-menu.d.ts +0 -16
  828. package/dist/widget-types/dashboard/components/ui/input.d.ts +0 -2
  829. package/dist/widget-types/dashboard/components/ui/option-label.d.ts +0 -4
  830. package/dist/widget-types/dashboard/components/ui/popover.d.ts +0 -8
  831. package/dist/widget-types/dashboard/components/ui/scroll-area.d.ts +0 -10
  832. package/dist/widget-types/dashboard/components/ui/separator.d.ts +0 -3
  833. package/dist/widget-types/dashboard/components/ui/skeleton.d.ts +0 -2
  834. package/dist/widget-types/dashboard/components/ui/slider.d.ts +0 -9
  835. package/dist/widget-types/dashboard/components/ui/tooltip.d.ts +0 -11
  836. package/dist/widget-types/dashboard/lib/draft-handoff.d.ts +0 -15
  837. package/dist/widget-types/dashboard/lib/format-date.d.ts +0 -51
  838. package/dist/widget-types/dashboard/lib/host-services.d.ts +0 -12
  839. package/dist/widget-types/dashboard/lib/route.d.ts +0 -24
  840. package/dist/widget-types/dashboard/lib/rpc.d.ts +0 -31
  841. package/dist/widget-types/dashboard/lib/use-action.d.ts +0 -25
  842. package/dist/widget-types/dashboard/lib/use-async.d.ts +0 -39
  843. package/dist/widget-types/dashboard/lib/use-widgets.d.ts +0 -42
  844. package/dist/widget-types/dashboard/lib/utils.d.ts +0 -3
  845. package/dist/widget-types/dashboard/rpc/widgets.d.ts +0 -4
  846. package/dist/widget-types/dashboard/widget/index.d.ts +0 -207
  847. package/dist/widget-types/src/agent-id.d.ts +0 -12
  848. package/dist/widget-types/src/agent-locks.d.ts +0 -2
  849. package/dist/widget-types/src/agent-view.d.ts +0 -38
  850. package/dist/widget-types/src/bridge-browser.d.ts +0 -216
  851. package/dist/widget-types/src/browser-stream.d.ts +0 -19
  852. package/dist/widget-types/src/browser.d.ts +0 -15
  853. package/dist/widget-types/src/cli-exec.d.ts +0 -35
  854. package/dist/widget-types/src/cloud-run-state.d.ts +0 -26
  855. package/dist/widget-types/src/dashboard/activity.d.ts +0 -40
  856. package/dist/widget-types/src/dashboard/agent-handoff.d.ts +0 -211
  857. package/dist/widget-types/src/dashboard/agent-tree.d.ts +0 -105
  858. package/dist/widget-types/src/dashboard/bridge-endpoints.d.ts +0 -157
  859. package/dist/widget-types/src/dashboard/bridge-question.d.ts +0 -32
  860. package/dist/widget-types/src/dashboard/bridge-store.d.ts +0 -178
  861. package/dist/widget-types/src/dashboard/cache.d.ts +0 -46
  862. package/dist/widget-types/src/dashboard/content-type.d.ts +0 -2
  863. package/dist/widget-types/src/dashboard/dashboard.d.ts +0 -37
  864. package/dist/widget-types/src/dashboard/discord-webhook.d.ts +0 -16
  865. package/dist/widget-types/src/dashboard/docs.d.ts +0 -38
  866. package/dist/widget-types/src/dashboard/file-diff.d.ts +0 -66
  867. package/dist/widget-types/src/dashboard/file-read.d.ts +0 -41
  868. package/dist/widget-types/src/dashboard/file-status.d.ts +0 -20
  869. package/dist/widget-types/src/dashboard/gh.d.ts +0 -130
  870. package/dist/widget-types/src/dashboard/git-status.d.ts +0 -32
  871. package/dist/widget-types/src/dashboard/github.d.ts +0 -10
  872. package/dist/widget-types/src/dashboard/http.d.ts +0 -28
  873. package/dist/widget-types/src/dashboard/interventions.d.ts +0 -66
  874. package/dist/widget-types/src/dashboard/keys.d.ts +0 -30
  875. package/dist/widget-types/src/dashboard/models.d.ts +0 -24
  876. package/dist/widget-types/src/dashboard/open-in-app.d.ts +0 -42
  877. package/dist/widget-types/src/dashboard/open-questions.d.ts +0 -52
  878. package/dist/widget-types/src/dashboard/overview.d.ts +0 -77
  879. package/dist/widget-types/src/dashboard/projects.d.ts +0 -89
  880. package/dist/widget-types/src/dashboard/pull-requests.d.ts +0 -126
  881. package/dist/widget-types/src/dashboard/queue.d.ts +0 -16
  882. package/dist/widget-types/src/dashboard/quota.d.ts +0 -59
  883. package/dist/widget-types/src/dashboard/remote-run.d.ts +0 -94
  884. package/dist/widget-types/src/dashboard/rpc-serve.d.ts +0 -102
  885. package/dist/widget-types/src/dashboard/run-inbox.d.ts +0 -30
  886. package/dist/widget-types/src/dashboard/scheduler-state.d.ts +0 -64
  887. package/dist/widget-types/src/dashboard/tickets.d.ts +0 -28
  888. package/dist/widget-types/src/dashboard/types.d.ts +0 -99
  889. package/dist/widget-types/src/dashboard/widget-serve.d.ts +0 -14
  890. package/dist/widget-types/src/dashboard-rpc/context.d.ts +0 -53
  891. package/dist/widget-types/src/dashboard-rpc/control.d.ts +0 -108
  892. package/dist/widget-types/src/dashboard-rpc/devices.d.ts +0 -8
  893. package/dist/widget-types/src/dashboard-rpc/events-tail.d.ts +0 -53
  894. package/dist/widget-types/src/dashboard-rpc/events.d.ts +0 -29
  895. package/dist/widget-types/src/dashboard-rpc/index.d.ts +0 -28
  896. package/dist/widget-types/src/dashboard-rpc/models.d.ts +0 -3
  897. package/dist/widget-types/src/dashboard-rpc/preferences.d.ts +0 -40
  898. package/dist/widget-types/src/dashboard-rpc/projects.d.ts +0 -54
  899. package/dist/widget-types/src/dashboard-rpc/quota.d.ts +0 -26
  900. package/dist/widget-types/src/dashboard-rpc/reads.d.ts +0 -227
  901. package/dist/widget-types/src/dashboard-rpc/relay-agent.d.ts +0 -8
  902. package/dist/widget-types/src/dashboard-rpc/stream-forward.d.ts +0 -16
  903. package/dist/widget-types/src/dashboard-rpc/widgets.d.ts +0 -32
  904. package/dist/widget-types/src/discord-credentials.d.ts +0 -79
  905. package/dist/widget-types/src/driver-names.d.ts +0 -21
  906. package/dist/widget-types/src/error-message.d.ts +0 -7
  907. package/dist/widget-types/src/event-stream.d.ts +0 -32
  908. package/dist/widget-types/src/events.d.ts +0 -235
  909. package/dist/widget-types/src/framework-dir.d.ts +0 -10
  910. package/dist/widget-types/src/framework-gitignore.d.ts +0 -11
  911. package/dist/widget-types/src/index.d.ts +0 -42
  912. package/dist/widget-types/src/jsonl-tail.d.ts +0 -54
  913. package/dist/widget-types/src/loopback-host.d.ts +0 -19
  914. package/dist/widget-types/src/node-fs.d.ts +0 -32
  915. package/dist/widget-types/src/open-choices.d.ts +0 -14
  916. package/dist/widget-types/src/pick-directory.d.ts +0 -29
  917. package/dist/widget-types/src/preference-defaults.d.ts +0 -53
  918. package/dist/widget-types/src/project-commands.d.ts +0 -23
  919. package/dist/widget-types/src/project-errors.d.ts +0 -43
  920. package/dist/widget-types/src/project-hooks.d.ts +0 -133
  921. package/dist/widget-types/src/project-presets.d.ts +0 -29
  922. package/dist/widget-types/src/project-widgets.d.ts +0 -45
  923. package/dist/widget-types/src/project.d.ts +0 -28
  924. package/dist/widget-types/src/quota-boundary.d.ts +0 -115
  925. package/dist/widget-types/src/quota-poller.d.ts +0 -82
  926. package/dist/widget-types/src/registry.d.ts +0 -210
  927. package/dist/widget-types/src/store/agent-checkout.d.ts +0 -46
  928. package/dist/widget-types/src/store/agent-store.d.ts +0 -237
  929. package/dist/widget-types/src/store/branches.d.ts +0 -133
  930. package/dist/widget-types/src/store/forge.d.ts +0 -109
  931. package/dist/widget-types/src/store/git-host.d.ts +0 -111
  932. package/dist/widget-types/src/store/index.d.ts +0 -9
  933. package/dist/widget-types/src/store/provided.d.ts +0 -16
  934. package/dist/widget-types/src/store/queue.d.ts +0 -45
  935. package/dist/widget-types/src/store/run-record.d.ts +0 -21
  936. package/dist/widget-types/src/store/runs.d.ts +0 -101
  937. package/dist/widget-types/src/store/tickets.d.ts +0 -72
  938. package/dist/widget-types/src/tickets.d.ts +0 -17
  939. package/dist/widget-types/src/worktrees.d.ts +0 -89
  940. package/dist/widget.css +0 -50
@@ -1,125 +0,0 @@
1
- import { isHandoffLevel } from './handoff-level.js';
2
- import { nodeRegistryFs, registryPath } from './registry.js';
3
- /**
4
- * The one-time notice for the per-project preference tier B5 deleted (#840).
5
- *
6
- * Every other retirement on that branch is silent by design — a renamed key is an unknown key, and
7
- * an unknown key is dropped. This one is not silent, because dropping it moves in the *permissive*
8
- * direction and the permissive thing is an outward action under the user's name: a repo they had
9
- * set to "don't publish" falls through to the user-level default, which pushes the branch and opens
10
- * a pull request. A setting that quietly stops applying is a bug report; a setting that quietly
11
- * starts publishing is a pull request on someone else's repo.
12
- *
13
- * It is a report, not a migration: nothing here is honoured, carried, or written back. It names
14
- * what the file holds and the line that replaces it, and the block goes on being ignored.
15
- */
16
- /** The retired block's key in the registry file. Read to report it; never written. */
17
- const RETIRED_KEY = 'projectPreferences';
18
- /**
19
- * Every spelling a block could say "how far this repo publishes" in: the rung, and the three
20
- * booleans it replaced.
21
- *
22
- * Named rather than interpreted. A block written before the ladder cannot be turned back into a
23
- * rung without the mapping this branch deleted, and resurrecting it here would be the migration
24
- * code the deletion was about. What the notice needs is only whether this repo's publishing was
25
- * set here at all, because that decides whether the row warns or reassures — and a row that
26
- * reassures about a repo whose block said "don't publish" is the failure this exists to prevent.
27
- */
28
- const PUBLISH_KEYS = ['handoff', 'autoPushBranch', 'autoOpenPr', 'autoMerge'];
29
- /**
30
- * The retired blocks in the registry file, or `[]` when there are none (which is everyone who
31
- * never used the tier, and everyone whose file has been written once since).
32
- *
33
- * Reads the raw file rather than going through `readRegistry`, which drops the block on the way in
34
- * — that is the point of the removal, and it is what leaves this the only reader.
35
- */
36
- export async function readRetiredProjectSettings(fs = nodeRegistryFs(), env = process.env) {
37
- let parsed;
38
- try {
39
- parsed = JSON.parse(await fs.read(registryPath(env)));
40
- }
41
- catch {
42
- return []; // missing or malformed: the same nothing readRegistry answers
43
- }
44
- if (typeof parsed !== 'object' || parsed === null || Array.isArray(parsed))
45
- return [];
46
- const stored = parsed[RETIRED_KEY];
47
- if (typeof stored !== 'object' || stored === null || Array.isArray(stored))
48
- return [];
49
- // The project list is the same file's, so an id resolves to the path the user knows it by.
50
- const projects = parsed.projects;
51
- const paths = new Map();
52
- if (Array.isArray(projects)) {
53
- for (const project of projects) {
54
- const record = project;
55
- if (typeof record?.id === 'string' && typeof record.path === 'string')
56
- paths.set(record.id, record.path);
57
- }
58
- }
59
- const retired = [];
60
- for (const [projectId, block] of Object.entries(stored)) {
61
- if (typeof block !== 'object' || block === null || Array.isArray(block))
62
- continue;
63
- const keys = Object.keys(block);
64
- if (!keys.length)
65
- continue;
66
- const handoff = block['handoff'];
67
- retired.push({
68
- // A project since removed from the registry still had settings; name it by the id rather
69
- // than dropping it, since the point is that nothing stopped applying silently.
70
- path: paths.get(projectId) ?? projectId,
71
- keys,
72
- publishes: keys.some(key => PUBLISH_KEYS.includes(key)),
73
- ...(isHandoffLevel(handoff) ? { handoff } : {}),
74
- });
75
- }
76
- return retired;
77
- }
78
- /**
79
- * The boot snapshot, and why there is one.
80
- *
81
- * `writeRegistry` rewrites the file from the fields it knows, so the first preference write of a
82
- * session erases the block this notice is about. A notice raised lazily — at the first publish,
83
- * say — would race that erasure and lose, so the read happens once at boot, ahead of every write
84
- * path, and the dashboard is served from what it found.
85
- */
86
- let captured = [];
87
- /** Read the blocks and hold them for this process. Called once, first thing, by the daemon. */
88
- export async function captureRetiredProjectSettings(fs, env = process.env) {
89
- captured = await readRetiredProjectSettings(fs, env).catch(() => []);
90
- return captured;
91
- }
92
- /** What the boot read found. Empty until {@link captureRetiredProjectSettings} has run. */
93
- export function retiredProjectSettings() {
94
- return captured;
95
- }
96
- /**
97
- * What a repo's row has to say, as both surfaces say it.
98
- *
99
- * A block that set publishing gets the line to write and what happens without it, because that is
100
- * the direction that acts outward on its own. Everything else is told what applies instead, which
101
- * is true only for a block that did *not* set publishing — hence the flag rather than the rung.
102
- */
103
- export function retiredProjectAdvice(project) {
104
- if (!project.publishes)
105
- return 'Your own settings apply to it now.';
106
- const rung = project.handoff ?? 'local | push | pr | merge';
107
- return `Add \`handoff: ${rung}\` to its the-framework.yml — without it, agents there push their branch and open a pull request.`;
108
- }
109
- /**
110
- * The notice as the daemon's log prints it: one line naming the tier, then one per project.
111
- *
112
- * Empty for an empty list, so the caller prints nothing rather than a heading over nothing.
113
- */
114
- export function retiredProjectSettingsNotice(retired) {
115
- if (!retired.length)
116
- return [];
117
- const lines = [
118
- `[framework] per-project settings are no longer read — a repo's settings live in its own the-framework.yml.`,
119
- ];
120
- for (const project of retired) {
121
- lines.push(`[framework] ${project.path} had ${project.keys.join(', ')}. ${retiredProjectAdvice(project)}`);
122
- }
123
- return lines;
124
- }
125
- //# sourceMappingURL=retired-project-settings.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"retired-project-settings.js","sourceRoot":"","sources":["../src/retired-project-settings.ts"],"names":[],"mappings":"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"}
@@ -1,53 +0,0 @@
1
- import { type BranchFileFs, type CommitMessage, type FileBranchWrite } from '@gemstack/agent-data';
2
- /** How long a lock stands before whoever finds it may take it over: four hours, no heartbeat. */
3
- export declare const ROUTINE_LOCK_TTL_MS: number;
4
- /** The lock file for a routine, relative to the data branch root: `routines/triage-quick.lock.md`. */
5
- export declare function routineLockPath(name: string): string;
6
- /** Who holds a lock: the machine that minted it, and when. */
7
- export interface RoutineLockHolder {
8
- host: string;
9
- /** ISO timestamp. */
10
- since: string;
11
- }
12
- /** What a lock file holds: the claiming machine and the mint time, one line each. */
13
- export declare function routineLockContent(holder: RoutineLockHolder): string;
14
- /** The holder a lock file names, or undefined for content that is not a lock. */
15
- export declare function routineLockHolder(md: string): RoutineLockHolder | undefined;
16
- /** Injectable seams so every operation is unit-testable off disk and git. */
17
- export interface RoutineLockDeps extends Partial<BranchFileFs> {
18
- /** The data branch's write funnel (default the persistent checkout's cycle); a test's fake stands in. */
19
- funnel?: (root: string, message: CommitMessage, op: (dir: string) => Promise<void>) => Promise<FileBranchWrite>;
20
- log?: (message: string) => void;
21
- /** The machine claiming the lock (default this host's name). */
22
- host?: string;
23
- now?: () => number;
24
- }
25
- /** What acquiring did: ours now, or standing down with the holder named, or the write failed. */
26
- export type AcquireRoutineLockResult = {
27
- ok: true;
28
- } | {
29
- ok: false;
30
- reason: string;
31
- };
32
- /**
33
- * Take the lock for `name` on the data branch, in one funneled cycle. An alive lock stands the
34
- * caller down naming its holder; an expired one is taken over in the same commit. The funnel
35
- * re-runs the op when a push loses a race, so a lock another machine minted meanwhile is found,
36
- * not overwritten — and this machine's own lock seen again on the re-run is still ours.
37
- *
38
- * Never throws: this runs on a background tick with nothing to catch it.
39
- */
40
- export declare function acquireRoutineLock(cwd: string, name: string, deps?: RoutineLockDeps): Promise<AcquireRoutineLockResult>;
41
- /**
42
- * Drop this machine's lock on `name`; a lock naming another machine is left alone. `true` when
43
- * the lock is dealt with (freed, absent, or someone else's), `false` when the release could not
44
- * commit, so the caller can retry.
45
- */
46
- export declare function releaseRoutineLock(cwd: string, name: string, deps?: RoutineLockDeps): Promise<boolean>;
47
- /**
48
- * On boot (#1659): drop every lock this machine holds whose run is gone. The daemon that minted
49
- * them is not the one booting, so nothing in memory will release them; `stillRunning` says
50
- * whether a run of this machine's started since the lock was minted is still going.
51
- */
52
- export declare function releaseDeadRoutineLocks(cwd: string, stillRunning: (since: string) => boolean, deps?: RoutineLockDeps): Promise<string[]>;
53
- //# sourceMappingURL=routine-locks.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"routine-locks.d.ts","sourceRoot":"","sources":["../src/routine-locks.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiD,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAoBjJ,iGAAiG;AACjG,eAAO,MAAM,mBAAmB,QAAqB,CAAA;AAErD,sGAAsG;AACtG,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,8DAA8D;AAC9D,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,qBAAqB;IACrB,KAAK,EAAE,MAAM,CAAA;CACd;AAED,qFAAqF;AACrF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAEpE;AAED,iFAAiF;AACjF,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAI3E;AAED,6EAA6E;AAC7E,MAAM,WAAW,eAAgB,SAAQ,OAAO,CAAC,YAAY,CAAC;IAC5D,yGAAyG;IACzG,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,eAAe,CAAC,CAAA;IAC/G,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/B,gEAAgE;IAChE,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CACnB;AAsBD,iGAAiG;AACjG,MAAM,MAAM,wBAAwB,GAChC;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GACZ;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AAEjC;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,eAAoB,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAyBjI;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,eAAoB,GAAG,OAAO,CAAC,OAAO,CAAC,CAWhH;AAED;;;;GAIG;AACH,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,EACxC,IAAI,GAAE,eAAoB,GACzB,OAAO,CAAC,MAAM,EAAE,CAAC,CAmBnB"}
@@ -1,125 +0,0 @@
1
- import { hostname } from 'node:os';
2
- import { join } from 'node:path';
3
- import { DATA_BRANCH, nodeBranchFileFs, withFileBranch } from '@gemstack/agent-data';
4
- // The "one triage at a time" guard (#1659): a `routines/<name>.lock.md` on the data branch.
5
- //
6
- // The pinned branch (#1293) was this guard before, and stopped being one: since #1644 a triage
7
- // commits nothing on its branch, so the branch never reaches origin and guards nothing across
8
- // machines, and locally it was a name the *agent* checked from its prompt — every false abort
9
- // spent a started agent. The lock is the ticket claim (#1420) applied to a routine: minted by the
10
- // sweep through the data branch's write funnel before the run starts, so the daemon decides and no
11
- // agent is started to find out, and read by every machine that shares `agent-data`.
12
- //
13
- // Release is the daemon's, not a PR's: a triage never opens one. The daemon that minted a lock
14
- // drops it when the run ends, whatever the ending, and on boot for any it holds whose run is
15
- // gone — so a crash on this machine frees the routine at once. A lock another machine left
16
- // behind counts as dead after {@link ROUTINE_LOCK_TTL_MS}, fixed: a triage over hundreds of
17
- // tickets can take hours, and a heartbeat would cost code and `agent-data` churn.
18
- /** Where routine state lives on the data branch, beside the skills' files; only the lock files, for now (#1660). */
19
- const ROUTINES_DIR = 'routines';
20
- /** How long a lock stands before whoever finds it may take it over: four hours, no heartbeat. */
21
- export const ROUTINE_LOCK_TTL_MS = 4 * 60 * 60 * 1000;
22
- /** The lock file for a routine, relative to the data branch root: `routines/triage-quick.lock.md`. */
23
- export function routineLockPath(name) {
24
- return `${ROUTINES_DIR}/${name}.lock.md`;
25
- }
26
- /** What a lock file holds: the claiming machine and the mint time, one line each. */
27
- export function routineLockContent(holder) {
28
- return `CLAIMED: ${holder.host}\nSINCE: ${holder.since}\n`;
29
- }
30
- /** The holder a lock file names, or undefined for content that is not a lock. */
31
- export function routineLockHolder(md) {
32
- const host = /^CLAIMED:[ \t]*(.+)$/m.exec(md)?.[1]?.trim();
33
- const since = /^SINCE:[ \t]*(.+)$/m.exec(md)?.[1]?.trim();
34
- return host && since ? { host, since } : undefined;
35
- }
36
- function resolve(deps) {
37
- const fs = nodeBranchFileFs();
38
- return {
39
- read: deps.read ?? fs.read,
40
- write: deps.write ?? fs.write,
41
- remove: deps.remove ?? fs.remove,
42
- list: deps.list ?? fs.list,
43
- funnel: deps.funnel ?? ((root, message, op) => withFileBranch(root, DATA_BRANCH, message, op)),
44
- log: deps.log ?? (() => { }),
45
- host: deps.host ?? hostname(),
46
- now: deps.now ?? (() => Date.now()),
47
- };
48
- }
49
- /** Whether a lock is past its fixed expiry, as of `now`. An unparseable mint time counts as expired. */
50
- function routineLockExpired(holder, now) {
51
- const since = Date.parse(holder.since);
52
- return !Number.isFinite(since) || now - since >= ROUTINE_LOCK_TTL_MS;
53
- }
54
- /**
55
- * Take the lock for `name` on the data branch, in one funneled cycle. An alive lock stands the
56
- * caller down naming its holder; an expired one is taken over in the same commit. The funnel
57
- * re-runs the op when a push loses a race, so a lock another machine minted meanwhile is found,
58
- * not overwritten — and this machine's own lock seen again on the re-run is still ours.
59
- *
60
- * Never throws: this runs on a background tick with nothing to catch it.
61
- */
62
- export async function acquireRoutineLock(cwd, name, deps = {}) {
63
- const r = resolve(deps);
64
- const mine = { host: r.host, since: new Date(r.now()).toISOString() };
65
- let held;
66
- const result = await r.funnel(cwd, `[The Framework] lock the ${name} routine`, async (dataDir) => {
67
- held = undefined;
68
- const path = join(dataDir, routineLockPath(name));
69
- const holder = routineLockHolder(await r.read(path).catch(() => ''));
70
- // This call's own claim, seen again when the funnel re-runs the op: still ours. Any other
71
- // alive lock — another machine's, or this machine's from a run still going — stands us down.
72
- if (holder?.host === mine.host && holder.since === mine.since)
73
- return;
74
- if (holder && !routineLockExpired(holder, r.now())) {
75
- held = holder;
76
- return;
77
- }
78
- await r.write(path, routineLockContent(mine));
79
- });
80
- if (held)
81
- return { ok: false, reason: `${name} is already running on ${held.host} (since ${held.since})` };
82
- if (!result.ok && !result.committed)
83
- return { ok: false, reason: `the ${name} lock could not be committed (${result.error})` };
84
- if (!result.ok)
85
- r.log(`[framework] routine locks: the ${name} lock could not be pushed, so other machines cannot see it`);
86
- return { ok: true };
87
- }
88
- /**
89
- * Drop this machine's lock on `name`; a lock naming another machine is left alone. `true` when
90
- * the lock is dealt with (freed, absent, or someone else's), `false` when the release could not
91
- * commit, so the caller can retry.
92
- */
93
- export async function releaseRoutineLock(cwd, name, deps = {}) {
94
- const r = resolve(deps);
95
- const result = await r.funnel(cwd, `[The Framework] release the ${name} routine`, async (dataDir) => {
96
- const path = join(dataDir, routineLockPath(name));
97
- if (routineLockHolder(await r.read(path).catch(() => ''))?.host === r.host)
98
- await r.remove(path);
99
- });
100
- return result.ok || result.committed;
101
- }
102
- /**
103
- * On boot (#1659): drop every lock this machine holds whose run is gone. The daemon that minted
104
- * them is not the one booting, so nothing in memory will release them; `stillRunning` says
105
- * whether a run of this machine's started since the lock was minted is still going.
106
- */
107
- export async function releaseDeadRoutineLocks(cwd, stillRunning, deps = {}) {
108
- const r = resolve(deps);
109
- let released = [];
110
- const result = await r.funnel(cwd, () => `[The Framework] release ${released.length} routine lock${released.length === 1 ? '' : 's'} left by a previous daemon`, async (dataDir) => {
111
- released = [];
112
- for (const file of await r.list(join(dataDir, ROUTINES_DIR))) {
113
- const name = /^(.+)\.lock\.md$/.exec(file)?.[1];
114
- if (!name)
115
- continue;
116
- const holder = routineLockHolder(await r.read(join(dataDir, ROUTINES_DIR, file)).catch(() => ''));
117
- if (holder?.host !== r.host || stillRunning(holder.since))
118
- continue;
119
- await r.remove(join(dataDir, ROUTINES_DIR, file));
120
- released.push(name);
121
- }
122
- });
123
- return result.ok || result.committed ? released : [];
124
- }
125
- //# sourceMappingURL=routine-locks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"routine-locks.js","sourceRoot":"","sources":["../src/routine-locks.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- import { type CreateDriverOptions } from './agent.js';
2
- import { type ActionsDriverOptions, type CloudDriverOptions, type Driver } from './driver/index.js';
3
- /**
4
- * Build the {@link Driver} for a run's *target* (#1050): where the turn runs, on top of the agent
5
- * axis {@link createDriver} owns. `actions` returns an {@link ActionsDriver} (#934) built from the
6
- * resolved owner/repo/token; `web` returns a {@link CloudDriver} (#610), which hands the task to a
7
- * Claude Code cloud session; anything else falls through to the local agent driver — byte-identical
8
- * to today.
9
- *
10
- * Kept off {@link createDriver} on purpose: ActionsDriver's owner/repo/token do not fit
11
- * {@link CreateDriverOptions}, and folding them in would push GitHub config onto every local run.
12
- */
13
- export interface CreateRunDriverOptions extends CreateDriverOptions {
14
- /**
15
- * Where the run executes: `local` (this device, the default), `actions` (a GitHub Actions
16
- * runner, #1050) or `web` (a Claude Code cloud session, #610).
17
- */
18
- target?: 'local' | 'actions' | 'web';
19
- /** The Actions runner config, required when {@link target} is `actions`. */
20
- actionsConfig?: ActionsDriverOptions;
21
- /** The cloud-session config used when {@link target} is `web`. Every field has a default. */
22
- cloudConfig?: CloudDriverOptions;
23
- }
24
- /** The one place a run path turns `--run-on` into a real driver. */
25
- export declare function createRunDriver(opts: CreateRunDriverOptions): Driver;
26
- //# sourceMappingURL=run-driver.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-driver.d.ts","sourceRoot":"","sources":["../src/run-driver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,mBAAmB,EAAE,MAAM,YAAY,CAAA;AACnE,OAAO,EAA8B,KAAK,oBAAoB,EAAE,KAAK,kBAAkB,EAAE,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE/H;;;;;;;;;GASG;AACH,MAAM,WAAW,sBAAuB,SAAQ,mBAAmB;IACjE;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,KAAK,CAAA;IACpC,4EAA4E;IAC5E,aAAa,CAAC,EAAE,oBAAoB,CAAA;IACpC,6FAA6F;IAC7F,WAAW,CAAC,EAAE,kBAAkB,CAAA;CACjC;AAED,oEAAoE;AACpE,wBAAgB,eAAe,CAAC,IAAI,EAAE,sBAAsB,GAAG,MAAM,CAWpE"}
@@ -1,17 +0,0 @@
1
- import { createDriver } from './agent.js';
2
- import { ActionsDriver, CloudDriver } from './driver/index.js';
3
- /** The one place a run path turns `--run-on` into a real driver. */
4
- export function createRunDriver(opts) {
5
- if (opts.target === 'actions') {
6
- if (!opts.actionsConfig) {
7
- throw new Error('run target "actions" needs the repo owner/repo and a GitHub token; set a GitHub origin remote and GH_TOKEN');
8
- }
9
- return new ActionsDriver(opts.actionsConfig);
10
- }
11
- // `web` needs no configuration of ours: the CLI already holds the account it signs the
12
- // cloud session in with, the same auth the local driver runs on.
13
- if (opts.target === 'web')
14
- return new CloudDriver(opts.cloudConfig ?? {});
15
- return createDriver(opts);
16
- }
17
- //# sourceMappingURL=run-driver.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-driver.js","sourceRoot":"","sources":["../src/run-driver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA4B,MAAM,YAAY,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAmE,MAAM,mBAAmB,CAAA;AAwB/H,oEAAoE;AACpE,MAAM,UAAU,eAAe,CAAC,IAA4B;IAC1D,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,4GAA4G,CAAC,CAAA;QAC/H,CAAC;QACD,OAAO,IAAI,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IAC9C,CAAC;IACD,uFAAuF;IACvF,iEAAiE;IACjE,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK;QAAE,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAA;IACzE,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;AAC3B,CAAC"}
@@ -1,3 +0,0 @@
1
- /** Run `fn` once every earlier holder of `checkout`'s lock has settled. */
2
- export declare function withRunLock<T>(checkout: string, fn: () => Promise<T>): Promise<T>;
3
- //# sourceMappingURL=run-locks.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-locks.d.ts","sourceRoot":"","sources":["../src/run-locks.ts"],"names":[],"mappings":"AAuBA,2EAA2E;AAC3E,wBAAsB,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAgBvF"}
package/dist/run-locks.js DELETED
@@ -1,39 +0,0 @@
1
- import { resolve } from 'node:path';
2
- /**
3
- * Serialize everything that mutates one run's checkout.
4
- *
5
- * A run's meta flips to `done` the moment its child writes it — a beat before the daemon's
6
- * teardown archives the history, commits the bookkeeping to the run branch, and retires the
7
- * worktree. Every run-addressed action a user can fire off that fresh `done` (Push / Open PR's
8
- * commit step, Remove/Delete of the checkout, a Resume that reuses it) used to run its own git
9
- * against the same checkout teardown was committing in: the loser reported "could not commit the
10
- * work this session left uncommitted", and a teardown that lost kept a worktree it should have
11
- * removed. Both actors live in the daemon process by design (the dashboard's RPCs are served
12
- * in-process, and only the daemon writes to the project checkout), so an in-process lock is the
13
- * whole fix — there is no second process to coordinate with.
14
- *
15
- * Keyed by the checkout path, resolved: teardown and the actions all name the same worktree, so
16
- * they contend on one key; actions against a run whose worktree is already gone key on the
17
- * project root, where nothing contends. A waiter chains on the predecessor's *settlement* — a
18
- * failed teardown must not skip the push waiting behind it — and each caller still gets its own
19
- * outcome (or failure) back untouched.
20
- */
21
- const chains = new Map();
22
- /** Run `fn` once every earlier holder of `checkout`'s lock has settled. */
23
- export async function withRunLock(checkout, fn) {
24
- const key = resolve(checkout);
25
- const prev = chains.get(key) ?? Promise.resolve();
26
- const run = prev.then(fn, fn);
27
- // What the next waiter chains on: settlement, never rejection — one failed holder must not
28
- // poison every later acquisition of the same key.
29
- const settled = run.then(() => { }, () => { });
30
- chains.set(key, settled);
31
- try {
32
- return await run;
33
- }
34
- finally {
35
- if (chains.get(key) === settled)
36
- chains.delete(key);
37
- }
38
- }
39
- //# sourceMappingURL=run-locks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-locks.js","sourceRoot":"","sources":["../src/run-locks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,MAAM,GAAG,IAAI,GAAG,EAA4B,CAAA;AAElD,2EAA2E;AAC3E,MAAM,CAAC,KAAK,UAAU,WAAW,CAAI,QAAgB,EAAE,EAAoB;IACzE,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC7B,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAA;IACjD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;IAC7B,2FAA2F;IAC3F,kDAAkD;IAClD,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CACtB,GAAG,EAAE,GAAE,CAAC,EACR,GAAG,EAAE,GAAE,CAAC,CACT,CAAA;IACD,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IACxB,IAAI,CAAC;QACH,OAAO,MAAM,GAAG,CAAA;IAClB,CAAC;YAAS,CAAC;QACT,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,OAAO;YAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IACrD,CAAC;AACH,CAAC"}
@@ -1,64 +0,0 @@
1
- /**
2
- * The live-chat message channel (#714): the user's own turns into a running run.
3
- *
4
- * A run's await gates (#337) are the agent asking the user; this is the reverse —
5
- * the user speaking to the agent unprompted. Each message continues the *same*
6
- * agent session (`claude --resume <id>`), so the conversation keeps its full
7
- * context. The run loop drains this once the work settles; a daemon-spawned
8
- * session then ends itself when the queue is idle (#1390) — a follow-up message
9
- * reopens the conversation via `--resume`, like Claude Code web — while a run
10
- * with its own terminal dashboard keeps the old stay-open wait, since that
11
- * surface has no daemon to resume through.
12
- *
13
- * Wired only when an interactive channel can deliver messages (a live dashboard /
14
- * daemon over `control.jsonl`). A headless run gets no {@link RunMessages}, so its
15
- * loop ends when the agent stops asking — byte-identical to before this existed.
16
- */
17
- /**
18
- * One user chat message, plus the surface it arrived through (#917).
19
- *
20
- * The origin travels with the text rather than being read off the run, because one run can be
21
- * spoken to from more than one surface: a session started in the dashboard and then answered from
22
- * Discord is a single conversation whose turns have different origins.
23
- */
24
- export interface ChatMessage {
25
- text: string;
26
- /** The originating surface, when the sender named one. Absent means "the run's own surface". */
27
- via?: string;
28
- }
29
- /** A source of user chat messages for a running run. */
30
- export interface RunMessages {
31
- /**
32
- * The next user message. Returns an already-queued message immediately (drain
33
- * between turns); otherwise waits for one (stay-open). Resolves `undefined` when
34
- * the run should stop waiting — the signal aborted (Stop / budget cap) or the
35
- * source was closed — so the loop ends cleanly rather than hanging.
36
- */
37
- next(signal?: AbortSignal): Promise<ChatMessage | undefined>;
38
- /**
39
- * The next user message only if one has already arrived — never waits (#1390). What the
40
- * end-of-run drain asks: a queued follow-up is processed, an idle queue ends the session.
41
- * `undefined` once closed, so an aborted run never starts a new turn off a stale message.
42
- */
43
- takeQueued(): ChatMessage | undefined;
44
- }
45
- /**
46
- * A {@link RunMessages} the control channel feeds ({@link push}) and the run loop
47
- * drains ({@link next}). A message that arrives with a waiter parked hands off
48
- * directly; otherwise it queues until the next `next()`. FIFO in both directions.
49
- */
50
- export declare class RunMessageQueue implements RunMessages {
51
- private readonly pending;
52
- private readonly waiters;
53
- private closed;
54
- /**
55
- * Enqueue a user message (or hand it to a parked waiter). No-op once closed. `via` names the
56
- * surface it came through (#917); omitted, the run attributes it to its own.
57
- */
58
- push(text: string, via?: string): void;
59
- /** Stop the chat: wake every parked waiter with `undefined` so their loops end. */
60
- close(): void;
61
- takeQueued(): ChatMessage | undefined;
62
- next(signal?: AbortSignal): Promise<ChatMessage | undefined>;
63
- }
64
- //# sourceMappingURL=run-messages.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-messages.d.ts","sourceRoot":"","sources":["../src/run-messages.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,gGAAgG;IAChG,GAAG,CAAC,EAAE,MAAM,CAAA;CACb;AAED,wDAAwD;AACxD,MAAM,WAAW,WAAW;IAC1B;;;;;OAKG;IACH,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAAA;IAC5D;;;;OAIG;IACH,UAAU,IAAI,WAAW,GAAG,SAAS,CAAA;CACtC;AAED;;;;GAIG;AACH,qBAAa,eAAgB,YAAW,WAAW;IACjD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;IAC5C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwD;IAChF,OAAO,CAAC,MAAM,CAAQ;IAEtB;;;OAGG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI;IAQtC,mFAAmF;IACnF,KAAK,IAAI,IAAI;IAMb,UAAU,IAAI,WAAW,GAAG,SAAS;IAKrC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;CAkB7D"}
@@ -1,76 +0,0 @@
1
- /**
2
- * The live-chat message channel (#714): the user's own turns into a running run.
3
- *
4
- * A run's await gates (#337) are the agent asking the user; this is the reverse —
5
- * the user speaking to the agent unprompted. Each message continues the *same*
6
- * agent session (`claude --resume <id>`), so the conversation keeps its full
7
- * context. The run loop drains this once the work settles; a daemon-spawned
8
- * session then ends itself when the queue is idle (#1390) — a follow-up message
9
- * reopens the conversation via `--resume`, like Claude Code web — while a run
10
- * with its own terminal dashboard keeps the old stay-open wait, since that
11
- * surface has no daemon to resume through.
12
- *
13
- * Wired only when an interactive channel can deliver messages (a live dashboard /
14
- * daemon over `control.jsonl`). A headless run gets no {@link RunMessages}, so its
15
- * loop ends when the agent stops asking — byte-identical to before this existed.
16
- */
17
- /**
18
- * A {@link RunMessages} the control channel feeds ({@link push}) and the run loop
19
- * drains ({@link next}). A message that arrives with a waiter parked hands off
20
- * directly; otherwise it queues until the next `next()`. FIFO in both directions.
21
- */
22
- export class RunMessageQueue {
23
- pending = [];
24
- waiters = [];
25
- closed = false;
26
- /**
27
- * Enqueue a user message (or hand it to a parked waiter). No-op once closed. `via` names the
28
- * surface it came through (#917); omitted, the run attributes it to its own.
29
- */
30
- push(text, via) {
31
- if (this.closed)
32
- return;
33
- const message = via === undefined ? { text } : { text, via };
34
- const waiter = this.waiters.shift();
35
- if (waiter)
36
- waiter(message);
37
- else
38
- this.pending.push(message);
39
- }
40
- /** Stop the chat: wake every parked waiter with `undefined` so their loops end. */
41
- close() {
42
- this.closed = true;
43
- let waiter;
44
- while ((waiter = this.waiters.shift()))
45
- waiter(undefined);
46
- }
47
- takeQueued() {
48
- if (this.closed)
49
- return undefined;
50
- return this.pending.shift();
51
- }
52
- next(signal) {
53
- const queued = this.pending.shift();
54
- if (queued !== undefined)
55
- return Promise.resolve(queued);
56
- if (this.closed || signal?.aborted)
57
- return Promise.resolve(undefined);
58
- return new Promise(resolve => {
59
- const waiter = (message) => {
60
- if (signal)
61
- signal.removeEventListener('abort', onAbort);
62
- resolve(message);
63
- };
64
- const onAbort = () => {
65
- const i = this.waiters.indexOf(waiter);
66
- if (i >= 0)
67
- this.waiters.splice(i, 1);
68
- resolve(undefined);
69
- };
70
- this.waiters.push(waiter);
71
- if (signal)
72
- signal.addEventListener('abort', onAbort, { once: true });
73
- });
74
- }
75
- }
76
- //# sourceMappingURL=run-messages.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-messages.js","sourceRoot":"","sources":["../src/run-messages.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAgCH;;;;GAIG;AACH,MAAM,OAAO,eAAe;IACT,OAAO,GAAkB,EAAE,CAAA;IAC3B,OAAO,GAAsD,EAAE,CAAA;IACxE,MAAM,GAAG,KAAK,CAAA;IAEtB;;;OAGG;IACH,IAAI,CAAC,IAAY,EAAE,GAAY;QAC7B,IAAI,IAAI,CAAC,MAAM;YAAE,OAAM;QACvB,MAAM,OAAO,GAAgB,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAA;QACzE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;QACnC,IAAI,MAAM;YAAE,MAAM,CAAC,OAAO,CAAC,CAAA;;YACtB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACjC,CAAC;IAED,mFAAmF;IACnF,KAAK;QACH,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;QAClB,IAAI,MAAgE,CAAA;QACpE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAAE,MAAM,CAAC,SAAS,CAAC,CAAA;IAC3D,CAAC;IAED,UAAU;QACR,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,SAAS,CAAA;QACjC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;IAC7B,CAAC;IAED,IAAI,CAAC,MAAoB;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;QACnC,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QACxD,IAAI,IAAI,CAAC,MAAM,IAAI,MAAM,EAAE,OAAO;YAAE,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;QACrE,OAAO,IAAI,OAAO,CAA0B,OAAO,CAAC,EAAE;YACpD,MAAM,MAAM,GAAG,CAAC,OAAgC,EAAQ,EAAE;gBACxD,IAAI,MAAM;oBAAE,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;gBACxD,OAAO,CAAC,OAAO,CAAC,CAAA;YAClB,CAAC,CAAA;YACD,MAAM,OAAO,GAAG,GAAS,EAAE;gBACzB,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;gBACtC,IAAI,CAAC,IAAI,CAAC;oBAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;gBACrC,OAAO,CAAC,SAAS,CAAC,CAAA;YACpB,CAAC,CAAA;YACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACzB,IAAI,MAAM;gBAAE,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QACvE,CAAC,CAAC,CAAA;IACJ,CAAC;CACF"}
@@ -1,53 +0,0 @@
1
- import type { Preferences } from './registry.js';
2
- import type { StartRunOptions } from './dashboard/types.js';
3
- import type { FrameworkFileConfig } from './config.js';
4
- /**
5
- * Turning the user's preferences into the options a run starts with (#858).
6
- *
7
- * This lived in the dashboard client, which was fine while the browser was the only thing that
8
- * started runs. Auto PM (#685) starts them too, and passed nothing at all — so an unattended run
9
- * ignored the agent, the model and every other per-project setting (#840) that a run started from
10
- * the launcher would have honoured.
11
- *
12
- * It lives here, in pure code with no Node imports, so both callers share one mapping rather than
13
- * keeping two copies of rules that are not a plain field copy: autopilot defaults on, browser is
14
- * Claude-only, the eco drops are suppressed under vanilla/transparent, and the four eco
15
- * preferences collapse into one object. Re-exported from the browser-safe `./client` entry (#431)
16
- * so the dashboard can go on importing it at runtime.
17
- */
18
- /**
19
- * A repo's committed `the-framework.yml` as the preference keys it speaks for (#842), so the
20
- * launcher and the daemon can layer it under the user's own options the same way. Only the keys
21
- * the file set come back, since an unset key must leave the tier below it alone.
22
- *
23
- * `antiLazyPill` is the file's name for the inverse of Vanilla: removing the built-in prompt.
24
- * `preset` and `event` have no preference counterpart (there is no preset picker) and stay on the
25
- * raw file config for display.
26
- */
27
- export declare function preferencesFromFileConfig(file: FrameworkFileConfig): Preferences;
28
- /** Autopilot defaults on (the demo default), matching the old localStorage semantics. */
29
- export declare function autopilotEnabled(preferences: Preferences): boolean;
30
- /**
31
- * The end-of-session handoff a set of preferences arms (#1102). Both halves default on, which is
32
- * what makes it zero-config: a session left alone pushes its branch and opens a draft PR.
33
- *
34
- * A ladder, not a pair (#1379): pushing is the rung under opening a PR, so `autoPushBranch` is the
35
- * master and turning it off publishes nothing. `gh` will not open a PR for a branch the remote has
36
- * never seen, so "PR without push" was never a state a run could honour — it used to resolve the
37
- * contradiction by turning push back *on*, which meant a launcher that offered "publish nothing"
38
- * could not deliver it. Normalised here rather than in the three places that read it.
39
- *
40
- * Defaults are untouched: both on, so anyone who never opens the menu gets identical behaviour.
41
- */
42
- export declare function handoffFromPreferences(preferences: Preferences): {
43
- push: boolean;
44
- pr: boolean;
45
- };
46
- /**
47
- * The run options a set of already-resolved preferences implies.
48
- *
49
- * Takes the merged view, not the two tiers: who wins between the global and the project setting is
50
- * `resolvePreferences`' job, and this stays a pure mapping of one settled answer.
51
- */
52
- export declare function runOptionsFromPreferences(preferences: Preferences, context?: string[]): StartRunOptions;
53
- //# sourceMappingURL=run-options.d.ts.map