@roackb2/heddle 1.2.0 → 1.3.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 (205) hide show
  1. package/README.md +9 -1
  2. package/dist/src/cli/ask.d.ts +11 -1
  3. package/dist/src/cli/ask.d.ts.map +1 -1
  4. package/dist/src/cli/ask.js +168 -204
  5. package/dist/src/cli/ask.js.map +1 -1
  6. package/dist/src/cli/chat/App.js +7 -4
  7. package/dist/src/cli/chat/App.js.map +1 -1
  8. package/dist/src/cli/chat/hooks/controllers/run/tui-agent-turn-result.d.ts +5 -18
  9. package/dist/src/cli/chat/hooks/controllers/run/tui-agent-turn-result.d.ts.map +1 -1
  10. package/dist/src/cli/chat/hooks/controllers/run/tui-agent-turn-result.js +10 -122
  11. package/dist/src/cli/chat/hooks/controllers/run/tui-agent-turn-result.js.map +1 -1
  12. package/dist/src/cli/chat/hooks/controllers/run/tui-compaction-status.d.ts +6 -6
  13. package/dist/src/cli/chat/hooks/controllers/run/tui-compaction-status.d.ts.map +1 -1
  14. package/dist/src/cli/chat/hooks/controllers/run/tui-compaction-status.js +12 -24
  15. package/dist/src/cli/chat/hooks/controllers/run/tui-compaction-status.js.map +1 -1
  16. package/dist/src/cli/chat/hooks/controllers/run/tui-direct-shell-result.d.ts +3 -3
  17. package/dist/src/cli/chat/hooks/controllers/run/tui-direct-shell-result.d.ts.map +1 -1
  18. package/dist/src/cli/chat/hooks/controllers/run/tui-direct-shell-result.js +10 -10
  19. package/dist/src/cli/chat/hooks/controllers/run/tui-direct-shell-result.js.map +1 -1
  20. package/dist/src/cli/chat/hooks/controllers/run/tui-direct-shell.d.ts +4 -4
  21. package/dist/src/cli/chat/hooks/controllers/run/tui-direct-shell.d.ts.map +1 -1
  22. package/dist/src/cli/chat/hooks/controllers/run/tui-direct-shell.js +34 -30
  23. package/dist/src/cli/chat/hooks/controllers/run/tui-direct-shell.js.map +1 -1
  24. package/dist/src/cli/chat/hooks/controllers/run/tui-ordinary-turn.d.ts +3 -0
  25. package/dist/src/cli/chat/hooks/controllers/run/tui-ordinary-turn.d.ts.map +1 -1
  26. package/dist/src/cli/chat/hooks/controllers/run/tui-ordinary-turn.js +13 -12
  27. package/dist/src/cli/chat/hooks/controllers/run/tui-ordinary-turn.js.map +1 -1
  28. package/dist/src/cli/chat/hooks/controllers/run/tui-run-loop-events.d.ts +3 -3
  29. package/dist/src/cli/chat/hooks/controllers/run/tui-run-loop-events.d.ts.map +1 -1
  30. package/dist/src/cli/chat/hooks/controllers/run/tui-run-loop-events.js +23 -23
  31. package/dist/src/cli/chat/hooks/controllers/run/tui-run-loop-events.js.map +1 -1
  32. package/dist/src/cli/chat/hooks/controllers/useAgentRunController.d.ts +5 -2
  33. package/dist/src/cli/chat/hooks/controllers/useAgentRunController.d.ts.map +1 -1
  34. package/dist/src/cli/chat/hooks/controllers/useAgentRunController.js +21 -10
  35. package/dist/src/cli/chat/hooks/controllers/useAgentRunController.js.map +1 -1
  36. package/dist/src/cli/chat/hooks/controllers/useChatAppController.d.ts +2 -0
  37. package/dist/src/cli/chat/hooks/controllers/useChatAppController.d.ts.map +1 -1
  38. package/dist/src/cli/chat/hooks/controllers/useChatAppController.js +13 -23
  39. package/dist/src/cli/chat/hooks/controllers/useChatAppController.js.map +1 -1
  40. package/dist/src/cli/chat/hooks/controllers/usePromptSubmissionController.d.ts +4 -3
  41. package/dist/src/cli/chat/hooks/controllers/usePromptSubmissionController.d.ts.map +1 -1
  42. package/dist/src/cli/chat/hooks/controllers/usePromptSubmissionController.js +10 -9
  43. package/dist/src/cli/chat/hooks/controllers/usePromptSubmissionController.js.map +1 -1
  44. package/dist/src/cli/chat/hooks/useChatDrift.d.ts +4 -4
  45. package/dist/src/cli/chat/hooks/useChatDrift.d.ts.map +1 -1
  46. package/dist/src/cli/chat/hooks/useChatDrift.js +7 -6
  47. package/dist/src/cli/chat/hooks/useChatDrift.js.map +1 -1
  48. package/dist/src/cli/chat/hooks/useChatSessions.d.ts +3 -0
  49. package/dist/src/cli/chat/hooks/useChatSessions.d.ts.map +1 -1
  50. package/dist/src/cli/chat/hooks/useChatSessions.js +30 -23
  51. package/dist/src/cli/chat/hooks/useChatSessions.js.map +1 -1
  52. package/dist/src/cli/chat/submit.d.ts +3 -4
  53. package/dist/src/cli/chat/submit.d.ts.map +1 -1
  54. package/dist/src/cli/chat/submit.js +17 -55
  55. package/dist/src/cli/chat/submit.js.map +1 -1
  56. package/dist/src/cli/chat/utils/runtime.d.ts.map +1 -1
  57. package/dist/src/cli/chat/utils/runtime.js.map +1 -1
  58. package/dist/src/cli/daemon.d.ts +2 -2
  59. package/dist/src/cli/daemon.d.ts.map +1 -1
  60. package/dist/src/cli/daemon.js +2 -2
  61. package/dist/src/cli/daemon.js.map +1 -1
  62. package/dist/src/cli/main.js +3 -3
  63. package/dist/src/cli/main.js.map +1 -1
  64. package/dist/src/cli/remote/control-plane-client.d.ts +8 -4
  65. package/dist/src/cli/remote/control-plane-client.d.ts.map +1 -1
  66. package/dist/src/core/chat/engine/conversation-engine.d.ts.map +1 -1
  67. package/dist/src/core/chat/engine/conversation-engine.js +4 -8
  68. package/dist/src/core/chat/engine/conversation-engine.js.map +1 -1
  69. package/dist/src/core/chat/engine/index.d.ts +1 -1
  70. package/dist/src/core/chat/engine/index.d.ts.map +1 -1
  71. package/dist/src/core/chat/engine/sessions/repository/file-chat-session-repository.d.ts +2 -1
  72. package/dist/src/core/chat/engine/sessions/repository/file-chat-session-repository.d.ts.map +1 -1
  73. package/dist/src/core/chat/engine/sessions/repository/file-chat-session-repository.js +8 -0
  74. package/dist/src/core/chat/engine/sessions/repository/file-chat-session-repository.js.map +1 -1
  75. package/dist/src/core/chat/engine/sessions/service.d.ts +39 -5
  76. package/dist/src/core/chat/engine/sessions/service.d.ts.map +1 -1
  77. package/dist/src/core/chat/engine/sessions/service.js +246 -106
  78. package/dist/src/core/chat/engine/sessions/service.js.map +1 -1
  79. package/dist/src/core/chat/engine/sessions/session-record.d.ts +2 -1
  80. package/dist/src/core/chat/engine/sessions/session-record.d.ts.map +1 -1
  81. package/dist/src/core/chat/engine/sessions/session-record.js +1 -0
  82. package/dist/src/core/chat/engine/sessions/session-record.js.map +1 -1
  83. package/dist/src/core/chat/engine/turns/context.d.ts +2 -0
  84. package/dist/src/core/chat/engine/turns/context.d.ts.map +1 -1
  85. package/dist/src/core/chat/engine/turns/context.js +2 -2
  86. package/dist/src/core/chat/engine/turns/context.js.map +1 -1
  87. package/dist/src/core/chat/engine/turns/run-conversation-turn.d.ts +10 -0
  88. package/dist/src/core/chat/engine/turns/run-conversation-turn.d.ts.map +1 -1
  89. package/dist/src/core/chat/engine/turns/run-conversation-turn.js +10 -0
  90. package/dist/src/core/chat/engine/turns/run-conversation-turn.js.map +1 -1
  91. package/dist/src/core/chat/engine/turns/service.d.ts +9 -4
  92. package/dist/src/core/chat/engine/turns/service.d.ts.map +1 -1
  93. package/dist/src/core/chat/engine/turns/service.js +29 -28
  94. package/dist/src/core/chat/engine/turns/service.js.map +1 -1
  95. package/dist/src/core/chat/engine/types.d.ts +48 -3
  96. package/dist/src/core/chat/engine/types.d.ts.map +1 -1
  97. package/dist/src/core/chat/types.d.ts +2 -0
  98. package/dist/src/core/chat/types.d.ts.map +1 -1
  99. package/dist/src/core/prompts/system-prompt.d.ts.map +1 -1
  100. package/dist/src/core/prompts/system-prompt.js +1 -0
  101. package/dist/src/core/prompts/system-prompt.js.map +1 -1
  102. package/dist/src/index.d.ts +1 -1
  103. package/dist/src/index.d.ts.map +1 -1
  104. package/dist/src/index.js.map +1 -1
  105. package/dist/src/server/app.js +3 -3
  106. package/dist/src/server/app.js.map +1 -1
  107. package/dist/src/server/features/control-plane/{services → controllers}/ask.d.ts +5 -1
  108. package/dist/src/server/features/control-plane/controllers/ask.d.ts.map +1 -0
  109. package/dist/src/server/features/control-plane/controllers/ask.js +68 -0
  110. package/dist/src/server/features/control-plane/controllers/ask.js.map +1 -0
  111. package/dist/src/server/features/control-plane/controllers/chat-session-events.d.ts +26 -0
  112. package/dist/src/server/features/control-plane/controllers/chat-session-events.d.ts.map +1 -0
  113. package/dist/src/server/features/control-plane/controllers/chat-session-events.js +49 -0
  114. package/dist/src/server/features/control-plane/controllers/chat-session-events.js.map +1 -0
  115. package/dist/src/server/features/control-plane/controllers/chat-session-presenter.d.ts +12 -0
  116. package/dist/src/server/features/control-plane/controllers/chat-session-presenter.d.ts.map +1 -0
  117. package/dist/src/server/features/control-plane/controllers/chat-session-presenter.js +181 -0
  118. package/dist/src/server/features/control-plane/controllers/chat-session-presenter.js.map +1 -0
  119. package/dist/src/server/features/control-plane/controllers/chat-sessions-controller.d.ts +63 -0
  120. package/dist/src/server/features/control-plane/controllers/chat-sessions-controller.d.ts.map +1 -0
  121. package/dist/src/server/features/control-plane/controllers/chat-sessions-controller.js +285 -0
  122. package/dist/src/server/features/control-plane/controllers/chat-sessions-controller.js.map +1 -0
  123. package/dist/src/server/features/control-plane/controllers/chat-turn-review-presenter.d.ts +13 -0
  124. package/dist/src/server/features/control-plane/controllers/chat-turn-review-presenter.d.ts.map +1 -0
  125. package/dist/src/server/features/control-plane/controllers/chat-turn-review-presenter.js +196 -0
  126. package/dist/src/server/features/control-plane/controllers/chat-turn-review-presenter.js.map +1 -0
  127. package/dist/src/server/features/control-plane/controllers/control-plane-state.d.ts +7 -0
  128. package/dist/src/server/features/control-plane/controllers/control-plane-state.d.ts.map +1 -0
  129. package/dist/src/server/features/control-plane/controllers/control-plane-state.js +64 -0
  130. package/dist/src/server/features/control-plane/controllers/control-plane-state.js.map +1 -0
  131. package/dist/src/server/features/control-plane/controllers/heartbeat.d.ts +12 -0
  132. package/dist/src/server/features/control-plane/controllers/heartbeat.d.ts.map +1 -0
  133. package/dist/src/server/features/control-plane/controllers/heartbeat.js +59 -0
  134. package/dist/src/server/features/control-plane/controllers/heartbeat.js.map +1 -0
  135. package/dist/src/server/features/control-plane/controllers/layout-snapshots.d.ts +13 -0
  136. package/dist/src/server/features/control-plane/controllers/layout-snapshots.d.ts.map +1 -0
  137. package/dist/src/server/features/control-plane/controllers/layout-snapshots.js +70 -0
  138. package/dist/src/server/features/control-plane/controllers/layout-snapshots.js.map +1 -0
  139. package/dist/src/server/features/control-plane/controllers/memory.d.ts +25 -0
  140. package/dist/src/server/features/control-plane/controllers/memory.d.ts.map +1 -0
  141. package/dist/src/server/features/control-plane/controllers/memory.js +44 -0
  142. package/dist/src/server/features/control-plane/controllers/memory.js.map +1 -0
  143. package/dist/src/server/features/control-plane/controllers/workspace-diff.d.ts +18 -0
  144. package/dist/src/server/features/control-plane/controllers/workspace-diff.d.ts.map +1 -0
  145. package/dist/src/server/features/control-plane/controllers/workspace-diff.js +260 -0
  146. package/dist/src/server/features/control-plane/controllers/workspace-diff.js.map +1 -0
  147. package/dist/src/server/features/control-plane/controllers/workspace-files.d.ts +38 -0
  148. package/dist/src/server/features/control-plane/controllers/workspace-files.d.ts.map +1 -0
  149. package/dist/src/server/features/control-plane/controllers/workspace-files.js +139 -0
  150. package/dist/src/server/features/control-plane/controllers/workspace-files.js.map +1 -0
  151. package/dist/src/server/features/control-plane/helpers/read-values.d.ts +7 -0
  152. package/dist/src/server/features/control-plane/helpers/read-values.d.ts.map +1 -0
  153. package/dist/src/server/features/control-plane/helpers/read-values.js +26 -0
  154. package/dist/src/server/features/control-plane/helpers/read-values.js.map +1 -0
  155. package/dist/src/server/features/control-plane/router.d.ts +8 -4
  156. package/dist/src/server/features/control-plane/router.d.ts.map +1 -1
  157. package/dist/src/server/features/control-plane/router.js +59 -40
  158. package/dist/src/server/features/control-plane/router.js.map +1 -1
  159. package/dist/src/server/features/control-plane/types.d.ts +2 -0
  160. package/dist/src/server/features/control-plane/types.d.ts.map +1 -1
  161. package/dist/src/server/index.d.ts +1 -1
  162. package/dist/src/server/index.d.ts.map +1 -1
  163. package/dist/src/server/index.js +1 -1
  164. package/dist/src/server/index.js.map +1 -1
  165. package/dist/src/server/router.d.ts +8 -4
  166. package/dist/src/server/router.d.ts.map +1 -1
  167. package/dist/src/web/assets/{MonacoDiffViewer-vifX8i2F.js → MonacoDiffViewer-D0Ed6GCN.js} +1 -1
  168. package/dist/src/web/assets/{index-vEln1ViW.js → index-B_9nk8kS.js} +2 -2
  169. package/dist/src/web/index.html +1 -1
  170. package/package.json +6 -2
  171. package/dist/src/server/features/control-plane/services/ask.d.ts.map +0 -1
  172. package/dist/src/server/features/control-plane/services/ask.js +0 -66
  173. package/dist/src/server/features/control-plane/services/ask.js.map +0 -1
  174. package/dist/src/server/features/control-plane/services/chat-session-events.d.ts +0 -26
  175. package/dist/src/server/features/control-plane/services/chat-session-events.d.ts.map +0 -1
  176. package/dist/src/server/features/control-plane/services/chat-session-events.js +0 -61
  177. package/dist/src/server/features/control-plane/services/chat-session-events.js.map +0 -1
  178. package/dist/src/server/features/control-plane/services/chat-sessions.d.ts +0 -59
  179. package/dist/src/server/features/control-plane/services/chat-sessions.d.ts.map +0 -1
  180. package/dist/src/server/features/control-plane/services/chat-sessions.js +0 -661
  181. package/dist/src/server/features/control-plane/services/chat-sessions.js.map +0 -1
  182. package/dist/src/server/features/control-plane/services/control-plane-state.d.ts +0 -4
  183. package/dist/src/server/features/control-plane/services/control-plane-state.d.ts.map +0 -1
  184. package/dist/src/server/features/control-plane/services/control-plane-state.js +0 -56
  185. package/dist/src/server/features/control-plane/services/control-plane-state.js.map +0 -1
  186. package/dist/src/server/features/control-plane/services/heartbeat.d.ts +0 -9
  187. package/dist/src/server/features/control-plane/services/heartbeat.d.ts.map +0 -1
  188. package/dist/src/server/features/control-plane/services/heartbeat.js +0 -57
  189. package/dist/src/server/features/control-plane/services/heartbeat.js.map +0 -1
  190. package/dist/src/server/features/control-plane/services/layout-snapshots.d.ts +0 -6
  191. package/dist/src/server/features/control-plane/services/layout-snapshots.d.ts.map +0 -1
  192. package/dist/src/server/features/control-plane/services/layout-snapshots.js +0 -68
  193. package/dist/src/server/features/control-plane/services/layout-snapshots.js.map +0 -1
  194. package/dist/src/server/features/control-plane/services/memory.d.ts +0 -22
  195. package/dist/src/server/features/control-plane/services/memory.d.ts.map +0 -1
  196. package/dist/src/server/features/control-plane/services/memory.js +0 -36
  197. package/dist/src/server/features/control-plane/services/memory.js.map +0 -1
  198. package/dist/src/server/features/control-plane/services/workspace-diff.d.ts +0 -4
  199. package/dist/src/server/features/control-plane/services/workspace-diff.d.ts.map +0 -1
  200. package/dist/src/server/features/control-plane/services/workspace-diff.js +0 -258
  201. package/dist/src/server/features/control-plane/services/workspace-diff.js.map +0 -1
  202. package/dist/src/server/features/control-plane/services/workspace-files.d.ts +0 -27
  203. package/dist/src/server/features/control-plane/services/workspace-files.d.ts.map +0 -1
  204. package/dist/src/server/features/control-plane/services/workspace-files.js +0 -137
  205. package/dist/src/server/features/control-plane/services/workspace-files.js.map +0 -1
