@pellux/goodvibes-sdk 0.38.0 → 1.0.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 (474) hide show
  1. package/dist/contracts/artifacts/operator-contract.json +3171 -929
  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/surfaces.d.ts +25 -3
  6. package/dist/events/surfaces.d.ts.map +1 -1
  7. package/dist/events/surfaces.js +22 -1
  8. package/dist/events/workflows.d.ts +7 -6
  9. package/dist/events/workflows.d.ts.map +1 -1
  10. package/dist/index.d.ts +1 -1
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/platform/agents/archetypes.d.ts.map +1 -1
  13. package/dist/platform/agents/archetypes.js +7 -0
  14. package/dist/platform/agents/index.d.ts +1 -0
  15. package/dist/platform/agents/index.d.ts.map +1 -1
  16. package/dist/platform/agents/index.js +1 -0
  17. package/dist/platform/agents/orchestrator-runner.d.ts +13 -0
  18. package/dist/platform/agents/orchestrator-runner.d.ts.map +1 -1
  19. package/dist/platform/agents/orchestrator-runner.js +14 -0
  20. package/dist/platform/agents/orchestrator.d.ts +38 -6
  21. package/dist/platform/agents/orchestrator.d.ts.map +1 -1
  22. package/dist/platform/agents/orchestrator.js +66 -18
  23. package/dist/platform/agents/planner-decomposition-runner.d.ts +38 -0
  24. package/dist/platform/agents/planner-decomposition-runner.d.ts.map +1 -0
  25. package/dist/platform/agents/planner-decomposition-runner.js +113 -0
  26. package/dist/platform/agents/turn-knowledge-injection.d.ts +88 -3
  27. package/dist/platform/agents/turn-knowledge-injection.d.ts.map +1 -1
  28. package/dist/platform/agents/turn-knowledge-injection.js +147 -30
  29. package/dist/platform/agents/worktree.d.ts +126 -8
  30. package/dist/platform/agents/worktree.d.ts.map +1 -1
  31. package/dist/platform/agents/worktree.js +240 -19
  32. package/dist/platform/agents/wrfc-controller.d.ts +23 -0
  33. package/dist/platform/agents/wrfc-controller.d.ts.map +1 -1
  34. package/dist/platform/agents/wrfc-controller.js +158 -32
  35. package/dist/platform/agents/wrfc-gate-runtime.d.ts +9 -0
  36. package/dist/platform/agents/wrfc-gate-runtime.d.ts.map +1 -1
  37. package/dist/platform/agents/wrfc-gate-runtime.js +7 -3
  38. package/dist/platform/agents/wrfc-gates.d.ts +1 -1
  39. package/dist/platform/agents/wrfc-gates.d.ts.map +1 -1
  40. package/dist/platform/agents/wrfc-gates.js +7 -1
  41. package/dist/platform/agents/wrfc-types.d.ts +23 -3
  42. package/dist/platform/agents/wrfc-types.d.ts.map +1 -1
  43. package/dist/platform/automation/types.d.ts +9 -1
  44. package/dist/platform/automation/types.d.ts.map +1 -1
  45. package/dist/platform/calendar/calendar-api-shared.d.ts +25 -0
  46. package/dist/platform/calendar/calendar-api-shared.d.ts.map +1 -0
  47. package/dist/platform/calendar/calendar-api-shared.js +100 -0
  48. package/dist/platform/calendar/calendar-connector.d.ts +79 -0
  49. package/dist/platform/calendar/calendar-connector.d.ts.map +1 -0
  50. package/dist/platform/calendar/calendar-connector.js +155 -0
  51. package/dist/platform/calendar/google-calendar-api.d.ts +25 -0
  52. package/dist/platform/calendar/google-calendar-api.d.ts.map +1 -0
  53. package/dist/platform/calendar/google-calendar-api.js +89 -0
  54. package/dist/platform/calendar/http-fetch-adapter.d.ts +25 -0
  55. package/dist/platform/calendar/http-fetch-adapter.d.ts.map +1 -0
  56. package/dist/platform/calendar/http-fetch-adapter.js +25 -0
  57. package/dist/platform/calendar/ics-parser.d.ts +35 -0
  58. package/dist/platform/calendar/ics-parser.d.ts.map +1 -0
  59. package/dist/platform/calendar/ics-parser.js +236 -0
  60. package/dist/platform/calendar/index.d.ts +41 -0
  61. package/dist/platform/calendar/index.d.ts.map +1 -0
  62. package/dist/platform/calendar/index.js +49 -0
  63. package/dist/platform/calendar/merged-calendar-model.d.ts +67 -0
  64. package/dist/platform/calendar/merged-calendar-model.d.ts.map +1 -0
  65. package/dist/platform/calendar/merged-calendar-model.js +181 -0
  66. package/dist/platform/calendar/microsoft-graph-api.d.ts +25 -0
  67. package/dist/platform/calendar/microsoft-graph-api.d.ts.map +1 -0
  68. package/dist/platform/calendar/microsoft-graph-api.js +95 -0
  69. package/dist/platform/calendar/oauth-flow.d.ts +62 -0
  70. package/dist/platform/calendar/oauth-flow.d.ts.map +1 -0
  71. package/dist/platform/calendar/oauth-flow.js +305 -0
  72. package/dist/platform/calendar/oauth-providers.d.ts +43 -0
  73. package/dist/platform/calendar/oauth-providers.d.ts.map +1 -0
  74. package/dist/platform/calendar/oauth-providers.js +120 -0
  75. package/dist/platform/calendar/oauth-token-store.d.ts +72 -0
  76. package/dist/platform/calendar/oauth-token-store.d.ts.map +1 -0
  77. package/dist/platform/calendar/oauth-token-store.js +189 -0
  78. package/dist/platform/calendar/oauth-types.d.ts +274 -0
  79. package/dist/platform/calendar/oauth-types.d.ts.map +1 -0
  80. package/dist/platform/calendar/oauth-types.js +22 -0
  81. package/dist/platform/calendar/rrule.d.ts +39 -0
  82. package/dist/platform/calendar/rrule.d.ts.map +1 -0
  83. package/dist/platform/calendar/rrule.js +261 -0
  84. package/dist/platform/calendar/subscription-store.d.ts +118 -0
  85. package/dist/platform/calendar/subscription-store.d.ts.map +1 -0
  86. package/dist/platform/calendar/subscription-store.js +293 -0
  87. package/dist/platform/calendar/types.d.ts +170 -0
  88. package/dist/platform/calendar/types.d.ts.map +1 -0
  89. package/dist/platform/calendar/types.js +21 -0
  90. package/dist/platform/companion/companion-chat-attachments.d.ts +29 -0
  91. package/dist/platform/companion/companion-chat-attachments.d.ts.map +1 -0
  92. package/dist/platform/companion/companion-chat-attachments.js +121 -0
  93. package/dist/platform/companion/companion-chat-broker-bridge.d.ts +40 -0
  94. package/dist/platform/companion/companion-chat-broker-bridge.d.ts.map +1 -0
  95. package/dist/platform/companion/companion-chat-broker-bridge.js +14 -0
  96. package/dist/platform/companion/companion-chat-broker-sync.d.ts +38 -0
  97. package/dist/platform/companion/companion-chat-broker-sync.d.ts.map +1 -0
  98. package/dist/platform/companion/companion-chat-broker-sync.js +80 -0
  99. package/dist/platform/companion/companion-chat-gc.d.ts +63 -0
  100. package/dist/platform/companion/companion-chat-gc.d.ts.map +1 -0
  101. package/dist/platform/companion/companion-chat-gc.js +38 -0
  102. package/dist/platform/companion/companion-chat-manager.d.ts +67 -20
  103. package/dist/platform/companion/companion-chat-manager.d.ts.map +1 -1
  104. package/dist/platform/companion/companion-chat-manager.js +130 -144
  105. package/dist/platform/companion/companion-chat-persistence.d.ts +9 -1
  106. package/dist/platform/companion/companion-chat-persistence.d.ts.map +1 -1
  107. package/dist/platform/companion/companion-chat-persistence.js +10 -2
  108. package/dist/platform/companion/companion-chat-routes.d.ts +2 -1
  109. package/dist/platform/companion/companion-chat-routes.d.ts.map +1 -1
  110. package/dist/platform/companion/companion-chat-routes.js +37 -4
  111. package/dist/platform/config/credential-status.d.ts +28 -0
  112. package/dist/platform/config/credential-status.d.ts.map +1 -0
  113. package/dist/platform/config/credential-status.js +75 -0
  114. package/dist/platform/config/index.d.ts +25 -0
  115. package/dist/platform/config/index.d.ts.map +1 -1
  116. package/dist/platform/config/index.js +18 -0
  117. package/dist/platform/config/manager.d.ts +9 -0
  118. package/dist/platform/config/manager.d.ts.map +1 -1
  119. package/dist/platform/config/manager.js +21 -2
  120. package/dist/platform/config/migrations.d.ts +48 -0
  121. package/dist/platform/config/migrations.d.ts.map +1 -0
  122. package/dist/platform/config/migrations.js +54 -0
  123. package/dist/platform/config/schema-domain-core.d.ts +10 -1
  124. package/dist/platform/config/schema-domain-core.d.ts.map +1 -1
  125. package/dist/platform/config/schema-domain-core.js +46 -3
  126. package/dist/platform/config/schema-types.d.ts +13 -7
  127. package/dist/platform/config/schema-types.d.ts.map +1 -1
  128. package/dist/platform/config/schema.d.ts.map +1 -1
  129. package/dist/platform/config/schema.js +2 -0
  130. package/dist/platform/control-plane/approval-broker.d.ts +11 -0
  131. package/dist/platform/control-plane/approval-broker.d.ts.map +1 -1
  132. package/dist/platform/control-plane/approval-broker.js +17 -1
  133. package/dist/platform/control-plane/approval-hunk-apply.d.ts +77 -0
  134. package/dist/platform/control-plane/approval-hunk-apply.d.ts.map +1 -0
  135. package/dist/platform/control-plane/approval-hunk-apply.js +80 -0
  136. package/dist/platform/control-plane/gateway-disabled-response.d.ts +20 -0
  137. package/dist/platform/control-plane/gateway-disabled-response.d.ts.map +1 -0
  138. package/dist/platform/control-plane/gateway-disabled-response.js +24 -0
  139. package/dist/platform/control-plane/gateway-scope-enforcement.d.ts +68 -0
  140. package/dist/platform/control-plane/gateway-scope-enforcement.d.ts.map +1 -0
  141. package/dist/platform/control-plane/gateway-scope-enforcement.js +91 -0
  142. package/dist/platform/control-plane/gateway-utils.d.ts +17 -0
  143. package/dist/platform/control-plane/gateway-utils.d.ts.map +1 -1
  144. package/dist/platform/control-plane/gateway-utils.js +30 -0
  145. package/dist/platform/control-plane/gateway.d.ts +12 -2
  146. package/dist/platform/control-plane/gateway.d.ts.map +1 -1
  147. package/dist/platform/control-plane/gateway.js +27 -31
  148. package/dist/platform/control-plane/index.d.ts +6 -1
  149. package/dist/platform/control-plane/index.d.ts.map +1 -1
  150. package/dist/platform/control-plane/index.js +4 -0
  151. package/dist/platform/control-plane/invoke-input-validation.d.ts +56 -0
  152. package/dist/platform/control-plane/invoke-input-validation.d.ts.map +1 -0
  153. package/dist/platform/control-plane/invoke-input-validation.js +163 -0
  154. package/dist/platform/control-plane/method-catalog-admin.d.ts.map +1 -1
  155. package/dist/platform/control-plane/method-catalog-admin.js +12 -1
  156. package/dist/platform/control-plane/method-catalog-calendar.d.ts +16 -0
  157. package/dist/platform/control-plane/method-catalog-calendar.d.ts.map +1 -1
  158. package/dist/platform/control-plane/method-catalog-calendar.js +21 -0
  159. package/dist/platform/control-plane/method-catalog-channels.d.ts.map +1 -1
  160. package/dist/platform/control-plane/method-catalog-channels.js +32 -3
  161. package/dist/platform/control-plane/method-catalog-control-automation.d.ts.map +1 -1
  162. package/dist/platform/control-plane/method-catalog-control-automation.js +19 -34
  163. package/dist/platform/control-plane/method-catalog-control-companion.d.ts +15 -0
  164. package/dist/platform/control-plane/method-catalog-control-companion.d.ts.map +1 -0
  165. package/dist/platform/control-plane/method-catalog-control-companion.js +133 -0
  166. package/dist/platform/control-plane/method-catalog-control-core.d.ts.map +1 -1
  167. package/dist/platform/control-plane/method-catalog-control-core.js +104 -122
  168. package/dist/platform/control-plane/method-catalog-control.d.ts.map +1 -1
  169. package/dist/platform/control-plane/method-catalog-control.js +4 -0
  170. package/dist/platform/control-plane/method-catalog-email.d.ts +17 -0
  171. package/dist/platform/control-plane/method-catalog-email.d.ts.map +1 -1
  172. package/dist/platform/control-plane/method-catalog-email.js +21 -0
  173. package/dist/platform/control-plane/method-catalog-events.d.ts +28 -0
  174. package/dist/platform/control-plane/method-catalog-events.d.ts.map +1 -1
  175. package/dist/platform/control-plane/method-catalog-events.js +74 -1
  176. package/dist/platform/control-plane/method-catalog-fleet.d.ts +24 -0
  177. package/dist/platform/control-plane/method-catalog-fleet.d.ts.map +1 -0
  178. package/dist/platform/control-plane/method-catalog-fleet.js +65 -0
  179. package/dist/platform/control-plane/method-catalog-route-reconcile.d.ts +84 -0
  180. package/dist/platform/control-plane/method-catalog-route-reconcile.d.ts.map +1 -0
  181. package/dist/platform/control-plane/method-catalog-route-reconcile.js +103 -0
  182. package/dist/platform/control-plane/method-catalog-shared.d.ts +29 -0
  183. package/dist/platform/control-plane/method-catalog-shared.d.ts.map +1 -1
  184. package/dist/platform/control-plane/method-catalog.d.ts +9 -0
  185. package/dist/platform/control-plane/method-catalog.d.ts.map +1 -1
  186. package/dist/platform/control-plane/method-catalog.js +32 -3
  187. package/dist/platform/control-plane/operator-contract-schemas-admin.d.ts +8 -0
  188. package/dist/platform/control-plane/operator-contract-schemas-admin.d.ts.map +1 -1
  189. package/dist/platform/control-plane/operator-contract-schemas-admin.js +22 -1
  190. package/dist/platform/control-plane/operator-contract-schemas-fleet.d.ts +18 -0
  191. package/dist/platform/control-plane/operator-contract-schemas-fleet.d.ts.map +1 -0
  192. package/dist/platform/control-plane/operator-contract-schemas-fleet.js +182 -0
  193. package/dist/platform/control-plane/operator-contract-schemas-permissions.d.ts.map +1 -1
  194. package/dist/platform/control-plane/operator-contract-schemas-permissions.js +5 -0
  195. package/dist/platform/control-plane/operator-contract-schemas-runtime.d.ts +29 -0
  196. package/dist/platform/control-plane/operator-contract-schemas-runtime.d.ts.map +1 -1
  197. package/dist/platform/control-plane/operator-contract-schemas-runtime.js +57 -3
  198. package/dist/platform/control-plane/operator-contract-schemas.d.ts +1 -0
  199. package/dist/platform/control-plane/operator-contract-schemas.d.ts.map +1 -1
  200. package/dist/platform/control-plane/operator-contract-schemas.js +1 -0
  201. package/dist/platform/control-plane/operator-contract.d.ts.map +1 -1
  202. package/dist/platform/control-plane/operator-contract.js +8 -0
  203. package/dist/platform/control-plane/routes/checkpoints.d.ts +39 -0
  204. package/dist/platform/control-plane/routes/checkpoints.d.ts.map +1 -0
  205. package/dist/platform/control-plane/routes/checkpoints.js +166 -0
  206. package/dist/platform/control-plane/routes/fleet.d.ts +53 -0
  207. package/dist/platform/control-plane/routes/fleet.d.ts.map +1 -0
  208. package/dist/platform/control-plane/routes/fleet.js +153 -0
  209. package/dist/platform/control-plane/routes/gateway-verb-error.d.ts +30 -0
  210. package/dist/platform/control-plane/routes/gateway-verb-error.d.ts.map +1 -0
  211. package/dist/platform/control-plane/routes/gateway-verb-error.js +36 -0
  212. package/dist/platform/control-plane/routes/index.d.ts +0 -6
  213. package/dist/platform/control-plane/routes/index.d.ts.map +1 -1
  214. package/dist/platform/control-plane/routes/index.js +5 -5
  215. package/dist/platform/control-plane/routes/invocation-params.d.ts +23 -0
  216. package/dist/platform/control-plane/routes/invocation-params.d.ts.map +1 -0
  217. package/dist/platform/control-plane/routes/invocation-params.js +9 -0
  218. package/dist/platform/control-plane/routes/register-w3-s2.d.ts +26 -0
  219. package/dist/platform/control-plane/routes/register-w3-s2.d.ts.map +1 -0
  220. package/dist/platform/control-plane/routes/register-w3-s2.js +8 -0
  221. package/dist/platform/control-plane/routes/session-search.d.ts +37 -0
  222. package/dist/platform/control-plane/routes/session-search.d.ts.map +1 -0
  223. package/dist/platform/control-plane/routes/session-search.js +113 -0
  224. package/dist/platform/control-plane/session-broker-gc.d.ts +16 -0
  225. package/dist/platform/control-plane/session-broker-gc.d.ts.map +1 -1
  226. package/dist/platform/control-plane/session-broker-gc.js +23 -6
  227. package/dist/platform/control-plane/session-broker-helpers.d.ts +3 -3
  228. package/dist/platform/control-plane/session-broker-helpers.d.ts.map +1 -1
  229. package/dist/platform/control-plane/session-broker-inputs.d.ts +18 -0
  230. package/dist/platform/control-plane/session-broker-inputs.d.ts.map +1 -1
  231. package/dist/platform/control-plane/session-broker-inputs.js +34 -0
  232. package/dist/platform/control-plane/session-broker-sessions.d.ts +102 -3
  233. package/dist/platform/control-plane/session-broker-sessions.d.ts.map +1 -1
  234. package/dist/platform/control-plane/session-broker-sessions.js +179 -5
  235. package/dist/platform/control-plane/session-broker-state.d.ts +20 -1
  236. package/dist/platform/control-plane/session-broker-state.d.ts.map +1 -1
  237. package/dist/platform/control-plane/session-broker-state.js +67 -5
  238. package/dist/platform/control-plane/session-broker.d.ts +51 -38
  239. package/dist/platform/control-plane/session-broker.d.ts.map +1 -1
  240. package/dist/platform/control-plane/session-broker.js +183 -75
  241. package/dist/platform/control-plane/session-store-importer.d.ts +57 -0
  242. package/dist/platform/control-plane/session-store-importer.d.ts.map +1 -0
  243. package/dist/platform/control-plane/session-store-importer.js +227 -0
  244. package/dist/platform/control-plane/session-types.d.ts +142 -7
  245. package/dist/platform/control-plane/session-types.d.ts.map +1 -1
  246. package/dist/platform/core/execution-plan.d.ts +43 -1
  247. package/dist/platform/core/execution-plan.d.ts.map +1 -1
  248. package/dist/platform/core/execution-plan.js +46 -10
  249. package/dist/platform/core/index.d.ts +1 -0
  250. package/dist/platform/core/index.d.ts.map +1 -1
  251. package/dist/platform/core/index.js +1 -0
  252. package/dist/platform/core/orchestrator-runtime.d.ts +21 -1
  253. package/dist/platform/core/orchestrator-runtime.d.ts.map +1 -1
  254. package/dist/platform/core/orchestrator-tool-runtime.d.ts +7 -0
  255. package/dist/platform/core/orchestrator-tool-runtime.d.ts.map +1 -1
  256. package/dist/platform/core/orchestrator-tool-runtime.js +10 -0
  257. package/dist/platform/core/orchestrator-turn-loop.d.ts +8 -1
  258. package/dist/platform/core/orchestrator-turn-loop.d.ts.map +1 -1
  259. package/dist/platform/core/orchestrator-turn-loop.js +6 -0
  260. package/dist/platform/core/orchestrator.d.ts +6 -0
  261. package/dist/platform/core/orchestrator.d.ts.map +1 -1
  262. package/dist/platform/core/orchestrator.js +15 -0
  263. package/dist/platform/core/plan-decomposition.d.ts +196 -0
  264. package/dist/platform/core/plan-decomposition.d.ts.map +1 -0
  265. package/dist/platform/core/plan-decomposition.js +417 -0
  266. package/dist/platform/core/plan-proposal.d.ts +39 -0
  267. package/dist/platform/core/plan-proposal.d.ts.map +1 -1
  268. package/dist/platform/core/wrfc-routing.d.ts +1 -0
  269. package/dist/platform/core/wrfc-routing.d.ts.map +1 -1
  270. package/dist/platform/core/wrfc-routing.js +51 -1
  271. package/dist/platform/daemon/boot.d.ts +63 -0
  272. package/dist/platform/daemon/boot.d.ts.map +1 -0
  273. package/dist/platform/daemon/boot.js +60 -0
  274. package/dist/platform/daemon/cli.js +2 -1
  275. package/dist/platform/daemon/control-plane.d.ts.map +1 -1
  276. package/dist/platform/daemon/control-plane.js +50 -1
  277. package/dist/platform/daemon/facade-composition.d.ts.map +1 -1
  278. package/dist/platform/daemon/facade-composition.js +6 -0
  279. package/dist/platform/daemon/facade.d.ts +18 -6
  280. package/dist/platform/daemon/facade.d.ts.map +1 -1
  281. package/dist/platform/daemon/facade.js +50 -43
  282. package/dist/platform/daemon/http/router-route-contexts.d.ts +1 -0
  283. package/dist/platform/daemon/http/router-route-contexts.d.ts.map +1 -1
  284. package/dist/platform/daemon/http/router-route-contexts.js +1 -0
  285. package/dist/platform/daemon/http/router-session-broker-adapter.d.ts +13 -0
  286. package/dist/platform/daemon/http/router-session-broker-adapter.d.ts.map +1 -0
  287. package/dist/platform/daemon/http/router-session-broker-adapter.js +27 -0
  288. package/dist/platform/daemon/http/router.d.ts +1 -1
  289. package/dist/platform/daemon/http/router.d.ts.map +1 -1
  290. package/dist/platform/daemon/http/router.js +7 -22
  291. package/dist/platform/daemon/http/runtime-route-types.d.ts +42 -4
  292. package/dist/platform/daemon/http/runtime-route-types.d.ts.map +1 -1
  293. package/dist/platform/daemon/index.d.ts +2 -0
  294. package/dist/platform/daemon/index.d.ts.map +1 -1
  295. package/dist/platform/daemon/index.js +1 -0
  296. package/dist/platform/daemon/service-manager.d.ts +16 -0
  297. package/dist/platform/daemon/service-manager.d.ts.map +1 -1
  298. package/dist/platform/daemon/service-manager.js +79 -15
  299. package/dist/platform/intelligence/tree-sitter/service.d.ts.map +1 -1
  300. package/dist/platform/intelligence/tree-sitter/service.js +16 -2
  301. package/dist/platform/knowledge/browser-history/readers.d.ts.map +1 -1
  302. package/dist/platform/knowledge/browser-history/readers.js +15 -5
  303. package/dist/platform/knowledge/project-planning/service.d.ts +14 -1
  304. package/dist/platform/knowledge/project-planning/service.d.ts.map +1 -1
  305. package/dist/platform/knowledge/project-planning/service.js +77 -0
  306. package/dist/platform/knowledge/project-planning/types.d.ts +32 -0
  307. package/dist/platform/knowledge/project-planning/types.d.ts.map +1 -1
  308. package/dist/platform/orchestration/bookkeeping.d.ts +12 -0
  309. package/dist/platform/orchestration/bookkeeping.d.ts.map +1 -0
  310. package/dist/platform/orchestration/bookkeeping.js +91 -0
  311. package/dist/platform/orchestration/controller-compat.d.ts +14 -0
  312. package/dist/platform/orchestration/controller-compat.d.ts.map +1 -1
  313. package/dist/platform/orchestration/controller-compat.js +18 -4
  314. package/dist/platform/orchestration/engine.d.ts +26 -1
  315. package/dist/platform/orchestration/engine.d.ts.map +1 -1
  316. package/dist/platform/orchestration/engine.js +226 -21
  317. package/dist/platform/orchestration/index.d.ts +6 -4
  318. package/dist/platform/orchestration/index.d.ts.map +1 -1
  319. package/dist/platform/orchestration/index.js +3 -2
  320. package/dist/platform/orchestration/persistence.d.ts.map +1 -1
  321. package/dist/platform/orchestration/persistence.js +4 -1
  322. package/dist/platform/orchestration/phase-runner.d.ts +29 -2
  323. package/dist/platform/orchestration/phase-runner.d.ts.map +1 -1
  324. package/dist/platform/orchestration/phase-runner.js +98 -25
  325. package/dist/platform/orchestration/proposal-workstream.d.ts +56 -0
  326. package/dist/platform/orchestration/proposal-workstream.d.ts.map +1 -0
  327. package/dist/platform/orchestration/proposal-workstream.js +76 -0
  328. package/dist/platform/orchestration/scheduler.d.ts +19 -0
  329. package/dist/platform/orchestration/scheduler.d.ts.map +1 -1
  330. package/dist/platform/orchestration/scheduler.js +16 -0
  331. package/dist/platform/orchestration/types.d.ts +286 -1
  332. package/dist/platform/orchestration/types.d.ts.map +1 -1
  333. package/dist/platform/orchestration/types.js +32 -0
  334. package/dist/platform/orchestration/worktree-isolation.d.ts +33 -0
  335. package/dist/platform/orchestration/worktree-isolation.d.ts.map +1 -0
  336. package/dist/platform/orchestration/worktree-isolation.js +248 -0
  337. package/dist/platform/presentation/glyphs.d.ts +91 -0
  338. package/dist/platform/presentation/glyphs.d.ts.map +1 -0
  339. package/dist/platform/presentation/glyphs.js +93 -0
  340. package/dist/platform/presentation/index.d.ts +28 -0
  341. package/dist/platform/presentation/index.d.ts.map +1 -0
  342. package/dist/platform/presentation/index.js +27 -0
  343. package/dist/platform/presentation/thinking-phrases.d.ts +12 -0
  344. package/dist/platform/presentation/thinking-phrases.d.ts.map +1 -0
  345. package/dist/platform/presentation/thinking-phrases.js +32 -0
  346. package/dist/platform/presentation/tones.d.ts +121 -0
  347. package/dist/platform/presentation/tones.d.ts.map +1 -0
  348. package/dist/platform/presentation/tones.js +145 -0
  349. package/dist/platform/presentation/waiting-wording.d.ts +54 -0
  350. package/dist/platform/presentation/waiting-wording.d.ts.map +1 -0
  351. package/dist/platform/presentation/waiting-wording.js +51 -0
  352. package/dist/platform/providers/runtime-snapshot.d.ts.map +1 -1
  353. package/dist/platform/providers/runtime-snapshot.js +12 -2
  354. package/dist/platform/runtime/bootstrap-services.d.ts +62 -2
  355. package/dist/platform/runtime/bootstrap-services.d.ts.map +1 -1
  356. package/dist/platform/runtime/bootstrap-services.js +217 -50
  357. package/dist/platform/runtime/daemon-version-compat.d.ts +39 -0
  358. package/dist/platform/runtime/daemon-version-compat.d.ts.map +1 -0
  359. package/dist/platform/runtime/daemon-version-compat.js +75 -0
  360. package/dist/platform/runtime/detached-daemon-runtime.d.ts +26 -0
  361. package/dist/platform/runtime/detached-daemon-runtime.d.ts.map +1 -0
  362. package/dist/platform/runtime/detached-daemon-runtime.js +49 -0
  363. package/dist/platform/runtime/emitters/workflows.d.ts +1 -1
  364. package/dist/platform/runtime/emitters/workflows.d.ts.map +1 -1
  365. package/dist/platform/runtime/events/index.d.ts +13 -0
  366. package/dist/platform/runtime/events/index.d.ts.map +1 -1
  367. package/dist/platform/runtime/events/index.js +13 -0
  368. package/dist/platform/runtime/feature-flags/flags.d.ts.map +1 -1
  369. package/dist/platform/runtime/feature-flags/flags.js +39 -1
  370. package/dist/platform/runtime/fleet/adapters/orchestration.d.ts +40 -18
  371. package/dist/platform/runtime/fleet/adapters/orchestration.d.ts.map +1 -1
  372. package/dist/platform/runtime/fleet/adapters/orchestration.js +138 -34
  373. package/dist/platform/runtime/fleet/adapters/wrfc.d.ts +13 -0
  374. package/dist/platform/runtime/fleet/adapters/wrfc.d.ts.map +1 -1
  375. package/dist/platform/runtime/fleet/adapters/wrfc.js +48 -1
  376. package/dist/platform/runtime/fleet/registry.d.ts.map +1 -1
  377. package/dist/platform/runtime/fleet/registry.js +38 -4
  378. package/dist/platform/runtime/operator-client.d.ts +20 -2
  379. package/dist/platform/runtime/operator-client.d.ts.map +1 -1
  380. package/dist/platform/runtime/operator-client.js +11 -1
  381. package/dist/platform/runtime/provider-accounts/registry.d.ts.map +1 -1
  382. package/dist/platform/runtime/provider-accounts/registry.js +11 -1
  383. package/dist/platform/runtime/services.d.ts +9 -7
  384. package/dist/platform/runtime/services.d.ts.map +1 -1
  385. package/dist/platform/runtime/services.js +19 -4
  386. package/dist/platform/runtime/session-spine/client.d.ts +234 -0
  387. package/dist/platform/runtime/session-spine/client.d.ts.map +1 -0
  388. package/dist/platform/runtime/session-spine/client.js +449 -0
  389. package/dist/platform/runtime/session-spine/index.d.ts +12 -0
  390. package/dist/platform/runtime/session-spine/index.d.ts.map +1 -0
  391. package/dist/platform/runtime/session-spine/index.js +11 -0
  392. package/dist/platform/runtime/session-spine/union-cache.d.ts +225 -0
  393. package/dist/platform/runtime/session-spine/union-cache.d.ts.map +1 -0
  394. package/dist/platform/runtime/session-spine/union-cache.js +333 -0
  395. package/dist/platform/runtime/shell-command-ops.d.ts +3 -1
  396. package/dist/platform/runtime/shell-command-ops.d.ts.map +1 -1
  397. package/dist/platform/runtime/transports/daemon-http-client-validators.d.ts.map +1 -1
  398. package/dist/platform/runtime/transports/daemon-http-client-validators.js +22 -0
  399. package/dist/platform/runtime/transports/daemon-http-client.d.ts.map +1 -1
  400. package/dist/platform/runtime/transports/daemon-http-client.js +25 -2
  401. package/dist/platform/runtime/transports/http-types.d.ts +9 -2
  402. package/dist/platform/runtime/transports/http-types.d.ts.map +1 -1
  403. package/dist/platform/state/canonical-memory.d.ts +95 -0
  404. package/dist/platform/state/canonical-memory.d.ts.map +1 -0
  405. package/dist/platform/state/canonical-memory.js +155 -0
  406. package/dist/platform/state/code-index-reindex.d.ts +73 -0
  407. package/dist/platform/state/code-index-reindex.d.ts.map +1 -0
  408. package/dist/platform/state/code-index-reindex.js +156 -0
  409. package/dist/platform/state/code-index-store.d.ts.map +1 -1
  410. package/dist/platform/state/code-index-store.js +10 -2
  411. package/dist/platform/state/index.d.ts +8 -0
  412. package/dist/platform/state/index.d.ts.map +1 -1
  413. package/dist/platform/state/index.js +4 -0
  414. package/dist/platform/state/memory-recall-contract.d.ts +63 -0
  415. package/dist/platform/state/memory-recall-contract.d.ts.map +1 -0
  416. package/dist/platform/state/memory-recall-contract.js +94 -0
  417. package/dist/platform/state/memory-store.d.ts +2 -0
  418. package/dist/platform/state/memory-store.d.ts.map +1 -1
  419. package/dist/platform/state/memory-store.js +4 -0
  420. package/dist/platform/state/memory-vector-store.d.ts.map +1 -1
  421. package/dist/platform/state/memory-vector-store.js +13 -2
  422. package/dist/platform/state/sqlite-store.d.ts +2 -0
  423. package/dist/platform/state/sqlite-store.d.ts.map +1 -1
  424. package/dist/platform/state/sqlite-store.js +4 -0
  425. package/dist/platform/state/vibe-projection.d.ts +67 -0
  426. package/dist/platform/state/vibe-projection.d.ts.map +1 -0
  427. package/dist/platform/state/vibe-projection.js +115 -0
  428. package/dist/platform/tools/agent/index.d.ts.map +1 -1
  429. package/dist/platform/tools/agent/index.js +8 -0
  430. package/dist/platform/tools/agent/manager.d.ts +12 -0
  431. package/dist/platform/tools/agent/manager.d.ts.map +1 -1
  432. package/dist/platform/tools/agent/manager.js +6 -0
  433. package/dist/platform/tools/agent/schema.d.ts +26 -0
  434. package/dist/platform/tools/agent/schema.d.ts.map +1 -1
  435. package/dist/platform/tools/agent/schema.js +2 -2
  436. package/dist/platform/tools/agent/wrfc-batch-policy.d.ts +13 -0
  437. package/dist/platform/tools/agent/wrfc-batch-policy.d.ts.map +1 -1
  438. package/dist/platform/tools/agent/wrfc-batch-policy.js +60 -0
  439. package/dist/platform/tools/exec/runtime.d.ts +10 -0
  440. package/dist/platform/tools/exec/runtime.d.ts.map +1 -1
  441. package/dist/platform/tools/exec/runtime.js +22 -5
  442. package/dist/platform/tools/exec/schema.d.ts +1 -1
  443. package/dist/platform/tools/exec/schema.d.ts.map +1 -1
  444. package/dist/platform/tools/exec/schema.js +2 -1
  445. package/dist/platform/tools/index.d.ts +2 -0
  446. package/dist/platform/tools/index.d.ts.map +1 -1
  447. package/dist/platform/tools/index.js +2 -0
  448. package/dist/platform/tools/state/index.d.ts +9 -0
  449. package/dist/platform/tools/state/index.d.ts.map +1 -1
  450. package/dist/platform/tools/state/index.js +60 -3
  451. package/dist/platform/types/foundation-contract.d.ts +1 -1
  452. package/dist/platform/types/foundation-contract.d.ts.map +1 -1
  453. package/dist/platform/types/index.d.ts +1 -1
  454. package/dist/platform/types/index.d.ts.map +1 -1
  455. package/dist/platform/version.js +1 -1
  456. package/package.json +21 -9
  457. package/dist/platform/control-plane/routes/automation.d.ts +0 -3
  458. package/dist/platform/control-plane/routes/automation.d.ts.map +0 -1
  459. package/dist/platform/control-plane/routes/automation.js +0 -63
  460. package/dist/platform/control-plane/routes/context.d.ts +0 -2
  461. package/dist/platform/control-plane/routes/context.d.ts.map +0 -1
  462. package/dist/platform/control-plane/routes/context.js +0 -1
  463. package/dist/platform/control-plane/routes/operator.d.ts +0 -8
  464. package/dist/platform/control-plane/routes/operator.d.ts.map +0 -1
  465. package/dist/platform/control-plane/routes/operator.js +0 -415
  466. package/dist/platform/control-plane/routes/remote.d.ts +0 -3
  467. package/dist/platform/control-plane/routes/remote.d.ts.map +0 -1
  468. package/dist/platform/control-plane/routes/remote.js +0 -35
  469. package/dist/platform/control-plane/routes/sessions.d.ts +0 -3
  470. package/dist/platform/control-plane/routes/sessions.d.ts.map +0 -1
  471. package/dist/platform/control-plane/routes/sessions.js +0 -43
  472. package/dist/platform/control-plane/routes/tasks.d.ts +0 -3
  473. package/dist/platform/control-plane/routes/tasks.d.ts.map +0 -1
  474. package/dist/platform/control-plane/routes/tasks.js +0 -22
