@pellux/goodvibes-sdk 0.38.0 → 1.1.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 (559) hide show
  1. package/dist/contracts/artifacts/operator-contract.json +4468 -916
  2. package/dist/daemon.d.ts +2 -0
  3. package/dist/daemon.d.ts.map +1 -1
  4. package/dist/daemon.js +4 -0
  5. package/dist/events/communication.d.ts +1 -1
  6. package/dist/events/surfaces.d.ts +25 -3
  7. package/dist/events/surfaces.d.ts.map +1 -1
  8. package/dist/events/surfaces.js +22 -1
  9. package/dist/events/workflows.d.ts +7 -6
  10. package/dist/events/workflows.d.ts.map +1 -1
  11. package/dist/index.d.ts +1 -1
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/platform/agents/archetypes.d.ts.map +1 -1
  14. package/dist/platform/agents/archetypes.js +7 -0
  15. package/dist/platform/agents/index.d.ts +1 -0
  16. package/dist/platform/agents/index.d.ts.map +1 -1
  17. package/dist/platform/agents/index.js +1 -0
  18. package/dist/platform/agents/orchestrator-runner.d.ts +16 -3
  19. package/dist/platform/agents/orchestrator-runner.d.ts.map +1 -1
  20. package/dist/platform/agents/orchestrator-runner.js +20 -6
  21. package/dist/platform/agents/orchestrator.d.ts +42 -10
  22. package/dist/platform/agents/orchestrator.d.ts.map +1 -1
  23. package/dist/platform/agents/orchestrator.js +68 -20
  24. package/dist/platform/agents/planner-decomposition-runner.d.ts +38 -0
  25. package/dist/platform/agents/planner-decomposition-runner.d.ts.map +1 -0
  26. package/dist/platform/agents/planner-decomposition-runner.js +113 -0
  27. package/dist/platform/agents/turn-knowledge-injection.d.ts +88 -3
  28. package/dist/platform/agents/turn-knowledge-injection.d.ts.map +1 -1
  29. package/dist/platform/agents/turn-knowledge-injection.js +147 -30
  30. package/dist/platform/agents/worktree.d.ts +126 -8
  31. package/dist/platform/agents/worktree.d.ts.map +1 -1
  32. package/dist/platform/agents/worktree.js +240 -19
  33. package/dist/platform/agents/wrfc-controller.d.ts +24 -1
  34. package/dist/platform/agents/wrfc-controller.d.ts.map +1 -1
  35. package/dist/platform/agents/wrfc-controller.js +161 -35
  36. package/dist/platform/agents/wrfc-gate-runtime.d.ts +9 -0
  37. package/dist/platform/agents/wrfc-gate-runtime.d.ts.map +1 -1
  38. package/dist/platform/agents/wrfc-gate-runtime.js +7 -3
  39. package/dist/platform/agents/wrfc-gates.d.ts +1 -1
  40. package/dist/platform/agents/wrfc-gates.d.ts.map +1 -1
  41. package/dist/platform/agents/wrfc-gates.js +7 -1
  42. package/dist/platform/agents/wrfc-types.d.ts +23 -3
  43. package/dist/platform/agents/wrfc-types.d.ts.map +1 -1
  44. package/dist/platform/automation/types.d.ts +9 -1
  45. package/dist/platform/automation/types.d.ts.map +1 -1
  46. package/dist/platform/calendar/calendar-api-shared.d.ts +25 -0
  47. package/dist/platform/calendar/calendar-api-shared.d.ts.map +1 -0
  48. package/dist/platform/calendar/calendar-api-shared.js +100 -0
  49. package/dist/platform/calendar/calendar-connector.d.ts +79 -0
  50. package/dist/platform/calendar/calendar-connector.d.ts.map +1 -0
  51. package/dist/platform/calendar/calendar-connector.js +155 -0
  52. package/dist/platform/calendar/google-calendar-api.d.ts +25 -0
  53. package/dist/platform/calendar/google-calendar-api.d.ts.map +1 -0
  54. package/dist/platform/calendar/google-calendar-api.js +89 -0
  55. package/dist/platform/calendar/http-fetch-adapter.d.ts +25 -0
  56. package/dist/platform/calendar/http-fetch-adapter.d.ts.map +1 -0
  57. package/dist/platform/calendar/http-fetch-adapter.js +25 -0
  58. package/dist/platform/calendar/ics-parser.d.ts +35 -0
  59. package/dist/platform/calendar/ics-parser.d.ts.map +1 -0
  60. package/dist/platform/calendar/ics-parser.js +236 -0
  61. package/dist/platform/calendar/index.d.ts +41 -0
  62. package/dist/platform/calendar/index.d.ts.map +1 -0
  63. package/dist/platform/calendar/index.js +49 -0
  64. package/dist/platform/calendar/merged-calendar-model.d.ts +67 -0
  65. package/dist/platform/calendar/merged-calendar-model.d.ts.map +1 -0
  66. package/dist/platform/calendar/merged-calendar-model.js +181 -0
  67. package/dist/platform/calendar/microsoft-graph-api.d.ts +25 -0
  68. package/dist/platform/calendar/microsoft-graph-api.d.ts.map +1 -0
  69. package/dist/platform/calendar/microsoft-graph-api.js +95 -0
  70. package/dist/platform/calendar/oauth-flow.d.ts +62 -0
  71. package/dist/platform/calendar/oauth-flow.d.ts.map +1 -0
  72. package/dist/platform/calendar/oauth-flow.js +305 -0
  73. package/dist/platform/calendar/oauth-providers.d.ts +43 -0
  74. package/dist/platform/calendar/oauth-providers.d.ts.map +1 -0
  75. package/dist/platform/calendar/oauth-providers.js +120 -0
  76. package/dist/platform/calendar/oauth-token-store.d.ts +72 -0
  77. package/dist/platform/calendar/oauth-token-store.d.ts.map +1 -0
  78. package/dist/platform/calendar/oauth-token-store.js +189 -0
  79. package/dist/platform/calendar/oauth-types.d.ts +274 -0
  80. package/dist/platform/calendar/oauth-types.d.ts.map +1 -0
  81. package/dist/platform/calendar/oauth-types.js +22 -0
  82. package/dist/platform/calendar/rrule.d.ts +39 -0
  83. package/dist/platform/calendar/rrule.d.ts.map +1 -0
  84. package/dist/platform/calendar/rrule.js +261 -0
  85. package/dist/platform/calendar/subscription-store.d.ts +118 -0
  86. package/dist/platform/calendar/subscription-store.d.ts.map +1 -0
  87. package/dist/platform/calendar/subscription-store.js +293 -0
  88. package/dist/platform/calendar/types.d.ts +170 -0
  89. package/dist/platform/calendar/types.d.ts.map +1 -0
  90. package/dist/platform/calendar/types.js +21 -0
  91. package/dist/platform/companion/companion-chat-attachments.d.ts +29 -0
  92. package/dist/platform/companion/companion-chat-attachments.d.ts.map +1 -0
  93. package/dist/platform/companion/companion-chat-attachments.js +121 -0
  94. package/dist/platform/companion/companion-chat-branching.d.ts +66 -0
  95. package/dist/platform/companion/companion-chat-branching.d.ts.map +1 -0
  96. package/dist/platform/companion/companion-chat-branching.js +142 -0
  97. package/dist/platform/companion/companion-chat-broker-bridge.d.ts +40 -0
  98. package/dist/platform/companion/companion-chat-broker-bridge.d.ts.map +1 -0
  99. package/dist/platform/companion/companion-chat-broker-bridge.js +14 -0
  100. package/dist/platform/companion/companion-chat-broker-sync.d.ts +38 -0
  101. package/dist/platform/companion/companion-chat-broker-sync.d.ts.map +1 -0
  102. package/dist/platform/companion/companion-chat-broker-sync.js +80 -0
  103. package/dist/platform/companion/companion-chat-gc.d.ts +63 -0
  104. package/dist/platform/companion/companion-chat-gc.d.ts.map +1 -0
  105. package/dist/platform/companion/companion-chat-gc.js +38 -0
  106. package/dist/platform/companion/companion-chat-manager.d.ts +91 -23
  107. package/dist/platform/companion/companion-chat-manager.d.ts.map +1 -1
  108. package/dist/platform/companion/companion-chat-manager.js +195 -223
  109. package/dist/platform/companion/companion-chat-persistence.d.ts +9 -1
  110. package/dist/platform/companion/companion-chat-persistence.d.ts.map +1 -1
  111. package/dist/platform/companion/companion-chat-persistence.js +10 -2
  112. package/dist/platform/companion/companion-chat-routes.d.ts +2 -1
  113. package/dist/platform/companion/companion-chat-routes.d.ts.map +1 -1
  114. package/dist/platform/companion/companion-chat-routes.js +113 -4
  115. package/dist/platform/companion/companion-chat-turn-execution.d.ts +61 -0
  116. package/dist/platform/companion/companion-chat-turn-execution.d.ts.map +1 -0
  117. package/dist/platform/companion/companion-chat-turn-execution.js +107 -0
  118. package/dist/platform/companion/companion-chat-types.d.ts +67 -0
  119. package/dist/platform/companion/companion-chat-types.d.ts.map +1 -1
  120. package/dist/platform/config/credential-status.d.ts +28 -0
  121. package/dist/platform/config/credential-status.d.ts.map +1 -0
  122. package/dist/platform/config/credential-status.js +75 -0
  123. package/dist/platform/config/index.d.ts +25 -0
  124. package/dist/platform/config/index.d.ts.map +1 -1
  125. package/dist/platform/config/index.js +18 -0
  126. package/dist/platform/config/manager.d.ts +9 -0
  127. package/dist/platform/config/manager.d.ts.map +1 -1
  128. package/dist/platform/config/manager.js +21 -2
  129. package/dist/platform/config/migrations.d.ts +48 -0
  130. package/dist/platform/config/migrations.d.ts.map +1 -0
  131. package/dist/platform/config/migrations.js +54 -0
  132. package/dist/platform/config/schema-domain-core.d.ts +10 -1
  133. package/dist/platform/config/schema-domain-core.d.ts.map +1 -1
  134. package/dist/platform/config/schema-domain-core.js +46 -3
  135. package/dist/platform/config/schema-domain-runtime.d.ts +8 -0
  136. package/dist/platform/config/schema-domain-runtime.d.ts.map +1 -1
  137. package/dist/platform/config/schema-domain-runtime.js +32 -0
  138. package/dist/platform/config/schema-types.d.ts +21 -7
  139. package/dist/platform/config/schema-types.d.ts.map +1 -1
  140. package/dist/platform/config/schema.d.ts.map +1 -1
  141. package/dist/platform/config/schema.js +2 -0
  142. package/dist/platform/control-plane/approval-broker.d.ts +11 -0
  143. package/dist/platform/control-plane/approval-broker.d.ts.map +1 -1
  144. package/dist/platform/control-plane/approval-broker.js +17 -1
  145. package/dist/platform/control-plane/approval-hunk-apply.d.ts +77 -0
  146. package/dist/platform/control-plane/approval-hunk-apply.d.ts.map +1 -0
  147. package/dist/platform/control-plane/approval-hunk-apply.js +80 -0
  148. package/dist/platform/control-plane/gateway-disabled-response.d.ts +20 -0
  149. package/dist/platform/control-plane/gateway-disabled-response.d.ts.map +1 -0
  150. package/dist/platform/control-plane/gateway-disabled-response.js +24 -0
  151. package/dist/platform/control-plane/gateway-scope-enforcement.d.ts +68 -0
  152. package/dist/platform/control-plane/gateway-scope-enforcement.d.ts.map +1 -0
  153. package/dist/platform/control-plane/gateway-scope-enforcement.js +91 -0
  154. package/dist/platform/control-plane/gateway-utils.d.ts +17 -0
  155. package/dist/platform/control-plane/gateway-utils.d.ts.map +1 -1
  156. package/dist/platform/control-plane/gateway-utils.js +30 -0
  157. package/dist/platform/control-plane/gateway.d.ts +12 -2
  158. package/dist/platform/control-plane/gateway.d.ts.map +1 -1
  159. package/dist/platform/control-plane/gateway.js +27 -31
  160. package/dist/platform/control-plane/index.d.ts +8 -1
  161. package/dist/platform/control-plane/index.d.ts.map +1 -1
  162. package/dist/platform/control-plane/index.js +8 -0
  163. package/dist/platform/control-plane/invoke-input-validation.d.ts +56 -0
  164. package/dist/platform/control-plane/invoke-input-validation.d.ts.map +1 -0
  165. package/dist/platform/control-plane/invoke-input-validation.js +163 -0
  166. package/dist/platform/control-plane/method-catalog-admin.d.ts.map +1 -1
  167. package/dist/platform/control-plane/method-catalog-admin.js +12 -1
  168. package/dist/platform/control-plane/method-catalog-calendar.d.ts +16 -0
  169. package/dist/platform/control-plane/method-catalog-calendar.d.ts.map +1 -1
  170. package/dist/platform/control-plane/method-catalog-calendar.js +21 -0
  171. package/dist/platform/control-plane/method-catalog-channels.d.ts.map +1 -1
  172. package/dist/platform/control-plane/method-catalog-channels.js +32 -3
  173. package/dist/platform/control-plane/method-catalog-control-automation.d.ts.map +1 -1
  174. package/dist/platform/control-plane/method-catalog-control-automation.js +19 -34
  175. package/dist/platform/control-plane/method-catalog-control-companion.d.ts +15 -0
  176. package/dist/platform/control-plane/method-catalog-control-companion.d.ts.map +1 -0
  177. package/dist/platform/control-plane/method-catalog-control-companion.js +176 -0
  178. package/dist/platform/control-plane/method-catalog-control-core.d.ts.map +1 -1
  179. package/dist/platform/control-plane/method-catalog-control-core.js +104 -122
  180. package/dist/platform/control-plane/method-catalog-control.d.ts.map +1 -1
  181. package/dist/platform/control-plane/method-catalog-control.js +4 -0
  182. package/dist/platform/control-plane/method-catalog-email.d.ts +17 -0
  183. package/dist/platform/control-plane/method-catalog-email.d.ts.map +1 -1
  184. package/dist/platform/control-plane/method-catalog-email.js +21 -0
  185. package/dist/platform/control-plane/method-catalog-events.d.ts +28 -0
  186. package/dist/platform/control-plane/method-catalog-events.d.ts.map +1 -1
  187. package/dist/platform/control-plane/method-catalog-events.js +74 -1
  188. package/dist/platform/control-plane/method-catalog-fleet.d.ts +24 -0
  189. package/dist/platform/control-plane/method-catalog-fleet.d.ts.map +1 -0
  190. package/dist/platform/control-plane/method-catalog-fleet.js +65 -0
  191. package/dist/platform/control-plane/method-catalog-push.d.ts +30 -0
  192. package/dist/platform/control-plane/method-catalog-push.d.ts.map +1 -0
  193. package/dist/platform/control-plane/method-catalog-push.js +80 -0
  194. package/dist/platform/control-plane/method-catalog-route-reconcile.d.ts +84 -0
  195. package/dist/platform/control-plane/method-catalog-route-reconcile.d.ts.map +1 -0
  196. package/dist/platform/control-plane/method-catalog-route-reconcile.js +103 -0
  197. package/dist/platform/control-plane/method-catalog-runtime.d.ts.map +1 -1
  198. package/dist/platform/control-plane/method-catalog-runtime.js +83 -1
  199. package/dist/platform/control-plane/method-catalog-shared.d.ts +29 -0
  200. package/dist/platform/control-plane/method-catalog-shared.d.ts.map +1 -1
  201. package/dist/platform/control-plane/method-catalog.d.ts +9 -0
  202. package/dist/platform/control-plane/method-catalog.d.ts.map +1 -1
  203. package/dist/platform/control-plane/method-catalog.js +34 -3
  204. package/dist/platform/control-plane/operator-contract-schemas-admin.d.ts +8 -0
  205. package/dist/platform/control-plane/operator-contract-schemas-admin.d.ts.map +1 -1
  206. package/dist/platform/control-plane/operator-contract-schemas-admin.js +22 -1
  207. package/dist/platform/control-plane/operator-contract-schemas-fleet.d.ts +18 -0
  208. package/dist/platform/control-plane/operator-contract-schemas-fleet.d.ts.map +1 -0
  209. package/dist/platform/control-plane/operator-contract-schemas-fleet.js +182 -0
  210. package/dist/platform/control-plane/operator-contract-schemas-permissions.d.ts.map +1 -1
  211. package/dist/platform/control-plane/operator-contract-schemas-permissions.js +5 -0
  212. package/dist/platform/control-plane/operator-contract-schemas-runtime.d.ts +37 -0
  213. package/dist/platform/control-plane/operator-contract-schemas-runtime.d.ts.map +1 -1
  214. package/dist/platform/control-plane/operator-contract-schemas-runtime.js +100 -3
  215. package/dist/platform/control-plane/operator-contract-schemas.d.ts +1 -0
  216. package/dist/platform/control-plane/operator-contract-schemas.d.ts.map +1 -1
  217. package/dist/platform/control-plane/operator-contract-schemas.js +1 -0
  218. package/dist/platform/control-plane/operator-contract.d.ts.map +1 -1
  219. package/dist/platform/control-plane/operator-contract.js +8 -0
  220. package/dist/platform/control-plane/routes/checkpoints.d.ts +39 -0
  221. package/dist/platform/control-plane/routes/checkpoints.d.ts.map +1 -0
  222. package/dist/platform/control-plane/routes/checkpoints.js +166 -0
  223. package/dist/platform/control-plane/routes/fleet.d.ts +53 -0
  224. package/dist/platform/control-plane/routes/fleet.d.ts.map +1 -0
  225. package/dist/platform/control-plane/routes/fleet.js +153 -0
  226. package/dist/platform/control-plane/routes/gateway-verb-error.d.ts +30 -0
  227. package/dist/platform/control-plane/routes/gateway-verb-error.d.ts.map +1 -0
  228. package/dist/platform/control-plane/routes/gateway-verb-error.js +36 -0
  229. package/dist/platform/control-plane/routes/index.d.ts +0 -6
  230. package/dist/platform/control-plane/routes/index.d.ts.map +1 -1
  231. package/dist/platform/control-plane/routes/index.js +5 -5
  232. package/dist/platform/control-plane/routes/invocation-params.d.ts +23 -0
  233. package/dist/platform/control-plane/routes/invocation-params.d.ts.map +1 -0
  234. package/dist/platform/control-plane/routes/invocation-params.js +9 -0
  235. package/dist/platform/control-plane/routes/push.d.ts +26 -0
  236. package/dist/platform/control-plane/routes/push.d.ts.map +1 -0
  237. package/dist/platform/control-plane/routes/push.js +104 -0
  238. package/dist/platform/control-plane/routes/register-gateway-verb-groups.d.ts +31 -0
  239. package/dist/platform/control-plane/routes/register-gateway-verb-groups.d.ts.map +1 -0
  240. package/dist/platform/control-plane/routes/register-gateway-verb-groups.js +16 -0
  241. package/dist/platform/control-plane/routes/register-w3-s2.d.ts +26 -0
  242. package/dist/platform/control-plane/routes/register-w3-s2.d.ts.map +1 -0
  243. package/dist/platform/control-plane/routes/register-w3-s2.js +8 -0
  244. package/dist/platform/control-plane/routes/session-search.d.ts +37 -0
  245. package/dist/platform/control-plane/routes/session-search.d.ts.map +1 -0
  246. package/dist/platform/control-plane/routes/session-search.js +113 -0
  247. package/dist/platform/control-plane/session-broker-gc.d.ts +16 -0
  248. package/dist/platform/control-plane/session-broker-gc.d.ts.map +1 -1
  249. package/dist/platform/control-plane/session-broker-gc.js +23 -6
  250. package/dist/platform/control-plane/session-broker-helpers.d.ts +3 -3
  251. package/dist/platform/control-plane/session-broker-helpers.d.ts.map +1 -1
  252. package/dist/platform/control-plane/session-broker-inputs.d.ts +18 -0
  253. package/dist/platform/control-plane/session-broker-inputs.d.ts.map +1 -1
  254. package/dist/platform/control-plane/session-broker-inputs.js +34 -0
  255. package/dist/platform/control-plane/session-broker-sessions.d.ts +102 -3
  256. package/dist/platform/control-plane/session-broker-sessions.d.ts.map +1 -1
  257. package/dist/platform/control-plane/session-broker-sessions.js +179 -5
  258. package/dist/platform/control-plane/session-broker-state.d.ts +20 -1
  259. package/dist/platform/control-plane/session-broker-state.d.ts.map +1 -1
  260. package/dist/platform/control-plane/session-broker-state.js +67 -5
  261. package/dist/platform/control-plane/session-broker.d.ts +51 -38
  262. package/dist/platform/control-plane/session-broker.d.ts.map +1 -1
  263. package/dist/platform/control-plane/session-broker.js +183 -75
  264. package/dist/platform/control-plane/session-store-importer.d.ts +57 -0
  265. package/dist/platform/control-plane/session-store-importer.d.ts.map +1 -0
  266. package/dist/platform/control-plane/session-store-importer.js +227 -0
  267. package/dist/platform/control-plane/session-types.d.ts +142 -7
  268. package/dist/platform/control-plane/session-types.d.ts.map +1 -1
  269. package/dist/platform/core/execution-plan.d.ts +43 -1
  270. package/dist/platform/core/execution-plan.d.ts.map +1 -1
  271. package/dist/platform/core/execution-plan.js +46 -10
  272. package/dist/platform/core/index.d.ts +1 -0
  273. package/dist/platform/core/index.d.ts.map +1 -1
  274. package/dist/platform/core/index.js +1 -0
  275. package/dist/platform/core/orchestrator-runtime.d.ts +23 -3
  276. package/dist/platform/core/orchestrator-runtime.d.ts.map +1 -1
  277. package/dist/platform/core/orchestrator-tool-runtime.d.ts +7 -0
  278. package/dist/platform/core/orchestrator-tool-runtime.d.ts.map +1 -1
  279. package/dist/platform/core/orchestrator-tool-runtime.js +10 -0
  280. package/dist/platform/core/orchestrator-turn-loop.d.ts +13 -6
  281. package/dist/platform/core/orchestrator-turn-loop.d.ts.map +1 -1
  282. package/dist/platform/core/orchestrator-turn-loop.js +29 -22
  283. package/dist/platform/core/orchestrator.d.ts +16 -10
  284. package/dist/platform/core/orchestrator.d.ts.map +1 -1
  285. package/dist/platform/core/orchestrator.js +23 -8
  286. package/dist/platform/core/plan-decomposition.d.ts +196 -0
  287. package/dist/platform/core/plan-decomposition.d.ts.map +1 -0
  288. package/dist/platform/core/plan-decomposition.js +417 -0
  289. package/dist/platform/core/plan-proposal.d.ts +39 -0
  290. package/dist/platform/core/plan-proposal.d.ts.map +1 -1
  291. package/dist/platform/core/wrfc-routing.d.ts +1 -0
  292. package/dist/platform/core/wrfc-routing.d.ts.map +1 -1
  293. package/dist/platform/core/wrfc-routing.js +51 -1
  294. package/dist/platform/daemon/boot.d.ts +69 -0
  295. package/dist/platform/daemon/boot.d.ts.map +1 -0
  296. package/dist/platform/daemon/boot.js +61 -0
  297. package/dist/platform/daemon/cli.js +2 -1
  298. package/dist/platform/daemon/control-plane.d.ts.map +1 -1
  299. package/dist/platform/daemon/control-plane.js +50 -1
  300. package/dist/platform/daemon/facade-composition.d.ts.map +1 -1
  301. package/dist/platform/daemon/facade-composition.js +6 -0
  302. package/dist/platform/daemon/facade.d.ts +15 -6
  303. package/dist/platform/daemon/facade.d.ts.map +1 -1
  304. package/dist/platform/daemon/facade.js +48 -43
  305. package/dist/platform/daemon/http/router-route-contexts.d.ts +1 -0
  306. package/dist/platform/daemon/http/router-route-contexts.d.ts.map +1 -1
  307. package/dist/platform/daemon/http/router-route-contexts.js +1 -0
  308. package/dist/platform/daemon/http/router-session-broker-adapter.d.ts +13 -0
  309. package/dist/platform/daemon/http/router-session-broker-adapter.d.ts.map +1 -0
  310. package/dist/platform/daemon/http/router-session-broker-adapter.js +27 -0
  311. package/dist/platform/daemon/http/router.d.ts +2 -1
  312. package/dist/platform/daemon/http/router.d.ts.map +1 -1
  313. package/dist/platform/daemon/http/router.js +42 -40
  314. package/dist/platform/daemon/http/runtime-route-types.d.ts +42 -4
  315. package/dist/platform/daemon/http/runtime-route-types.d.ts.map +1 -1
  316. package/dist/platform/daemon/http/webui-serving.d.ts +68 -0
  317. package/dist/platform/daemon/http/webui-serving.d.ts.map +1 -0
  318. package/dist/platform/daemon/http/webui-serving.js +230 -0
  319. package/dist/platform/daemon/index.d.ts +2 -0
  320. package/dist/platform/daemon/index.d.ts.map +1 -1
  321. package/dist/platform/daemon/index.js +1 -0
  322. package/dist/platform/daemon/service-manager.d.ts +16 -0
  323. package/dist/platform/daemon/service-manager.d.ts.map +1 -1
  324. package/dist/platform/daemon/service-manager.js +79 -15
  325. package/dist/platform/intelligence/tree-sitter/service.d.ts.map +1 -1
  326. package/dist/platform/intelligence/tree-sitter/service.js +16 -2
  327. package/dist/platform/knowledge/browser-history/readers.d.ts.map +1 -1
  328. package/dist/platform/knowledge/browser-history/readers.js +15 -5
  329. package/dist/platform/knowledge/knowledge-api.d.ts +1 -1
  330. package/dist/platform/knowledge/project-planning/service.d.ts +14 -1
  331. package/dist/platform/knowledge/project-planning/service.d.ts.map +1 -1
  332. package/dist/platform/knowledge/project-planning/service.js +77 -0
  333. package/dist/platform/knowledge/project-planning/types.d.ts +32 -0
  334. package/dist/platform/knowledge/project-planning/types.d.ts.map +1 -1
  335. package/dist/platform/orchestration/bookkeeping.d.ts +12 -0
  336. package/dist/platform/orchestration/bookkeeping.d.ts.map +1 -0
  337. package/dist/platform/orchestration/bookkeeping.js +91 -0
  338. package/dist/platform/orchestration/budget.d.ts +2 -2
  339. package/dist/platform/orchestration/cancellation.d.ts +2 -2
  340. package/dist/platform/orchestration/controller-compat.d.ts +16 -3
  341. package/dist/platform/orchestration/controller-compat.d.ts.map +1 -1
  342. package/dist/platform/orchestration/controller-compat.js +18 -4
  343. package/dist/platform/orchestration/dirty-guard.js +1 -1
  344. package/dist/platform/orchestration/engine.d.ts +26 -1
  345. package/dist/platform/orchestration/engine.d.ts.map +1 -1
  346. package/dist/platform/orchestration/engine.js +229 -25
  347. package/dist/platform/orchestration/index.d.ts +6 -4
  348. package/dist/platform/orchestration/index.d.ts.map +1 -1
  349. package/dist/platform/orchestration/index.js +3 -2
  350. package/dist/platform/orchestration/persistence.d.ts.map +1 -1
  351. package/dist/platform/orchestration/persistence.js +6 -3
  352. package/dist/platform/orchestration/phase-runner.d.ts +33 -6
  353. package/dist/platform/orchestration/phase-runner.d.ts.map +1 -1
  354. package/dist/platform/orchestration/phase-runner.js +98 -25
  355. package/dist/platform/orchestration/proposal-workstream.d.ts +56 -0
  356. package/dist/platform/orchestration/proposal-workstream.d.ts.map +1 -0
  357. package/dist/platform/orchestration/proposal-workstream.js +76 -0
  358. package/dist/platform/orchestration/scheduler.d.ts +20 -1
  359. package/dist/platform/orchestration/scheduler.d.ts.map +1 -1
  360. package/dist/platform/orchestration/scheduler.js +16 -0
  361. package/dist/platform/orchestration/types.d.ts +289 -4
  362. package/dist/platform/orchestration/types.d.ts.map +1 -1
  363. package/dist/platform/orchestration/types.js +32 -0
  364. package/dist/platform/orchestration/worktree-isolation.d.ts +33 -0
  365. package/dist/platform/orchestration/worktree-isolation.d.ts.map +1 -0
  366. package/dist/platform/orchestration/worktree-isolation.js +248 -0
  367. package/dist/platform/presentation/glyphs.d.ts +91 -0
  368. package/dist/platform/presentation/glyphs.d.ts.map +1 -0
  369. package/dist/platform/presentation/glyphs.js +93 -0
  370. package/dist/platform/presentation/index.d.ts +28 -0
  371. package/dist/platform/presentation/index.d.ts.map +1 -0
  372. package/dist/platform/presentation/index.js +27 -0
  373. package/dist/platform/presentation/thinking-phrases.d.ts +12 -0
  374. package/dist/platform/presentation/thinking-phrases.d.ts.map +1 -0
  375. package/dist/platform/presentation/thinking-phrases.js +32 -0
  376. package/dist/platform/presentation/tones.d.ts +121 -0
  377. package/dist/platform/presentation/tones.d.ts.map +1 -0
  378. package/dist/platform/presentation/tones.js +145 -0
  379. package/dist/platform/presentation/waiting-wording.d.ts +54 -0
  380. package/dist/platform/presentation/waiting-wording.d.ts.map +1 -0
  381. package/dist/platform/presentation/waiting-wording.js +51 -0
  382. package/dist/platform/providers/runtime-snapshot.d.ts.map +1 -1
  383. package/dist/platform/providers/runtime-snapshot.js +12 -2
  384. package/dist/platform/push/delivery.d.ts +48 -0
  385. package/dist/platform/push/delivery.d.ts.map +1 -0
  386. package/dist/platform/push/delivery.js +117 -0
  387. package/dist/platform/push/encryption.d.ts +41 -0
  388. package/dist/platform/push/encryption.d.ts.map +1 -0
  389. package/dist/platform/push/encryption.js +82 -0
  390. package/dist/platform/push/index.d.ts +17 -0
  391. package/dist/platform/push/index.d.ts.map +1 -0
  392. package/dist/platform/push/index.js +10 -0
  393. package/dist/platform/push/service.d.ts +75 -0
  394. package/dist/platform/push/service.d.ts.map +1 -0
  395. package/dist/platform/push/service.js +95 -0
  396. package/dist/platform/push/subscription-store.d.ts +50 -0
  397. package/dist/platform/push/subscription-store.d.ts.map +1 -0
  398. package/dist/platform/push/subscription-store.js +123 -0
  399. package/dist/platform/push/types.d.ts +68 -0
  400. package/dist/platform/push/types.d.ts.map +1 -0
  401. package/dist/platform/push/types.js +13 -0
  402. package/dist/platform/push/vapid.d.ts +54 -0
  403. package/dist/platform/push/vapid.d.ts.map +1 -0
  404. package/dist/platform/push/vapid.js +113 -0
  405. package/dist/platform/runtime/bootstrap-services.d.ts +62 -2
  406. package/dist/platform/runtime/bootstrap-services.d.ts.map +1 -1
  407. package/dist/platform/runtime/bootstrap-services.js +217 -50
  408. package/dist/platform/runtime/daemon-version-compat.d.ts +39 -0
  409. package/dist/platform/runtime/daemon-version-compat.d.ts.map +1 -0
  410. package/dist/platform/runtime/daemon-version-compat.js +75 -0
  411. package/dist/platform/runtime/detached-daemon-runtime.d.ts +26 -0
  412. package/dist/platform/runtime/detached-daemon-runtime.d.ts.map +1 -0
  413. package/dist/platform/runtime/detached-daemon-runtime.js +49 -0
  414. package/dist/platform/runtime/emitters/workflows.d.ts +1 -1
  415. package/dist/platform/runtime/emitters/workflows.d.ts.map +1 -1
  416. package/dist/platform/runtime/events/index.d.ts +13 -0
  417. package/dist/platform/runtime/events/index.d.ts.map +1 -1
  418. package/dist/platform/runtime/events/index.js +13 -0
  419. package/dist/platform/runtime/feature-flags/flags.d.ts.map +1 -1
  420. package/dist/platform/runtime/feature-flags/flags.js +39 -1
  421. package/dist/platform/runtime/fleet/adapters/agent.d.ts +2 -2
  422. package/dist/platform/runtime/fleet/adapters/agent.d.ts.map +1 -1
  423. package/dist/platform/runtime/fleet/adapters/agent.js +4 -4
  424. package/dist/platform/runtime/fleet/adapters/automation.d.ts +1 -1
  425. package/dist/platform/runtime/fleet/adapters/automation.js +1 -1
  426. package/dist/platform/runtime/fleet/adapters/code-index.d.ts +1 -1
  427. package/dist/platform/runtime/fleet/adapters/code-index.js +1 -1
  428. package/dist/platform/runtime/fleet/adapters/orchestration.d.ts +40 -18
  429. package/dist/platform/runtime/fleet/adapters/orchestration.d.ts.map +1 -1
  430. package/dist/platform/runtime/fleet/adapters/orchestration.js +138 -34
  431. package/dist/platform/runtime/fleet/adapters/schedule.d.ts +4 -4
  432. package/dist/platform/runtime/fleet/adapters/schedule.js +4 -4
  433. package/dist/platform/runtime/fleet/adapters/trigger.d.ts +3 -4
  434. package/dist/platform/runtime/fleet/adapters/trigger.d.ts.map +1 -1
  435. package/dist/platform/runtime/fleet/adapters/trigger.js +3 -4
  436. package/dist/platform/runtime/fleet/adapters/wrfc.d.ts +13 -0
  437. package/dist/platform/runtime/fleet/adapters/wrfc.d.ts.map +1 -1
  438. package/dist/platform/runtime/fleet/adapters/wrfc.js +49 -2
  439. package/dist/platform/runtime/fleet/registry.d.ts +7 -7
  440. package/dist/platform/runtime/fleet/registry.d.ts.map +1 -1
  441. package/dist/platform/runtime/fleet/registry.js +41 -7
  442. package/dist/platform/runtime/fleet/types.d.ts +9 -9
  443. package/dist/platform/runtime/fleet/types.d.ts.map +1 -1
  444. package/dist/platform/runtime/memory-spine/client.d.ts +127 -0
  445. package/dist/platform/runtime/memory-spine/client.d.ts.map +1 -0
  446. package/dist/platform/runtime/memory-spine/client.js +113 -0
  447. package/dist/platform/runtime/memory-spine/index.d.ts +11 -0
  448. package/dist/platform/runtime/memory-spine/index.d.ts.map +1 -0
  449. package/dist/platform/runtime/memory-spine/index.js +10 -0
  450. package/dist/platform/runtime/operator-client.d.ts +20 -2
  451. package/dist/platform/runtime/operator-client.d.ts.map +1 -1
  452. package/dist/platform/runtime/operator-client.js +11 -1
  453. package/dist/platform/runtime/provider-accounts/registry.d.ts.map +1 -1
  454. package/dist/platform/runtime/provider-accounts/registry.js +11 -1
  455. package/dist/platform/runtime/services.d.ts +11 -9
  456. package/dist/platform/runtime/services.d.ts.map +1 -1
  457. package/dist/platform/runtime/services.js +24 -9
  458. package/dist/platform/runtime/session-spine/client.d.ts +234 -0
  459. package/dist/platform/runtime/session-spine/client.d.ts.map +1 -0
  460. package/dist/platform/runtime/session-spine/client.js +449 -0
  461. package/dist/platform/runtime/session-spine/index.d.ts +12 -0
  462. package/dist/platform/runtime/session-spine/index.d.ts.map +1 -0
  463. package/dist/platform/runtime/session-spine/index.js +11 -0
  464. package/dist/platform/runtime/session-spine/union-cache.d.ts +225 -0
  465. package/dist/platform/runtime/session-spine/union-cache.d.ts.map +1 -0
  466. package/dist/platform/runtime/session-spine/union-cache.js +333 -0
  467. package/dist/platform/runtime/shell-command-ops.d.ts +3 -1
  468. package/dist/platform/runtime/shell-command-ops.d.ts.map +1 -1
  469. package/dist/platform/runtime/transports/daemon-http-client-validators.d.ts.map +1 -1
  470. package/dist/platform/runtime/transports/daemon-http-client-validators.js +22 -0
  471. package/dist/platform/runtime/transports/daemon-http-client.d.ts.map +1 -1
  472. package/dist/platform/runtime/transports/daemon-http-client.js +25 -2
  473. package/dist/platform/runtime/transports/http-types.d.ts +9 -2
  474. package/dist/platform/runtime/transports/http-types.d.ts.map +1 -1
  475. package/dist/platform/state/canonical-memory.d.ts +95 -0
  476. package/dist/platform/state/canonical-memory.d.ts.map +1 -0
  477. package/dist/platform/state/canonical-memory.js +155 -0
  478. package/dist/platform/state/code-index-chunking.js +1 -1
  479. package/dist/platform/state/code-index-db.d.ts +1 -1
  480. package/dist/platform/state/code-index-reindex.d.ts +73 -0
  481. package/dist/platform/state/code-index-reindex.d.ts.map +1 -0
  482. package/dist/platform/state/code-index-reindex.js +156 -0
  483. package/dist/platform/state/code-index-store.d.ts.map +1 -1
  484. package/dist/platform/state/code-index-store.js +11 -3
  485. package/dist/platform/state/index.d.ts +8 -0
  486. package/dist/platform/state/index.d.ts.map +1 -1
  487. package/dist/platform/state/index.js +4 -0
  488. package/dist/platform/state/memory-recall-contract.d.ts +118 -0
  489. package/dist/platform/state/memory-recall-contract.d.ts.map +1 -0
  490. package/dist/platform/state/memory-recall-contract.js +170 -0
  491. package/dist/platform/state/memory-registry.d.ts +8 -0
  492. package/dist/platform/state/memory-registry.d.ts.map +1 -1
  493. package/dist/platform/state/memory-registry.js +10 -0
  494. package/dist/platform/state/memory-store.d.ts +2 -0
  495. package/dist/platform/state/memory-store.d.ts.map +1 -1
  496. package/dist/platform/state/memory-store.js +4 -0
  497. package/dist/platform/state/memory-vector-store.d.ts.map +1 -1
  498. package/dist/platform/state/memory-vector-store.js +14 -3
  499. package/dist/platform/state/sqlite-store.d.ts +2 -0
  500. package/dist/platform/state/sqlite-store.d.ts.map +1 -1
  501. package/dist/platform/state/sqlite-store.js +4 -0
  502. package/dist/platform/state/sqlite-vec-loader.d.ts +1 -1
  503. package/dist/platform/state/sqlite-vec-loader.js +1 -1
  504. package/dist/platform/state/vibe-projection.d.ts +67 -0
  505. package/dist/platform/state/vibe-projection.d.ts.map +1 -0
  506. package/dist/platform/state/vibe-projection.js +115 -0
  507. package/dist/platform/tools/agent/index.d.ts.map +1 -1
  508. package/dist/platform/tools/agent/index.js +8 -0
  509. package/dist/platform/tools/agent/manager.d.ts +22 -10
  510. package/dist/platform/tools/agent/manager.d.ts.map +1 -1
  511. package/dist/platform/tools/agent/manager.js +13 -7
  512. package/dist/platform/tools/agent/schema.d.ts +26 -0
  513. package/dist/platform/tools/agent/schema.d.ts.map +1 -1
  514. package/dist/platform/tools/agent/schema.js +2 -2
  515. package/dist/platform/tools/agent/wrfc-batch-policy.d.ts +13 -0
  516. package/dist/platform/tools/agent/wrfc-batch-policy.d.ts.map +1 -1
  517. package/dist/platform/tools/agent/wrfc-batch-policy.js +60 -0
  518. package/dist/platform/tools/exec/runtime.d.ts +10 -0
  519. package/dist/platform/tools/exec/runtime.d.ts.map +1 -1
  520. package/dist/platform/tools/exec/runtime.js +27 -10
  521. package/dist/platform/tools/exec/schema.d.ts +2 -2
  522. package/dist/platform/tools/exec/schema.d.ts.map +1 -1
  523. package/dist/platform/tools/exec/schema.js +2 -1
  524. package/dist/platform/tools/fetch/runtime.d.ts +1 -1
  525. package/dist/platform/tools/index.d.ts +2 -0
  526. package/dist/platform/tools/index.d.ts.map +1 -1
  527. package/dist/platform/tools/index.js +2 -0
  528. package/dist/platform/tools/registry.d.ts +1 -1
  529. package/dist/platform/tools/registry.js +1 -1
  530. package/dist/platform/tools/state/index.d.ts +9 -0
  531. package/dist/platform/tools/state/index.d.ts.map +1 -1
  532. package/dist/platform/tools/state/index.js +60 -3
  533. package/dist/platform/types/foundation-contract.d.ts +1 -1
  534. package/dist/platform/types/foundation-contract.d.ts.map +1 -1
  535. package/dist/platform/types/index.d.ts +1 -1
  536. package/dist/platform/types/index.d.ts.map +1 -1
  537. package/dist/platform/types/tools.d.ts +1 -1
  538. package/dist/platform/utils/request-body.d.ts.map +1 -1
  539. package/dist/platform/utils/request-body.js +50 -5
  540. package/dist/platform/version.js +1 -1
  541. package/package.json +25 -9
  542. package/dist/platform/control-plane/routes/automation.d.ts +0 -3
  543. package/dist/platform/control-plane/routes/automation.d.ts.map +0 -1
  544. package/dist/platform/control-plane/routes/automation.js +0 -63
  545. package/dist/platform/control-plane/routes/context.d.ts +0 -2
  546. package/dist/platform/control-plane/routes/context.d.ts.map +0 -1
  547. package/dist/platform/control-plane/routes/context.js +0 -1
  548. package/dist/platform/control-plane/routes/operator.d.ts +0 -8
  549. package/dist/platform/control-plane/routes/operator.d.ts.map +0 -1
  550. package/dist/platform/control-plane/routes/operator.js +0 -415
  551. package/dist/platform/control-plane/routes/remote.d.ts +0 -3
  552. package/dist/platform/control-plane/routes/remote.d.ts.map +0 -1
  553. package/dist/platform/control-plane/routes/remote.js +0 -35
  554. package/dist/platform/control-plane/routes/sessions.d.ts +0 -3
  555. package/dist/platform/control-plane/routes/sessions.d.ts.map +0 -1
  556. package/dist/platform/control-plane/routes/sessions.js +0 -43
  557. package/dist/platform/control-plane/routes/tasks.d.ts +0 -3
  558. package/dist/platform/control-plane/routes/tasks.d.ts.map +0 -1
  559. package/dist/platform/control-plane/routes/tasks.js +0 -22
