@pellux/goodvibes-tui 1.27.1 → 2.0.1

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 (405) hide show
  1. package/CHANGELOG.md +116 -2
  2. package/README.md +7 -9
  3. package/bin/goodvibes +2 -2
  4. package/bin/launcher-support.js +8 -4
  5. package/docs/README.md +11 -2
  6. package/docs/foundation-artifacts/operator-contract.json +6403 -2347
  7. package/package.json +14 -25
  8. package/scripts/postinstall.js +35 -35
  9. package/src/audio/spoken-turn-model-routing.ts +1 -1
  10. package/src/cli/bundle-command.ts +5 -5
  11. package/src/cli/completions/generate.ts +1 -1
  12. package/src/cli/doctor.ts +3 -3
  13. package/src/cli/entrypoint.ts +12 -7
  14. package/src/cli/help.ts +4 -5
  15. package/src/cli/hooks-command.ts +1 -1
  16. package/src/cli/index.ts +1 -4
  17. package/src/cli/launch-auto-update.ts +59 -7
  18. package/src/cli/management-commands.ts +6 -6
  19. package/src/cli/management-utils.ts +5 -5
  20. package/src/cli/management.ts +7 -7
  21. package/src/cli/network-posture.ts +1 -1
  22. package/src/cli/package-verification.ts +7 -6
  23. package/src/cli/plugin-bundles-command.ts +1 -1
  24. package/src/cli/plugin-command.ts +2 -2
  25. package/src/cli/service-command.ts +2 -2
  26. package/src/cli/service-posture.ts +4 -4
  27. package/src/cli/status.ts +9 -8
  28. package/src/cli/surface-command.ts +4 -4
  29. package/src/cli/tui-startup.ts +3 -3
  30. package/src/cli-flags.ts +3 -3
  31. package/src/config/goodvibes-home-audit.ts +0 -2
  32. package/src/config/secret-config.ts +37 -5
  33. package/src/config/tui-extension-settings.ts +1 -1
  34. package/src/core/approval-alert.ts +2 -2
  35. package/src/core/budget-breach-notifier.ts +3 -3
  36. package/src/core/conversation-compaction-render.ts +1 -1
  37. package/src/core/conversation-line-cache.ts +1 -1
  38. package/src/core/conversation-render-context.ts +1 -1
  39. package/src/core/conversation-rendering.ts +2 -2
  40. package/src/core/conversation.ts +10 -10
  41. package/src/core/long-task-notifier.ts +2 -2
  42. package/src/core/memory-diagnostics-gateway.ts +1 -1
  43. package/src/core/scriptable-statusline.ts +1 -1
  44. package/src/core/session-auto-titler.ts +1 -1
  45. package/src/core/session-resume-core.ts +2 -2
  46. package/src/core/stream-event-wiring.ts +24 -44
  47. package/src/core/terminal-notifier.ts +3 -3
  48. package/src/core/turn-cancellation.ts +1 -1
  49. package/src/core/turn-event-wiring.ts +5 -5
  50. package/src/input/command-registry.ts +6 -6
  51. package/src/input/commands/channel-pairing.ts +1 -1
  52. package/src/input/commands/cluster-runtime.ts +1 -1
  53. package/src/input/commands/codebase-runtime.ts +1 -1
  54. package/src/input/commands/devices-runtime.ts +1 -1
  55. package/src/input/commands/hosted-runtime.ts +330 -0
  56. package/src/input/commands/local-setup-review.ts +1 -1
  57. package/src/input/commands/local-setup-transfer.ts +2 -2
  58. package/src/input/commands/local-setup.ts +3 -3
  59. package/src/input/commands/managed-runtime.ts +2 -2
  60. package/src/input/commands/operator-rpc.ts +24 -110
  61. package/src/input/commands/payment-card-intake.ts +1 -1
  62. package/src/input/commands/permissions-provenance.ts +2 -2
  63. package/src/input/commands/plugin-runtime.ts +1 -1
  64. package/src/input/commands/provider.ts +1 -1
  65. package/src/input/commands/relay-runtime.ts +18 -9
  66. package/src/input/commands/rewind-runtime.ts +1 -1
  67. package/src/input/commands/runtime-services.ts +1 -1
  68. package/src/input/commands/services-runtime.ts +1 -1
  69. package/src/input/commands/session-workflow.ts +1 -1
  70. package/src/input/commands/settings-sync-runtime.ts +2 -2
  71. package/src/input/commands/share-runtime.ts +1 -1
  72. package/src/input/commands/tasks-runtime.ts +145 -55
  73. package/src/input/commands/update-runtime.ts +31 -28
  74. package/src/input/commands/work-plan-runtime.ts +2 -2
  75. package/src/input/commands/workstream-attempts.ts +1 -1
  76. package/src/input/commands/workstream-runtime.ts +2 -2
  77. package/src/input/commands.ts +2 -0
  78. package/src/input/feature-unit-layout.ts +1 -1
  79. package/src/input/feed-context-factory.ts +3 -3
  80. package/src/input/handler-content-actions.ts +2 -2
  81. package/src/input/handler-feed-routes.ts +1 -1
  82. package/src/input/handler-feed.ts +3 -3
  83. package/src/input/handler-modal-token-routes.ts +1 -1
  84. package/src/input/handler-onboarding-daemon-adopt.ts +3 -2
  85. package/src/input/handler-onboarding.ts +1 -1
  86. package/src/input/handler-types.ts +2 -2
  87. package/src/input/handler-ui-state.ts +1 -1
  88. package/src/input/handler.ts +4 -4
  89. package/src/input/input-history.ts +1 -1
  90. package/src/input/onboarding/onboarding-feature-units.ts +2 -2
  91. package/src/input/onboarding/onboarding-runtime-status.ts +15 -1
  92. package/src/input/onboarding/onboarding-wizard-apply.ts +17 -8
  93. package/src/input/onboarding/onboarding-wizard-cloudflare-step.ts +5 -3
  94. package/src/input/onboarding/onboarding-wizard-external-surfaces.ts +1 -1
  95. package/src/input/onboarding/onboarding-wizard-types.ts +1 -1
  96. package/src/input/payments-config.ts +6 -6
  97. package/src/input/search.ts +1 -1
  98. package/src/input/session-picker-modal.ts +46 -0
  99. package/src/input/settings-modal-activation.ts +1 -1
  100. package/src/input/settings-modal-behavior.ts +4 -4
  101. package/src/input/settings-modal-commit.ts +11 -0
  102. package/src/input/settings-modal-data.ts +13 -80
  103. package/src/input/settings-modal-mutations.ts +33 -0
  104. package/src/input/settings-modal-secrets.ts +34 -0
  105. package/src/input/settings-modal-subscriptions.ts +1 -1
  106. package/src/input/settings-modal-types.ts +15 -1
  107. package/src/input/settings-modal.ts +28 -3
  108. package/src/input/worktree-setup-config.ts +1 -1
  109. package/src/main.ts +11 -9
  110. package/src/panels/agent-inspector-shared.ts +2 -2
  111. package/src/panels/base-panel.ts +2 -2
  112. package/src/panels/builtin/operations.ts +6 -8
  113. package/src/panels/builtin/session.ts +17 -0
  114. package/src/panels/builtin/shared.ts +5 -5
  115. package/src/panels/builtin-modals.ts +3 -3
  116. package/src/panels/confirm-state.ts +1 -1
  117. package/src/panels/cost-tracker-panel.ts +4 -4
  118. package/src/panels/diff-panel.ts +2 -2
  119. package/src/panels/diff-review-panel.ts +2 -2
  120. package/src/panels/expandable-list-panel.ts +2 -2
  121. package/src/panels/fleet-acts.ts +1 -1
  122. package/src/panels/fleet-observed-render.ts +1 -1
  123. package/src/panels/fleet-panel-format.ts +1 -1
  124. package/src/panels/fleet-panel.ts +1 -1
  125. package/src/panels/fleet-spawn.ts +1 -1
  126. package/src/panels/fleet-steer.ts +1 -1
  127. package/src/panels/fleet-transcript.ts +1 -1
  128. package/src/panels/git-panel.ts +1 -1
  129. package/src/panels/hosted-session-feed.ts +352 -0
  130. package/src/panels/hosted-session-panel.ts +221 -0
  131. package/src/panels/local-auth-panel.ts +3 -3
  132. package/src/panels/modals/devices-modal.ts +1 -1
  133. package/src/panels/modals/local-auth-modal.ts +1 -1
  134. package/src/panels/modals/pairing-modal.ts +1 -1
  135. package/src/panels/modals/services-modal.ts +1 -1
  136. package/src/panels/modals/settings-sync-modal.ts +1 -1
  137. package/src/panels/modals/subscription-modal.ts +1 -1
  138. package/src/panels/modals/work-plan-modal.ts +1 -1
  139. package/src/panels/notifications-panel.ts +1 -1
  140. package/src/panels/panel-confirm-overlay.ts +1 -1
  141. package/src/panels/plugins-panel.ts +2 -2
  142. package/src/panels/polish-core.ts +2 -2
  143. package/src/panels/polish-tables.ts +1 -1
  144. package/src/panels/polish.ts +2 -2
  145. package/src/panels/scrollable-list-panel.ts +3 -3
  146. package/src/panels/skills-panel.ts +3 -3
  147. package/src/panels/token-budget-panel.ts +5 -5
  148. package/src/panels/types.ts +1 -2
  149. package/src/permissions/prompt.ts +1 -1
  150. package/src/renderer/autocomplete-overlay.ts +1 -1
  151. package/src/renderer/block-actions-overlay.ts +1 -1
  152. package/src/renderer/bookmark-modal.ts +1 -1
  153. package/src/renderer/buffer.ts +1 -1
  154. package/src/renderer/code-block.ts +1 -1
  155. package/src/renderer/composer-fragments.ts +1 -1
  156. package/src/renderer/compositor.ts +2 -2
  157. package/src/renderer/config-modal.ts +1 -1
  158. package/src/renderer/context-inspector.ts +1 -1
  159. package/src/renderer/conversation-layout.ts +2 -2
  160. package/src/renderer/conversation-overlays.ts +1 -1
  161. package/src/renderer/conversation-surface.ts +2 -2
  162. package/src/renderer/diff-view.ts +1 -1
  163. package/src/renderer/diff.ts +1 -1
  164. package/src/renderer/file-picker-overlay.ts +1 -1
  165. package/src/renderer/fleet-tab-strip.ts +1 -1
  166. package/src/renderer/fullscreen-primitives.ts +2 -2
  167. package/src/renderer/fullscreen-workspace.ts +1 -1
  168. package/src/renderer/header-line.ts +1 -1
  169. package/src/renderer/help-overlay.ts +1 -1
  170. package/src/renderer/history-search-overlay.ts +2 -2
  171. package/src/renderer/layout.ts +5 -8
  172. package/src/renderer/markdown-inline.ts +1 -1
  173. package/src/renderer/markdown-table.ts +1 -1
  174. package/src/renderer/markdown.ts +1 -1
  175. package/src/renderer/mcp-workspace.ts +1 -1
  176. package/src/renderer/modal-factory.ts +2 -2
  177. package/src/renderer/model-workspace.ts +2 -2
  178. package/src/renderer/onboarding/onboarding-wizard.ts +1 -1
  179. package/src/renderer/overlay-box.ts +1 -1
  180. package/src/renderer/panel-composite.ts +1 -1
  181. package/src/renderer/panel-workspace-bar.ts +1 -1
  182. package/src/renderer/process-indicator.ts +1 -1
  183. package/src/renderer/profile-picker-modal.ts +1 -1
  184. package/src/renderer/search-overlay.ts +2 -2
  185. package/src/renderer/selection-modal-overlay.ts +1 -1
  186. package/src/renderer/session-picker-modal.ts +124 -3
  187. package/src/renderer/settings-modal-helpers.ts +2 -0
  188. package/src/renderer/settings-modal.ts +2 -2
  189. package/src/renderer/shell-surface.ts +2 -2
  190. package/src/renderer/system-message.ts +1 -1
  191. package/src/renderer/tab-strip.ts +1 -1
  192. package/src/renderer/theme-mode-config.ts +1 -1
  193. package/src/renderer/theme.ts +11 -12
  194. package/src/renderer/thinking.ts +1 -1
  195. package/src/renderer/tool-call.ts +2 -2
  196. package/src/renderer/tool-result-expanded-lines.ts +1 -1
  197. package/src/renderer/turn-injection.ts +7 -8
  198. package/src/renderer/ui-factory.ts +3 -3
  199. package/src/runtime/bootstrap-command-context.ts +4 -4
  200. package/src/runtime/bootstrap-command-parts.ts +5 -5
  201. package/src/runtime/bootstrap-core.ts +30 -30
  202. package/src/runtime/bootstrap-shell.ts +4 -4
  203. package/src/runtime/bootstrap.ts +128 -157
  204. package/src/runtime/client/approval-updates.ts +82 -0
  205. package/src/runtime/client/build-floors.ts +167 -0
  206. package/src/runtime/client/daemon-attach-handshake.ts +115 -0
  207. package/src/runtime/client/fleet-union.ts +147 -0
  208. package/src/runtime/client/host-service-status.ts +71 -0
  209. package/src/runtime/client/hosted-exit.ts +86 -0
  210. package/src/runtime/client/hosted-roster.ts +110 -0
  211. package/src/runtime/client/hosted-session-stream.ts +178 -0
  212. package/src/runtime/client/hosted-sessions.ts +187 -0
  213. package/src/runtime/client/operator-endpoint.ts +213 -0
  214. package/src/runtime/client/spine-adoption.ts +99 -0
  215. package/src/runtime/cloudflare-control-plane.ts +1 -1
  216. package/src/runtime/context-accounting-source.ts +1 -1
  217. package/src/runtime/context.ts +2 -2
  218. package/src/runtime/conversation-rewind-port.ts +42 -14
  219. package/src/runtime/daemon-attach-notices.ts +55 -19
  220. package/src/runtime/diagnostics/panels/ops.ts +1 -1
  221. package/src/runtime/disposal-wiring.ts +4 -24
  222. package/src/runtime/index.ts +119 -105
  223. package/src/runtime/install-self-check-startup.ts +2 -2
  224. package/src/runtime/interaction-seams.ts +1 -1
  225. package/src/runtime/knowledge-services.ts +8 -2
  226. package/src/runtime/legacy-daemon-migration.ts +4 -3
  227. package/src/runtime/legacy-daemon-reconcile.ts +3 -2
  228. package/src/runtime/memory-spine-transport.ts +37 -267
  229. package/src/runtime/notification-dispatch.ts +2 -2
  230. package/src/runtime/onboarding/apply.ts +2 -2
  231. package/src/runtime/onboarding/derivation.ts +2 -2
  232. package/src/runtime/onboarding/markers.ts +2 -2
  233. package/src/runtime/onboarding/progress.ts +2 -2
  234. package/src/runtime/onboarding/snapshot.ts +1 -1
  235. package/src/runtime/onboarding/state.ts +2 -2
  236. package/src/runtime/onboarding/types.ts +2 -2
  237. package/src/runtime/orchestrator-core-services.ts +1 -1
  238. package/src/runtime/path-shadow-startup.ts +28 -221
  239. package/src/runtime/power-keepawake-remote.ts +3 -2
  240. package/src/runtime/process-lifecycle.ts +2 -2
  241. package/src/runtime/provider-fallback.ts +10 -66
  242. package/src/runtime/recovery-autosave.ts +1 -1
  243. package/src/runtime/recovery-offer-wiring.ts +39 -23
  244. package/src/runtime/recovery-prompt.ts +31 -17
  245. package/src/runtime/relay-reachability-bridge.ts +53 -42
  246. package/src/runtime/release-artifacts.ts +2 -1
  247. package/src/runtime/runtime-services-types.ts +82 -35
  248. package/src/runtime/services.ts +305 -300
  249. package/src/runtime/session-resume-liveness-confirm.ts +1 -1
  250. package/src/runtime/ui-services.ts +7 -6
  251. package/src/runtime/update-check.ts +23 -43
  252. package/src/runtime/workspace-checkpointing.ts +1 -1
  253. package/src/runtime/wrfc-persistence.ts +2 -2
  254. package/src/shell/ui-openers.ts +30 -7
  255. package/src/utils/clipboard.ts +1 -1
  256. package/src/verification/verification-ledger.ts +10 -8
  257. package/src/version.ts +1 -1
  258. package/bin/goodvibes-daemon +0 -90
  259. package/src/cli/config-overrides.ts +0 -267
  260. package/src/cli/endpoints.ts +0 -109
  261. package/src/cli/parser.ts +0 -395
  262. package/src/cli/redaction.ts +0 -170
  263. package/src/cli/types.ts +0 -84
  264. package/src/cluster/commands.ts +0 -382
  265. package/src/cluster/remote-daemon-target.ts +0 -225
  266. package/src/cluster/render.ts +0 -268
  267. package/src/config/atomic-write.ts +0 -70
  268. package/src/config/credential-availability.ts +0 -122
  269. package/src/config/goodvibes-home.ts +0 -149
  270. package/src/config/index.ts +0 -88
  271. package/src/config/provider-model.ts +0 -23
  272. package/src/config/read-versioned.ts +0 -228
  273. package/src/core/alert-gating.ts +0 -67
  274. package/src/core/consolidation-receipt.ts +0 -41
  275. package/src/core/focus-tracker.ts +0 -41
  276. package/src/core/history.ts +0 -45
  277. package/src/core/memory-status.ts +0 -118
  278. package/src/core/orchestrator.ts +0 -7
  279. package/src/core/pairing-devices.ts +0 -49
  280. package/src/core/pairing-handoff.ts +0 -101
  281. package/src/core/pairing-offers.ts +0 -83
  282. package/src/core/pairing-origin.ts +0 -78
  283. package/src/core/rewind-turn-anchors.ts +0 -311
  284. package/src/core/session-recovery.ts +0 -210
  285. package/src/core/stable-host.ts +0 -171
  286. package/src/core/transcript-journal.ts +0 -503
  287. package/src/daemon/cli.ts +0 -693
  288. package/src/daemon/fatal-boot-report.ts +0 -111
  289. package/src/daemon/handlers/context.ts +0 -29
  290. package/src/daemon/handlers/contracts.ts +0 -77
  291. package/src/daemon/handlers/credentials.ts +0 -139
  292. package/src/daemon/handlers/drafts/draft-store.ts +0 -427
  293. package/src/daemon/handlers/drafts/index.ts +0 -17
  294. package/src/daemon/handlers/drafts/register.ts +0 -331
  295. package/src/daemon/handlers/errors.ts +0 -18
  296. package/src/daemon/handlers/inbox/cursor-store.ts +0 -457
  297. package/src/daemon/handlers/inbox/index.ts +0 -284
  298. package/src/daemon/handlers/inbox/mapping.ts +0 -192
  299. package/src/daemon/handlers/inbox/poller.ts +0 -212
  300. package/src/daemon/handlers/inbox/provider-adapter.ts +0 -156
  301. package/src/daemon/handlers/inbox/providers/discord.ts +0 -252
  302. package/src/daemon/handlers/inbox/providers/email.ts +0 -152
  303. package/src/daemon/handlers/inbox/providers/imap-client.ts +0 -300
  304. package/src/daemon/handlers/inbox/providers/route-util.ts +0 -24
  305. package/src/daemon/handlers/inbox/providers/slack.ts +0 -263
  306. package/src/daemon/handlers/index.ts +0 -117
  307. package/src/daemon/handlers/register.ts +0 -168
  308. package/src/daemon/handlers/remote/backends/cloud-terminal.ts +0 -142
  309. package/src/daemon/handlers/remote/backends/docker.ts +0 -79
  310. package/src/daemon/handlers/remote/backends/index.ts +0 -40
  311. package/src/daemon/handlers/remote/backends/local-process.ts +0 -113
  312. package/src/daemon/handlers/remote/backends/process-runner.ts +0 -127
  313. package/src/daemon/handlers/remote/backends/ssh.ts +0 -125
  314. package/src/daemon/handlers/remote/backends/types.ts +0 -97
  315. package/src/daemon/handlers/remote/dispatcher.ts +0 -181
  316. package/src/daemon/handlers/remote/index.ts +0 -119
  317. package/src/daemon/handlers/remote/peer-registry.ts +0 -357
  318. package/src/daemon/handlers/remote/service.ts +0 -191
  319. package/src/daemon/handlers/routing/inbox-bridge.ts +0 -71
  320. package/src/daemon/handlers/routing/index.ts +0 -261
  321. package/src/daemon/handlers/routing/route-store.ts +0 -319
  322. package/src/daemon/handlers/routing/routing-resolver.ts +0 -75
  323. package/src/daemon/handlers/sqlite-store.ts +0 -278
  324. package/src/daemon/handlers/triage/index.ts +0 -57
  325. package/src/daemon/handlers/triage/integration.ts +0 -213
  326. package/src/daemon/handlers/triage/pipeline.ts +0 -274
  327. package/src/daemon/handlers/triage/scorer.ts +0 -287
  328. package/src/daemon/handlers/triage/tagger/discord.ts +0 -187
  329. package/src/daemon/handlers/triage/tagger/imap.ts +0 -384
  330. package/src/daemon/handlers/triage/tagger/index.ts +0 -184
  331. package/src/daemon/handlers/triage/tagger/shared.ts +0 -70
  332. package/src/daemon/handlers/triage/tagger/slack.ts +0 -69
  333. package/src/daemon/handlers/triage/types.ts +0 -50
  334. package/src/daemon/lifecycle.ts +0 -41
  335. package/src/daemon/provision-wake-model.ts +0 -81
  336. package/src/daemon/safe-serve.ts +0 -61
  337. package/src/daemon/send/channels.ts +0 -200
  338. package/src/daemon/send/command.ts +0 -332
  339. package/src/daemon/send/composition.ts +0 -99
  340. package/src/daemon/send/failure-text.ts +0 -93
  341. package/src/daemon/send/inert-text.ts +0 -225
  342. package/src/daemon/send/stdin.ts +0 -24
  343. package/src/daemon/service-commands.ts +0 -329
  344. package/src/export/cost-utils.ts +0 -319
  345. package/src/input/selection.ts +0 -135
  346. package/src/plugins/loader.ts +0 -15
  347. package/src/renderer/bottom-bar.ts +0 -58
  348. package/src/renderer/conversation-tree.ts +0 -228
  349. package/src/runtime/agent-graph-composition.ts +0 -78
  350. package/src/runtime/channel-composition.ts +0 -46
  351. package/src/runtime/cluster-composition.ts +0 -124
  352. package/src/runtime/cluster-group-composition.ts +0 -284
  353. package/src/runtime/code-index-services.ts +0 -167
  354. package/src/runtime/daemon-handler-composition.ts +0 -76
  355. package/src/runtime/device-posture-composition.ts +0 -110
  356. package/src/runtime/durability-housekeeping.ts +0 -183
  357. package/src/runtime/durability-services.ts +0 -155
  358. package/src/runtime/embedded-service-factories.ts +0 -74
  359. package/src/runtime/feature-settings.ts +0 -154
  360. package/src/runtime/fleet-needs-input-push.ts +0 -70
  361. package/src/runtime/fleet-services.ts +0 -41
  362. package/src/runtime/idle-power-services.ts +0 -85
  363. package/src/runtime/mail-composition.ts +0 -65
  364. package/src/runtime/memory-fold.ts +0 -55
  365. package/src/runtime/operator-token-cleanup.ts +0 -109
  366. package/src/runtime/path-shadow.ts +0 -418
  367. package/src/runtime/perf/panel-health-monitor.ts +0 -18
  368. package/src/runtime/provider-optimizer-wiring.ts +0 -55
  369. package/src/runtime/reachability-notice.ts +0 -100
  370. package/src/runtime/remote-execution-composition.ts +0 -62
  371. package/src/runtime/session-liveness-marker.ts +0 -257
  372. package/src/runtime/session-pointer-surface.ts +0 -22
  373. package/src/runtime/session-storage-services.ts +0 -41
  374. package/src/runtime/surface-feature-flags.ts +0 -96
  375. package/src/runtime/terminal-output-guard.ts +0 -235
  376. package/src/runtime/trust/workspace-registration.ts +0 -192
  377. package/src/runtime/trust/workspace-trust.ts +0 -229
  378. package/src/runtime/ui/index.ts +0 -39
  379. package/src/runtime/ui/model-picker/data-provider.ts +0 -182
  380. package/src/runtime/ui/model-picker/health-enrichment.ts +0 -231
  381. package/src/runtime/ui/model-picker/index.ts +0 -59
  382. package/src/runtime/ui/model-picker/types.ts +0 -153
  383. package/src/runtime/ui/provider-health/data-provider.ts +0 -244
  384. package/src/runtime/ui/provider-health/fallback-visualizer.ts +0 -71
  385. package/src/runtime/ui/provider-health/index.ts +0 -46
  386. package/src/runtime/ui/provider-health/types.ts +0 -146
  387. package/src/runtime/ui-events.ts +0 -1
  388. package/src/runtime/ui-read-model-helpers.ts +0 -1
  389. package/src/runtime/ui-read-models-observability-maintenance.ts +0 -1
  390. package/src/runtime/ui-read-models-observability-options.ts +0 -1
  391. package/src/runtime/ui-read-models-observability-remote.ts +0 -1
  392. package/src/runtime/ui-read-models-observability-security.ts +0 -1
  393. package/src/runtime/ui-read-models-observability-system.ts +0 -1
  394. package/src/runtime/ui-read-models-observability.ts +0 -1
  395. package/src/runtime/ui-service-queries.ts +0 -1
  396. package/src/runtime/voice-setup-services.ts +0 -98
  397. package/src/runtime/workstream-attempts-validation.ts +0 -77
  398. package/src/runtime/workstream-draft-edits.ts +0 -95
  399. package/src/runtime/workstream-draft-store.ts +0 -274
  400. package/src/runtime/workstream-draft-types.ts +0 -42
  401. package/src/runtime/workstream-services.ts +0 -373
  402. package/src/tools/index.ts +0 -1
  403. package/src/types/grid.ts +0 -48
  404. package/src/types/sql-js.d.ts +0 -15
  405. package/src/work-plans/work-plan-store.ts +0 -702