@@ -0,0 +1,121 @@
1
+ /**
2
+ * tones.ts — the canonical UI tone-token table, hoisted from `goodvibes-tui`
3
+ * src/renderer/ui-primitives.ts (UI_TONES + DIFF_TONES + SPINNER_FRAMES) and
4
+ * src/renderer/theme.ts (resolveUiTones / UI_TONES_LIGHT).
5
+ *
6
+ * TONE_TOKENS mirrors the TUI's UI_TONES shape byte-for-byte (the TUI is the
7
+ * reference, and its dark values are the accepted baseline — this keeps a
8
+ * future TUI swap onto this module a no-op). resolveTones(mode) is the single
9
+ * mode-resolved read path: 'dark' returns TONE_TOKENS itself (so a byte-identity
10
+ * check against the constant is trivially true), 'light' returns the inverted
11
+ * chrome/accent variant tuned for legibility on a light terminal background.
12
+ *
13
+ * This module is PURE data — no fs, no terminal I/O, no process globals.
14
+ * Painting stays renderer-owned; this module owns only the token values and
15
+ * the mode-resolution function.
16
+ */
17
+ /** Background mode — dark is the safe default until a caller's own bg-probe lands. */
18
+ export type ThemeMode = 'dark' | 'light';
19
+ /** The dark-mode (reference) tone-token table. */
20
+ export declare const TONE_TOKENS: {
21
+ readonly fg: {
22
+ readonly primary: "#e2e8f0";
23
+ readonly secondary: "#cbd5e1";
24
+ readonly muted: "#94a3b8";
25
+ readonly dim: "#475569";
26
+ readonly inverse: "#0f172a";
27
+ /** Empty-state / placeholder foreground. */
28
+ readonly empty: "#334155";
29
+ };
30
+ readonly bg: {
31
+ readonly base: "#11131a";
32
+ readonly surface: "#161a22";
33
+ readonly title: "#0f172a";
34
+ readonly section: "#18202b";
35
+ readonly summary: "#1b2430";
36
+ readonly selected: "#223049";
37
+ readonly input: "#1e293b";
38
+ readonly warning: "#2b2116";
39
+ readonly error: "#2a161b";
40
+ readonly success: "#14241b";
41
+ /** Fullscreen/shell footer background. */
42
+ readonly footer: "#111827";
43
+ };
44
+ readonly state: {
45
+ readonly info: "#38bdf8";
46
+ readonly good: "#22c55e";
47
+ readonly warn: "#f59e0b";
48
+ readonly bad: "#ef4444";
49
+ readonly blocked: "#f97316";
50
+ readonly active: "#60a5fa";
51
+ /** Canonical reasoning/thinking purple. */
52
+ readonly reasoning: "#a855f7";
53
+ };
54
+ readonly accent: {
55
+ readonly browser: "#7dd3fc";
56
+ readonly control: "#22d3ee";
57
+ readonly inspector: "#c4b5fd";
58
+ readonly workflow: "#fbbf24";
59
+ readonly conversation: "#93c5fd";
60
+ /** Neon brand accent — header/splash/thinking gradient only. */
61
+ readonly brand: "#00ffff";
62
+ readonly gradientStart: "#00ffff";
63
+ readonly gradientEnd: "#d000ff";
64
+ };
65
+ /** Canonical border stroke color for fullscreen/panel chrome. */
66
+ readonly border: "#64748b";
67
+ /**
68
+ * Persistent-chrome foregrounds — header / footer / live-thinking rows that
69
+ * paint onto the TRANSPARENT terminal background (bg:''), NOT onto the
70
+ * opaque dark modal/panel surfaces that fg.* and state.* serve. In light
71
+ * mode this chrome sits on a light terminal and must invert toward dark to
72
+ * stay legible, which is why it carries its own role instead of reusing
73
+ * fg.muted/fg.dim (tuned light-on-dark for the opaque boxes). Dark values
74
+ * here are byte-identical to the tokens they mirror (fg.muted, fg.dim,
75
+ * state.warn, state.bad), so dark-mode chrome is unchanged by this table
76
+ * existing.
77
+ */
78
+ readonly chrome: {
79
+ /** Secondary chrome text (header conversation title). == fg.muted (dark). */
80
+ readonly label: "#94a3b8";
81
+ /** Faint chrome text (version, provider, header rule, clean git). == fg.dim (dark). */
82
+ readonly faint: "#475569";
83
+ /** Warn accent on terminal bg (dirty git, pending risk). == state.warn (dark). */
84
+ readonly warn: "#f59e0b";
85
+ /** Alert accent on terminal bg (DANGER banner, shell risk). == state.bad (dark). */
86
+ readonly bad: "#ef4444";
87
+ /** Success accent on terminal bg (tool-call checkmark status). == state.good (dark). */
88
+ readonly good: "#22c55e";
89
+ /** Remote-risk accent on terminal bg (risk:remote marker, plain status). */
90
+ readonly remote: "#a78bfa";
91
+ };
92
+ };
93
+ /**
94
+ * Diff surface accent color shared across diff-rendering surfaces (conversation
95
+ * diff view, file diff panel, git panel inline diff).
96
+ */
97
+ export declare const DIFF_TONES: {
98
+ readonly add: "#00ff88";
99
+ readonly del: "#ff4444";
100
+ readonly hunk: "#88aaff";
101
+ };
102
+ /** Single spinner-frame source. */
103
+ export declare const SPINNER_FRAMES: readonly ["⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"];
104
+ /** Recursively widen the `as const` literal leaves of TONE_TOKENS to `string`
105
+ * so the light variant can assign different colour values without fighting
106
+ * TypeScript's literal-type inference. */
107
+ type DeepWidenToString<T> = T extends string ? string : {
108
+ [K in keyof T]: DeepWidenToString<T[K]>;
109
+ };
110
+ /** The mode-resolved shape returned by resolveTones — same keys as TONE_TOKENS,
111
+ * widened from literal string types to `string` so light values can differ. */
112
+ export type ToneTokens = DeepWidenToString<typeof TONE_TOKENS>;
113
+ /**
114
+ * resolveTones — return the tone-token table for the given background mode.
115
+ * 'dark' returns TONE_TOKENS itself (byte-identical, same object reference) so
116
+ * a consumer that has not wired mode detection can call resolveTones('dark')
117
+ * as the safe default with zero behavior change.
118
+ */
119
+ export declare function resolveTones(mode: ThemeMode): Readonly<ToneTokens>;
120
+ export {};
121
+ //# sourceMappingURL=tones.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tones.d.ts","sourceRoot":"","sources":["../../../src/platform/presentation/tones.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,sFAAsF;AACtF,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;AAEzC,kDAAkD;AAClD,eAAO,MAAM,WAAW;;;;;;;QAOpB,4CAA4C;;;;;;;;;;;;;;QAc5C,0CAA0C;;;;;;;;;;QAU1C,2CAA2C;;;;;;;;;QAS3C,gEAAgE;;;;;IAKlE,iEAAiE;;IAEjE;;;;;;;;;;OAUG;;QAED,6EAA6E;;QAE7E,uFAAuF;;QAEvF,kFAAkF;;QAElF,oFAAoF;;QAEpF,wFAAwF;;QAExF,4EAA4E;;;CAGtE,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,UAAU;;;;CAIb,CAAC;AAEX,mCAAmC;AACnC,eAAO,MAAM,cAAc,6DAA8D,CAAC;AAE1F;;0CAE0C;AAC1C,KAAK,iBAAiB,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC;AAEpG;+EAC+E;AAC/E,MAAM,MAAM,UAAU,GAAG,iBAAiB,CAAC,OAAO,WAAW,CAAC,CAAC;AAuC/D;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC,CAElE"}
@@ -0,0 +1,145 @@
1
+ /**
2
+ * tones.ts — the canonical UI tone-token table, hoisted from `goodvibes-tui`
3
+ * src/renderer/ui-primitives.ts (UI_TONES + DIFF_TONES + SPINNER_FRAMES) and
4
+ * src/renderer/theme.ts (resolveUiTones / UI_TONES_LIGHT).
5
+ *
6
+ * TONE_TOKENS mirrors the TUI's UI_TONES shape byte-for-byte (the TUI is the
7
+ * reference, and its dark values are the accepted baseline — this keeps a
8
+ * future TUI swap onto this module a no-op). resolveTones(mode) is the single
9
+ * mode-resolved read path: 'dark' returns TONE_TOKENS itself (so a byte-identity
10
+ * check against the constant is trivially true), 'light' returns the inverted
11
+ * chrome/accent variant tuned for legibility on a light terminal background.
12
+ *
13
+ * This module is PURE data — no fs, no terminal I/O, no process globals.
14
+ * Painting stays renderer-owned; this module owns only the token values and
15
+ * the mode-resolution function.
16
+ */
17
+ /** The dark-mode (reference) tone-token table. */
18
+ export const TONE_TOKENS = {
19
+ fg: {
20
+ primary: '#e2e8f0',
21
+ secondary: '#cbd5e1',
22
+ muted: '#94a3b8',
23
+ dim: '#475569',
24
+ inverse: '#0f172a',
25
+ /** Empty-state / placeholder foreground. */
26
+ empty: '#334155',
27
+ },
28
+ bg: {
29
+ base: '#11131a',
30
+ surface: '#161a22',
31
+ title: '#0f172a',
32
+ section: '#18202b',
33
+ summary: '#1b2430',
34
+ selected: '#223049',
35
+ input: '#1e293b',
36
+ warning: '#2b2116',
37
+ error: '#2a161b',
38
+ success: '#14241b',
39
+ /** Fullscreen/shell footer background. */
40
+ footer: '#111827',
41
+ },
42
+ state: {
43
+ info: '#38bdf8',
44
+ good: '#22c55e',
45
+ warn: '#f59e0b',
46
+ bad: '#ef4444',
47
+ blocked: '#f97316',
48
+ active: '#60a5fa',
49
+ /** Canonical reasoning/thinking purple. */
50
+ reasoning: '#a855f7',
51
+ },
52
+ accent: {
53
+ browser: '#7dd3fc',
54
+ control: '#22d3ee',
55
+ inspector: '#c4b5fd',
56
+ workflow: '#fbbf24',
57
+ conversation: '#93c5fd',
58
+ /** Neon brand accent — header/splash/thinking gradient only. */
59
+ brand: '#00ffff',
60
+ gradientStart: '#00ffff',
61
+ gradientEnd: '#d000ff',
62
+ },
63
+ /** Canonical border stroke color for fullscreen/panel chrome. */
64
+ border: '#64748b',
65
+ /**
66
+ * Persistent-chrome foregrounds — header / footer / live-thinking rows that
67
+ * paint onto the TRANSPARENT terminal background (bg:''), NOT onto the
68
+ * opaque dark modal/panel surfaces that fg.* and state.* serve. In light
69
+ * mode this chrome sits on a light terminal and must invert toward dark to
70
+ * stay legible, which is why it carries its own role instead of reusing
71
+ * fg.muted/fg.dim (tuned light-on-dark for the opaque boxes). Dark values
72
+ * here are byte-identical to the tokens they mirror (fg.muted, fg.dim,
73
+ * state.warn, state.bad), so dark-mode chrome is unchanged by this table
74
+ * existing.
75
+ */
76
+ chrome: {
77
+ /** Secondary chrome text (header conversation title). == fg.muted (dark). */
78
+ label: '#94a3b8',
79
+ /** Faint chrome text (version, provider, header rule, clean git). == fg.dim (dark). */
80
+ faint: '#475569',
81
+ /** Warn accent on terminal bg (dirty git, pending risk). == state.warn (dark). */
82
+ warn: '#f59e0b',
83
+ /** Alert accent on terminal bg (DANGER banner, shell risk). == state.bad (dark). */
84
+ bad: '#ef4444',
85
+ /** Success accent on terminal bg (tool-call checkmark status). == state.good (dark). */
86
+ good: '#22c55e',
87
+ /** Remote-risk accent on terminal bg (risk:remote marker, plain status). */
88
+ remote: '#a78bfa',
89
+ },
90
+ };
91
+ /**
92
+ * Diff surface accent color shared across diff-rendering surfaces (conversation
93
+ * diff view, file diff panel, git panel inline diff).
94
+ */
95
+ export const DIFF_TONES = {
96
+ add: '#00ff88',
97
+ del: '#ff4444',
98
+ hunk: '#88aaff',
99
+ };
100
+ /** Single spinner-frame source. */
101
+ export const SPINNER_FRAMES = ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'];
102
+ //
103
+ // Light variant — inverts the chrome group (and the two accents/state roles
104
+ // with no light-appropriate dark equivalent: state.info/reasoning,
105
+ // accent.brand/gradientStart/gradientEnd) toward dark-on-light legibility.
106
+ // Every other role has no light-specific value yet and is carried over from
107
+ // TONE_TOKENS unchanged (spread below) — this mirrors the TUI's UI_TONES_LIGHT
108
+ // exactly, including which roles it leaves untouched.
109
+ //
110
+ const TONE_TOKENS_LIGHT = {
111
+ ...TONE_TOKENS,
112
+ state: {
113
+ ...TONE_TOKENS.state,
114
+ info: '#0369a1',
115
+ reasoning: '#7c3aed',
116
+ },
117
+ accent: {
118
+ ...TONE_TOKENS.accent,
119
+ brand: '#0077aa',
120
+ gradientStart: '#0077aa',
121
+ gradientEnd: '#7c3aed',
122
+ },
123
+ chrome: {
124
+ ...TONE_TOKENS.chrome,
125
+ label: '#64748b',
126
+ faint: '#94a3b8',
127
+ warn: '#b45309',
128
+ bad: '#dc2626',
129
+ good: '#15803d',
130
+ remote: '#6d28d9',
131
+ },
132
+ };
133
+ Object.freeze(TONE_TOKENS_LIGHT.state);
134
+ Object.freeze(TONE_TOKENS_LIGHT.accent);
135
+ Object.freeze(TONE_TOKENS_LIGHT.chrome);
136
+ Object.freeze(TONE_TOKENS_LIGHT);
137
+ /**
138
+ * resolveTones — return the tone-token table for the given background mode.
139
+ * 'dark' returns TONE_TOKENS itself (byte-identical, same object reference) so
140
+ * a consumer that has not wired mode detection can call resolveTones('dark')
141
+ * as the safe default with zero behavior change.
142
+ */
143
+ export function resolveTones(mode) {
144
+ return mode === 'light' ? TONE_TOKENS_LIGHT : TONE_TOKENS;
145
+ }
@@ -0,0 +1,54 @@
1
+ /**
2
+ * waiting-wording.ts — the honest waiting-state WORDING contract, extracted
3
+ * from `goodvibes-tui` src/renderer/ui-factory.ts:554-584 (the phrase-selection
4
+ * branch inside createThinkingFragment; the companion :522-552
5
+ * computeStallInfo/computeRenderStallInfo signal computation stays
6
+ * renderer-local — each renderer has its own stream-metrics shape to derive
7
+ * a WaitingState from).
8
+ *
9
+ * The split this hoists is a DATA/pure-function contract: a renderer decides
10
+ * WHICH state it is in (from its own approval/stall/reconnect signals, in the
11
+ * TUI's precedence order — approval beats reconnect beats pre-first-token
12
+ * beats stalled beats thinking) and calls waitingPhrase(state, ctx) for the
13
+ * exact wording. Neither renderer should carry its own copy of these five
14
+ * strings/rotation — that duplication is exactly what the W4-R1 audit found
15
+ * (the agent's ui-factory.ts:308-313 was rotating-only, with no honest
16
+ * stall/reconnect/approval split at all).
17
+ *
18
+ * PURE — no fs, no terminal I/O, no timers. Gradient color, spinner glyph,
19
+ * tok/s and elapsed-time suffixes stay renderer-owned (ui-factory.ts's
20
+ * createThinkingFragment composes those around the phrase this returns).
21
+ */
22
+ /**
23
+ * The five honest waiting states, in the TUI's precedence order:
24
+ * - 'approval' — a card is waiting on the USER; the turn is not
25
+ * stalled and the provider is not at fault.
26
+ * - 'reconnecting' — the transport is retrying after a drop.
27
+ * - 'pre-first-token' — no delta yet this turn; normal for reasoning models
28
+ * that think before emitting (NOT "stalled" — that
29
+ * would wrongly blame the provider for ordinary
30
+ * pre-token latency).
31
+ * - 'stalled' — silence AFTER the stream had already started
32
+ * producing tokens.
33
+ * - 'thinking' — the ordinary case: tokens are flowing at a normal
34
+ * cadence, show a rotating whimsical phrase.
35
+ */
36
+ export type WaitingState = 'approval' | 'reconnecting' | 'pre-first-token' | 'stalled' | 'thinking';
37
+ /** Inputs waitingPhrase needs for the states that carry numbers. Fields
38
+ * unused by the selected state are ignored. */
39
+ export interface WaitingPhraseContext {
40
+ /** 'reconnecting' — the current retry attempt number. */
41
+ readonly reconnectAttempt?: number;
42
+ /** 'reconnecting' — the configured maximum retry attempts. */
43
+ readonly reconnectMaxAttempts?: number;
44
+ /** 'pre-first-token' / 'stalled' — elapsed silence since the last delta, in ms. */
45
+ readonly msSinceLastDelta?: number;
46
+ /** 'thinking' — the render frame counter driving the phrase rotation. */
47
+ readonly frame?: number;
48
+ }
49
+ /**
50
+ * waitingPhrase — the state -> wording mapping, golden-matched against the
51
+ * TUI's ui-factory.ts:554-584 output for identical inputs.
52
+ */
53
+ export declare function waitingPhrase(state: WaitingState, ctx?: WaitingPhraseContext): string;
54
+ //# sourceMappingURL=waiting-wording.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"waiting-wording.d.ts","sourceRoot":"","sources":["../../../src/platform/presentation/waiting-wording.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAQH;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,cAAc,GAAG,iBAAiB,GAAG,SAAS,GAAG,UAAU,CAAC;AAEpG;+CAC+C;AAC/C,MAAM,WAAW,oBAAoB;IACnC,yDAAyD;IACzD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,8DAA8D;IAC9D,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IACvC,mFAAmF;IACnF,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,yEAAyE;IACzE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,GAAE,oBAAyB,GAAG,MAAM,CAqBzF"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * waiting-wording.ts — the honest waiting-state WORDING contract, extracted
3
+ * from `goodvibes-tui` src/renderer/ui-factory.ts:554-584 (the phrase-selection
4
+ * branch inside createThinkingFragment; the companion :522-552
5
+ * computeStallInfo/computeRenderStallInfo signal computation stays
6
+ * renderer-local — each renderer has its own stream-metrics shape to derive
7
+ * a WaitingState from).
8
+ *
9
+ * The split this hoists is a DATA/pure-function contract: a renderer decides
10
+ * WHICH state it is in (from its own approval/stall/reconnect signals, in the
11
+ * TUI's precedence order — approval beats reconnect beats pre-first-token
12
+ * beats stalled beats thinking) and calls waitingPhrase(state, ctx) for the
13
+ * exact wording. Neither renderer should carry its own copy of these five
14
+ * strings/rotation — that duplication is exactly what the W4-R1 audit found
15
+ * (the agent's ui-factory.ts:308-313 was rotating-only, with no honest
16
+ * stall/reconnect/approval split at all).
17
+ *
18
+ * PURE — no fs, no terminal I/O, no timers. Gradient color, spinner glyph,
19
+ * tok/s and elapsed-time suffixes stay renderer-owned (ui-factory.ts's
20
+ * createThinkingFragment composes those around the phrase this returns).
21
+ */
22
+ import { THINKING_PHRASES } from './thinking-phrases.js';
23
+ /** Frame cadence the 'thinking' rotation advances at (frames tick at 80ms in
24
+ * the TUI, so ~30s per phrase) — the TUI's PHRASE_ROTATION_FRAMES verbatim. */
25
+ const PHRASE_ROTATION_FRAMES = 375;
26
+ /**
27
+ * waitingPhrase — the state -> wording mapping, golden-matched against the
28
+ * TUI's ui-factory.ts:554-584 output for identical inputs.
29
+ */
30
+ export function waitingPhrase(state, ctx = {}) {
31
+ switch (state) {
32
+ case 'approval':
33
+ // An approval card is waiting on the user — blame-free, precedence over
34
+ // stall/reconnect framing: waiting on the user is the true state.
35
+ return 'Waiting for your approval';
36
+ case 'reconnecting':
37
+ return `Reconnecting (attempt ${ctx.reconnectAttempt ?? 0}/${ctx.reconnectMaxAttempts ?? 0})...`;
38
+ case 'pre-first-token':
39
+ return `Waiting for model ${Math.floor((ctx.msSinceLastDelta ?? 0) / 1000)}s...`;
40
+ case 'stalled':
41
+ return `Stalled ${Math.floor((ctx.msSinceLastDelta ?? 0) / 1000)}s...`;
42
+ case 'thinking': {
43
+ const frame = ctx.frame ?? 0;
44
+ const phraseIndex = Math.floor(frame / PHRASE_ROTATION_FRAMES) % THINKING_PHRASES.length;
45
+ // phraseIndex is always in [0, THINKING_PHRASES.length) — the modulo above
46
+ // guarantees an in-bounds index; the non-null assertion only satisfies
47
+ // noUncheckedIndexedAccess and is never actually unsound.
48
+ return THINKING_PHRASES[phraseIndex];
49
+ }
50
+ }
51
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-snapshot.d.ts","sourceRoot":"","sources":["../../../src/platform/providers/runtime-snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,KAAK,EAAmB,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAGvE,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjB,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;QACvC,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC;QACxC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC;KAC1B,CAAC;CACH;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,uBAAuB,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,SAAS,qBAAqB,EAAE,CAAC;CACnD;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,uBAAuB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACtD,QAAQ,CAAC,aAAa,EAAE,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;IACxD,QAAQ,CAAC,MAAM,EAAE,SAAS,qBAAqB,EAAE,CAAC;IAClD,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC;CAC/D;AAiED,wBAAsB,4BAA4B,CAChD,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,eAAe,GAAG,eAAe,GAAG,iBAAiB,GAAG,YAAY,GAAG,oBAAoB,GAAG,oBAAoB,GAAG,iBAAiB,CAAC,GAC/K,OAAO,CAAC,SAAS,uBAAuB,EAAE,CAAC,CAG7C;AAED,wBAAsB,0BAA0B,CAC9C,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,eAAe,GAAG,iBAAiB,GAAG,YAAY,GAAG,oBAAoB,GAAG,oBAAoB,GAAG,iBAAiB,CAAC,EAC9J,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAEzC;AAED,wBAAsB,wBAAwB,CAC5C,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,eAAe,GAAG,iBAAiB,GAAG,YAAY,GAAG,oBAAoB,GAAG,oBAAoB,GAAG,iBAAiB,CAAC,EAC9J,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAiBvC"}
1
+ {"version":3,"file":"runtime-snapshot.d.ts","sourceRoot":"","sources":["../../../src/platform/providers/runtime-snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,KAAK,EAAmB,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAGvE,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjB,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;QACvC,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC;QACxC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC;KAC1B,CAAC;CACH;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,uBAAuB,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,SAAS,qBAAqB,EAAE,CAAC;CACnD;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,uBAAuB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACtD,QAAQ,CAAC,aAAa,EAAE,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;IACxD,QAAQ,CAAC,MAAM,EAAE,SAAS,qBAAqB,EAAE,CAAC;IAClD,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC;CAC/D;AA0ED,wBAAsB,4BAA4B,CAChD,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,eAAe,GAAG,eAAe,GAAG,iBAAiB,GAAG,YAAY,GAAG,oBAAoB,GAAG,oBAAoB,GAAG,iBAAiB,CAAC,GAC/K,OAAO,CAAC,SAAS,uBAAuB,EAAE,CAAC,CAG7C;AAED,wBAAsB,0BAA0B,CAC9C,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,eAAe,GAAG,iBAAiB,GAAG,YAAY,GAAG,oBAAoB,GAAG,oBAAoB,GAAG,iBAAiB,CAAC,EAC9J,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAEzC;AAED,wBAAsB,wBAAwB,CAC5C,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,eAAe,GAAG,iBAAiB,GAAG,YAAY,GAAG,oBAAoB,GAAG,oBAAoB,GAAG,iBAAiB,CAAC,EAC9J,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAiBvC"}
@@ -41,14 +41,24 @@ async function buildSnapshotForProvider(providerRegistry, providerId) {
41
41
  models: { models: provider.models },
42
42
  usage: { streaming: true, toolCalling: true, parallelTools: false },
43
43
  };
44
- const currentModel = providerRegistry.getCurrentModel();
44
+ // Read-only display path: never let an unresolved current model (e.g. a fresh
45
+ // isolated home whose pricing catalog has not hydrated, so the configured
46
+ // default has no materialized definition) turn this snapshot into a 500. Treat
47
+ // an unresolvable current model as "no provider is active" rather than throwing.
48
+ let currentModel;
49
+ try {
50
+ currentModel = providerRegistry.getCurrentModel();
51
+ }
52
+ catch {
53
+ currentModel = null;
54
+ }
45
55
  const models = providerRegistry
46
56
  .listModels()
47
57
  .filter((model) => model.provider === providerId)
48
58
  .map((model) => toModelSnapshot(model, providerRegistry));
49
59
  return {
50
60
  providerId,
51
- active: currentModel.provider === providerId,
61
+ active: currentModel?.provider === providerId,
52
62
  modelCount: models.length,
53
63
  runtime: resolvedRuntime,
54
64
  models,
@@ -16,8 +16,49 @@ interface HttpListenerService {
16
16
  start(): Promise<void>;
17
17
  stop(): Promise<void>;
18
18
  }
19
+ /**
20
+ * Options passed to the injectable detached-daemon spawn seam. Mirrors the subset
21
+ * of `child_process.SpawnOptions` the detached spawn relies on. `detached: true`
22
+ * and the caller's subsequent `unref()` are what let the daemon outlive this
23
+ * surface — tests assert both are present.
24
+ */
25
+ export interface DetachedDaemonSpawnOptions {
26
+ readonly detached: boolean;
27
+ readonly stdio: 'ignore' | ReadonlyArray<'ignore' | number>;
28
+ readonly cwd?: string | undefined;
29
+ readonly env?: NodeJS.ProcessEnv | undefined;
30
+ }
31
+ /** Minimal child-process shape the detached spawn seam must return. */
32
+ export interface DetachedDaemonChild {
33
+ readonly pid?: number | undefined;
34
+ unref(): void;
35
+ once?(event: 'error' | 'exit', listener: (arg: unknown) => void): void;
36
+ }
37
+ /** One-time hint surfaced ONCE by the TUI after a successful detached spawn. */
38
+ export declare const DETACHED_DAEMON_INSTALL_HINT = "daemon started for this session \u2014 install it as a service so it survives reboots: POST /api/service/install on the daemon HTTP API (admin token required)";
19
39
  interface ServiceFactories {
20
40
  createDaemonServer?: (runtimeBus: RuntimeEventBus, userAuth: RuntimeServices['localUserAuthManager'], runtimeServices: RuntimeServices) => DaemonService;
41
+ /**
42
+ * Injectable spawn seam for the detached standalone daemon (Layer 2 default).
43
+ * Defaults to `child_process.spawn`. Tests stub this to assert that detached
44
+ * spawn — not in-process embedding — is chosen by default, and that the options
45
+ * carry `detached: true` (the caller then `unref()`s the returned child).
46
+ */
47
+ spawnDetachedDaemon?: (command: string, args: readonly string[], options: DetachedDaemonSpawnOptions) => DetachedDaemonChild;
48
+ /** Command used to launch the detached daemon. Default: `GOODVIBES_DAEMON_BINARY` env or `goodvibes-daemon`. */
49
+ daemonLaunchCommand?: string | undefined;
50
+ /** Extra CLI args appended after the resolved `--daemon-home/--hostname/--port` flags. */
51
+ daemonLaunchArgs?: readonly string[] | undefined;
52
+ /** Daemon home directory passed via `--daemon-home`. Default: `os.homedir()`. */
53
+ daemonHomeDir?: string | undefined;
54
+ /** Directory where the detached daemon records pid/port + log. Default `<daemonHomeDir>/.goodvibes/daemon`. */
55
+ daemonRuntimeDir?: string | undefined;
56
+ /** Bounded time to wait for the detached daemon to bind + pass the identity probe. */
57
+ detachedSpawnProbeTimeoutMs?: number | undefined;
58
+ /** Poll interval while waiting for the detached daemon to become reachable. */
59
+ detachedSpawnProbeIntervalMs?: number | undefined;
60
+ /** Sleep function (injectable so tests drive the probe loop deterministically). */
61
+ sleep?: ((ms: number) => Promise<void>) | undefined;
21
62
  createHttpListener?: (hookDispatcher: HookDispatcher, userAuth: RuntimeServices['localUserAuthManager'], configManager: RuntimeServices['configManager']) => HttpListenerService;
22
63
  startupTimeoutMs?: number | undefined;
23
64
  probeDaemonPortInUse?: ((host: string, port: number) => Promise<boolean>) | undefined;
@@ -37,8 +78,20 @@ interface ServiceFactories {
37
78
  * different tokens, or both may share the same bearer.
38
79
  */
39
80
  sharedHttpListenerToken?: string | undefined;
81
+ /**
82
+ * This surface's own SDK version, used to band-check a daemon found on the
83
+ * configured port before adopting it. Defaults to the SDK `VERSION`. Injected
84
+ * mainly so tests can drive the compatibility gate deterministically.
85
+ */
86
+ localDaemonVersion?: string | undefined;
87
+ /**
88
+ * Override for the version-compatibility predicate. Defaults to the shared
89
+ * `isDaemonVersionCompatible` band policy. Tests inject a stub to exercise the
90
+ * incompatible-adoption refusal without constructing skewed daemons.
91
+ */
92
+ isDaemonVersionCompatible?: ((localVersion: string, remoteVersion: string | undefined) => boolean) | undefined;
40
93
  }
41
- export type HostServiceMode = 'disabled' | 'embedded' | 'external' | 'blocked' | 'unavailable';
94
+ export type HostServiceMode = 'disabled' | 'embedded' | 'external' | 'blocked' | 'incompatible' | 'unavailable';
42
95
  export interface HostServiceStatus {
43
96
  readonly mode: HostServiceMode;
44
97
  readonly host: string;
@@ -60,11 +113,18 @@ export interface HostServicesHandle {
60
113
  readonly httpListener: HttpListenerService | null;
61
114
  readonly daemonStatus: HostServiceStatus;
62
115
  readonly httpListenerStatus: HostServiceStatus;
116
+ /**
117
+ * One-time, honest hint the surface can display ONCE after this host instance
118
+ * spawned a detached daemon for the session. Present only when a detached
119
+ * daemon was just started (Layer 2); undefined when a daemon was adopted,
120
+ * embedded, disabled, or unavailable. See {@link DETACHED_DAEMON_INSTALL_HINT}.
121
+ */
122
+ readonly daemonStartHint?: string | undefined;
63
123
  listRecentControlPlaneEvents(limit: number): readonly import('../control-plane/gateway.js').ControlPlaneRecentEvent[];
64
124
  stop(): Promise<void>;
65
125
  }
66
126
  export interface HostServicesConfig {
67
- get(key: 'danger.daemon' | 'danger.httpListener' | 'controlPlane.host' | 'controlPlane.port' | 'httpListener.host' | 'httpListener.port'): boolean | string | number;
127
+ get(key: 'daemon.enabled' | 'daemon.embedInProcess' | 'danger.httpListener' | 'controlPlane.host' | 'controlPlane.port' | 'httpListener.host' | 'httpListener.port'): boolean | string | number | undefined;
68
128
  }
69
129
  export declare function startHostServices(config: HostServicesConfig, runtimeBus: RuntimeEventBus, hookDispatcher: HookDispatcher, runtimeServices: RuntimeServices, factories?: ServiceFactories): Promise<HostServicesHandle>;
70
130
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap-services.d.ts","sourceRoot":"","sources":["../../../src/platform/runtime/bootstrap-services.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bootstrap-services.d.ts","sourceRoot":"","sources":["../../../src/platform/runtime/bootstrap-services.ts"],"names":[],"mappings":"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"}