@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
package/dist/logs.d.ts DELETED
@@ -1,73 +0,0 @@
1
- import { THE_FRAMEWORK_DIR } from './framework-dir.js';
2
- import { type StoreFs } from './store/index.js';
3
- /**
4
- * The `.the-framework/LOGS.md` project log (#378): a human-readable markdown
5
- * record of every loop, prompt, and build run in a project. Pure core over the
6
- * same {@link StoreFs} seam as the run store; the run-lifecycle wiring and UI
7
- * land in later issues (#379/#380).
8
- */
9
- /** The directory, under the project root, that holds the log. Defined in its own node-free
10
- * module (#874) so the browser-reachable preset registry can share it; re-exported here
11
- * because this is where every existing import site expects to find it. */
12
- export { THE_FRAMEWORK_DIR };
13
- /** The markdown log file name. */
14
- export declare const LOGS_FILE = "LOGS.md";
15
- /**
16
- * The `.the-framework/.gitignore` that keeps run state transient (#313): the dir
17
- * holds both the committed DB (LOGS.md) and the transient run logs, so this
18
- * ignores everything except LOGS.md and itself.
19
- *
20
- * An allow-list, so anything else meant to be committed needs its own negation —
21
- * see `CONVERSATIONS_GITIGNORE` (#908), which install appends to this.
22
- */
23
- export declare const LOGS_GITIGNORE = "# The Framework: the committed project DB; session state is transient.\n*\n!.gitignore\n!LOGS.md\n";
24
- /** One project-log entry: a loop, or a standalone prompt/build. */
25
- export interface LogEntry {
26
- /** ISO timestamp. */
27
- at: string;
28
- kind: 'loop' | 'prompt' | 'build';
29
- /** The run's intent/prompt. Escaped to one line on write (#897), so it may hold a whole prompt. */
30
- title: string;
31
- status: 'done' | 'stopped' | 'failed' | 'running';
32
- /**
33
- * The run's id (#898): the join key from this committed entry to the rest of the run, whose
34
- * `runs/<id>.json` meta and `runs/<id>.jsonl` events are transient and stay out of git.
35
- */
36
- id?: string;
37
- /** Claude Code session id. */
38
- sessionId?: string;
39
- /** e.g. `https://claude.ai/code/<id>` */
40
- sessionLink?: string;
41
- /** The name the agent gave the session (#326), also its `the-framework/<name>` branch. */
42
- sessionName?: string;
43
- /**
44
- * The branch the run's work landed on (#799). Read from the checkout as the run settles,
45
- * because it is not derivable later: a clean run loses its worktree, and the agent may have
46
- * branched itself.
47
- */
48
- branch?: string;
49
- /** For a loop: constituent prompt summaries. */
50
- prompts?: string[];
51
- }
52
- /** The one-time first line of the file, written on the first append. */
53
- export declare const LOGS_HEADER = "# The Framework logs\n";
54
- /** The log path under `cwd`. */
55
- export declare function logsPath(cwd: string): string;
56
- /** The `.gitignore` path under `cwd`'s `.the-framework/`. */
57
- export declare function gitignorePath(cwd: string): string;
58
- /** Markdown for one entry, starting at `## ` (no file header, no blank lines around it). */
59
- export declare function renderLogEntry(entry: LogEntry): string;
60
- /**
61
- * Parse every entry out of the markdown, in file order (append order, so
62
- * oldest-first). Forgiving: a malformed or torn entry is skipped, never thrown.
63
- */
64
- export declare function parseLogs(md: string): LogEntry[];
65
- /**
66
- * Append one entry to `.the-framework/LOGS.md`, creating the dir and the
67
- * one-time file header when absent. A raw write (may reject); the caller
68
- * decides best-effort.
69
- */
70
- export declare function appendLog(cwd: string, entry: LogEntry, fs?: StoreFs): Promise<void>;
71
- /** Read the project log, newest-first (append order reversed). Missing file yields `[]`. */
72
- export declare function readLogs(cwd: string, fs?: StoreFs): Promise<LogEntry[]>;
73
- //# sourceMappingURL=logs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../src/logs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAe,KAAK,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAE5D;;;;;GAKG;AAEH;;0EAE0E;AAC1E,OAAO,EAAE,iBAAiB,EAAE,CAAA;AAE5B,kCAAkC;AAClC,eAAO,MAAM,SAAS,YAAY,CAAA;AAElC;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,uGAC2E,CAAA;AAEtG,mEAAmE;AACnE,MAAM,WAAW,QAAQ;IACvB,qBAAqB;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAA;IACjC,mGAAmG;IACnG,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAA;IACjD;;;OAGG;IACH,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,yCAAyC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,0FAA0F;IAC1F,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CACnB;AAwBD,wEAAwE;AACxE,eAAO,MAAM,WAAW,2BAA2B,CAAA;AAEnD,gCAAgC;AAChC,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED,6DAA6D;AAC7D,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEjD;AA0ED,4FAA4F;AAC5F,wBAAgB,cAAc,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,CAWtD;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,QAAQ,EAAE,CAmBhD;AA8CD;;;;GAIG;AACH,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,GAAE,OAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAKxG;AAED,4FAA4F;AAC5F,wBAAsB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,GAAE,OAAuB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAI5F"}
package/dist/logs.js DELETED
@@ -1,218 +0,0 @@
1
- import { join } from 'node:path';
2
- import { THE_FRAMEWORK_DIR } from './framework-dir.js';
3
- import { nodeStoreFs } from './store/index.js';
4
- /**
5
- * The `.the-framework/LOGS.md` project log (#378): a human-readable markdown
6
- * record of every loop, prompt, and build run in a project. Pure core over the
7
- * same {@link StoreFs} seam as the run store; the run-lifecycle wiring and UI
8
- * land in later issues (#379/#380).
9
- */
10
- /** The directory, under the project root, that holds the log. Defined in its own node-free
11
- * module (#874) so the browser-reachable preset registry can share it; re-exported here
12
- * because this is where every existing import site expects to find it. */
13
- export { THE_FRAMEWORK_DIR };
14
- /** The markdown log file name. */
15
- export const LOGS_FILE = 'LOGS.md';
16
- /**
17
- * The `.the-framework/.gitignore` that keeps run state transient (#313): the dir
18
- * holds both the committed DB (LOGS.md) and the transient run logs, so this
19
- * ignores everything except LOGS.md and itself.
20
- *
21
- * An allow-list, so anything else meant to be committed needs its own negation —
22
- * see `CONVERSATIONS_GITIGNORE` (#908), which install appends to this.
23
- */
24
- export const LOGS_GITIGNORE = '# The Framework: the committed project DB; session state is transient.\n*\n!.gitignore\n!LOGS.md\n';
25
- const KINDS = ['loop', 'prompt', 'build'];
26
- const STATUSES = ['done', 'stopped', 'failed', 'running'];
27
- /** Heading field separator: a middle dot (U+00B7) with a space on each side. */
28
- const SEP = ' · ';
29
- /**
30
- * Escape a free-text field so it stays on its own line (#897). A title is the run's prompt and a
31
- * prompt bullet is agent text, but the file is committed history parsed line by line: an unescaped
32
- * newline spills the rest of the prompt into the file, where a `## ` line forges an entry and a
33
- * `- status: ` line rewrites one. Reversed by {@link decodeField}.
34
- */
35
- function encodeField(value) {
36
- return value.replace(/\\/g, '\\\\').replace(/\r\n|\r|\n/g, '\\n');
37
- }
38
- /** Reverse {@link encodeField}. Entries written before #897 are unescaped, so a literal `\n` in
39
- * one of them decodes to a newline; harmless next to reading the rest of the prompt as entries. */
40
- function decodeField(value) {
41
- return value.replace(/\\(\\|n)/g, (_, char) => (char === 'n' ? '\n' : '\\'));
42
- }
43
- /** The one-time first line of the file, written on the first append. */
44
- export const LOGS_HEADER = '# The Framework logs\n';
45
- /** The log path under `cwd`. */
46
- export function logsPath(cwd) {
47
- return join(cwd, THE_FRAMEWORK_DIR, LOGS_FILE);
48
- }
49
- /** The `.gitignore` path under `cwd`'s `.the-framework/`. */
50
- export function gitignorePath(cwd) {
51
- return join(cwd, THE_FRAMEWORK_DIR, '.gitignore');
52
- }
53
- /**
54
- * The single-line `- key: ` fields, in render order, each owning both directions of its own
55
- * encoding. render and parse both walk this one list, so a field's name, prefix, and escaping
56
- * can never drift between the two sides — the file's one real hazard when they were hand-mirrored.
57
- * The heading and the `- prompts:` nested list are structurally different and stay bespoke.
58
- */
59
- const LOG_FIELDS = [
60
- {
61
- prefix: '- status: ',
62
- render: entry => entry.status,
63
- parse: (body, draft) => {
64
- draft.status = body.trim();
65
- },
66
- },
67
- {
68
- prefix: '- run: ',
69
- render: entry => (entry.id ? encodeField(entry.id) : undefined),
70
- parse: (body, draft) => {
71
- draft.id = decodeField(body.trim());
72
- },
73
- },
74
- {
75
- prefix: '- session: ',
76
- render: entry => entry.sessionId === undefined
77
- ? undefined
78
- : entry.sessionLink
79
- ? `[${entry.sessionId}](${entry.sessionLink})`
80
- : entry.sessionId,
81
- parse: (body, draft) => {
82
- const value = body.trim();
83
- const linked = /^\[(.+)\]\((.+)\)$/.exec(value);
84
- if (linked) {
85
- draft.sessionId = linked[1];
86
- draft.sessionLink = linked[2];
87
- }
88
- else {
89
- draft.sessionId = value;
90
- }
91
- },
92
- },
93
- {
94
- prefix: '- name: ',
95
- render: entry => (entry.sessionName ? encodeField(entry.sessionName) : undefined),
96
- parse: (body, draft) => {
97
- draft.sessionName = decodeField(body.trim());
98
- },
99
- },
100
- {
101
- prefix: '- branch: ',
102
- render: entry => (entry.branch ? encodeField(entry.branch) : undefined),
103
- parse: (body, draft) => {
104
- draft.branch = decodeField(body.trim());
105
- },
106
- },
107
- ];
108
- /** Markdown for one entry, starting at `## ` (no file header, no blank lines around it). */
109
- export function renderLogEntry(entry) {
110
- const lines = [`## ${entry.at}${SEP}${entry.kind}${SEP}${encodeField(entry.title)}`, ''];
111
- for (const field of LOG_FIELDS) {
112
- const body = field.render(entry);
113
- if (body !== undefined)
114
- lines.push(`${field.prefix}${body}`);
115
- }
116
- if (entry.prompts && entry.prompts.length > 0) {
117
- lines.push('- prompts:');
118
- for (const prompt of entry.prompts)
119
- lines.push(` - ${encodeField(prompt)}`);
120
- }
121
- return lines.join('\n');
122
- }
123
- /**
124
- * Parse every entry out of the markdown, in file order (append order, so
125
- * oldest-first). Forgiving: a malformed or torn entry is skipped, never thrown.
126
- */
127
- export function parseLogs(md) {
128
- const entries = [];
129
- let block;
130
- const flush = () => {
131
- const entry = block && parseEntry(block);
132
- if (entry)
133
- entries.push(entry);
134
- block = undefined;
135
- };
136
- for (const line of md.split('\n')) {
137
- if (line.startsWith('## ')) {
138
- flush();
139
- block = [line];
140
- }
141
- else if (block) {
142
- block.push(line);
143
- }
144
- // Anything before the first `## ` (the file header) is ignored.
145
- }
146
- flush();
147
- return entries;
148
- }
149
- /** Parse one `## `-headed block; `undefined` when a required field is missing/invalid. */
150
- function parseEntry(lines) {
151
- const heading = lines[0]?.slice('## '.length) ?? '';
152
- const parts = heading.split(SEP);
153
- const at = parts[0];
154
- const kind = parts[1];
155
- // Re-join the rest so a title containing the separator survives.
156
- const title = decodeField(parts.slice(2).join(SEP));
157
- if (!at || !kind || !title || !KINDS.includes(kind))
158
- return undefined;
159
- const draft = {};
160
- let prompts;
161
- let inPrompts = false;
162
- for (const line of lines.slice(1)) {
163
- if (inPrompts && line.startsWith(' - ')) {
164
- prompts.push(decodeField(line.slice(' - '.length)));
165
- continue;
166
- }
167
- inPrompts = false;
168
- if (line.trim() === '- prompts:') {
169
- prompts = [];
170
- inPrompts = true;
171
- continue;
172
- }
173
- const field = LOG_FIELDS.find(f => line.startsWith(f.prefix));
174
- if (field)
175
- field.parse(line.slice(field.prefix.length), draft);
176
- }
177
- if (!draft.status || !STATUSES.includes(draft.status))
178
- return undefined;
179
- const entry = {
180
- at,
181
- kind: kind,
182
- title,
183
- status: draft.status,
184
- };
185
- if (draft.id)
186
- entry.id = draft.id;
187
- if (draft.sessionId)
188
- entry.sessionId = draft.sessionId;
189
- if (draft.sessionLink)
190
- entry.sessionLink = draft.sessionLink;
191
- if (draft.sessionName)
192
- entry.sessionName = draft.sessionName;
193
- if (draft.branch)
194
- entry.branch = draft.branch;
195
- if (prompts && prompts.length > 0)
196
- entry.prompts = prompts;
197
- return entry;
198
- }
199
- /**
200
- * Append one entry to `.the-framework/LOGS.md`, creating the dir and the
201
- * one-time file header when absent. A raw write (may reject); the caller
202
- * decides best-effort.
203
- */
204
- export async function appendLog(cwd, entry, fs = nodeStoreFs()) {
205
- await fs.mkdir(join(cwd, THE_FRAMEWORK_DIR));
206
- const path = logsPath(cwd);
207
- if (!(await fs.exists(path)))
208
- await fs.write(path, LOGS_HEADER);
209
- await fs.append(path, '\n' + renderLogEntry(entry) + '\n');
210
- }
211
- /** Read the project log, newest-first (append order reversed). Missing file yields `[]`. */
212
- export async function readLogs(cwd, fs = nodeStoreFs()) {
213
- const path = logsPath(cwd);
214
- if (!(await fs.exists(path)))
215
- return [];
216
- return parseLogs(await fs.read(path)).reverse();
217
- }
218
- //# sourceMappingURL=logs.js.map
package/dist/logs.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"logs.js","sourceRoot":"","sources":["../src/logs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,WAAW,EAAgB,MAAM,kBAAkB,CAAA;AAE5D;;;;;GAKG;AAEH;;0EAE0E;AAC1E,OAAO,EAAE,iBAAiB,EAAE,CAAA;AAE5B,kCAAkC;AAClC,MAAM,CAAC,MAAM,SAAS,GAAG,SAAS,CAAA;AAElC;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,cAAc,GACzB,oGAAoG,CAAA;AA+BtG,MAAM,KAAK,GAAsB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;AAC5D,MAAM,QAAQ,GAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAA;AAE5E,gFAAgF;AAChF,MAAM,GAAG,GAAG,KAAK,CAAA;AAEjB;;;;;GAKG;AACH,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC,CAAA;AACnE,CAAC;AAED;mGACmG;AACnG,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;AAC9E,CAAC;AAED,wEAAwE;AACxE,MAAM,CAAC,MAAM,WAAW,GAAG,wBAAwB,CAAA;AAEnD,gCAAgC;AAChC,MAAM,UAAU,QAAQ,CAAC,GAAW;IAClC,OAAO,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,SAAS,CAAC,CAAA;AAChD,CAAC;AAED,6DAA6D;AAC7D,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,OAAO,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,YAAY,CAAC,CAAA;AACnD,CAAC;AAYD;;;;;GAKG;AACH,MAAM,UAAU,GAMX;IACH;QACE,MAAM,EAAE,YAAY;QACpB,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM;QAC7B,KAAK,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YACrB,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;QAC5B,CAAC;KACF;IACD;QACE,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/D,KAAK,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YACrB,KAAK,CAAC,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QACrC,CAAC;KACF;IACD;QACE,MAAM,EAAE,aAAa;QACrB,MAAM,EAAE,KAAK,CAAC,EAAE,CACd,KAAK,CAAC,SAAS,KAAK,SAAS;YAC3B,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,KAAK,CAAC,WAAW;gBACjB,CAAC,CAAC,IAAI,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,WAAW,GAAG;gBAC9C,CAAC,CAAC,KAAK,CAAC,SAAS;QACvB,KAAK,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YACrB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;YACzB,MAAM,MAAM,GAAG,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC/C,IAAI,MAAM,EAAE,CAAC;gBACX,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC,CAAE,CAAA;gBAC5B,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,CAAC,CAAE,CAAA;YAChC,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,SAAS,GAAG,KAAK,CAAA;YACzB,CAAC;QACH,CAAC;KACF;IACD;QACE,MAAM,EAAE,UAAU;QAClB,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACjF,KAAK,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YACrB,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QAC9C,CAAC;KACF;IACD;QACE,MAAM,EAAE,YAAY;QACpB,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACvE,KAAK,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YACrB,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QACzC,CAAC;KACF;CACF,CAAA;AAED,4FAA4F;AAC5F,MAAM,UAAU,cAAc,CAAC,KAAe;IAC5C,MAAM,KAAK,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,GAAG,GAAG,GAAG,KAAK,CAAC,IAAI,GAAG,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;IACxF,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAChC,IAAI,IAAI,KAAK,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC,CAAA;IAC9D,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QACxB,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO;YAAE,KAAK,CAAC,IAAI,CAAC,OAAO,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IAC9E,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACzB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,SAAS,CAAC,EAAU;IAClC,MAAM,OAAO,GAAe,EAAE,CAAA;IAC9B,IAAI,KAA2B,CAAA;IAC/B,MAAM,KAAK,GAAG,GAAG,EAAE;QACjB,MAAM,KAAK,GAAG,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,CAAA;QACxC,IAAI,KAAK;YAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC9B,KAAK,GAAG,SAAS,CAAA;IACnB,CAAC,CAAA;IACD,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,KAAK,EAAE,CAAA;YACP,KAAK,GAAG,CAAC,IAAI,CAAC,CAAA;QAChB,CAAC;aAAM,IAAI,KAAK,EAAE,CAAC;YACjB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAClB,CAAC;QACD,gEAAgE;IAClE,CAAC;IACD,KAAK,EAAE,CAAA;IACP,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,0FAA0F;AAC1F,SAAS,UAAU,CAAC,KAAe;IACjC,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;IACnD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAChC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;IACnB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;IACrB,iEAAiE;IACjE,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IACnD,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAA;IAErE,MAAM,KAAK,GAAe,EAAE,CAAA;IAC5B,IAAI,OAA6B,CAAA;IACjC,IAAI,SAAS,GAAG,KAAK,CAAA;IACrB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAClC,IAAI,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YACzC,OAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;YACrD,SAAQ;QACV,CAAC;QACD,SAAS,GAAG,KAAK,CAAA;QACjB,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,YAAY,EAAE,CAAC;YACjC,OAAO,GAAG,EAAE,CAAA;YACZ,SAAS,GAAG,IAAI,CAAA;YAChB,SAAQ;QACV,CAAC;QACD,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;QAC7D,IAAI,KAAK;YAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAA;IAChE,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;QAAE,OAAO,SAAS,CAAA;IAEvE,MAAM,KAAK,GAAa;QACtB,EAAE;QACF,IAAI,EAAE,IAAwB;QAC9B,KAAK;QACL,MAAM,EAAE,KAAK,CAAC,MAA4B;KAC3C,CAAA;IACD,IAAI,KAAK,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,CAAA;IACjC,IAAI,KAAK,CAAC,SAAS;QAAE,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;IACtD,IAAI,KAAK,CAAC,WAAW;QAAE,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAA;IAC5D,IAAI,KAAK,CAAC,WAAW;QAAE,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAA;IAC5D,IAAI,KAAK,CAAC,MAAM;QAAE,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;IAC7C,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,OAAO,GAAG,OAAO,CAAA;IAC1D,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,GAAW,EAAE,KAAe,EAAE,KAAc,WAAW,EAAE;IACvF,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC,CAAA;IAC5C,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;IAC1B,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAAE,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;IAC/D,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAA;AAC5D,CAAC;AAED,4FAA4F;AAC5F,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,GAAW,EAAE,KAAc,WAAW,EAAE;IACrE,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;IAC1B,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,EAAE,CAAA;IACvC,OAAO,SAAS,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,CAAA;AACjD,CAAC"}
@@ -1,90 +0,0 @@
1
- import { type GitRunner } from '@gemstack/agent-data';
2
- /** What a repo's last maintenance review recorded. */
3
- export interface MaintenanceState {
4
- /** The HEAD commit the maintenance loop last reviewed (a full SHA). */
5
- reviewedSha?: string;
6
- /** ISO timestamp of that review. */
7
- reviewedAt?: string;
8
- }
9
- /** Minimal fs seam so the state IO is unit-testable without touching disk. */
10
- export interface MaintenanceFs {
11
- read(path: string): Promise<string>;
12
- write(path: string, contents: string): Promise<void>;
13
- mkdir(path: string): Promise<void>;
14
- }
15
- /** The review-state file path for a repo. */
16
- export declare function maintenanceStatePath(cwd: string): string;
17
- /** Read a repo's review state. Forgiving: a missing/unreadable/malformed file yields `{}`. */
18
- export declare function readMaintenanceState(cwd: string, fs?: MaintenanceFs): Promise<MaintenanceState>;
19
- /** Record a repo's review state, creating `.the-framework/` as needed. */
20
- export declare function writeMaintenanceState(cwd: string, state: MaintenanceState, fs?: MaintenanceFs): Promise<void>;
21
- /**
22
- * Record part of a repo's state, leaving the keys not mentioned alone: {@link writeMaintenanceState}
23
- * replaces the file wholesale, and a caller that knows only the part it changed must not erase the
24
- * rest.
25
- */
26
- export declare function mergeMaintenanceState(cwd: string, patch: MaintenanceState, fs?: MaintenanceFs): Promise<void>;
27
- /** What the sweep decided for one repo. */
28
- export type MaintenanceAction = 'baseline' | 'review' | 'skip' | 'error';
29
- /** A repo's assessed maintenance status. */
30
- export interface RepoReview {
31
- /** Registry id, when assessed from the registry. */
32
- id?: string;
33
- /** Absolute repo path. */
34
- path: string;
35
- /** Current HEAD SHA, when resolvable. */
36
- headSha?: string;
37
- /** The last-reviewed SHA, when the repo has been reviewed before. */
38
- reviewedSha?: string;
39
- /** Commits in `reviewedSha..HEAD` (0 for a first-seen or up-to-date repo). */
40
- newCommits: number;
41
- /** What to do: baseline a first-seen repo, review new commits, skip an up-to-date one, or an error. */
42
- action: MaintenanceAction;
43
- /** Context for an `error` or an unusual `review` (e.g. rewritten history). */
44
- note?: string;
45
- }
46
- /**
47
- * Assess one repo: resolve HEAD, read its review state, and count the commits since
48
- * the last review. A never-reviewed repo is `baseline` (we record HEAD without
49
- * reviewing history retroactively); an unchanged repo is `skip`; new commits are
50
- * `review`. A non-repo / missing git is `error` (skipped, never throws). A reviewed
51
- * SHA git no longer knows (rebased away) falls back to `review`.
52
- */
53
- export declare function assessRepo(path: string, git?: GitRunner, fs?: MaintenanceFs): Promise<RepoReview>;
54
- /** Assess every registered repo, tagging each review with its registry id. */
55
- export declare function planMaintenanceSweep(repos: readonly {
56
- id?: string;
57
- path: string;
58
- }[], git?: GitRunner, fs?: MaintenanceFs): Promise<RepoReview[]>;
59
- /** The tally a sweep returns. */
60
- export interface SweepSummary {
61
- reviewed: number;
62
- baselined: number;
63
- skipped: number;
64
- failed: number;
65
- /** Repos not reached because `maxRepos` was hit. */
66
- pending: number;
67
- }
68
- /** Injected effects for {@link maintainSweep}, so the orchestration is testable off disk/process. */
69
- export interface SweepDeps {
70
- /** Run the maintenance loop on a repo; resolves true on success. */
71
- agent(review: RepoReview): Promise<boolean>;
72
- /** Persist a repo's review state (called after a baseline or a successful review). */
73
- record(path: string, state: MaintenanceState): Promise<void>;
74
- /** Progress line. */
75
- log(message: string): void;
76
- /** ISO timestamp for a recorded review (injected so runs are deterministic in tests). */
77
- now(): string;
78
- /** Stop after reviewing this many repos in one sweep (baselines/skips don't count). */
79
- maxRepos?: number;
80
- }
81
- /**
82
- * Orchestrate a sweep over pre-assessed reviews: baseline first-seen repos (record
83
- * HEAD, no run), skip up-to-date ones, and run the maintenance loop on the rest —
84
- * recording the reviewed SHA only when the agent succeeds, so a failure is retried next
85
- * sweep. Honors `maxRepos`; the remainder is reported as `pending`.
86
- */
87
- export declare function maintainSweep(reviews: readonly RepoReview[], deps: SweepDeps): Promise<SweepSummary>;
88
- /** Short SHA for logs. */
89
- export declare function short(sha: string | undefined): string;
90
- //# sourceMappingURL=maintenance.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"maintenance.d.ts","sourceRoot":"","sources":["../src/maintenance.ts"],"names":[],"mappings":"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"}
@@ -1,141 +0,0 @@
1
- import { join } from 'node:path';
2
- import { nodeGitRunner } from '@gemstack/agent-data';
3
- import { THE_FRAMEWORK_DIR } from './framework-dir.js';
4
- import { nodeFs } from './node-fs.js';
5
- /**
6
- * The maintenance sweep (#298): a background job that walks the registered repos,
7
- * finds the commits each repo has grown since its last maintenance review, and runs
8
- * the maintainability loop on them. Per-repo review state is a small local file
9
- * (`.the-framework/maintenance.json`, gitignored) recording the last-reviewed commit,
10
- * so a sweep only ever acts on new work. The capacity gate is the quota boundary, which
11
- * decides whether unattended work may start. #298's "check the limit" half is reachable — the agent
12
- * reports the account's quota per turn (#517) and on demand (#521) — but this sweep
13
- * does not gate on it yet; that is #519's consumption limits.
14
- */
15
- /** The per-repo review-state filename under `.the-framework/`. */
16
- const MAINTENANCE_FILE = 'maintenance.json';
17
- /** A {@link MaintenanceFs} backed by `node:fs/promises`. See {@link nodeFs}. */
18
- function nodeMaintenanceFs() {
19
- const { read, write, mkdir } = nodeFs();
20
- return { read, write, mkdir };
21
- }
22
- /** The review-state file path for a repo. */
23
- export function maintenanceStatePath(cwd) {
24
- return join(cwd, THE_FRAMEWORK_DIR, MAINTENANCE_FILE);
25
- }
26
- /** Read a repo's review state. Forgiving: a missing/unreadable/malformed file yields `{}`. */
27
- export async function readMaintenanceState(cwd, fs = nodeMaintenanceFs()) {
28
- try {
29
- const parsed = JSON.parse(await fs.read(maintenanceStatePath(cwd)));
30
- if (parsed && typeof parsed === 'object') {
31
- const record = parsed;
32
- const state = {};
33
- if (typeof record['reviewedSha'] === 'string')
34
- state.reviewedSha = record['reviewedSha'];
35
- if (typeof record['reviewedAt'] === 'string')
36
- state.reviewedAt = record['reviewedAt'];
37
- return state;
38
- }
39
- }
40
- catch {
41
- // absent / unreadable / malformed -> no prior review
42
- }
43
- return {};
44
- }
45
- /** Record a repo's review state, creating `.the-framework/` as needed. */
46
- export async function writeMaintenanceState(cwd, state, fs = nodeMaintenanceFs()) {
47
- await fs.mkdir(join(cwd, THE_FRAMEWORK_DIR));
48
- await fs.write(maintenanceStatePath(cwd), JSON.stringify(state, null, 2));
49
- }
50
- /**
51
- * Record part of a repo's state, leaving the keys not mentioned alone: {@link writeMaintenanceState}
52
- * replaces the file wholesale, and a caller that knows only the part it changed must not erase the
53
- * rest.
54
- */
55
- export async function mergeMaintenanceState(cwd, patch, fs = nodeMaintenanceFs()) {
56
- await writeMaintenanceState(cwd, { ...(await readMaintenanceState(cwd, fs)), ...patch }, fs);
57
- }
58
- /**
59
- * Assess one repo: resolve HEAD, read its review state, and count the commits since
60
- * the last review. A never-reviewed repo is `baseline` (we record HEAD without
61
- * reviewing history retroactively); an unchanged repo is `skip`; new commits are
62
- * `review`. A non-repo / missing git is `error` (skipped, never throws). A reviewed
63
- * SHA git no longer knows (rebased away) falls back to `review`.
64
- */
65
- export async function assessRepo(path, git = nodeGitRunner(), fs = nodeMaintenanceFs()) {
66
- let headSha;
67
- try {
68
- headSha = (await git(['rev-parse', 'HEAD'], path)).trim();
69
- }
70
- catch {
71
- return { path, newCommits: 0, action: 'error', note: 'not a git repo, or it has no commits' };
72
- }
73
- const { reviewedSha } = await readMaintenanceState(path, fs);
74
- if (!reviewedSha)
75
- return { path, headSha, newCommits: 0, action: 'baseline' };
76
- if (reviewedSha === headSha)
77
- return { path, headSha, reviewedSha, newCommits: 0, action: 'skip' };
78
- try {
79
- const count = Number.parseInt((await git(['rev-list', '--count', `${reviewedSha}..HEAD`], path)).trim(), 10);
80
- const newCommits = Number.isFinite(count) ? count : 0;
81
- return { path, headSha, reviewedSha, newCommits, action: newCommits > 0 ? 'review' : 'skip' };
82
- }
83
- catch {
84
- // The reviewed commit is unknown to git (history was rewritten): re-review to be safe.
85
- return { path, headSha, reviewedSha, newCommits: 0, action: 'review', note: 'reviewed commit not found (history changed); re-reviewing' };
86
- }
87
- }
88
- /** Assess every registered repo, tagging each review with its registry id. */
89
- export async function planMaintenanceSweep(repos, git = nodeGitRunner(), fs = nodeMaintenanceFs()) {
90
- return Promise.all(repos.map(async (repo) => ({ ...(await assessRepo(repo.path, git, fs)), ...(repo.id ? { id: repo.id } : {}) })));
91
- }
92
- /**
93
- * Orchestrate a sweep over pre-assessed reviews: baseline first-seen repos (record
94
- * HEAD, no run), skip up-to-date ones, and run the maintenance loop on the rest —
95
- * recording the reviewed SHA only when the agent succeeds, so a failure is retried next
96
- * sweep. Honors `maxRepos`; the remainder is reported as `pending`.
97
- */
98
- export async function maintainSweep(reviews, deps) {
99
- const summary = { reviewed: 0, baselined: 0, skipped: 0, failed: 0, pending: 0 };
100
- const limit = deps.maxRepos ?? Infinity;
101
- for (const review of reviews) {
102
- if (review.action === 'skip') {
103
- summary.skipped++;
104
- continue;
105
- }
106
- if (review.action === 'error') {
107
- summary.failed++;
108
- deps.log(`✗ ${review.path}: ${review.note ?? 'could not assess'}`);
109
- continue;
110
- }
111
- if (review.action === 'baseline') {
112
- if (review.headSha)
113
- await deps.record(review.path, { reviewedSha: review.headSha, reviewedAt: deps.now() });
114
- summary.baselined++;
115
- deps.log(`◆ baselined ${review.path} at ${short(review.headSha)}`);
116
- continue;
117
- }
118
- // action === 'review'
119
- if (summary.reviewed >= limit) {
120
- summary.pending++;
121
- continue;
122
- }
123
- deps.log(`▶ maintaining ${review.path} (${review.newCommits} new commit${review.newCommits === 1 ? '' : 's'})…`);
124
- const ok = await deps.agent(review);
125
- if (ok && review.headSha) {
126
- await deps.record(review.path, { reviewedSha: review.headSha, reviewedAt: deps.now() });
127
- summary.reviewed++;
128
- deps.log(`✓ ${review.path} reviewed`);
129
- }
130
- else {
131
- summary.failed++;
132
- deps.log(`✗ ${review.path} maintenance session failed; will retry next sweep`);
133
- }
134
- }
135
- return summary;
136
- }
137
- /** Short SHA for logs. */
138
- export function short(sha) {
139
- return sha ? sha.slice(0, 7) : '(unknown)';
140
- }
141
- //# sourceMappingURL=maintenance.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"maintenance.js","sourceRoot":"","sources":["../src/maintenance.ts"],"names":[],"mappings":"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"}
@@ -1,74 +0,0 @@
1
- import { type RemoveResult, type WorktreeRow } from './worktrees.js';
2
- import { type ProjectPass, type ProjectsSource } from './project-pass.js';
3
- /** One worktree this sweep removed. */
4
- export interface RemovedWorktree {
5
- /** The agent id, which is also the worktree's directory name. */
6
- agentId: string;
7
- /** Branches that went with it: one holding nothing the remote lacks (#1650), a run-id branch the kept branch contains (#1657). */
8
- branchesDeleted?: string[];
9
- }
10
- /** A worktree the sweep tried to reclaim and could not, and why. */
11
- export interface FailedRemoval {
12
- agentId: string;
13
- error: string;
14
- }
15
- /** What {@link removeMergedWorktrees} did. */
16
- export interface MergedSweepResult {
17
- removed: RemovedWorktree[];
18
- /** Worktrees it tried and could not reclaim — most often a branch it could not push. */
19
- failed: FailedRemoval[];
20
- }
21
- /** Injectable seams so the sweep is unit-testable off disk. */
22
- export interface MergedSweepDeps {
23
- /** The worktrees on disk (default {@link listProjectWorktrees}). */
24
- worktrees?: (cwd: string) => Promise<WorktreeRow[]>;
25
- /** Removes one worktree (default {@link removeProjectWorktree}). */
26
- remove?: (cwd: string, agentId: string) => Promise<RemoveResult>;
27
- /** Whether the repo has a remote at all (default {@link repoHasRemote}). */
28
- hasRemote?: (cwd: string) => Promise<boolean>;
29
- /** Agent ids whose checkouts the daemon is still responsible for; see {@link MergedSweepOptions.busy}. */
30
- busy?: ReadonlySet<string>;
31
- }
32
- /**
33
- * Reclaim every retained worktree in `cwd` whose work can reach the remote (E5).
34
- *
35
- * The decision is entirely {@link removeProjectWorktree}'s — keep a dirty checkout, push the
36
- * branch, remove only once the remote has it — so the automatic path and the manual one (the
37
- * dashboard's Remove button) are one behaviour rather than two that can disagree. This adds the
38
- * loop, the one thing it must never touch (a live agent's checkout, where its agent is working), and
39
- * the agent lock.
40
- *
41
- * The lock is load-bearing: an agent's meta flips to `done` a beat before its teardown finishes
42
- * archiving, so a sweep landing in that window would remove the checkout out from under the
43
- * archive — which then recreates the directory it was reading from, and the removal silently
44
- * un-happens. Every other actor on a checkout already takes this lock.
45
- */
46
- export declare function removeMergedWorktrees(cwd: string, deps?: MergedSweepDeps): Promise<MergedSweepResult>;
47
- /** `its branch x` / `its branches x and y`, for the removal line. */
48
- export declare function describeDeleted(branches: readonly string[]): string;
49
- /** What {@link startMergedWorktreeSweep} needs from the daemon. */
50
- export interface MergedSweepOptions {
51
- /** The registered projects to sweep. */
52
- projects: ProjectsSource;
53
- log: (message: string) => void;
54
- /**
55
- * The agents the daemon is still responsible for — spawning, running, or mid-retirement — whose
56
- * checkouts this must not touch.
57
- *
58
- * "Not live" on disk is not "the daemon is finished with it": an agent's meta flips to `done` a
59
- * beat before its teardown archives the history and reclaims the checkout, and a sweep landing
60
- * in that window races the teardown for the same directory. Absent means nothing is busy, which
61
- * is right for a caller that spawns no agents.
62
- */
63
- busy?: () => ReadonlySet<string>;
64
- /** The per-project sweep (default {@link removeMergedWorktrees}). */
65
- sweep?: (cwd: string) => Promise<MergedSweepResult>;
66
- }
67
- /**
68
- * Sweep every registered project's reclaimable worktrees (#1036), one turn per call.
69
- *
70
- * Says what it removed rather than removing it silently: a checkout vanishing from under someone
71
- * with no line explaining why reads as a bug, even when the work behind it is safe.
72
- */
73
- export declare function startMergedWorktreeSweep(opts: MergedSweepOptions): ProjectPass;
74
- //# sourceMappingURL=merged-worktrees.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"merged-worktrees.d.ts","sourceRoot":"","sources":["../src/merged-worktrees.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+C,KAAK,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAGjH,OAAO,EAAoB,KAAK,WAAW,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAmB3F,uCAAuC;AACvC,MAAM,WAAW,eAAe;IAC9B,iEAAiE;IACjE,OAAO,EAAE,MAAM,CAAA;IACf,kIAAkI;IAClI,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,oEAAoE;AACpE,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;CACd;AAED,8CAA8C;AAC9C,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,eAAe,EAAE,CAAA;IAC1B,wFAAwF;IACxF,MAAM,EAAE,aAAa,EAAE,CAAA;CACxB;AAED,+DAA+D;AAC/D,MAAM,WAAW,eAAe;IAC9B,oEAAoE;IACpE,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;IACnD,oEAAoE;IACpE,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,YAAY,CAAC,CAAA;IAChE,4EAA4E;IAC5E,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAC7C,0GAA0G;IAC1G,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;CAC3B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,eAAoB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAyB/G;AAED,qEAAqE;AACrE,wBAAgB,eAAe,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAEnE;AAED,mEAAmE;AACnE,MAAM,WAAW,kBAAkB;IACjC,wCAAwC;IACxC,QAAQ,EAAE,cAAc,CAAA;IACxB,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,MAAM,WAAW,CAAC,MAAM,CAAC,CAAA;IAChC,qEAAqE;IACrE,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAA;CACpD;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,kBAAkB,GAAG,WAAW,CA6B9E"}