@@ -1,5 +1,5 @@
1
- import { BOOLEAN_SCHEMA, EMPTY_OBJECT_SCHEMA, NUMBER_SCHEMA, STRING_SCHEMA, arraySchema, actionResultOutputSchema, bodyEnvelopeSchema, entityOutputSchema, listOutputSchema, methodDescriptor, objectSchema, runtimeEventId, METHOD_DESCRIPTOR_SCHEMA, EVENT_DESCRIPTOR_SCHEMA, } from './method-catalog-shared.js';
2
- import { APPROVAL_ACTION_INPUT_SCHEMA, APPROVAL_ACTION_OUTPUT_SCHEMA, APPROVAL_SNAPSHOT_SCHEMA, COMPANION_CHAT_MESSAGES_LIST_SCHEMA, COMPANION_CHAT_SESSION_SCHEMA, COMPANION_CHAT_SESSIONS_LIST_SCHEMA, COMPANION_CHAT_SESSION_WITH_MESSAGES_SCHEMA, CONTROL_AUTH_CURRENT_RESPONSE_SCHEMA, CONTROL_AUTH_LOGIN_REQUEST_SCHEMA, CONTROL_AUTH_LOGIN_RESPONSE_SCHEMA, CONTROL_PLANE_CLIENT_DESCRIPTOR_SCHEMA, CONTROL_PLANE_SURFACE_MESSAGE_SCHEMA, CONTROL_PLANE_SNAPSHOT_SCHEMA, OTLP_LOG_DOCUMENT_SCHEMA, OTLP_METRIC_DOCUMENT_SCHEMA, OTLP_TRACE_DOCUMENT_SCHEMA, REVIEW_SNAPSHOT_SCHEMA, SESSION_BROKER_SNAPSHOT_SCHEMA, SESSION_SNAPSHOT_SCHEMA, SHARED_SESSION_CREATE_OUTPUT_SCHEMA, SHARED_SESSION_INPUT_RECORD_SCHEMA, SHARED_SESSION_MESSAGE_CREATE_OUTPUT_SCHEMA, SHARED_SESSION_MESSAGE_ROUTE_OUTPUT_SCHEMA, SHARED_SESSION_RECORD_SCHEMA, SHARED_SESSION_ROUTING_INTENT_SCHEMA, SHARED_SESSION_WITH_INPUTS_SCHEMA, SHARED_SESSION_WITH_MESSAGES_SCHEMA, TASK_ACTION_OUTPUT_SCHEMA, TASK_CREATE_INPUT_SCHEMA, TASK_CREATE_OUTPUT_SCHEMA, TASK_OUTPUT_SCHEMA, TASK_SNAPSHOT_SCHEMA, TASK_STATUS_OUTPUT_SCHEMA, TELEMETRY_FILTER_INPUT_SCHEMA, TELEMETRY_METRICS_SNAPSHOT_SCHEMA, TELEMETRY_RECORD_LIST_RESPONSE_SCHEMA, TELEMETRY_SNAPSHOT_SCHEMA, TELEMETRY_SPAN_LIST_RESPONSE_SCHEMA, TELEMETRY_STREAM_READY_SCHEMA, } from './operator-contract-schemas.js';
1
+ import { BOOLEAN_SCHEMA, EMPTY_OBJECT_SCHEMA, NUMBER_SCHEMA, STRING_SCHEMA, actionResultOutputSchema, bodyEnvelopeSchema, entityOutputSchema, listOutputSchema, methodDescriptor, objectSchema, runtimeEventId, METHOD_DESCRIPTOR_SCHEMA, EVENT_DESCRIPTOR_SCHEMA, } from './method-catalog-shared.js';
2
+ import { APPROVAL_ACTION_INPUT_SCHEMA, APPROVAL_APPROVE_INPUT_SCHEMA, APPROVAL_ACTION_OUTPUT_SCHEMA, APPROVAL_SNAPSHOT_SCHEMA, CONTROL_AUTH_CURRENT_RESPONSE_SCHEMA, CONTROL_AUTH_LOGIN_REQUEST_SCHEMA, CONTROL_AUTH_LOGIN_RESPONSE_SCHEMA, CONTROL_PLANE_CLIENT_DESCRIPTOR_SCHEMA, CONTROL_PLANE_SURFACE_MESSAGE_SCHEMA, CONTROL_PLANE_SNAPSHOT_SCHEMA, SESSIONS_SEARCH_INPUT_SCHEMA, SESSIONS_SEARCH_OUTPUT_SCHEMA, OTLP_LOG_DOCUMENT_SCHEMA, OTLP_METRIC_DOCUMENT_SCHEMA, OTLP_TRACE_DOCUMENT_SCHEMA, REVIEW_SNAPSHOT_SCHEMA, SESSION_BROKER_SNAPSHOT_SCHEMA, SESSION_SNAPSHOT_SCHEMA, SHARED_SESSION_CREATE_OUTPUT_SCHEMA, SHARED_SESSION_INPUT_RECORD_SCHEMA, SHARED_SESSION_MESSAGE_CREATE_OUTPUT_SCHEMA, SHARED_SESSION_MESSAGE_ROUTE_OUTPUT_SCHEMA, SHARED_SESSION_RECORD_SCHEMA, SHARED_SESSION_REGISTER_INPUT_SCHEMA, SHARED_SESSION_REGISTER_OUTPUT_SCHEMA, SHARED_SESSION_ROUTING_INTENT_SCHEMA, SHARED_SESSION_WITH_INPUTS_SCHEMA, SHARED_SESSION_WITH_MESSAGES_SCHEMA, TASK_ACTION_OUTPUT_SCHEMA, TASK_CREATE_INPUT_SCHEMA, TASK_CREATE_OUTPUT_SCHEMA, TASK_OUTPUT_SCHEMA, TASK_SNAPSHOT_SCHEMA, TASK_STATUS_OUTPUT_SCHEMA, TELEMETRY_FILTER_INPUT_SCHEMA, TELEMETRY_METRICS_SNAPSHOT_SCHEMA, TELEMETRY_RECORD_LIST_RESPONSE_SCHEMA, TELEMETRY_SNAPSHOT_SCHEMA, TELEMETRY_SPAN_LIST_RESPONSE_SCHEMA, TELEMETRY_STREAM_READY_SCHEMA, } from './operator-contract-schemas.js';
3
3
  import { OPERATOR_CONTRACT_SCHEMA } from './operator-contract.js';