@@ -153,6 +153,10 @@ export const openContractRouteStream = transport.openContractRouteStream;
153
153
  export const requireContractRoute = transport.requireContractRoute;
154
154
  export const isAbortError = transport.isAbortError;
155
155
  export const openServerSentEventStream = transport.openServerSentEventStream;
156
+ // Re-exported here because bootstrap.ts — the one place an exit can await
157
+ // anything — sits on the 800-line per-file gate, so it reaches this through the
158
+ // import block it already has rather than a second import line.
159
+ export { leaveHostedSessionOnExit } from './client/hosted-exit.ts';
156
160
  export const createOperatorRemoteClient = transport.createOperatorRemoteClient;
157
161
  export const createPeerRemoteClient = transport.createPeerRemoteClient;
158
162
  export const buildEventSourceUrl = transport.buildEventSourceUrl;
@@ -202,73 +206,105 @@ export type RemoteRuntimeEventsOptions = Transport.RemoteRuntimeEventsOptions;
202
206
  export type RemoteRuntimeEvents = Transport.RemoteRuntimeEvents;
203
207
  export type SerializedRuntimeEnvelope = Transport.SerializedRuntimeEnvelope;
204
208
 
205
- // Operations compatibility aliases.
206
- export const AcpTaskAdapter = operations.AcpTaskAdapter;
207
- export const OpsControlPlane = operations.OpsControlPlane;
208
- export const OpsIllegalActionError = operations.OpsIllegalActionError;
209
- export const OpsTargetNotFoundError = operations.OpsTargetNotFoundError;
210
- export const ToolContractVerifier = operations.ToolContractVerifier;
211
- export const McpLifecycleManager = operations.McpLifecycleManager;
212
- export const McpPermissionManager = operations.McpPermissionManager;
213
- export const McpSchemaFreshnessTracker = operations.McpSchemaFreshnessTracker;
214
- export const buildMcpAttackPathReview = operations.buildMcpAttackPathReview;
215
- export const createMcpLifecycleManager = operations.createMcpLifecycleManager;
216
- export const DEFAULT_RECONNECT_CONFIG = operations.DEFAULT_RECONNECT_CONFIG;
217
- export const ALL_CAPABILITIES = operations.ALL_CAPABILITIES;
218
- export const PLUGIN_CAPABILITIES = operations.PLUGIN_CAPABILITIES;
219
- export const HIGH_RISK_CAPABILITIES = operations.HIGH_RISK_CAPABILITIES;
220
- export const PluginLifecycleManager = operations.PluginLifecycleManager;
221
- export const PluginQuarantineEngine = operations.PluginQuarantineEngine;
222
- export const PluginTrustStore = operations.PluginTrustStore;
223
- export const SAFE_CAPABILITIES = operations.SAFE_CAPABILITIES;
224
- export const filterCapabilitiesByTrust = operations.filterCapabilitiesByTrust;
225
- export const hasCapability = operations.hasCapability;
226
- export const isHighRiskCapability = operations.isHighRiskCapability;
227
- export const isPluginOperational = operations.isPluginOperational;
228
- export const isPluginReloadable = operations.isPluginReloadable;
229
- export const isPluginTerminal = operations.isPluginTerminal;
230
- export const resolveCapabilityManifest = operations.resolveCapabilityManifest;
231
- export const validateManifestV2 = operations.validateManifestV2;
232
- export const validatePluginSignature = operations.validatePluginSignature;
233
- // Instance-type companions for the operations class aliases (see note above the
234
- // security block): the `export const` form re-exports the value only.
235
- export type AcpTaskAdapter = InstanceType<typeof operations.AcpTaskAdapter>;
236
- export type OpsIllegalActionError = InstanceType<typeof operations.OpsIllegalActionError>;
237
- export type OpsTargetNotFoundError = InstanceType<typeof operations.OpsTargetNotFoundError>;
238
- export type ToolContractVerifier = InstanceType<typeof operations.ToolContractVerifier>;
239
- export type McpLifecycleManager = InstanceType<typeof operations.McpLifecycleManager>;
240
- export type McpPermissionManager = InstanceType<typeof operations.McpPermissionManager>;
241
- export type McpSchemaFreshnessTracker = InstanceType<typeof operations.McpSchemaFreshnessTracker>;
242
- export type PluginLifecycleManager = InstanceType<typeof operations.PluginLifecycleManager>;
243
- export type PluginQuarantineEngine = InstanceType<typeof operations.PluginQuarantineEngine>;
244
- export type PluginTrustStore = InstanceType<typeof operations.PluginTrustStore>;
245
- export const LOW_QUALITY_THRESHOLD = operations.LOW_QUALITY_THRESHOLD;
246
- export const computeQualityScore = operations.computeQualityScore;
247
- export const createCompactionManager = operations.createCompactionManager;
248
- export const describeScore = operations.describeScore;
249
- export const escalateStrategy = operations.escalateStrategy;
250
- export const isTerminalCompactionState = operations.isTerminalCompactionState;
251
- export const reachableFromCompactionState = operations.reachableFromCompactionState;
252
- export const compactionFailurePlaybook = operations.compactionFailurePlaybook;
253
- export const exportRecoveryPlaybook = operations.exportRecoveryPlaybook;
254
- export const permissionDeadlockPlaybook = operations.permissionDeadlockPlaybook;
255
- export const pluginDegradationPlaybook = operations.pluginDegradationPlaybook;
256
- export const reconnectFailurePlaybook = operations.reconnectFailurePlaybook;
257
- export const sessionUnrecoverablePlaybook = operations.sessionUnrecoverablePlaybook;
258
- export const stuckTurnPlaybook = operations.stuckTurnPlaybook;
259
- export const createSessionUnrecoverablePlaybook = operations.createSessionUnrecoverablePlaybook;
260
- export const createStuckTurnPlaybook = operations.createStuckTurnPlaybook;
261
- export const evaluateOrchestrationSpawn = operations.evaluateOrchestrationSpawn;
262
- export const TRANSPORT_COMPATIBILITY_MATRIX = operations.TRANSPORT_COMPATIBILITY_MATRIX;
263
- export const applyTransition = operations.applyTransition;
264
- export const canTransition = operations.canTransition;
265
- export const isOperational = operations.isOperational;
266
- export const isReloadable = operations.isReloadable;
267
- export const isTerminal = operations.isTerminal;
268
- export const reachableFrom = operations.reachableFrom;
269
- export const evaluateSessionMaintenance = operations.evaluateSessionMaintenance;
270
- export const formatSessionMaintenanceLines = operations.formatSessionMaintenanceLines;
271
- export const getGuidanceMode = operations.getGuidanceMode;
209
+ // Operations compatibility aliases. Grouped as a single live ESM re-export
210
+ // from the SDK's own `platform/runtime/operations` subpath rather than eager
211
+ // `export const X = operations.X` module-scope reads off the `operations`
212
+ // namespace object: those reads evaluated the namespace getter while the
213
+ // compiled single-file bundle could still be mid-cycle, and the binding they
214
+ // reached for was not defined yet — source execution hid this, the compiled
215
+ // binary died on it at load. A grouped `export { ... } from '<subpath>'` is a
216
+ // live binding resolved by the module system, not a module-scope value read,
217
+ // so it is cycle-safe.
218
+ export {
219
+ AcpTaskAdapter,
220
+ OpsControlPlane,
221
+ OpsIllegalActionError,
222
+ OpsTargetNotFoundError,
223
+ ToolContractVerifier,
224
+ McpLifecycleManager,
225
+ McpPermissionManager,
226
+ McpSchemaFreshnessTracker,
227
+ buildMcpAttackPathReview,
228
+ createMcpLifecycleManager,
229
+ DEFAULT_RECONNECT_CONFIG,
230
+ ALL_CAPABILITIES,
231
+ PLUGIN_CAPABILITIES,
232
+ HIGH_RISK_CAPABILITIES,
233
+ PluginLifecycleManager,
234
+ PluginQuarantineEngine,
235
+ PluginTrustStore,
236
+ SAFE_CAPABILITIES,
237
+ filterCapabilitiesByTrust,
238
+ hasCapability,
239
+ isHighRiskCapability,
240
+ isPluginOperational,
241
+ isPluginReloadable,
242
+ isPluginTerminal,
243
+ resolveCapabilityManifest,
244
+ validateManifestV2,
245
+ validatePluginSignature,
246
+ LOW_QUALITY_THRESHOLD,
247
+ computeQualityScore,
248
+ createCompactionManager,
249
+ describeScore,
250
+ escalateStrategy,
251
+ isTerminalCompactionState,
252
+ reachableFromCompactionState,
253
+ compactionFailurePlaybook,
254
+ exportRecoveryPlaybook,
255
+ permissionDeadlockPlaybook,
256
+ pluginDegradationPlaybook,
257
+ reconnectFailurePlaybook,
258
+ sessionUnrecoverablePlaybook,
259
+ stuckTurnPlaybook,
260
+ createSessionUnrecoverablePlaybook,
261
+ createStuckTurnPlaybook,
262
+ evaluateOrchestrationSpawn,
263
+ TRANSPORT_COMPATIBILITY_MATRIX,
264
+ applyTransition,
265
+ canTransition,
266
+ isOperational,
267
+ isReloadable,
268
+ isTerminal,
269
+ reachableFrom,
270
+ evaluateSessionMaintenance,
271
+ formatSessionMaintenanceLines,
272
+ getGuidanceMode,
273
+ buildPersistedSessionContext,
274
+ buildLocalReturnContextSummary,
275
+ formatReturnContextForDisplay,
276
+ getReturnContextMode,
277
+ maybeAssistReturnContextSummary,
278
+ persistConversation,
279
+ generateUserSessionId,
280
+ loadLastConversation,
281
+ loadRecoveryConversation,
282
+ writeRecoveryFile,
283
+ deleteRecoveryFile,
284
+ checkRecoveryFile,
285
+ getRecoveryFilePath,
286
+ getRecoveryDir,
287
+ getLastSessionPointerPath,
288
+ writeLastSessionPointer,
289
+ readLastSessionPointer,
290
+ createSessionSurface,
291
+ consumeRecovery,
292
+ removeRecoveryPoint,
293
+ checkRecoveryForSession,
294
+ exportRemoteArtifactForAgent,
295
+ importRemoteArtifact,
296
+ RemoteRunnerRegistry,
297
+ RemoteSupervisor,
298
+ DistributedRuntimeManager,
299
+ getDistributedNodeHostContract,
300
+ CURRENT_PROTOCOL_VERSION,
301
+ VersionMismatchError,
302
+ negotiateProtocolVersion,
303
+ createTaskManager,
304
+ PhasedToolExecutor,
305
+ budgetPhase,
306
+ permissionPhase,
307
+ } from '@pellux/goodvibes-sdk/platform/runtime/operations';
272
308
  // Snapshot-retention symbols (SnapshotPruner, RetentionPolicy,