@@ -1,7 +1,7 @@
1
1
  import { useCallback, useEffect, useState } from 'react';
2
2
  import { submitChatPrompt } from '../../submit.js';
3
3
  import { buildPromptWithFileMentions } from '../../utils/file-mentions.js';
4
- export function usePromptSubmissionController({ runtime, activeModel, activeReasoningEffort, setActiveModel, setActiveReasoningEffort, sessions, recentSessions, activeSessionId, activeSession, apiKeyPresent, nextLocalId, setStatus, switchSession, closeSession, updateSessionById, updateActiveSession, createSession, renameSession, listRecentSessionsMessage, driftEnabled, driftError, setDriftEnabled, executeTurn, executeDirectShellCommand, saveTuiSnapshotMessage, isRunning, pendingApproval, mentionableFiles, modelPicker, reasoningPicker, sessionPicker, fileMentionPicker, resetPickerIndexes, }) {
4
+ export function usePromptSubmissionController({ runtime, activeModel, activeReasoningEffort, setActiveModel, setActiveReasoningEffort, sessions, recentSessions, activeSessionId, activeSession, apiKeyPresent, nextLocalId, setStatus, switchSession, closeSession, sessionService, refreshSessions, updateActiveSession, createSession, renameSession, listRecentSessionsMessage, driftEnabled, driftError, setDriftEnabled, executeTurn, executeDirectShellCommand, saveTuiSnapshotMessage, isRunning, pendingApproval, mentionableFiles, modelPicker, reasoningPicker, sessionPicker, fileMentionPicker, resetPickerIndexes, }) {
5
5
  const [pendingSubmittedPrompt, setPendingSubmittedPrompt] = useState();
6
6
  const preparePromptWithMentions = useCallback((prompt) => {
7
7
  const prepared = buildPromptWithFileMentions(prompt, runtime.workspaceRoot, mentionableFiles);
@@ -17,11 +17,9 @@ export function usePromptSubmissionController({ runtime, activeModel, activeReas
17
17
  text: prompt,
18
18
  isPending: true,
19
19
  };
20
- updateActiveSession((session) => ({
21
- ...session,
22
- messages: [...session.messages, message],
23
- }));
24
- }, [nextLocalId, updateActiveSession]);
20
+ sessionService.appendMessage(activeSessionId, message);
21
+ refreshSessions();
22
+ }, [activeSessionId, nextLocalId, refreshSessions, sessionService]);
25
23
  const saveTuiSnapshot = useCallback(() => {
26
24
  if (saveTuiSnapshotMessage) {
27
25
  return saveTuiSnapshotMessage();
@@ -38,6 +36,8 @@ export function usePromptSubmissionController({ runtime, activeModel, activeReas
38
36
  return;
39
37
  }
40
38
  if (options?.allowWhileRunning && pendingSubmittedPrompt === value) {
39
+ // Desired shape: ConversationSessionService should own the pending-message
40
+ // status transition once it has a named operation for that behavior.
41
41
  updateActiveSession((session) => {
42
42
  const pendingIndex = session.messages.findIndex((message) => message.role === 'user' && message.text === value && message.isPending);
43
43
  if (pendingIndex < 0) {
@@ -64,8 +64,8 @@ export function usePromptSubmissionController({ runtime, activeModel, activeReas
64
64
  setStatus,
65
65
  switchSession,
66
66
  closeSession,
67
- updateSessionById,
68
- updateActiveSession,
67
+ sessionService,
68
+ refreshSessions,
69
69
  createSession,
70
70
  renameSession,
71
71
  listRecentSessionsMessage,
@@ -137,7 +137,8 @@ export function usePromptSubmissionController({ runtime, activeModel, activeReas
137
137
  setStatus,
138
138
  switchSession,
139
139
  closeSession,
140
- updateSessionById,
140
+ sessionService,
141
+ refreshSessions,
141
142
  updateActiveSession,
142
143
  createSession,
143
144
  renameSession,
@@ -1 +1 @@
1
- {"version":3,"file":"usePromptSubmissionController.js","sourceRoot":"","sources":["../../../../../../src/cli/chat/hooks/controllers/usePromptSubmissionController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"usePromptSubmissionController.js","sourceRoot":"","sources":["../../../../../../src/cli/chat/hooks/controllers/usePromptSubmissionController.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  import type { CyberLoopDriftLevel, CyberLoopObserverAnnotation } from '../../../index.js';
2
2
  import type { ChatSession } from '../state/types.js';
3
- type ActiveSessionUpdater = (updater: (session: ChatSession) => ChatSession) => void;
4
- export declare function useChatDrift({ activeSession, updateActiveSession, }: {
3
+ import type { ConversationSessionService } from '../../../core/chat/engine/types.js';
4
+ export declare function useChatDrift({ activeSession, sessionService, refreshSessions, }: {
5
5
  activeSession?: ChatSession;
6
- updateActiveSession: ActiveSessionUpdater;
6
+ sessionService: ConversationSessionService;
7
+ refreshSessions: () => void;
7
8
  }): {
8
9
  enabled: boolean;
9
10
  level: CyberLoopDriftLevel;
@@ -18,5 +19,4 @@ export declare function useChatDrift({ activeSession, updateActiveSession, }: {
18
19
  footer: string;
19
20
  color: import("../utils/drift-footer.js").DriftFooterColor;
20
21
  };
21
- export {};
22
22
  //# sourceMappingURL=useChatDrift.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useChatDrift.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/useChatDrift.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAC1F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD,KAAK,oBAAoB,GAAG,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW,KAAK,IAAI,CAAC;AAErF,wBAAgB,YAAY,CAAC,EAC3B,aAAa,EACb,mBAAmB,GACpB,EAAE;IACD,aAAa,CAAC,EAAE,WAAW,CAAC;IAC5B,mBAAmB,EAAE,oBAAoB,CAAC;CAC3C;;;;8BAgB8C,OAAO;;;;mCAevB,2BAA2B;0BACpC,OAAO;;;;EAY5B"}
1
+ {"version":3,"file":"useChatDrift.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/useChatDrift.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAC1F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAGrF,wBAAgB,YAAY,CAAC,EAC3B,aAAa,EACb,cAAc,EACd,eAAe,GAChB,EAAE;IACD,aAAa,CAAC,EAAE,WAAW,CAAC;IAC5B,cAAc,EAAE,0BAA0B,CAAC;IAC3C,eAAe,EAAE,MAAM,IAAI,CAAC;CAC7B;;;;8BAgB8C,OAAO;;;;mCAiBvB,2BAA2B;0BACpC,OAAO;;;;EAY5B"}
@@ -1,6 +1,6 @@
1
1
  import { useCallback, useEffect, useMemo, useState } from 'react';
2
2
  import { driftFooterColor, formatDriftFooter } from '../utils/drift-footer.js';
3
- export function useChatDrift({ activeSession, updateActiveSession, }) {
3
+ export function useChatDrift({ activeSession, sessionService, refreshSessions, }) {
4
4
  const [enabled, setEnabledState] = useState(true);
5
5
  const [level, setLevel] = useState('unknown');
6
6
  const [error, setError] = useState();
@@ -16,11 +16,12 @@ export function useChatDrift({ activeSession, updateActiveSession, }) {
16
16
  const setEnabled = useCallback((nextEnabled) => {
17
17
  setEnabledState(nextEnabled);
18
18
  setError(undefined);
19
- updateActiveSession((session) => ({
20
- ...session,
21
- driftEnabled: nextEnabled,
22
- }));
23
- }, [updateActiveSession]);
19
+ if (!activeSession) {
20
+ return;
21
+ }
22
+ sessionService.setDriftEnabled(activeSession.id, nextEnabled);
23
+ refreshSessions();
24
+ }, [activeSession, refreshSessions, sessionService]);
24
25
  const observer = useMemo(() => ({
25
26
  enabled,
26
27
  onRunStart: () => {
@@ -1 +1 @@
1
- {"version":3,"file":"useChatDrift.js","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/useChatDrift.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGlE,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAI/E,MAAM,UAAU,YAAY,CAAC,EAC3B,aAAa,EACb,mBAAmB,GAIpB;IACC,MAAM,CAAC,OAAO,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAsB,SAAS,CAAC,CAAC;IACnE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,EAAsB,CAAC;IAEzD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,MAAM,cAAc,GAAG,aAAa,CAAC,YAAY,IAAI,IAAI,CAAC;QAC1D,IAAI,cAAc,KAAK,OAAO,EAAE,CAAC;YAC/B,eAAe,CAAC,cAAc,CAAC,CAAC;QAClC,CAAC;IACH,CAAC,EAAE,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC;IAE7B,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,WAAoB,EAAE,EAAE;QACtD,eAAe,CAAC,WAAW,CAAC,CAAC;QAC7B,QAAQ,CAAC,SAAS,CAAC,CAAC;QACpB,mBAAmB,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAChC,GAAG,OAAO;YACV,YAAY,EAAE,WAAW;SAC1B,CAAC,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAE1B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAC9B,OAAO;QACP,UAAU,EAAE,GAAG,EAAE;YACf,QAAQ,CAAC,SAAS,CAAC,CAAC;YACpB,QAAQ,CAAC,SAAS,CAAC,CAAC;QACtB,CAAC;QACD,YAAY,EAAE,CAAC,UAAuC,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC;QAC1F,OAAO,EAAE,CAAC,MAAe,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;KAClG,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEf,OAAO;QACL,OAAO;QACP,KAAK;QACL,KAAK;QACL,UAAU;QACV,QAAQ;QACR,MAAM,EAAE,iBAAiB,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC;QAChD,KAAK,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC;KAC/C,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"useChatDrift.js","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/useChatDrift.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAIlE,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE/E,MAAM,UAAU,YAAY,CAAC,EAC3B,aAAa,EACb,cAAc,EACd,eAAe,GAKhB;IACC,MAAM,CAAC,OAAO,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAsB,SAAS,CAAC,CAAC;IACnE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,EAAsB,CAAC;IAEzD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,MAAM,cAAc,GAAG,aAAa,CAAC,YAAY,IAAI,IAAI,CAAC;QAC1D,IAAI,cAAc,KAAK,OAAO,EAAE,CAAC;YAC/B,eAAe,CAAC,cAAc,CAAC,CAAC;QAClC,CAAC;IACH,CAAC,EAAE,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC;IAE7B,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,WAAoB,EAAE,EAAE;QACtD,eAAe,CAAC,WAAW,CAAC,CAAC;QAC7B,QAAQ,CAAC,SAAS,CAAC,CAAC;QACpB,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,cAAc,CAAC,eAAe,CAAC,aAAa,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;QAC9D,eAAe,EAAE,CAAC;IACpB,CAAC,EAAE,CAAC,aAAa,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC,CAAC;IAErD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAC9B,OAAO;QACP,UAAU,EAAE,GAAG,EAAE;YACf,QAAQ,CAAC,SAAS,CAAC,CAAC;YACpB,QAAQ,CAAC,SAAS,CAAC,CAAC;QACtB,CAAC;QACD,YAAY,EAAE,CAAC,UAAuC,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC;QAC1F,OAAO,EAAE,CAAC,MAAe,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;KAClG,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEf,OAAO;QACL,OAAO;QACP,KAAK;QACL,KAAK;QACL,UAAU;QACV,QAAQ;QACR,MAAM,EAAE,iBAAiB,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC;QAChD,KAAK,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC;KAC/C,CAAC;AACJ,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import type { ChatSession } from '../state/types.js';
2
2
  import type { SessionExecutionPreferences } from '../../../core/chat/engine/sessions/preferences/service.js';
3
+ import { FileConversationSessionService } from '../../../core/chat/engine/sessions/service.js';
3
4
  type UseChatSessionsArgs = {
4
5
  sessionCatalogFile: string;
5
6
  apiKeyPresent: boolean;
@@ -9,6 +10,8 @@ type UseChatSessionsArgs = {
9
10
  };
10
11
  export declare function useChatSessions({ sessionCatalogFile, apiKeyPresent, defaultModel, workspaceRoot, stateRoot }: UseChatSessionsArgs): {
11
12
  sessions: ChatSession[];
13
+ sessionService: FileConversationSessionService;
14
+ refreshSessions: () => void;
12
15
  activeSessionId: string;
13
16
  setActiveSessionId: import("react").Dispatch<import("react").SetStateAction<string>>;
14
17
  activeSession: ChatSession;
@@ -1 +1 @@
1
- {"version":3,"file":"useChatSessions.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/useChatSessions.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,2DAA2D,CAAC;AAO7G,KAAK,mBAAmB,GAAG;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAgB,eAAe,CAAC,EAAE,kBAAkB,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,EAAE,mBAAmB;;;;;;;;mCAqD9E,MAAM,WAAW,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW;mCAStD,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW;uCAIjC,MAAM,eAAe,2BAA2B;2BAY5D,MAAM,gBAAgB,2BAA2B;0BAiBlD,MAAM;wBAIR,MAAM;EA+B9C"}
1
+ {"version":3,"file":"useChatSessions.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/useChatSessions.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,2DAA2D,CAAC;AAE7G,OAAO,EAAE,8BAA8B,EAAE,MAAM,+CAA+C,CAAC;AAE/F,KAAK,mBAAmB,GAAG;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAgB,eAAe,CAAC,EAAE,kBAAkB,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,EAAE,mBAAmB;;;;;;;;;;mCA8D9E,MAAM,WAAW,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW;mCAStD,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW;uCAIjC,MAAM,eAAe,2BAA2B;2BAK5D,MAAM,gBAAgB,2BAA2B;0BAiBlD,MAAM;wBAKR,MAAM;EAiC9C"}
@@ -14,18 +14,21 @@
14
14
  import { useCallback, useEffect, useMemo, useState } from 'react';
15
15
  import { resolveWorkspaceContext } from '../../../core/runtime/workspaces.js';
16
16
  import { resolveNewSessionExecutionPreferences } from '../../../core/chat/engine/sessions/preferences/service.js';
17
- import { createConversationSessionService, summarizeConversationSession, } from '../../../core/chat/engine/sessions/service.js';
17
+ import { FileConversationSessionService } from '../../../core/chat/engine/sessions/service.js';
18
18
  export function useChatSessions({ sessionCatalogFile, apiKeyPresent, defaultModel, workspaceRoot, stateRoot }) {
19
19
  const workspaceId = useMemo(() => resolveWorkspaceContext({ workspaceRoot, stateRoot }).activeWorkspace.id, [workspaceRoot, stateRoot]);
20
- const sessionService = useMemo(() => createConversationSessionService({
21
- config: {
22
- workspaceRoot,
23
- stateRoot,
24
- sessionStoragePath: sessionCatalogFile,
25
- model: defaultModel,
26
- apiKeyPresent,
27
- workspaceId,
28
- },
20
+ const sessionService = useMemo(() =>
21
+ // Desired shape: this hook should eventually receive
22
+ // createConversationEngine(...).sessions from the host boundary. Direct
23
+ // construction is acceptable only while TUI still lacks one shared
24
+ // engine-facing runtime config object.
25
+ new FileConversationSessionService({
26
+ workspaceRoot,
27
+ stateRoot,
28
+ sessionStoragePath: sessionCatalogFile,
29
+ model: defaultModel,
30
+ apiKeyPresent,
31
+ workspaceId,
29
32
  }), [apiKeyPresent, defaultModel, sessionCatalogFile, stateRoot, workspaceId, workspaceRoot]);
30
33
  const initialSessions = useMemo(() => sessionService.list(), [sessionService]);
31
34
  const [sessions, setSessions] = useState(initialSessions);
@@ -37,7 +40,7 @@ export function useChatSessions({ sessionCatalogFile, apiKeyPresent, defaultMode
37
40
  }, [activeSessionId, sessions]);
38
41
  const activeSession = useMemo(() => sessions.find((session) => session.id === activeSessionId) ?? sessions[0], [activeSessionId, sessions]);
39
42
  const recentSessions = useMemo(() => [...sessions].sort((left, right) => right.updatedAt.localeCompare(left.updatedAt)).slice(0, 8), [sessions]);
40
- const activeSessionSummary = activeSession ? summarizeConversationSession(activeSession) : undefined;
43
+ const activeSessionSummary = activeSession ? FileConversationSessionService.summarize(activeSession) : undefined;
41
44
  const listRecentSessionsMessage = recentSessions.length > 0 ?
42
45
  [
43
46
  'Recent sessions:',
@@ -46,25 +49,26 @@ export function useChatSessions({ sessionCatalogFile, apiKeyPresent, defaultMode
46
49
  'Use /session switch <id> to jump to one, or /session continue <id> to switch and resume immediately.',
47
50
  ]
48
51
  : ['No saved sessions yet.'];
52
+ const refreshSessions = useCallback(() => {
53
+ setSessions(sessionService.list());
54
+ }, [sessionService]);
55
+ // Migration escape hatch: keep this local and shrink callers over time.
56
+ // New persisted session behavior should be a named ConversationSessionService
57
+ // operation or a ConversationTurnService result, not another generic updater.
49
58
  const updateSessionById = useCallback((sessionId, updater) => {
50
59
  const updated = sessionService.update(sessionId, updater);
51
60
  if (!updated) {
52
61
  return;
53
62
  }
54
- setSessions(sessionService.list());
55
- }, [sessionService]);
63
+ refreshSessions();
64
+ }, [refreshSessions, sessionService]);
56
65
  const updateActiveSession = useCallback((updater) => {
57
66
  updateSessionById(activeSessionId, updater);
58
67
  }, [activeSessionId, updateSessionById]);
59
68
  const setSessionPreferences = useCallback((sessionId, preferences) => {
60
- updateSessionById(sessionId, (session) => (session.model === preferences.model && session.reasoningEffort === preferences.reasoningEffort ?
61
- session
62
- : {
63
- ...session,
64
- model: preferences.model,
65
- reasoningEffort: preferences.reasoningEffort,
66
- }));
67
- }, [updateSessionById]);
69
+ sessionService.updateSettings(sessionId, preferences);
70
+ refreshSessions();
71
+ }, [refreshSessions, sessionService]);
68
72
  const createSession = useCallback((name, preferences) => {
69
73
  const nextPreferences = resolveNewSessionExecutionPreferences({
70
74
  defaultModel,
@@ -82,8 +86,9 @@ export function useChatSessions({ sessionCatalogFile, apiKeyPresent, defaultMode
82
86
  return nextSession;
83
87
  }, [apiKeyPresent, defaultModel, sessionService, workspaceId]);
84
88
  const renameSession = useCallback((name) => {
85
- updateActiveSession((session) => ({ ...session, name }));
86
- }, [updateActiveSession]);
89
+ sessionService.rename(activeSessionId, name);
90
+ refreshSessions();
91
+ }, [activeSessionId, refreshSessions, sessionService]);
87
92
  const removeSession = useCallback((id) => {
88
93
  const removedActive = id === activeSessionId;
89
94
  const deleted = sessionService.delete(id);
@@ -99,6 +104,8 @@ export function useChatSessions({ sessionCatalogFile, apiKeyPresent, defaultMode
99
104
  }, [activeSessionId, sessionService]);
100
105
  return {
101
106
  sessions,
107
+ sessionService,
108
+ refreshSessions,
102
109
  activeSessionId,
103
110
  setActiveSessionId,
104
111
  activeSession,
@@ -1 +1 @@
1
- {"version":3,"file":"useChatSessions.js","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/useChatSessions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useChatSessions.js","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/useChatSessions.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,7 @@
1
+ import type { ConversationSessionService } from '../../core/chat/engine/types.js';
1
2
  import type { ReasoningEffort } from '../../core/llm/types.js';
2
3
  import type { ChatSession } from './state/types.js';
3
4
  import type { ProviderCredentialSource } from './utils/runtime.js';
4
- type SessionUpdater = (sessionId: string, updater: (session: ChatSession) => ChatSession) => void;
5
- type ActiveSessionUpdater = (updater: (session: ChatSession) => ChatSession) => void;
6
5
  type SubmitChatPromptArgs = {
7
6
  value: string;
8
7
  isRunning: boolean;
@@ -19,8 +18,8 @@ type SubmitChatPromptArgs = {
19
18
  setStatus: (value: string) => void;
20
19
  switchSession: (id: string) => void;
21
20
  closeSession: (id: string) => void;
22
- updateSessionById: SessionUpdater;
23
- updateActiveSession: ActiveSessionUpdater;
21
+ sessionService: ConversationSessionService;
22
+ refreshSessions: () => void;
24
23
  createSession: (name?: string) => ChatSession;
25
24
  renameSession: (name: string) => void;
26
25
  listRecentSessionsMessage: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"submit.d.ts","sourceRoot":"","sources":["../../../../src/cli/chat/submit.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAoB,MAAM,kBAAkB,CAAC;AAEtE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAEnE,KAAK,cAAc,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW,KAAK,IAAI,CAAC;AAElG,KAAK,oBAAoB,GAAG,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW,KAAK,IAAI,CAAC;AAIrF,KAAK,oBAAoB,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,CAAC,EAAE,eAAe,CAAC;IACxC,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,wBAAwB,EAAE,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,KAAK,IAAI,CAAC;IACxE,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,cAAc,EAAE,WAAW,EAAE,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,WAAW,CAAC;IAC5B,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,MAAM,MAAM,CAAC;IAC1B,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,iBAAiB,EAAE,cAAc,CAAC;IAClC,mBAAmB,EAAE,oBAAoB,CAAC;IAC1C,aAAa,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,WAAW,CAAC;IAC9C,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,yBAAyB,EAAE,MAAM,EAAE,CAAC;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC5C,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,wBAAwB,CAAC,EAAE,wBAAwB,CAAC;IACpD,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7E,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjG,yBAAyB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjE,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;CAClD,CAAC;AAEF,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+JhF"}
1
+ {"version":3,"file":"submit.d.ts","sourceRoot":"","sources":["../../../../src/cli/chat/submit.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAClF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAoB,MAAM,kBAAkB,CAAC;AAEtE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAInE,KAAK,oBAAoB,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,CAAC,EAAE,eAAe,CAAC;IACxC,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,wBAAwB,EAAE,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,KAAK,IAAI,CAAC;IACxE,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,cAAc,EAAE,WAAW,EAAE,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,WAAW,CAAC;IAC5B,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,MAAM,MAAM,CAAC;IAC1B,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,cAAc,EAAE,0BAA0B,CAAC;IAC3C,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,aAAa,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,WAAW,CAAC;IAC9C,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,yBAAyB,EAAE,MAAM,EAAE,CAAC;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC5C,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,wBAAwB,CAAC,EAAE,wBAAwB,CAAC;IACpD,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7E,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjG,yBAAyB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjE,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;CAClD,CAAC;AAEF,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkIhF"}
@@ -1,7 +1,6 @@
1
1
  import { runLocalCommand } from './state/local-commands.js';
2
- import { buildCompactionRunningContext, compactChatHistoryWithArchive } from './state/compaction.js';
3
- import { createInitialMessages } from '../../core/chat/engine/sessions/session-record.js';
4
- import { buildConversationMessages, normalizeInlineText } from './utils/format.js';
2
+ import { compactChatHistoryWithArchive } from './state/compaction.js';
3
+ import { normalizeInlineText } from './utils/format.js';
5
4
  export async function submitChatPrompt(args) {
6
5
  const prompt = normalizeInlineText(args.value);
7
6
  if (!prompt || args.isRunning) {
@@ -25,13 +24,8 @@ export async function submitChatPrompt(args) {
25
24
  renameSession: args.renameSession,
26
25
  removeSession: args.closeSession,
27
26
  clearConversation: () => {
28
- args.updateActiveSession((session) => ({
29
- ...session,
30
- history: [],
31
- turns: [],
32
- lastContinuePrompt: undefined,
33
- messages: createInitialMessages(args.apiKeyPresent),
34
- }));
27
+ args.sessionService.resetConversation(args.activeSessionId, { apiKeyPresent: args.apiKeyPresent });
28
+ args.refreshSessions();
35
29
  },
36
30
  compactConversation: () => {
37
31
  const session = args.activeSession ?? args.sessions.find((candidate) => candidate.id === args.activeSessionId);
@@ -39,15 +33,8 @@ export async function submitChatPrompt(args) {
39
33
  return 'No active session is available to compact.';
40
34
  }
41
35
  args.setStatus('Compacting');
42
- args.updateActiveSession((currentSession) => ({
43
- ...currentSession,
44
- context: buildCompactionRunningContext({
45
- history: currentSession.history,
46
- previous: currentSession.context,
47
- archiveCount: currentSession.archives?.length,
48
- currentSummaryPath: currentSession.context?.currentSummaryPath,
49
- }),
50
- }));
36
+ args.sessionService.markCompactionRunning(session.id, { sourceHistory: session.history });
37
+ args.refreshSessions();
51
38
  return compactChatHistoryWithArchive({
52
39
  history: session.history,
53
40
  model: args.activeModel,
@@ -63,13 +50,8 @@ export async function submitChatPrompt(args) {
63
50
  args.setStatus('Idle');
64
51
  return 'Current session history is already compact enough.';
65
52
  }
66
- args.updateActiveSession((currentSession) => ({
67
- ...currentSession,
68
- history: compacted.history,
69
- context: compacted.context,
70
- archives: compacted.archives,
71
- messages: buildConversationMessages(compacted.history),
72
- }));
53
+ args.sessionService.applyCompactionResult(session.id, compacted);
54
+ args.refreshSessions();
73
55
  args.setStatus('Idle');
74
56
  return compacted.context.compactedMessages && compacted.context.lastArchivePath ?
75
57
  `Compacted earlier session history into a rolling summary and archived ${compacted.context.compactedMessages} messages.\nArchive: ${compacted.context.lastArchivePath}`
@@ -98,17 +80,17 @@ export async function submitChatPrompt(args) {
98
80
  }
99
81
  if (commandResult.kind === 'message') {
100
82
  if (commandResult.sessionId) {
101
- appendAssistantMessageToSession(args.updateSessionById, commandResult.sessionId, args.nextLocalId, commandResult.message);
83
+ appendAssistantMessage(args, commandResult.sessionId, commandResult.message);
102
84
  }
103
85
  else {
104
- appendAssistantMessage(args.updateActiveSession, args.nextLocalId, commandResult.message);
86
+ appendAssistantMessage(args, args.activeSessionId, commandResult.message);
105
87
  }
106
88
  args.setStatus('Idle');
107
89
  return;
108
90
  }
109
91
  if (commandResult.kind === 'execute') {
110
92
  if (commandResult.message) {
111
- appendAssistantMessage(args.updateActiveSession, args.nextLocalId, commandResult.message);
93
+ appendAssistantMessage(args, args.activeSessionId, commandResult.message);
112
94
  }
113
95
  await args.executeTurn(commandResult.prompt, commandResult.displayText);
114
96
  return;
@@ -122,41 +104,21 @@ export async function submitChatPrompt(args) {
122
104
  const targetContinuePrompt = targetSession?.lastContinuePrompt;
123
105
  const continueMessage = commandResult.message;
124
106
  if (continueMessage) {
125
- args.updateSessionById(targetId, (session) => ({
126
- ...session,
127
- messages: [...session.messages, createAssistantMessage(args.nextLocalId, continueMessage)],
128
- }));
107
+ appendAssistantMessage(args, targetId, continueMessage);
129
108
  }
130
109
  if (!targetHistory.length || !targetContinuePrompt) {
131
- args.updateSessionById(targetId, (session) => ({
132
- ...session,
133
- messages: [
134
- ...session.messages,
135
- createAssistantMessage(args.nextLocalId, 'There is no interrupted or prior run to continue yet.'),
136
- ],
137
- }));
110
+ appendAssistantMessage(args, targetId, 'There is no interrupted or prior run to continue yet.');
138
111
  args.setStatus('Idle');
139
112
  return;
140
113
  }
141
114
  if (!continueMessage) {
142
- args.updateSessionById(targetId, (session) => ({
143
- ...session,
144
- messages: [...session.messages, createAssistantMessage(args.nextLocalId, 'Continuing from the current transcript.')],
145
- }));
115
+ appendAssistantMessage(args, targetId, 'Continuing from the current transcript.');
146
116
  }
147
117
  await args.executeTurn('Continue from where you left off.', 'Continue', targetId);
148
118
  }
149
- function appendAssistantMessage(updateSession, nextLocalId, text) {
150
- updateSession((session) => ({
151
- ...session,
152
- messages: [...session.messages, createAssistantMessage(nextLocalId, text)],
153
- }));
154
- }
155
- function appendAssistantMessageToSession(updateSessionById, sessionId, nextLocalId, text) {
156
- updateSessionById(sessionId, (session) => ({
157
- ...session,
158
- messages: [...session.messages, createAssistantMessage(nextLocalId, text)],
159
- }));
119
+ function appendAssistantMessage(args, sessionId, text) {
120
+ args.sessionService.appendMessage(sessionId, createAssistantMessage(args.nextLocalId, text));
121
+ args.refreshSessions();
160
122
  }
161
123
  function createAssistantMessage(nextLocalId, text) {
162
124
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"submit.js","sourceRoot":"","sources":["../../../../src/cli/chat/submit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"submit.js","sourceRoot":"","sources":["../../../../src/cli/chat/submit.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/utils/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/utils/runtime.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../../../src/cli/chat/utils/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../../../src/cli/chat/utils/runtime.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { projectChatSessionView } from '../server/index.js';
1
+ import { ControlPlaneChatSessionPresenter } from '../server/index.js';
2
2
  export type DaemonCliOptions = {
3
3
  workspaceRoot?: string;
4
4
  stateDir?: string;
@@ -10,7 +10,7 @@ export type DaemonArgs = {
10
10
  assetsDir?: string;
11
11
  serveAssets: boolean;
12
12
  };
13
- export { projectChatSessionView };
13
+ export { ControlPlaneChatSessionPresenter };
14
14
  export declare function runDaemonCli(args: string[], options?: DaemonCliOptions): Promise<void>;
15
15
  export declare function parseDaemonArgs(args: string[]): DaemonArgs;
16
16
  //# sourceMappingURL=daemon.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../../src/cli/daemon.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,sBAAsB,EACvB,MAAM,oBAAoB,CAAC;AAG5B,MAAM,MAAM,gBAAgB,GAAG;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAKF,OAAO,EAAE,sBAAsB,EAAE,CAAC;AAElC,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,GAAE,gBAAqB,iBAehF;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAQ1D"}
1
+ {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../../src/cli/daemon.ts"],"names":[],"mappings":"AACA,OAAO,EACL,gCAAgC,EAEjC,MAAM,oBAAoB,CAAC;AAG5B,MAAM,MAAM,gBAAgB,GAAG;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAKF,OAAO,EAAE,gCAAgC,EAAE,CAAC;AAE5C,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,GAAE,gBAAqB,iBAehF;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAQ1D"}
@@ -1,8 +1,8 @@
1
1
  import { resolve } from 'node:path';
2
- import { listenHeddleDaemon, projectChatSessionView, } from '../server/index.js';
2
+ import { ControlPlaneChatSessionPresenter, listenHeddleDaemon, } from '../server/index.js';
3
3
  const DEFAULT_HOST = '127.0.0.1';
4
4
  const DEFAULT_PORT = 8765;
5
- export { projectChatSessionView };
5
+ export { ControlPlaneChatSessionPresenter };
6
6
  export async function runDaemonCli(args, options = {}) {
7
7
  const parsed = parseDaemonArgs(args);
8
8
  const workspaceRoot = options.workspaceRoot ?? process.cwd();
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../../../src/cli/daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../../../src/cli/daemon.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ import { listMemoryNotePaths, loadMemoryStatus, readMemoryNote, searchMemoryNote
10
10
  import { repairMissingMemoryCatalogs, validateMemoryWorkspace, } from '../core/memory/validation.js';
11
11
  import { resolveApiKeyForModel } from '../core/runtime/api-keys.js';
12
12
  import { runAuthCli } from './auth.js';
13
- import { runAskCli } from './ask.js';
13
+ import { AskCliHost } from './ask.js';
14
14
  import { startChatCli } from './chat/index.js';
15
15
  import { runDaemonCli } from './daemon.js';
16
16
  import { runEvalCli } from './eval/index.js';
@@ -54,7 +54,7 @@ async function main() {
54
54
  .action(async (goalParts, askOptions) => {
55
55
  const resolved = resolveCliOptions(program.opts());
56
56
  chdir(resolved.workspaceRoot);
57
- await runAskCli(goalParts.join(' ').trim(), {
57
+ await AskCliHost.run(goalParts.join(' ').trim(), {
58
58
  workspaceRoot: resolved.workspaceRoot,
59
59
  model: resolved.model,
60
60
  maxSteps: resolved.maxSteps,
@@ -236,7 +236,7 @@ async function main() {
236
236
  if (knownCommand && !isKnownCommand(knownCommand) && !knownCommand.startsWith('-')) {
237
237
  const resolved = resolveCliOptions(program.opts());
238
238
  chdir(resolved.workspaceRoot);
239
- await runAskCli(argv.join(' ').trim(), {
239
+ await AskCliHost.run(argv.join(' ').trim(), {
240
240
  workspaceRoot: resolved.workspaceRoot,
241
241
  model: resolved.model,
242
242
  maxSteps: resolved.maxSteps,