4
4
  export const builtinGatewayControlCoreMethodDescriptors = [
5
5
  methodDescriptor({
@@ -280,6 +280,7 @@ export const builtinGatewayControlCoreMethodDescriptors = [
280
280
  category: 'sessions',
281
281
  scopes: ['write:sessions'],
282
282
  http: { method: 'POST', path: '/api/sessions' },
283
+ events: ['control.session_update'],
283
284
  inputSchema: bodyEnvelopeSchema({
284
285
  title: STRING_SCHEMA,
285
286
  surfaceKind: STRING_SCHEMA,
@@ -287,6 +288,17 @@ export const builtinGatewayControlCoreMethodDescriptors = [
287
288
  }),
288
289
  outputSchema: SHARED_SESSION_CREATE_OUTPUT_SCHEMA,
289
290
  }),
291
+ methodDescriptor({
292
+ id: 'sessions.register',
293
+ title: 'Register Shared Session',
294
+ description: 'Idempotently register (or heartbeat) a session keyed on a caller-supplied id, carrying its kind, project, and participant identity. Re-calling with the same id advances the participant lastSeenAt (heartbeat). Registering against a CLOSED session does NOT silently reopen it — the heartbeat is recorded and the still-closed record is returned with reopened=false and conflict={status:closed}; pass reopen=true to reopen. A titled session is never renamed by the heartbeat. An unknown kind is rejected (400), not coerced. Prefer this over sessions.create for external runtimes that own their session id.',
295
+ category: 'sessions',
296
+ scopes: ['write:sessions'],
297
+ http: { method: 'POST', path: '/api/sessions/register' },
298
+ events: ['control.session_update'],
299
+ inputSchema: SHARED_SESSION_REGISTER_INPUT_SCHEMA,
300
+ outputSchema: SHARED_SESSION_REGISTER_OUTPUT_SCHEMA,
301
+ }),
290
302
  methodDescriptor({
291
303
  id: 'sessions.get',
292
304
  title: 'Get Shared Session',
@@ -304,6 +316,7 @@ export const builtinGatewayControlCoreMethodDescriptors = [
304
316
  category: 'sessions',
305
317
  scopes: ['write:sessions'],
306
318
  http: { method: 'POST', path: '/api/sessions/{sessionId}/close' },
319
+ events: ['control.session_update'],
307
320
  inputSchema: objectSchema({ sessionId: STRING_SCHEMA }, ['sessionId']),
308
321
  outputSchema: actionResultOutputSchema('session', SHARED_SESSION_RECORD_SCHEMA),
309
322
  }),
@@ -314,9 +327,38 @@ export const builtinGatewayControlCoreMethodDescriptors = [
314
327
  category: 'sessions',
315
328
  scopes: ['write:sessions'],
316
329
  http: { method: 'POST', path: '/api/sessions/{sessionId}/reopen' },
330
+ events: ['control.session_update'],
317
331
  inputSchema: objectSchema({ sessionId: STRING_SCHEMA }, ['sessionId']),
318
332
  outputSchema: actionResultOutputSchema('session', SHARED_SESSION_RECORD_SCHEMA),
319
333
  }),
334
+ methodDescriptor({
335
+ id: 'sessions.detach',
336
+ title: 'Detach Shared Session Participant',
337
+ description: 'Remove a surface\'s participant and its route binding from a session so that surface stops receiving updates, WITHOUT closing or killing the session (detach != close != kill). Every participant carrying the given surfaceId is removed and any route binding they alone held is unbound; the session and all other participants keep running. Idempotent: detaching an already-detached surface, or detaching from a closed session, is a no-op success. An unknown session is a 404.',
338
+ category: 'sessions',
339
+ scopes: ['write:sessions'],
340
+ http: { method: 'POST', path: '/api/sessions/{sessionId}/detach' },
341
+ events: ['control.session_update'],
342
+ inputSchema: objectSchema({
343
+ sessionId: STRING_SCHEMA,
344
+ surfaceId: STRING_SCHEMA,
345
+ }, ['sessionId', 'surfaceId']),
346
+ outputSchema: actionResultOutputSchema('session', SHARED_SESSION_RECORD_SCHEMA),
347
+ }),
348
+ methodDescriptor({
349
+ id: 'sessions.delete',
350
+ title: 'Delete Shared Session',
351
+ description: 'Permanently remove a shared session record and its queued inputs/messages from the home-scoped store. A distinct, explicit hard-delete verb — NEVER triggered by close; closed sessions stay listable (includeClosed) and deletionRetentionMs semantics for non-deleted records are untouched. Requires the session to already be closed: deleting a still-active session is rejected with 409 SESSION_ACTIVE (close it, then delete). An unknown or already-deleted id is a 404 SESSION_NOT_FOUND, never a 200-noop. Emits control.session_update (session-deleted) so subscribers drop the row live.',
352
+ category: 'sessions',
353
+ scopes: ['write:sessions'],
354
+ http: { method: 'DELETE', path: '/api/sessions/{sessionId}' },
355
+ events: ['control.session_update'],
356
+ inputSchema: objectSchema({ sessionId: STRING_SCHEMA }, ['sessionId']),
357
+ outputSchema: objectSchema({
358
+ sessionId: STRING_SCHEMA,
359
+ deleted: BOOLEAN_SCHEMA,
360
+ }, ['sessionId', 'deleted']),
361
+ }),
320
362
  methodDescriptor({
321
363
  id: 'sessions.messages.list',
322
364
  title: 'List Shared Session Messages',
@@ -338,6 +380,7 @@ export const builtinGatewayControlCoreMethodDescriptors = [
338
380
  category: 'sessions',
339
381
  scopes: ['write:sessions'],
340
382
  http: { method: 'POST', path: '/api/sessions/{sessionId}/messages' },
383
+ events: ['control.session_update'],
341
384
  inputSchema: bodyEnvelopeSchema({
342
385
  body: STRING_SCHEMA,
343
386
  surfaceKind: STRING_SCHEMA,
@@ -350,13 +393,15 @@ export const builtinGatewayControlCoreMethodDescriptors = [
350
393
  methodDescriptor({
351
394
  id: 'sessions.inputs.list',
352
395
  title: 'List Shared Session Inputs',
353
- description: 'Return explicit session inputs, including queued follow-ups and delivered steering requests.',
396
+ description: 'Return explicit session inputs, including queued follow-ups and delivered steering requests. A live surface collects work by filtering `state` (e.g. queued) and paging past a `since` createdAt cursor (exclusive), draining only inputs it has not yet collected.',
354
397
  category: 'sessions',
355
398
  scopes: ['read:sessions'],
356
399
  http: { method: 'GET', path: '/api/sessions/{sessionId}/inputs' },
357
400
  inputSchema: objectSchema({
358
401
  sessionId: STRING_SCHEMA,
359
402
  limit: NUMBER_SCHEMA,
403
+ state: STRING_SCHEMA,
404
+ since: NUMBER_SCHEMA,
360
405
  }, ['sessionId']),
361
406
  outputSchema: SHARED_SESSION_WITH_INPUTS_SCHEMA,
362
407
  }),
@@ -367,6 +412,7 @@ export const builtinGatewayControlCoreMethodDescriptors = [
367
412
  category: 'sessions',
368
413
  scopes: ['write:sessions'],
369
414
  http: { method: 'POST', path: '/api/sessions/{sessionId}/steer' },
415
+ events: ['control.session_update'],
370
416
  inputSchema: bodyEnvelopeSchema({
371
417
  body: STRING_SCHEMA,
372
418
  surfaceKind: STRING_SCHEMA,
@@ -383,6 +429,7 @@ export const builtinGatewayControlCoreMethodDescriptors = [
383
429
  category: 'sessions',
384
430
  scopes: ['write:sessions'],
385
431
  http: { method: 'POST', path: '/api/sessions/{sessionId}/follow-up' },
432
+ events: ['control.session_update'],
386
433
  inputSchema: bodyEnvelopeSchema({
387
434
  body: STRING_SCHEMA,
388
435
  surfaceKind: STRING_SCHEMA,
@@ -398,12 +445,60 @@ export const builtinGatewayControlCoreMethodDescriptors = [
398
445
  category: 'sessions',
399
446
  scopes: ['write:sessions'],
400
447
  http: { method: 'POST', path: '/api/sessions/{sessionId}/inputs/{inputId}/cancel' },
448
+ events: ['control.session_update'],
401
449
  inputSchema: objectSchema({
402
450
  sessionId: STRING_SCHEMA,
403
451
  inputId: STRING_SCHEMA,
404
452
  }, ['sessionId', 'inputId']),
405
453
  outputSchema: entityOutputSchema('input', SHARED_SESSION_INPUT_RECORD_SCHEMA),
406
454
  }),
455
+ methodDescriptor({
456
+ id: 'sessions.inputs.deliver',
457
+ title: 'Mark Shared Session Input Delivered',
458
+ description: 'A live registered surface reports that it collected a queued input (moves it to `delivered`) or finished acting on it (`consumed:true` moves it to `completed`). This is how a surface-managed session — where steer/follow-up inputs queue for the surface rather than spawn a daemon executor — closes the input lifecycle honestly. Only queued/delivered inputs advance; others are returned unchanged.',
459
+ category: 'sessions',
460
+ scopes: ['write:sessions'],
461
+ http: { method: 'POST', path: '/api/sessions/{sessionId}/inputs/{inputId}/deliver' },
462
+ events: ['control.session_update'],
463
+ inputSchema: objectSchema({
464
+ sessionId: STRING_SCHEMA,
465
+ inputId: STRING_SCHEMA,
466
+ consumed: BOOLEAN_SCHEMA,
467
+ }, ['sessionId', 'inputId']),
468
+ outputSchema: entityOutputSchema('input', SHARED_SESSION_INPUT_RECORD_SCHEMA),
469
+ }),
470
+ // ── sessions.search (see CHANGELOG 1.0.0) ────────────────────────────────
471
+ // Paginated/filtered query over the home-scoped session store, extending
472
+ // the session-spine list-filter shape (project/kind/includeClosed) with free-text
473
+ // `query`, `surfaceKind`, `status`, and opaque cursor pagination. Handler:
474
+ // routes/session-search.ts (registered directly on the catalog with no
475
+ // `http` REST binding — see the transport note below).
476
+ //
477
+ // TRANSPORT NOTE (applies to sessions.search + the whole fleet.*/
478
+ // checkpoints.* block below): `transport: ['ws']` with no `http` binding is
479
+ // the transport-parity gate's (test/transport-parity.test.ts) own
480
+ // sanctioned category for a catalog method dispatchable ONLY via the
481
+ // generic invoke-by-id mechanism (`gatewayMethods.hasHandler`/`invoke`,
482
+ // daemon/control-plane.ts `invokeGatewayMethodCall`) rather than a
483
+ // dedicated REST path — reachable today over HTTP via
484
+ // `POST /api/control-plane/methods/{methodId}/invoke` AND over WebSocket
485
+ // via a `{type:'call', methodId}` frame (both converge on the same
486
+ // invokeGatewayMethodCall). A typed client wrapper (operator-sdk
487
+ // client-core.ts's invokeContractRoute, which dispatches by literal
488
+ // http.method/http.path) is NOT wired for these verbs by this brief —
489
+ // that is curated, consumer-side work for whichever later stage first
490
+ // needs a typed wrapper (W1/W2/T2), not a requirement of landing the SDK
491
+ // contract itself.
492
+ methodDescriptor({
493
+ id: 'sessions.search',
494
+ title: 'Search Shared Sessions',
495
+ description: 'Paginated, filtered query over shared sessions: free-text query (matches id/title), project, kind, surfaceKind, and status. Closed sessions are EXCLUDED by default — pass includeClosed:true to include them, and a returned closed session always carries an honest status:"closed" (never hidden, never relabeled). Cursor pagination returns disjoint pages that union to the full matching set.',
496
+ category: 'sessions',
497
+ scopes: ['read:sessions'],
498
+ transport: ['ws'],
499
+ inputSchema: SESSIONS_SEARCH_INPUT_SCHEMA,
500
+ outputSchema: SESSIONS_SEARCH_OUTPUT_SCHEMA,
501
+ }),
407
502
  methodDescriptor({
408
503
  id: 'tasks.list',
409
504
  title: 'List Runtime Tasks',
@@ -465,6 +560,10 @@ export const builtinGatewayControlCoreMethodDescriptors = [
465
560
  inputSchema: objectSchema({ agentId: STRING_SCHEMA }, ['agentId']),
466
561
  outputSchema: TASK_STATUS_OUTPUT_SCHEMA,
467
562
  }),
563
+ // fleet.* + checkpoints.* descriptors moved to method-catalog-fleet.ts
564
+ // (see CHANGELOG 1.0.0) — this file was already at the 800-line cap; see that file's
565
+ // header comment for the full design rationale, merged in by
566
+ // method-catalog-control.ts alongside method-catalog-control-automation.ts.
468
567
  methodDescriptor({
469
568
  id: 'approvals.list',
470
569
  title: 'List Approvals',
@@ -488,11 +587,11 @@ export const builtinGatewayControlCoreMethodDescriptors = [
488
587
  methodDescriptor({
489
588
  id: 'approvals.approve',
490
589
  title: 'Approve Approval',
491
- description: 'Approve a pending approval.',
590
+ description: 'Approve a pending approval. Optionally pass selectedHunks (edit-tool approvals only): the daemon filters the approval\'s own edit list to those hunk indices server-side, so every surface produces identical modified-edit args. Omitting selectedHunks approves the whole request (back-compat). An out-of-range index or a non-edit approval is rejected with a 400.',
492
591
  category: 'approvals',
493
592
  scopes: ['write:approvals'],
494
593
  http: { method: 'POST', path: '/api/approvals/{approvalId}/approve' },
495
- inputSchema: APPROVAL_ACTION_INPUT_SCHEMA,
594
+ inputSchema: APPROVAL_APPROVE_INPUT_SCHEMA,
496
595
  outputSchema: APPROVAL_ACTION_OUTPUT_SCHEMA,
497
596
  }),
498
597
  methodDescriptor({
@@ -515,121 +614,4 @@ export const builtinGatewayControlCoreMethodDescriptors = [
515
614
  inputSchema: APPROVAL_ACTION_INPUT_SCHEMA,
516
615
  outputSchema: APPROVAL_ACTION_OUTPUT_SCHEMA,
517
616
  }),
518
- // Companion-chat method catalog registration.
519
- methodDescriptor({
520
- id: 'companion.chat.sessions.create',
521
- title: 'Create Companion Chat Session',
522
- description: 'Create a new companion-chat session. Optional `provider` / `model` override the registry default; `title` and `systemPrompt` are stored on the session record.',
523
- category: 'companion',
524
- scopes: ['write:sessions'],
525
- http: { method: 'POST', path: '/api/companion/chat/sessions' },
526
- inputSchema: bodyEnvelopeSchema({
527
- title: STRING_SCHEMA,
528
- model: STRING_SCHEMA,
529
- provider: STRING_SCHEMA,
530
- systemPrompt: STRING_SCHEMA,
531
- }, []),
532
- outputSchema: objectSchema({
533
- sessionId: STRING_SCHEMA,
534
- createdAt: NUMBER_SCHEMA,
535
- session: COMPANION_CHAT_SESSION_SCHEMA,
536
- }, ['sessionId', 'createdAt', 'session']),
537
- }),
538
- methodDescriptor({
539
- id: 'companion.chat.sessions.list',
540
- title: 'List Companion Chat Sessions',
541
- description: 'List active companion-chat sessions. Pass `includeClosed` to include recently closed sessions.',
542
- category: 'companion',
543
- scopes: ['read:sessions'],
544
- http: { method: 'GET', path: '/api/companion/chat/sessions' },
545
- inputSchema: objectSchema({
546
- includeClosed: BOOLEAN_SCHEMA,
547
- limit: NUMBER_SCHEMA,
548
- }, []),
549
- outputSchema: COMPANION_CHAT_SESSIONS_LIST_SCHEMA,
550
- }),
551
- methodDescriptor({
552
- id: 'companion.chat.sessions.get',
553
- title: 'Get Companion Chat Session',
554
- description: 'Return a companion-chat session record together with its full message history.',
555
- category: 'companion',
556
- scopes: ['read:sessions'],
557
- http: { method: 'GET', path: '/api/companion/chat/sessions/{sessionId}' },
558
- inputSchema: objectSchema({ sessionId: STRING_SCHEMA }, ['sessionId']),
559
- outputSchema: COMPANION_CHAT_SESSION_WITH_MESSAGES_SCHEMA,
560
- }),
561
- methodDescriptor({
562
- id: 'companion.chat.sessions.update',
563
- title: 'Update Companion Chat Session',
564
- description: 'Update companion-chat session metadata, including session-local `provider` and `model`, without changing the daemon/TUI current model.',
565
- category: 'companion',
566
- scopes: ['write:sessions'],
567
- http: { method: 'PATCH', path: '/api/companion/chat/sessions/{sessionId}' },
568
- inputSchema: bodyEnvelopeSchema({
569
- title: STRING_SCHEMA,
570
- model: STRING_SCHEMA,
571
- provider: STRING_SCHEMA,
572
- systemPrompt: STRING_SCHEMA,
573
- }, []),
574
- outputSchema: objectSchema({
575
- session: COMPANION_CHAT_SESSION_SCHEMA,
576
- }, ['session']),
577
- }),
578
- methodDescriptor({
579
- id: 'companion.chat.sessions.delete',
580
- title: 'Close Companion Chat Session',
581
- description: 'Close a companion-chat session. The session record is preserved in closed state.',
582
- category: 'companion',
583
- scopes: ['write:sessions'],
584
- http: { method: 'DELETE', path: '/api/companion/chat/sessions/{sessionId}' },
585
- inputSchema: objectSchema({ sessionId: STRING_SCHEMA }, ['sessionId']),
586
- outputSchema: objectSchema({
587
- sessionId: STRING_SCHEMA,
588
- status: STRING_SCHEMA,
589
- }, ['sessionId', 'status']),
590
- }),
591
- methodDescriptor({
592
- id: 'companion.chat.messages.create',
593
- title: 'Send Companion Chat Message',
594
- description: 'Post a user message to a companion-chat session. Accepts either `body` or `content` in the payload; `body` wins when both are provided. Attachments reference artifacts created through `artifacts.create`.',
595
- category: 'companion',
596
- scopes: ['write:sessions'],
597
- http: { method: 'POST', path: '/api/companion/chat/sessions/{sessionId}/messages' },
598
- inputSchema: bodyEnvelopeSchema({
599
- body: STRING_SCHEMA,
600
- content: STRING_SCHEMA,
601
- attachments: arraySchema(objectSchema({
602
- artifactId: STRING_SCHEMA,
603
- label: STRING_SCHEMA,
604
- metadata: objectSchema({}, []),
605
- }, ['artifactId'])),
606
- metadata: objectSchema({}, []),
607
- }, []),
608
- outputSchema: objectSchema({
609
- messageId: STRING_SCHEMA,
610
- }, ['messageId']),
611
- }),
612
- methodDescriptor({
613
- id: 'companion.chat.messages.list',
614
- title: 'List Companion Chat Messages',
615
- description: 'Return the message list for a companion-chat session.',
616
- category: 'companion',
617
- scopes: ['read:sessions'],
618
- http: { method: 'GET', path: '/api/companion/chat/sessions/{sessionId}/messages' },
619
- inputSchema: objectSchema({ sessionId: STRING_SCHEMA }, ['sessionId']),
620
- outputSchema: COMPANION_CHAT_MESSAGES_LIST_SCHEMA,
621
- }),
622
- methodDescriptor({
623
- id: 'companion.chat.events.stream',
624
- title: 'Stream Companion Chat Events',
625
- description: 'Server-Sent Events stream of turn and agent events scoped to a single companion-chat session.',
626
- category: 'companion',
627
- scopes: ['read:sessions'],
628
- transport: ['http'],
629
- http: { method: 'GET', path: '/api/companion/chat/sessions/{sessionId}/events' },
630
- inputSchema: objectSchema({ sessionId: STRING_SCHEMA }, ['sessionId']),
631
- outputSchema: EMPTY_OBJECT_SCHEMA,
632
- invokable: false,
633
- metadata: { responseKind: 'sse', stream: true, wireEventPrefix: 'companion-chat.' },
634
- }),
635
617
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"method-catalog-control.d.ts","sourceRoot":"","sources":["../../../src/platform/control-plane/method-catalog-control.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAI1E,eAAO,MAAM,sCAAsC,EAAE,SAAS,uBAAuB,EAGpF,CAAC"}
1
+ {"version":3,"file":"method-catalog-control.d.ts","sourceRoot":"","sources":["../../../src/platform/control-plane/method-catalog-control.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAM1E,eAAO,MAAM,sCAAsC,EAAE,SAAS,uBAAuB,EAKpF,CAAC"}
@@ -1,6 +1,10 @@
1
1
  import { builtinGatewayControlAutomationMethodDescriptors } from './method-catalog-control-automation.js';
2
+ import { builtinGatewayControlCompanionMethodDescriptors } from './method-catalog-control-companion.js';
2
3
  import { builtinGatewayControlCoreMethodDescriptors } from './method-catalog-control-core.js';
4
+ import { builtinGatewayFleetMethodDescriptors } from './method-catalog-fleet.js';
3
5
  export const builtinGatewayControlMethodDescriptors = [
4
6
  ...builtinGatewayControlCoreMethodDescriptors,
7
+ ...builtinGatewayControlCompanionMethodDescriptors,
5
8
  ...builtinGatewayControlAutomationMethodDescriptors,
9
+ ...builtinGatewayFleetMethodDescriptors,
6
10
  ];
@@ -4,6 +4,23 @@ import type { GatewayMethodDescriptor } from './method-catalog-shared.js';
4
4
  * standard operator method protocol so email operations can be triggered via MCP
5
5
  * connector actions in addition to the direct-socket path. Daemon-backed; the SDK
6
6
  * publishes the typed contract surface (no internal handler).
7
+ *
8
+ * Capability-advertisement honesty: none of these four http paths are
9
+ * currently served by the daemon router — there is no /api/email surface at
10
+ * any prefix (confirmed by reading router.ts and every dispatch chain it
11
+ * delegates to; see method-catalog-route-reconcile.ts). The daemon's own 404
12
+ * handler names an /api/email-vs-/api/v1-shaped skew, but that's a red
13
+ * herring here: this isn't a path that moved, it's a path that was never
14
+ * wired to a route or an internal handler at all. Per the "reality wins"
15
+ * fix (correct the path where the route moved, mark unavailable where no
16
+ * route exists), these are marked `invokable: false` so the published
17
+ * contract and the live method-dispatch path both say "cataloged, not
18
+ * callable" instead of letting a caller discover the 404 the hard way.
19
+ * Un-mark a method once its real IMAP/SMTP-backed route or handler exists —
20
+ * the route-reconcile regression gate (method-catalog-route-reconcile.ts,
21
+ * exercised in test/w4-a3-capability-route-reconcile.test.ts) will catch it
22
+ * if this comment goes stale and a route reappears without the flag being
23
+ * cleared, or a new advertise-without-route method slips in unmarked.
7
24
  */
8
25
  export declare const builtinGatewayEmailMethodDescriptors: readonly GatewayMethodDescriptor[];
9
26
  //# sourceMappingURL=method-catalog-email.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"method-catalog-email.d.ts","sourceRoot":"","sources":["../../../src/platform/control-plane/method-catalog-email.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAsC1E;;;;;GAKG;AACH,eAAO,MAAM,oCAAoC,EAAE,SAAS,uBAAuB,EA0ElF,CAAC"}
1
+ {"version":3,"file":"method-catalog-email.d.ts","sourceRoot":"","sources":["../../../src/platform/control-plane/method-catalog-email.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAsC1E;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,oCAAoC,EAAE,SAAS,uBAAuB,EA8ElF,CAAC"}
@@ -28,6 +28,23 @@ const EMAIL_MESSAGE_DETAIL_SCHEMA = objectSchema({
28
28
  * standard operator method protocol so email operations can be triggered via MCP
29
29
  * connector actions in addition to the direct-socket path. Daemon-backed; the SDK
30
30
  * publishes the typed contract surface (no internal handler).
31
+ *
32
+ * Capability-advertisement honesty: none of these four http paths are
33
+ * currently served by the daemon router — there is no /api/email surface at
34
+ * any prefix (confirmed by reading router.ts and every dispatch chain it
35
+ * delegates to; see method-catalog-route-reconcile.ts). The daemon's own 404
36
+ * handler names an /api/email-vs-/api/v1-shaped skew, but that's a red
37
+ * herring here: this isn't a path that moved, it's a path that was never
38
+ * wired to a route or an internal handler at all. Per the "reality wins"
39
+ * fix (correct the path where the route moved, mark unavailable where no
40
+ * route exists), these are marked `invokable: false` so the published
41
+ * contract and the live method-dispatch path both say "cataloged, not
42
+ * callable" instead of letting a caller discover the 404 the hard way.
43
+ * Un-mark a method once its real IMAP/SMTP-backed route or handler exists —
44
+ * the route-reconcile regression gate (method-catalog-route-reconcile.ts,
45
+ * exercised in test/w4-a3-capability-route-reconcile.test.ts) will catch it
46
+ * if this comment goes stale and a route reappears without the flag being
47
+ * cleared, or a new advertise-without-route method slips in unmarked.
31
48
  */
32
49
  export const builtinGatewayEmailMethodDescriptors = [
33
50
  methodDescriptor({
@@ -46,6 +63,7 @@ export const builtinGatewayEmailMethodDescriptors = [
46
63
  messages: arraySchema(EMAIL_INBOX_MESSAGE_SCHEMA),
47
64
  total: NUMBER_SCHEMA,
48
65
  }, ['messages', 'total']),
66
+ invokable: false,
49
67
  }),
50
68
  methodDescriptor({
51
69
  id: 'email.inbox.read',
@@ -56,6 +74,7 @@ export const builtinGatewayEmailMethodDescriptors = [
56
74
  http: { method: 'GET', path: '/api/email/inbox/{uid}' },
57
75
  inputSchema: objectSchema({ uid: NUMBER_SCHEMA }, ['uid']),
58
76
  outputSchema: EMAIL_MESSAGE_DETAIL_SCHEMA,
77
+ invokable: false,
59
78
  }),
60
79
  methodDescriptor({
61
80
  id: 'email.draft.create',
@@ -77,6 +96,7 @@ export const builtinGatewayEmailMethodDescriptors = [
77
96
  draftId: STRING_SCHEMA,
78
97
  }, ['uid', 'draftId']),
79
98
  dangerous: true,
99
+ invokable: false,
80
100
  }),
81
101
  methodDescriptor({
82
102
  id: 'email.send',
@@ -98,5 +118,6 @@ export const builtinGatewayEmailMethodDescriptors = [
98
118
  sentAt: STRING_SCHEMA,
99
119
  }, ['messageId', 'sentAt']),
100
120
  dangerous: true,
121
+ invokable: false,
101
122
  }),
102
123
  ];
@@ -1,3 +1,31 @@
1
1
  import type { GatewayEventDescriptor } from './method-catalog-shared.js';
2
+ /**
3
+ * The discriminated `event` values carried inside every `session-update` wire frame.
4
+ *
5
+ * The SharedSessionBroker collapses ALL of its lifecycle signals onto a single wire event
6
+ * named `session-update` (session-broker.ts `publishUpdate`); the real lifecycle name lives
7
+ * in the frame's `payload.event` field. This list is the source of truth for that
8
+ * discriminant and is documented by the `control.session_update` descriptor below so a
9
+ * subscriber (webui/TUI) can switch on `payload.event` against a contract-backed enum
10
+ * instead of guessing from undocumented behavior.
11
+ *
12
+ * NOTE (One-Platform S1 coordination): new broker signals flow through the SAME
13
+ * `session-update` wire channel automatically because `publishUpdate` is generic — when
14
+ * S1's `sessions.register` flow emits e.g. `session-registered`, only THIS enum needs the
15
+ * added string (the wire channel already carries it). Keep this list aligned with the
16
+ * broker's publishUpdate/publishInputLifecycleEvent call sites.
17
+ */
18
+ export declare const SESSION_UPDATE_WIRE_EVENTS: readonly ["session-created", "session-closed", "session-deleted", "session-reopened", "session-agent-bound", "session-agent-completed", "session-message-appended", "session-message-forwarded", "session-route-attached", "session-detached", "session-input-queued", "session-input-queued-for-surface", "session-input-delivered", "session-input-spawned", "session-input-completed", "session-input-failed", "session-input-rejected", "session-input-cancelled", "session-follow-up-queued", "session-follow-up-spawned"];
19
+ /**
20
+ * Maps each cross-surface invalidation intent to the concrete `payload.event` value(s) a
21
+ * subscriber must react to. Documented in the descriptor so the webui/TUI do not guess.
22
+ */
23
+ export declare const SESSION_UPDATE_INTENT_MAP: {
24
+ readonly created: readonly ["session-created"];
25
+ readonly updated: readonly ["session-message-appended", "session-agent-completed", "session-route-attached", "session-detached", "session-reopened"];
26
+ readonly steered: readonly ["session-input-queued-for-surface", "session-input-delivered", "session-message-forwarded"];
27
+ readonly closed: readonly ["session-closed"];
28
+ readonly deleted: readonly ["session-deleted"];
29
+ };
2
30
  export declare const builtinGatewayEventDescriptors: readonly GatewayEventDescriptor[];
3
31
  //# sourceMappingURL=method-catalog-events.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"method-catalog-events.d.ts","sourceRoot":"","sources":["../../../src/platform/control-plane/method-catalog-events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAmCzE,eAAO,MAAM,8BAA8B,EAAE,SAAS,sBAAsB,EAuC3E,CAAC"}
1
+ {"version":3,"file":"method-catalog-events.d.ts","sourceRoot":"","sources":["../../../src/platform/control-plane/method-catalog-events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAKzE;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,0BAA0B,igBAqB7B,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,yBAAyB;;;;;;CAMqD,CAAC;AAgC5F,eAAO,MAAM,8BAA8B,EAAE,SAAS,sBAAsB,EAgE3E,CAAC"}
@@ -1,6 +1,55 @@
1
- import { STRING_SCHEMA, NUMBER_SCHEMA, arraySchema, objectSchema, eventDescriptor, runtimeDomainEvent } from './method-catalog-shared.js';
1
+ import { STRING_SCHEMA, NUMBER_SCHEMA, JSON_OBJECT_SCHEMA, arraySchema, objectSchema, eventDescriptor, runtimeDomainEvent } from './method-catalog-shared.js';
2
2
  import { CONTROL_PLANE_SURFACE_MESSAGE_SCHEMA } from './operator-contract-schemas.js';
3
3
  import { RUNTIME_EVENT_DOMAINS } from '../../events/domain-map.js';
4
+ /**
5
+ * The discriminated `event` values carried inside every `session-update` wire frame.
6
+ *
7
+ * The SharedSessionBroker collapses ALL of its lifecycle signals onto a single wire event
8
+ * named `session-update` (session-broker.ts `publishUpdate`); the real lifecycle name lives
9
+ * in the frame's `payload.event` field. This list is the source of truth for that
10
+ * discriminant and is documented by the `control.session_update` descriptor below so a
11
+ * subscriber (webui/TUI) can switch on `payload.event` against a contract-backed enum
12
+ * instead of guessing from undocumented behavior.
13
+ *
14
+ * NOTE (One-Platform S1 coordination): new broker signals flow through the SAME
15
+ * `session-update` wire channel automatically because `publishUpdate` is generic — when
16
+ * S1's `sessions.register` flow emits e.g. `session-registered`, only THIS enum needs the
17
+ * added string (the wire channel already carries it). Keep this list aligned with the
18
+ * broker's publishUpdate/publishInputLifecycleEvent call sites.
19
+ */
20
+ export const SESSION_UPDATE_WIRE_EVENTS = [
21
+ 'session-created',
22
+ 'session-closed',
23
+ 'session-deleted',
24
+ 'session-reopened',
25
+ 'session-agent-bound',
26
+ 'session-agent-completed',
27
+ 'session-message-appended',
28
+ 'session-message-forwarded',
29
+ 'session-route-attached',
30
+ 'session-detached',
31
+ 'session-input-queued',
32
+ 'session-input-queued-for-surface',
33
+ 'session-input-delivered',
34
+ 'session-input-spawned',
35
+ 'session-input-completed',
36
+ 'session-input-failed',
37
+ 'session-input-rejected',
38
+ 'session-input-cancelled',
39
+ 'session-follow-up-queued',
40
+ 'session-follow-up-spawned',
41
+ ];
42
+ /**
43
+ * Maps each cross-surface invalidation intent to the concrete `payload.event` value(s) a
44
+ * subscriber must react to. Documented in the descriptor so the webui/TUI do not guess.
45
+ */
46
+ export const SESSION_UPDATE_INTENT_MAP = {
47
+ created: ['session-created'],
48
+ updated: ['session-message-appended', 'session-agent-completed', 'session-route-attached', 'session-detached', 'session-reopened'],
49
+ steered: ['session-input-queued-for-surface', 'session-input-delivered', 'session-message-forwarded'],
50
+ closed: ['session-closed'],
51
+ deleted: ['session-deleted'],
52
+ };
4
53
  const RUNTIME_DOMAIN_DESCRIPTIONS = {
5
54
  session: 'Shared-session lifecycle, participant, and message events.',
6
55
  turn: 'Turn submission and completion events.',
@@ -69,4 +118,28 @@ export const builtinGatewayEventDescriptors = [
69
118
  wireEvents: ['surface-message'],
70
119
  outputSchema: CONTROL_PLANE_SURFACE_MESSAGE_SCHEMA,
71
120
  }),
121
+ eventDescriptor({
122
+ id: 'control.session_update',
123
+ title: 'Session Lifecycle Update',
124
+ description: 'Shared-session lifecycle broadcast. Every session created / closed / deleted / reopened / '
125
+ + 'agent-bound / agent-completed / message-appended / message-forwarded / route-attached '
126
+ + 'and every input & follow-up lifecycle transition is published on the single '
127
+ + '`session-update` wire event; the specific lifecycle name is the discriminated '
128
+ + '`payload.event` field. Cross-surface invalidation mapping (webui/TUI): '
129
+ + 'created ⇐ session-created; updated ⇐ session-message-appended / session-agent-completed / '
130
+ + 'session-route-attached / session-reopened; steered ⇐ session-input-delivered / '
131
+ + 'session-message-forwarded; closed ⇐ session-closed; deleted ⇐ session-deleted (a hard '
132
+ + 'removal — the record is gone, not merely closed). This channel is un-domained: it '
133
+ + 'reaches every live SSE/WS client regardless of subscribed domains, and is dropped '
134
+ + 'entirely when the control-plane-gateway flag is turned off (no phantom buffering).',
135
+ category: 'transport',
136
+ transport: ['sse', 'ws'],
137
+ scopes: ['read:sessions'],
138
+ wireEvents: ['session-update'],
139
+ outputSchema: objectSchema({
140
+ event: { type: 'string', enum: [...SESSION_UPDATE_WIRE_EVENTS] },
141
+ payload: JSON_OBJECT_SCHEMA,
142
+ createdAt: NUMBER_SCHEMA,
143
+ }, ['event', 'payload', 'createdAt']),
144
+ }),
72
145
  ];
@@ -0,0 +1,24 @@
1
+ /**
2
+ * method-catalog-fleet.ts
3
+ *
4
+ * (see CHANGELOG 1.0.0) — fleet.* + checkpoints.* method descriptors. Split out of
5
+ * method-catalog-control-core.ts (which was already at the 800-line
6
+ * source-file cap) rather than grown into it, mirroring how
7
+ * method-catalog-control-automation.ts is a sibling split of the same file
8
+ * merged back in by method-catalog-control.ts.
9
+ *
10
+ * Thin read (fleet) / checkpoint-lifecycle verbs over managers the daemon
11
+ * ALREADY holds in-process (ProcessRegistry, WorkspaceCheckpointManager —
12
+ * see routes/fleet.ts and routes/checkpoints.ts header comments). No `http`
13
+ * REST path is bound: these are registered with a direct handler on the
14
+ * catalog (RuntimeServices construction, ../runtime/services.ts).
15
+ * `transport: ['ws']` with no `http` binding is the transport-parity gate's
16
+ * (test/transport-parity.test.ts) own sanctioned category for a method
17
+ * dispatchable ONLY via the generic invoke-by-id mechanism — see the
18
+ * TRANSPORT NOTE above `sessions.search` in method-catalog-control-core.ts
19
+ * for the full rationale (this block predates that comment only in file
20
+ * position, not in reasoning).
21
+ */
22
+ import type { GatewayMethodDescriptor } from './method-catalog-shared.js';
23
+ export declare const builtinGatewayFleetMethodDescriptors: readonly GatewayMethodDescriptor[];
24
+ //# sourceMappingURL=method-catalog-fleet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"method-catalog-fleet.d.ts","sourceRoot":"","sources":["../../../src/platform/control-plane/method-catalog-fleet.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAgB1E,eAAO,MAAM,oCAAoC,EAAE,SAAS,uBAAuB,EA8DlF,CAAC"}