273
309
  // DEFAULT_RETENTION_CONFIG) are intentionally NOT re-exported here. No app code
274
310
  // consumes them — only the retention unit test does, and it now imports them
@@ -280,48 +316,26 @@ export const getGuidanceMode = operations.getGuidanceMode;
280
316
  // `var` declaration on the darwin-arm64 target, so the compiled binary died at
281
317
  // startup with `ReferenceError: SnapshotPruner2 is not defined`. Dropping the
282
318
  // re-export removes the collision (and the same latent hazard for the other two).
283
- export const buildPersistedSessionContext = operations.buildPersistedSessionContext;
284
- export const buildLocalReturnContextSummary = operations.buildLocalReturnContextSummary;
285
- export const formatReturnContextForDisplay = operations.formatReturnContextForDisplay;
286
- export const getReturnContextMode = operations.getReturnContextMode;
287
- export const maybeAssistReturnContextSummary = operations.maybeAssistReturnContextSummary;
288
- export const persistConversation = operations.persistConversation;
289
- export const generateUserSessionId = operations.generateUserSessionId;
290
- export const loadLastConversation = operations.loadLastConversation;
291
- export const loadRecoveryConversation = operations.loadRecoveryConversation;
292
- export const writeRecoveryFile = operations.writeRecoveryFile;
293
- export const deleteRecoveryFile = operations.deleteRecoveryFile;
294
- export const checkRecoveryFile = operations.checkRecoveryFile;
295
- export const getRecoveryFilePath = operations.getRecoveryFilePath;
296
- export const getRecoveryDir = operations.getRecoveryDir;
297
- export const getLastSessionPointerPath = operations.getLastSessionPointerPath;
298
- export const writeLastSessionPointer = operations.writeLastSessionPointer;
299
- export const readLastSessionPointer = operations.readLastSessionPointer;
319
+ // Instance-type companions for the operations class aliases are no longer
320
+ // declared here: `export { X } from '<subpath>'` forwards a class's value AND
321
+ // its implicit instance type together, so a separate local
322
+ // `export type X = InstanceType<typeof operations.X>` for the same name is
323
+ // now a redundant declaration that TypeScript rejects as a conflict
324
+ // (TS2484). This applies to every class name in the grouped re-export above
325
+ // (AcpTaskAdapter, OpsControlPlane, OpsIllegalActionError,
326
+ // OpsTargetNotFoundError, ToolContractVerifier, McpLifecycleManager,
327
+ // McpPermissionManager, McpSchemaFreshnessTracker, PluginLifecycleManager,
328
+ // PluginQuarantineEngine, PluginTrustStore, RemoteRunnerRegistry,
329
+ // RemoteSupervisor, DistributedRuntimeManager) — their instance types are
330
+ // forwarded automatically and are not redeclared below.
300
331
  // The declare-once storage handle (platform/runtime/session-surface.ts) plus
301
332
  // the two prompted-recovery primitives that only accept it. Every session
302
333
  // path in this app derives from one surface built in runtime/services.ts.
303
- export const createSessionSurface = operations.createSessionSurface;
304
334
  export type SessionSurface = Operations.SessionSurface;
305
- export const consumeRecovery = operations.consumeRecovery;
306
- export const removeRecoveryPoint = operations.removeRecoveryPoint;
307
335
  // Probe for a NAMED session's live snapshot (per-session supersession — see
308
336
  // session-recovery.ts's header) without retiring anything. Backs the
309
337
  // --continue / --resume pre-resume check in cli/tui-startup.ts.
310
- export const checkRecoveryForSession = operations.checkRecoveryForSession;
311
338
  export type RecoveryFileInfo = Operations.RecoveryFileInfo;
312
- export const exportRemoteArtifactForAgent = operations.exportRemoteArtifactForAgent;
313
- export const importRemoteArtifact = operations.importRemoteArtifact;
314
- export const RemoteRunnerRegistry = operations.RemoteRunnerRegistry;
315
- export const RemoteSupervisor = operations.RemoteSupervisor;
316
- export const DistributedRuntimeManager = operations.DistributedRuntimeManager;
317
- export const getDistributedNodeHostContract = operations.getDistributedNodeHostContract;
318
- export const CURRENT_PROTOCOL_VERSION = operations.CURRENT_PROTOCOL_VERSION;
319
- export const VersionMismatchError = operations.VersionMismatchError;
320
- export const negotiateProtocolVersion = operations.negotiateProtocolVersion;
321
- export const createTaskManager = operations.createTaskManager;
322
- export const PhasedToolExecutor = operations.PhasedToolExecutor;
323
- export const budgetPhase = operations.budgetPhase;
324
- export const permissionPhase = operations.permissionPhase;
325
339
 
326
340
  export type RemoteSessionBundle = Operations.RemoteSessionBundle;
327
341
  export type ContractVerifierOptions = Operations.ContractVerifierOptions;
@@ -359,10 +373,10 @@ export type CompactionStrategy = Operations.CompactionStrategy;
359
373
  export type StrategyInput = Operations.StrategyInput;
360
374
  export type StrategyOutput = Operations.StrategyOutput;
361
375
  export type DistributedRuntimeSnapshotStore = Operations.DistributedRuntimeSnapshotStore;
362
- export type RemoteRunnerRegistry = Operations.RemoteRunnerRegistry;
363
- export type RemoteSupervisor = Operations.RemoteSupervisor;
364
- export type DistributedRuntimeManager = Operations.DistributedRuntimeManager;
365
- export type OpsControlPlane = Operations.OpsControlPlane;
376
+ // RemoteRunnerRegistry, RemoteSupervisor, DistributedRuntimeManager, and
377
+ // OpsControlPlane are classes forwarded by the grouped value re-export above
378
+ // (`export { X } from '<subpath>'` carries both the value and its implicit
379
+ // instance type), so redeclaring their types here would conflict (TS2484).
366
380
  export type RuntimeTransitionResult = Operations.RuntimeTransitionResult;
367
381
  export type RetentionClass = Operations.RetentionClass;
368
382
  export type RetentionClassConfig = Operations.RetentionClassConfig;
@@ -17,7 +17,7 @@
17
17
  import { existsSync } from 'node:fs';
18
18
  import { getGoodVibesPackageRoot, resolveGoodVibesDaemonExecutable } from '../cli/service-posture.ts';
19
19
  import { runInstallSelfCheck } from './install-self-check.ts';
20
- import { announceReachability } from './path-shadow-startup.ts';
20
+ import { announceInstallReachability } from './path-shadow-startup.ts';
21
21
  import type { SystemMessageRouter } from '../core/system-message-router.ts';
22
22
 
23
23
  export function announceInstallSelfCheck(router: SystemMessageRouter): void {
@@ -53,7 +53,7 @@ export function announceInstallSelfCheck(router: SystemMessageRouter): void {
53
53
  */
54
54
  export function announceInstallHealth(router: SystemMessageRouter): void {
55
55
  announceInstallSelfCheck(router);
56
- void announceReachability(router).catch(() => {
56
+ void announceInstallReachability(router).catch(() => {
57
57
  // Best-effort — a reachability check must never block or crash boot.
58
58
  });
59
59
  }
@@ -11,7 +11,7 @@
11
11
 
12
12
  import type { CommandContext } from '../input/command-registry.ts';
13
13
  import type { PowerManager } from '@pellux/goodvibes-sdk/platform/power';
14
- import type { Line } from '../types/grid.ts';
14
+ import type { Line } from '@pellux/goodvibes-sdk/platform/types';
15
15
  import type { ConfigManager } from '@pellux/goodvibes-sdk/platform/config';
16
16
  import { createCancelToolCall, type ToolCancelOrchestrator } from '../core/turn-cancellation.ts';
17
17
  import { powerSurfaceFromState } from '../core/power-status.ts';
@@ -33,7 +33,7 @@ import type { ProviderRegistry } from '@pellux/goodvibes-sdk/platform/providers'
33
33
  import type { ArtifactStore } from '@pellux/goodvibes-sdk/platform/artifacts';
34
34
  import type { MemoryRegistry } from '@pellux/goodvibes-sdk/platform/state';
35
35
  import type { RuntimeEventBus } from '@/runtime/index.ts';
36
- import { WorkPlanStore } from '../work-plans/work-plan-store.ts';
36
+ import { WorkPlanStore } from '@pellux/goodvibes-sdk/platform/workflow';
37
37
 
38
38
  const REGULAR_KNOWLEDGE_DB_FILE = 'knowledge-wiki.sqlite';
39
39
  const HOME_GRAPH_KNOWLEDGE_DB_FILE = 'knowledge-home-graph.sqlite';
@@ -84,7 +84,13 @@ export function createKnowledgeServices(deps: KnowledgeServicesDeps): KnowledgeS
84
84
  const homeGraphService = new HomeGraphService(homeGraphKnowledgeStore, artifactStore, { semanticService: homeGraphSemanticService, admitExpensiveWork });
85
85
  const projectPlanningProjectId = projectPlanningProjectIdFromPath(deps.workingDirectory);
86
86
  const projectPlanningService = new ProjectPlanningService(knowledgeStore, { defaultProjectId: projectPlanningProjectId });
87
- const workPlanStore = new WorkPlanStore({ homeDirectory: deps.homeDirectory, projectId: projectPlanningProjectId, projectRoot: deps.workingDirectory });
87
+ const workPlanStore = new WorkPlanStore({
88
+ homeDirectory: deps.homeDirectory,
89
+ projectId: projectPlanningProjectId,
90
+ projectRoot: deps.workingDirectory,
91
+ surfaceRoot: 'tui',
92
+ source: 'tui',
93
+ });
88
94
  return {
89
95
  knowledgeStore, agentKnowledgeStore, homeGraphKnowledgeStore,
90
96
  knowledgeSemanticService, homeGraphSemanticService, agentKnowledgeSemanticService,
@@ -6,7 +6,8 @@
6
6
  *
7
7
  * NAMING, load-bearing: this module's identifiers say "legacy" because the
8
8
  * engine migrates AWAY from the `goodvibes-daemon.service` unit name toward
9
- * the runtime-managed unit — but that same name is what scripts/install.sh
9
+ * the runtime-managed unit — but that same name is what the suite installer
10
+ * (goodvibes-daemon scripts/install.sh)
10
11
  * actively creates for curl-installed hosts TODAY. It is a parallel,
11
12
  * first-class install path, not an obsolete one. User-facing copy therefore
12
13
  * describes it as "the install-script unit" and never labels it legacy or
@@ -126,7 +127,7 @@ export function buildManagedDaemonServiceManager(params: BuildManagedDaemonServi
126
127
  // already configured for hostMode=network / a non-default port) keeps its
127
128
  // endpoint without a unit rewrite. Baking endpoint values here is what
128
129
  // silently re-pinned custom-configured hosts back to the values current at
129
- // install time. scripts/install.sh writes the same shape — the two paths
130
+ // install time. The suite installer writes the same shape — the two paths
130
131
  // must produce the identical running daemon (see the installer parity test).
131
132
  // `params.host`/`params.port` remain inputs because the migration engine
132
133
  // still needs them for its read-only port-liveness probe.
@@ -139,7 +140,7 @@ export function buildManagedDaemonServiceManager(params: BuildManagedDaemonServi
139
140
  // operator-tokens.json, auth-users.json and daemon-settings.json — which is
140
141
  // `<home>/.goodvibes/daemon`. This baked the USER HOME, so a serviced
141
142
  // daemon filed its identity a level above where every reader in this
142
- // repository looks: config/goodvibes-home.ts resolves the flag AS the state
143
+ // repository looks: the SDK's platform/config goodvibes-home resolves the flag AS the state
143
144
  // directory, cli/service-posture.ts already writes the state directory into
144
145
  // GOODVIBES_DAEMON_HOME for the unit it installs, and runtime/bootstrap.ts
145
146
  // reads the companion token from the state directory. On a normal machine
@@ -22,11 +22,12 @@ import {
22
22
  type ManagedServiceActionResult = ReturnType<ManagedServiceActionRunner>;
23
23
 
24
24
  /**
25
- * The exact marker string scripts/install.sh writes into every unit it
25
+ * The exact marker string the suite installer writes into every unit it
26
26
  * creates (as a `# managed by goodvibes install.sh` comment). The reconcile
27
27
  * check below keys on it to tell an installer-created legacy unit — safe to
28
28
  * auto-retire — apart from a hand-written one that must only ever be reported.
29
- * Kept in lockstep with `INSTALLER_MARKER` in scripts/install.sh.
29
+ * Kept in lockstep with `INSTALLER_MARKER` in the suite installer
30
+ * (goodvibes-daemon scripts/install.sh).
30
31
  */
31
32
  export const INSTALLER_UNIT_MARKER = 'managed by goodvibes install.sh';
32
33