@jingyi0605/codingns 0.7.4 → 0.8.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 (416) hide show
  1. package/README.md +6 -0
  2. package/bin/codingns.mjs +747 -28
  3. package/bin/office-mcp-server.mjs +620 -0
  4. package/dist/public/assets/{AdaptiveButlerPage-CgBX49t-.js → AdaptiveButlerPage-BsgVNRAa.js} +1 -1
  5. package/dist/public/assets/{App-tXOqoHNl.js → App-tPcbyRdS.js} +3 -3
  6. package/dist/public/assets/{BootstrapPage-DoRMz87R.js → BootstrapPage--MDOigQi.js} +1 -1
  7. package/dist/public/assets/{ConversationPage-DXR6Hp4O.js → ConversationPage-BBss5ED8.js} +6 -6
  8. package/dist/public/assets/{DesktopDetachPreviewPage-Cyk-ZYCk.js → DesktopDetachPreviewPage-CB8DoqwU.js} +1 -1
  9. package/dist/public/assets/{DesktopWindowPage-DNVNK3hs.js → DesktopWindowPage-GtIx5m8K.js} +1 -1
  10. package/dist/public/assets/FileContextPanel-BcM7AIT4.js +1 -0
  11. package/dist/public/assets/{GitSidebar-Cr3Z9OUI.js → GitSidebar-CMtkaxuI.js} +2 -2
  12. package/dist/public/assets/{MobileCreateSessionSheet-DMW0V6GJ.js → MobileCreateSessionSheet-CrFY41_8.js} +1 -1
  13. package/dist/public/assets/{MobileTopHeaderFrame-CkdnZ_MU.js → MobileTopHeaderFrame-DGVOzXyg.js} +1 -1
  14. package/dist/public/assets/{MobileWorkspaceSwitcherHeader-KIbqBYJN.js → MobileWorkspaceSwitcherHeader-DLkACTnQ.js} +1 -1
  15. package/dist/public/assets/{RelayConnectEntryPage-DIRBH3hw.js → RelayConnectEntryPage-0MPPjxtQ.js} +1 -1
  16. package/dist/public/assets/{ServerSettingsModal-C-9RxdWP.js → ServerSettingsModal-vgOhwus4.js} +1 -1
  17. package/dist/public/assets/{SessionIndexPage-bRlIydRA.js → SessionIndexPage-KK626Ra9.js} +1 -1
  18. package/dist/public/assets/{SettingsPage-CMEt4ua9.js → SettingsPage-B3edBJIo.js} +2 -2
  19. package/dist/public/assets/{TerminalManagerPanel-2bi9wVhT.js → TerminalManagerPanel-BxlhZp8c.js} +1 -1
  20. package/dist/public/assets/{TerminalPage-DayZz2Tf.js → TerminalPage-B6Rdhylx.js} +1 -1
  21. package/dist/public/assets/{TerminalRuntimeFallbackModal-DgwYcp-Y.js → TerminalRuntimeFallbackModal-BVLfrpSa.js} +1 -1
  22. package/dist/public/assets/{ToolFilesPage-YvnP_FXW.js → ToolFilesPage-N_gwwUjD.js} +1 -1
  23. package/dist/public/assets/{ToolGitPage-GMcQKtV9.js → ToolGitPage-DOcuuWM1.js} +1 -1
  24. package/dist/public/assets/{ToolProcessesPage-DFIQ7BCd.js → ToolProcessesPage-D-FfJ7Re.js} +1 -1
  25. package/dist/public/assets/{ToolsHomePage-CSilFzXR.js → ToolsHomePage-CHfPxd20.js} +1 -1
  26. package/dist/public/assets/{WorkbenchLandingPage-1VtToSz9.js → WorkbenchLandingPage-CTTnfovY.js} +1 -1
  27. package/dist/public/assets/WorkbenchLayout-CbpJg0g1.js +244 -0
  28. package/dist/public/assets/{WorkbenchModal-BWXYSXmC.js → WorkbenchModal-Bt_1fYmM.js} +1 -1
  29. package/dist/public/assets/WorkbenchShellRoute-B4XB8SwG.css +1 -0
  30. package/dist/public/assets/WorkbenchShellRoute-DyaMnPfS.js +1 -0
  31. package/dist/public/assets/{WorkspaceDebugDetailPage-Ux8_Q7la.js → WorkspaceDebugDetailPage-s7yuDIxR.js} +1 -1
  32. package/dist/public/assets/{WorkspaceDetailPage-B402p99m.js → WorkspaceDetailPage-Cf-gVpqK.js} +1 -1
  33. package/dist/public/assets/{WorkspaceHomePage-D2pob6HI.js → WorkspaceHomePage-COf6I8sT.js} +1 -1
  34. package/dist/public/assets/{client-runtime-manager-C5D76ewj.js → client-runtime-manager-DGdKvYzx.js} +1 -1
  35. package/dist/public/assets/file-tree-icon-BeHqeru9.js +590 -0
  36. package/dist/public/assets/index-CcaQt50x.css +1 -0
  37. package/dist/public/assets/index-CuzMc7q2.js +42 -0
  38. package/dist/public/assets/{login-direct-candidate-resolver-wXSaB0i7.js → login-direct-candidate-resolver-DEP_xCmR.js} +1 -1
  39. package/dist/public/assets/{model-switch-api-CPtou49j.js → model-switch-api-c6kcbBGm.js} +1 -1
  40. package/dist/public/assets/{preferences-service-CdaK7zA8.js → preferences-service-CV6Ih0BG.js} +1 -1
  41. package/dist/public/assets/{realtime-client-BjQazYsK.js → realtime-client-CRCx5xBt.js} +1 -1
  42. package/dist/public/assets/{relay-entry-BwE5nw0l.js → relay-entry-C751A-Sm.js} +1 -1
  43. package/dist/public/assets/{terminal-runtime-meta-C-Lbyx2i.js → terminal-runtime-meta-CRAVR-8G.js} +1 -1
  44. package/dist/public/assets/{useRegisteredDebugTemplates-BM7-c-gx.js → useRegisteredDebugTemplates-D6YtNS0r.js} +1 -1
  45. package/dist/public/index.html +2 -2
  46. package/dist/server/config/env.d.ts +3 -0
  47. package/dist/server/config/env.js +67 -1
  48. package/dist/server/config/env.js.map +1 -1
  49. package/dist/server/config/opencode-base-url-resolver.d.ts +3 -2
  50. package/dist/server/config/opencode-base-url-resolver.js +64 -24
  51. package/dist/server/config/opencode-base-url-resolver.js.map +1 -1
  52. package/dist/server/middlewares/auth-guard.js +4 -0
  53. package/dist/server/middlewares/auth-guard.js.map +1 -1
  54. package/dist/server/modules/assistant-capability/assistant-capability-controller.d.ts +168 -1
  55. package/dist/server/modules/assistant-capability/assistant-capability-controller.js +205 -4
  56. package/dist/server/modules/assistant-capability/assistant-capability-controller.js.map +1 -1
  57. package/dist/server/modules/assistant-capability/assistant-capability-service.d.ts +296 -2
  58. package/dist/server/modules/assistant-capability/assistant-capability-service.js +872 -3
  59. package/dist/server/modules/assistant-capability/assistant-capability-service.js.map +1 -1
  60. package/dist/server/modules/auth/auth-service.d.ts +21 -1
  61. package/dist/server/modules/auth/auth-service.js +64 -0
  62. package/dist/server/modules/auth/auth-service.js.map +1 -1
  63. package/dist/server/modules/browser-runtime/browser-profile-service.d.ts +26 -0
  64. package/dist/server/modules/browser-runtime/browser-profile-service.js +85 -0
  65. package/dist/server/modules/browser-runtime/browser-profile-service.js.map +1 -0
  66. package/dist/server/modules/browser-runtime/browser-runtime-controller.d.ts +69 -0
  67. package/dist/server/modules/browser-runtime/browser-runtime-controller.js +83 -0
  68. package/dist/server/modules/browser-runtime/browser-runtime-controller.js.map +1 -0
  69. package/dist/server/modules/browser-runtime/browser-runtime-service.d.ts +56 -0
  70. package/dist/server/modules/browser-runtime/browser-runtime-service.js +215 -0
  71. package/dist/server/modules/browser-runtime/browser-runtime-service.js.map +1 -0
  72. package/dist/server/modules/browser-runtime/browser-task-execution-support.d.ts +65 -0
  73. package/dist/server/modules/browser-runtime/browser-task-execution-support.js +432 -0
  74. package/dist/server/modules/browser-runtime/browser-task-execution-support.js.map +1 -0
  75. package/dist/server/modules/browser-runtime/browser-task-executor-registry.d.ts +7 -0
  76. package/dist/server/modules/browser-runtime/browser-task-executor-registry.js +21 -0
  77. package/dist/server/modules/browser-runtime/browser-task-executor-registry.js.map +1 -0
  78. package/dist/server/modules/browser-runtime/browser-task-executor.d.ts +55 -0
  79. package/dist/server/modules/browser-runtime/browser-task-executor.js +2 -0
  80. package/dist/server/modules/browser-runtime/browser-task-executor.js.map +1 -0
  81. package/dist/server/modules/browser-runtime/browser-task-payload.d.ts +31 -0
  82. package/dist/server/modules/browser-runtime/browser-task-payload.js +55 -0
  83. package/dist/server/modules/browser-runtime/browser-task-payload.js.map +1 -0
  84. package/dist/server/modules/browser-runtime/opencli-bridge-browser-executor.d.ts +19 -0
  85. package/dist/server/modules/browser-runtime/opencli-bridge-browser-executor.js +219 -0
  86. package/dist/server/modules/browser-runtime/opencli-bridge-browser-executor.js.map +1 -0
  87. package/dist/server/modules/browser-runtime/opencli-browser-bridge-service.d.ts +15 -0
  88. package/dist/server/modules/browser-runtime/opencli-browser-bridge-service.js +33 -0
  89. package/dist/server/modules/browser-runtime/opencli-browser-bridge-service.js.map +1 -0
  90. package/dist/server/modules/browser-runtime/playwright-browser-executor.d.ts +16 -0
  91. package/dist/server/modules/browser-runtime/playwright-browser-executor.js +272 -0
  92. package/dist/server/modules/browser-runtime/playwright-browser-executor.js.map +1 -0
  93. package/dist/server/modules/butler/butler-auth-service.js +4 -0
  94. package/dist/server/modules/butler/butler-auth-service.js.map +1 -1
  95. package/dist/server/modules/butler/butler-inbox-instruction-adapter.js +1 -0
  96. package/dist/server/modules/butler/butler-inbox-instruction-adapter.js.map +1 -1
  97. package/dist/server/modules/butler/butler-session-summary-service.d.ts +1 -0
  98. package/dist/server/modules/butler/butler-session-summary-service.js +5 -3
  99. package/dist/server/modules/butler/butler-session-summary-service.js.map +1 -1
  100. package/dist/server/modules/butler/butler-workspace-context.js +23 -0
  101. package/dist/server/modules/butler/butler-workspace-context.js.map +1 -1
  102. package/dist/server/modules/debug-target/debug-target-service.d.ts +2 -0
  103. package/dist/server/modules/debug-target/debug-target-service.js +14 -0
  104. package/dist/server/modules/debug-target/debug-target-service.js.map +1 -1
  105. package/dist/server/modules/document-runtime/document-docx-fallback-renderer.py +139 -0
  106. package/dist/server/modules/document-runtime/document-export-executor.d.ts +50 -0
  107. package/dist/server/modules/document-runtime/document-export-executor.js +827 -0
  108. package/dist/server/modules/document-runtime/document-export-executor.js.map +1 -0
  109. package/dist/server/modules/document-runtime/document-runtime-controller.d.ts +127 -0
  110. package/dist/server/modules/document-runtime/document-runtime-controller.js +131 -0
  111. package/dist/server/modules/document-runtime/document-runtime-controller.js.map +1 -0
  112. package/dist/server/modules/document-runtime/document-runtime-service.d.ts +125 -0
  113. package/dist/server/modules/document-runtime/document-runtime-service.js +706 -0
  114. package/dist/server/modules/document-runtime/document-runtime-service.js.map +1 -0
  115. package/dist/server/modules/office/office-controller.d.ts +77 -0
  116. package/dist/server/modules/office/office-controller.js +174 -0
  117. package/dist/server/modules/office/office-controller.js.map +1 -0
  118. package/dist/server/modules/office/office-preview-link-service.d.ts +27 -0
  119. package/dist/server/modules/office/office-preview-link-service.js +121 -0
  120. package/dist/server/modules/office/office-preview-link-service.js.map +1 -0
  121. package/dist/server/modules/office/office-service.d.ts +67 -0
  122. package/dist/server/modules/office/office-service.js +359 -0
  123. package/dist/server/modules/office/office-service.js.map +1 -0
  124. package/dist/server/modules/opencli/opencli-bridge-skill-service.js +38 -14
  125. package/dist/server/modules/opencli/opencli-bridge-skill-service.js.map +1 -1
  126. package/dist/server/modules/opencli/opencli-install-discovery.d.ts +4 -0
  127. package/dist/server/modules/opencli/opencli-install-discovery.js +94 -0
  128. package/dist/server/modules/opencli/opencli-install-discovery.js.map +1 -1
  129. package/dist/server/modules/opencli/opencli-runtime-builder.js +29 -0
  130. package/dist/server/modules/opencli/opencli-runtime-builder.js.map +1 -1
  131. package/dist/server/modules/opencli/opencli-runtime-guard.d.ts +2 -0
  132. package/dist/server/modules/opencli/opencli-runtime-guard.js +5 -0
  133. package/dist/server/modules/opencli/opencli-runtime-guard.js.map +1 -0
  134. package/dist/server/modules/ops-runtime/ops-runtime-controller.d.ts +70 -0
  135. package/dist/server/modules/ops-runtime/ops-runtime-controller.js +83 -0
  136. package/dist/server/modules/ops-runtime/ops-runtime-controller.js.map +1 -0
  137. package/dist/server/modules/ops-runtime/ops-runtime-service.d.ts +80 -0
  138. package/dist/server/modules/ops-runtime/ops-runtime-service.js +327 -0
  139. package/dist/server/modules/ops-runtime/ops-runtime-service.js.map +1 -0
  140. package/dist/server/modules/ops-runtime/ssh-ops-executor.d.ts +41 -0
  141. package/dist/server/modules/ops-runtime/ssh-ops-executor.js +478 -0
  142. package/dist/server/modules/ops-runtime/ssh-ops-executor.js.map +1 -0
  143. package/dist/server/modules/presentation/presentation-controller.d.ts +22 -0
  144. package/dist/server/modules/presentation/presentation-controller.js +59 -0
  145. package/dist/server/modules/presentation/presentation-controller.js.map +1 -0
  146. package/dist/server/modules/presentation/presentation-export-task-service.d.ts +24 -0
  147. package/dist/server/modules/presentation/presentation-export-task-service.js +137 -0
  148. package/dist/server/modules/presentation/presentation-export-task-service.js.map +1 -0
  149. package/dist/server/modules/presentation/presentation-export-types.d.ts +12 -0
  150. package/dist/server/modules/presentation/presentation-export-types.js +2 -0
  151. package/dist/server/modules/presentation/presentation-export-types.js.map +1 -0
  152. package/dist/server/modules/presentation/presentation-pdf-export-service.d.ts +20 -0
  153. package/dist/server/modules/presentation/presentation-pdf-export-service.js +29 -0
  154. package/dist/server/modules/presentation/presentation-pdf-export-service.js.map +1 -0
  155. package/dist/server/modules/presentation/presentation-pptx-export-service.d.ts +20 -0
  156. package/dist/server/modules/presentation/presentation-pptx-export-service.js +64 -0
  157. package/dist/server/modules/presentation/presentation-pptx-export-service.js.map +1 -0
  158. package/dist/server/modules/presentation/presentation-renderer.d.ts +21 -0
  159. package/dist/server/modules/presentation/presentation-renderer.js +208 -0
  160. package/dist/server/modules/presentation/presentation-renderer.js.map +1 -0
  161. package/dist/server/modules/relay-tunnel/relay-tunnel-gateway-service.js +3 -3
  162. package/dist/server/modules/relay-tunnel/relay-tunnel-gateway-service.js.map +1 -1
  163. package/dist/server/modules/relay-tunnel/relay-tunnel-service.js +6 -1
  164. package/dist/server/modules/relay-tunnel/relay-tunnel-service.js.map +1 -1
  165. package/dist/server/modules/sessions/codex-app-server-helper-process.js +2 -1
  166. package/dist/server/modules/sessions/codex-app-server-helper-process.js.map +1 -1
  167. package/dist/server/modules/sessions/session-controller.d.ts +1 -0
  168. package/dist/server/modules/sessions/session-controller.js +59 -4
  169. package/dist/server/modules/sessions/session-controller.js.map +1 -1
  170. package/dist/server/modules/sessions/session-history-service.js +17 -5
  171. package/dist/server/modules/sessions/session-history-service.js.map +1 -1
  172. package/dist/server/modules/sessions/session-live-runtime-service.d.ts +5 -1
  173. package/dist/server/modules/sessions/session-live-runtime-service.js +86 -8
  174. package/dist/server/modules/sessions/session-live-runtime-service.js.map +1 -1
  175. package/dist/server/modules/sessions/session-provider-config-service.d.ts +25 -1
  176. package/dist/server/modules/sessions/session-provider-config-service.js +54 -5
  177. package/dist/server/modules/sessions/session-provider-config-service.js.map +1 -1
  178. package/dist/server/modules/sessions/workspace-office-mcp-config.d.ts +14 -0
  179. package/dist/server/modules/sessions/workspace-office-mcp-config.js +54 -0
  180. package/dist/server/modules/sessions/workspace-office-mcp-config.js.map +1 -0
  181. package/dist/server/modules/sessions/workspace-session-auth-service.d.ts +27 -0
  182. package/dist/server/modules/sessions/workspace-session-auth-service.js +109 -0
  183. package/dist/server/modules/sessions/workspace-session-auth-service.js.map +1 -0
  184. package/dist/server/modules/sessions/workspace-session-runtime-context-service.d.ts +50 -0
  185. package/dist/server/modules/sessions/workspace-session-runtime-context-service.js +332 -0
  186. package/dist/server/modules/sessions/workspace-session-runtime-context-service.js.map +1 -0
  187. package/dist/server/modules/skills/assistant-runtime-skill-catalog.js +5 -0
  188. package/dist/server/modules/skills/assistant-runtime-skill-catalog.js.map +1 -1
  189. package/dist/server/modules/skills/builtin-skills/codingns-workspace-session/SKILL.md +67 -0
  190. package/dist/server/modules/skills/builtin-skills/codingns-workspace-session/agents/openai.yaml +4 -0
  191. package/dist/server/modules/skills/builtin-skills/codingns-workspace-session/references/cli-workflow.md +133 -0
  192. package/dist/server/modules/skills/skill-controller.d.ts +7 -0
  193. package/dist/server/modules/skills/skill-controller.js +7 -0
  194. package/dist/server/modules/skills/skill-controller.js.map +1 -1
  195. package/dist/server/modules/skills/skill-manager-service.d.ts +61 -0
  196. package/dist/server/modules/skills/skill-manager-service.js +218 -0
  197. package/dist/server/modules/skills/skill-manager-service.js.map +1 -1
  198. package/dist/server/modules/skills/skill-name-policy.js +2 -1
  199. package/dist/server/modules/skills/skill-name-policy.js.map +1 -1
  200. package/dist/server/modules/tasks/task-helper-client.d.ts +1 -0
  201. package/dist/server/modules/tasks/task-helper-client.js +45 -9
  202. package/dist/server/modules/tasks/task-helper-client.js.map +1 -1
  203. package/dist/server/modules/tasks/task-types.d.ts +5 -0
  204. package/dist/server/modules/tasks/task-types.js +6 -1
  205. package/dist/server/modules/tasks/task-types.js.map +1 -1
  206. package/dist/server/modules/terminal/runtime/conpty-session-agent-process.js +2 -1
  207. package/dist/server/modules/terminal/runtime/conpty-session-agent-process.js.map +1 -1
  208. package/dist/server/modules/terminal/runtime/node-pty-loader.d.ts +5 -0
  209. package/dist/server/modules/terminal/runtime/node-pty-loader.js +68 -0
  210. package/dist/server/modules/terminal/runtime/node-pty-loader.js.map +1 -0
  211. package/dist/server/modules/terminal/runtime/pty-broker-agent-process.js +2 -1
  212. package/dist/server/modules/terminal/runtime/pty-broker-agent-process.js.map +1 -1
  213. package/dist/server/modules/terminal/runtime/pty-host-attachment-manager.js +6 -9
  214. package/dist/server/modules/terminal/runtime/pty-host-attachment-manager.js.map +1 -1
  215. package/dist/server/modules/terminal/runtime/pty-runtime-manager.js +6 -9
  216. package/dist/server/modules/terminal/runtime/pty-runtime-manager.js.map +1 -1
  217. package/dist/server/routes/assistant.d.ts +2 -1
  218. package/dist/server/routes/assistant.js +20 -1
  219. package/dist/server/routes/assistant.js.map +1 -1
  220. package/dist/server/routes/browser-runtime.d.ts +3 -0
  221. package/dist/server/routes/browser-runtime.js +14 -0
  222. package/dist/server/routes/browser-runtime.js.map +1 -0
  223. package/dist/server/routes/document-runtime.d.ts +3 -0
  224. package/dist/server/routes/document-runtime.js +18 -0
  225. package/dist/server/routes/document-runtime.js.map +1 -0
  226. package/dist/server/routes/office.d.ts +3 -0
  227. package/dist/server/routes/office.js +16 -0
  228. package/dist/server/routes/office.js.map +1 -0
  229. package/dist/server/routes/ops-runtime.d.ts +3 -0
  230. package/dist/server/routes/ops-runtime.js +13 -0
  231. package/dist/server/routes/ops-runtime.js.map +1 -0
  232. package/dist/server/routes/presentation.d.ts +3 -0
  233. package/dist/server/routes/presentation.js +5 -0
  234. package/dist/server/routes/presentation.js.map +1 -0
  235. package/dist/server/routes/skills.js +1 -0
  236. package/dist/server/routes/skills.js.map +1 -1
  237. package/dist/server/server/create-server.d.ts +36 -0
  238. package/dist/server/server/create-server.js +215 -4
  239. package/dist/server/server/create-server.js.map +1 -1
  240. package/dist/server/server/release-manifest-sync.d.ts +1 -0
  241. package/dist/server/server/release-manifest-sync.js +2 -2
  242. package/dist/server/server/release-manifest-sync.js.map +1 -1
  243. package/dist/server/server/start-host.js +1 -1
  244. package/dist/server/server/start-host.js.map +1 -1
  245. package/dist/server/storage/repositories/auth-token-repository.js +22 -6
  246. package/dist/server/storage/repositories/auth-token-repository.js.map +1 -1
  247. package/dist/server/storage/repositories/browser-profile-repository.d.ts +18 -0
  248. package/dist/server/storage/repositories/browser-profile-repository.js +134 -0
  249. package/dist/server/storage/repositories/browser-profile-repository.js.map +1 -0
  250. package/dist/server/storage/repositories/document-comment-repository.d.ts +10 -0
  251. package/dist/server/storage/repositories/document-comment-repository.js +118 -0
  252. package/dist/server/storage/repositories/document-comment-repository.js.map +1 -0
  253. package/dist/server/storage/repositories/document-repository.d.ts +16 -0
  254. package/dist/server/storage/repositories/document-repository.js +109 -0
  255. package/dist/server/storage/repositories/document-repository.js.map +1 -0
  256. package/dist/server/storage/repositories/document-revision-repository.d.ts +10 -0
  257. package/dist/server/storage/repositories/document-revision-repository.js +79 -0
  258. package/dist/server/storage/repositories/document-revision-repository.js.map +1 -0
  259. package/dist/server/storage/repositories/document-template-repository.d.ts +13 -0
  260. package/dist/server/storage/repositories/document-template-repository.js +244 -0
  261. package/dist/server/storage/repositories/document-template-repository.js.map +1 -0
  262. package/dist/server/storage/repositories/office-approval-repository.d.ts +11 -0
  263. package/dist/server/storage/repositories/office-approval-repository.js +109 -0
  264. package/dist/server/storage/repositories/office-approval-repository.js.map +1 -0
  265. package/dist/server/storage/repositories/office-artifact-repository.d.ts +10 -0
  266. package/dist/server/storage/repositories/office-artifact-repository.js +89 -0
  267. package/dist/server/storage/repositories/office-artifact-repository.js.map +1 -0
  268. package/dist/server/storage/repositories/office-audit-event-repository.d.ts +8 -0
  269. package/dist/server/storage/repositories/office-audit-event-repository.js +54 -0
  270. package/dist/server/storage/repositories/office-audit-event-repository.js.map +1 -0
  271. package/dist/server/storage/repositories/office-connector-repository.d.ts +10 -0
  272. package/dist/server/storage/repositories/office-connector-repository.js +97 -0
  273. package/dist/server/storage/repositories/office-connector-repository.js.map +1 -0
  274. package/dist/server/storage/repositories/office-receipt-repository.d.ts +8 -0
  275. package/dist/server/storage/repositories/office-receipt-repository.js +48 -0
  276. package/dist/server/storage/repositories/office-receipt-repository.js.map +1 -0
  277. package/dist/server/storage/repositories/office-rollback-record-repository.d.ts +8 -0
  278. package/dist/server/storage/repositories/office-rollback-record-repository.js +60 -0
  279. package/dist/server/storage/repositories/office-rollback-record-repository.js.map +1 -0
  280. package/dist/server/storage/repositories/office-task-repository.d.ts +19 -0
  281. package/dist/server/storage/repositories/office-task-repository.js +199 -0
  282. package/dist/server/storage/repositories/office-task-repository.js.map +1 -0
  283. package/dist/server/storage/repositories/office-task-step-repository.d.ts +10 -0
  284. package/dist/server/storage/repositories/office-task-step-repository.js +110 -0
  285. package/dist/server/storage/repositories/office-task-step-repository.js.map +1 -0
  286. package/dist/server/storage/repositories/ops-target-repository.d.ts +16 -0
  287. package/dist/server/storage/repositories/ops-target-repository.js +119 -0
  288. package/dist/server/storage/repositories/ops-target-repository.js.map +1 -0
  289. package/dist/server/storage/repositories/session-binding-repository.d.ts +4 -0
  290. package/dist/server/storage/repositories/session-binding-repository.js +70 -69
  291. package/dist/server/storage/repositories/session-binding-repository.js.map +1 -1
  292. package/dist/server/storage/repositories/session-changed-file-repository.d.ts +6 -0
  293. package/dist/server/storage/repositories/session-changed-file-repository.js +44 -43
  294. package/dist/server/storage/repositories/session-changed-file-repository.js.map +1 -1
  295. package/dist/server/storage/repositories/session-fork-repository.d.ts +2 -0
  296. package/dist/server/storage/repositories/session-fork-repository.js +42 -41
  297. package/dist/server/storage/repositories/session-fork-repository.js.map +1 -1
  298. package/dist/server/storage/repositories/session-index-repository.d.ts +5 -0
  299. package/dist/server/storage/repositories/session-index-repository.js +153 -152
  300. package/dist/server/storage/repositories/session-index-repository.js.map +1 -1
  301. package/dist/server/storage/repositories/session-message-attachment-repository.d.ts +7 -0
  302. package/dist/server/storage/repositories/session-message-attachment-repository.js +91 -90
  303. package/dist/server/storage/repositories/session-message-attachment-repository.js.map +1 -1
  304. package/dist/server/storage/repositories/session-message-origin-repository.d.ts +2 -0
  305. package/dist/server/storage/repositories/session-message-origin-repository.js +25 -24
  306. package/dist/server/storage/repositories/session-message-origin-repository.js.map +1 -1
  307. package/dist/server/storage/repositories/session-state-repository.d.ts +2 -0
  308. package/dist/server/storage/repositories/session-state-repository.js +35 -34
  309. package/dist/server/storage/repositories/session-state-repository.js.map +1 -1
  310. package/dist/server/storage/repositories/session-status-snapshot-repository.d.ts +2 -0
  311. package/dist/server/storage/repositories/session-status-snapshot-repository.js +25 -24
  312. package/dist/server/storage/repositories/session-status-snapshot-repository.js.map +1 -1
  313. package/dist/server/storage/sqlite/client.js +123 -1
  314. package/dist/server/storage/sqlite/client.js.map +1 -1
  315. package/dist/server/storage/sqlite/schema.sql +300 -1
  316. package/dist/server/types/domain.d.ts +205 -1
  317. package/package.json +14 -7
  318. package/scripts/postinstall.mjs +159 -7
  319. package/dist/public/assets/FileContextPanel-xGTYDclT.js +0 -1
  320. package/dist/public/assets/WorkbenchLayout-DScHaza9.js +0 -244
  321. package/dist/public/assets/WorkbenchShellRoute-DN6LdrqC.js +0 -1
  322. package/dist/public/assets/WorkbenchShellRoute-DhQo_0vu.css +0 -1
  323. package/dist/public/assets/file-tree-icon-lfU9Ag77.js +0 -3
  324. package/dist/public/assets/index-CFYXCsyx.css +0 -1
  325. package/dist/public/assets/index-NGxWr8Ix.js +0 -42
  326. package/node_modules/@codingns/session-sync-core/dist/claude-message-utils.d.ts +0 -42
  327. package/node_modules/@codingns/session-sync-core/dist/claude-message-utils.js +0 -346
  328. package/node_modules/@codingns/session-sync-core/dist/claude-message-utils.js.map +0 -1
  329. package/node_modules/@codingns/session-sync-core/dist/codex-resume-history.d.ts +0 -1
  330. package/node_modules/@codingns/session-sync-core/dist/codex-resume-history.js +0 -80
  331. package/node_modules/@codingns/session-sync-core/dist/codex-resume-history.js.map +0 -1
  332. package/node_modules/@codingns/session-sync-core/dist/index.d.ts +0 -18
  333. package/node_modules/@codingns/session-sync-core/dist/index.js +0 -19
  334. package/node_modules/@codingns/session-sync-core/dist/index.js.map +0 -1
  335. package/node_modules/@codingns/session-sync-core/dist/kimi-message-normalizer.d.ts +0 -18
  336. package/node_modules/@codingns/session-sync-core/dist/kimi-message-normalizer.js +0 -659
  337. package/node_modules/@codingns/session-sync-core/dist/kimi-message-normalizer.js.map +0 -1
  338. package/node_modules/@codingns/session-sync-core/dist/kimi-shared.d.ts +0 -11
  339. package/node_modules/@codingns/session-sync-core/dist/kimi-shared.js +0 -72
  340. package/node_modules/@codingns/session-sync-core/dist/kimi-shared.js.map +0 -1
  341. package/node_modules/@codingns/session-sync-core/dist/patch-builder.d.ts +0 -67
  342. package/node_modules/@codingns/session-sync-core/dist/patch-builder.js +0 -752
  343. package/node_modules/@codingns/session-sync-core/dist/patch-builder.js.map +0 -1
  344. package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.d.ts +0 -48
  345. package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.js +0 -1184
  346. package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.js.map +0 -1
  347. package/node_modules/@codingns/session-sync-core/dist/providers/claude-session-store.d.ts +0 -11
  348. package/node_modules/@codingns/session-sync-core/dist/providers/claude-session-store.js +0 -105
  349. package/node_modules/@codingns/session-sync-core/dist/providers/claude-session-store.js.map +0 -1
  350. package/node_modules/@codingns/session-sync-core/dist/providers/codex.d.ts +0 -84
  351. package/node_modules/@codingns/session-sync-core/dist/providers/codex.js +0 -2436
  352. package/node_modules/@codingns/session-sync-core/dist/providers/codex.js.map +0 -1
  353. package/node_modules/@codingns/session-sync-core/dist/providers/gemini.d.ts +0 -47
  354. package/node_modules/@codingns/session-sync-core/dist/providers/gemini.js +0 -1480
  355. package/node_modules/@codingns/session-sync-core/dist/providers/gemini.js.map +0 -1
  356. package/node_modules/@codingns/session-sync-core/dist/providers/kimi.d.ts +0 -33
  357. package/node_modules/@codingns/session-sync-core/dist/providers/kimi.js +0 -684
  358. package/node_modules/@codingns/session-sync-core/dist/providers/kimi.js.map +0 -1
  359. package/node_modules/@codingns/session-sync-core/dist/providers/legna-code.d.ts +0 -9
  360. package/node_modules/@codingns/session-sync-core/dist/providers/legna-code.js +0 -17
  361. package/node_modules/@codingns/session-sync-core/dist/providers/legna-code.js.map +0 -1
  362. package/node_modules/@codingns/session-sync-core/dist/providers/opencode-permissions.d.ts +0 -1
  363. package/node_modules/@codingns/session-sync-core/dist/providers/opencode-permissions.js +0 -8
  364. package/node_modules/@codingns/session-sync-core/dist/providers/opencode-permissions.js.map +0 -1
  365. package/node_modules/@codingns/session-sync-core/dist/providers/opencode-shared.d.ts +0 -48
  366. package/node_modules/@codingns/session-sync-core/dist/providers/opencode-shared.js +0 -373
  367. package/node_modules/@codingns/session-sync-core/dist/providers/opencode-shared.js.map +0 -1
  368. package/node_modules/@codingns/session-sync-core/dist/providers/opencode.d.ts +0 -61
  369. package/node_modules/@codingns/session-sync-core/dist/providers/opencode.js +0 -1191
  370. package/node_modules/@codingns/session-sync-core/dist/providers/opencode.js.map +0 -1
  371. package/node_modules/@codingns/session-sync-core/dist/providers/utils.d.ts +0 -27
  372. package/node_modules/@codingns/session-sync-core/dist/providers/utils.js +0 -415
  373. package/node_modules/@codingns/session-sync-core/dist/providers/utils.js.map +0 -1
  374. package/node_modules/@codingns/session-sync-core/dist/registry.d.ts +0 -7
  375. package/node_modules/@codingns/session-sync-core/dist/registry.js +0 -22
  376. package/node_modules/@codingns/session-sync-core/dist/registry.js.map +0 -1
  377. package/node_modules/@codingns/session-sync-core/dist/runtime/active-run-registry.d.ts +0 -24
  378. package/node_modules/@codingns/session-sync-core/dist/runtime/active-run-registry.js +0 -329
  379. package/node_modules/@codingns/session-sync-core/dist/runtime/active-run-registry.js.map +0 -1
  380. package/node_modules/@codingns/session-sync-core/dist/runtime/claude-runtime.d.ts +0 -30
  381. package/node_modules/@codingns/session-sync-core/dist/runtime/claude-runtime.js +0 -939
  382. package/node_modules/@codingns/session-sync-core/dist/runtime/claude-runtime.js.map +0 -1
  383. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-permissions.d.ts +0 -1
  384. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-permissions.js +0 -16
  385. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-permissions.js.map +0 -1
  386. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.d.ts +0 -70
  387. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.js +0 -2571
  388. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.js.map +0 -1
  389. package/node_modules/@codingns/session-sync-core/dist/runtime/gemini-runtime.d.ts +0 -21
  390. package/node_modules/@codingns/session-sync-core/dist/runtime/gemini-runtime.js +0 -561
  391. package/node_modules/@codingns/session-sync-core/dist/runtime/gemini-runtime.js.map +0 -1
  392. package/node_modules/@codingns/session-sync-core/dist/runtime/kimi-runtime.d.ts +0 -38
  393. package/node_modules/@codingns/session-sync-core/dist/runtime/kimi-runtime.js +0 -911
  394. package/node_modules/@codingns/session-sync-core/dist/runtime/kimi-runtime.js.map +0 -1
  395. package/node_modules/@codingns/session-sync-core/dist/runtime/legna-runtime.d.ts +0 -15
  396. package/node_modules/@codingns/session-sync-core/dist/runtime/legna-runtime.js +0 -16
  397. package/node_modules/@codingns/session-sync-core/dist/runtime/legna-runtime.js.map +0 -1
  398. package/node_modules/@codingns/session-sync-core/dist/runtime/opencode-runtime.d.ts +0 -37
  399. package/node_modules/@codingns/session-sync-core/dist/runtime/opencode-runtime.js +0 -963
  400. package/node_modules/@codingns/session-sync-core/dist/runtime/opencode-runtime.js.map +0 -1
  401. package/node_modules/@codingns/session-sync-core/dist/runtime/provider-runtime-service.d.ts +0 -21
  402. package/node_modules/@codingns/session-sync-core/dist/runtime/provider-runtime-service.js +0 -168
  403. package/node_modules/@codingns/session-sync-core/dist/runtime/provider-runtime-service.js.map +0 -1
  404. package/node_modules/@codingns/session-sync-core/dist/runtime/types.d.ts +0 -152
  405. package/node_modules/@codingns/session-sync-core/dist/runtime/types.js +0 -2
  406. package/node_modules/@codingns/session-sync-core/dist/runtime/types.js.map +0 -1
  407. package/node_modules/@codingns/session-sync-core/dist/services.d.ts +0 -28
  408. package/node_modules/@codingns/session-sync-core/dist/services.js +0 -148
  409. package/node_modules/@codingns/session-sync-core/dist/services.js.map +0 -1
  410. package/node_modules/@codingns/session-sync-core/dist/sqlite/node-sqlite.d.ts +0 -6
  411. package/node_modules/@codingns/session-sync-core/dist/sqlite/node-sqlite.js +0 -9
  412. package/node_modules/@codingns/session-sync-core/dist/sqlite/node-sqlite.js.map +0 -1
  413. package/node_modules/@codingns/session-sync-core/dist/types.d.ts +0 -198
  414. package/node_modules/@codingns/session-sync-core/dist/types.js +0 -2
  415. package/node_modules/@codingns/session-sync-core/dist/types.js.map +0 -1
  416. package/node_modules/@codingns/session-sync-core/package.json +0 -33
@@ -1,13 +1,14 @@
1
1
  export class SessionChangedFileRepository {
2
2
  db;
3
+ upsertManyStatement;
4
+ listBySessionIdStatement;
5
+ findIndexStateBySessionIdStatement;
6
+ upsertIndexStateStatement;
7
+ deleteFilesBySessionIdStatement;
8
+ deleteStatesBySessionIdStatement;
3
9
  constructor(db) {
4
10
  this.db = db;
5
- }
6
- upsertMany(records) {
7
- if (records.length === 0) {
8
- return;
9
- }
10
- const statement = this.db.prepare(`INSERT INTO session_changed_files (
11
+ this.upsertManyStatement = this.db.prepare(`INSERT INTO session_changed_files (
11
12
  session_id,
12
13
  workspace_id,
13
14
  path,
@@ -20,58 +21,58 @@ export class SessionChangedFileRepository {
20
21
  first_detected_at = MIN(session_changed_files.first_detected_at, excluded.first_detected_at),
21
22
  last_detected_at = MAX(session_changed_files.last_detected_at, excluded.last_detected_at),
22
23
  last_tool_name = COALESCE(excluded.last_tool_name, session_changed_files.last_tool_name)`);
24
+ this.listBySessionIdStatement = this.db.prepare(`SELECT
25
+ session_id AS session_id,
26
+ workspace_id AS workspace_id,
27
+ path AS path,
28
+ first_detected_at AS first_detected_at,
29
+ last_detected_at AS last_detected_at,
30
+ last_tool_name AS last_tool_name
31
+ FROM session_changed_files
32
+ WHERE session_id = ?
33
+ ORDER BY path ASC`);
34
+ this.findIndexStateBySessionIdStatement = this.db.prepare(`SELECT
35
+ session_id AS session_id,
36
+ indexed_at AS indexed_at,
37
+ updated_at AS updated_at
38
+ FROM session_changed_file_states
39
+ WHERE session_id = ?`);
40
+ this.upsertIndexStateStatement = this.db.prepare(`INSERT INTO session_changed_file_states (
41
+ session_id,
42
+ indexed_at,
43
+ updated_at
44
+ ) VALUES (?, ?, ?)
45
+ ON CONFLICT(session_id) DO UPDATE SET
46
+ indexed_at = excluded.indexed_at,
47
+ updated_at = excluded.updated_at`);
48
+ this.deleteFilesBySessionIdStatement = this.db.prepare("DELETE FROM session_changed_files WHERE session_id = ?");
49
+ this.deleteStatesBySessionIdStatement = this.db.prepare("DELETE FROM session_changed_file_states WHERE session_id = ?");
50
+ }
51
+ upsertMany(records) {
52
+ if (records.length === 0) {
53
+ return;
54
+ }
23
55
  const persist = this.db.transaction((items) => {
24
56
  for (const record of items) {
25
- statement.run(record.sessionId, record.workspaceId, record.path, record.firstDetectedAt, record.lastDetectedAt, record.lastToolName);
57
+ this.upsertManyStatement.run(record.sessionId, record.workspaceId, record.path, record.firstDetectedAt, record.lastDetectedAt, record.lastToolName);
26
58
  }
27
59
  });
28
60
  persist(records);
29
61
  }
30
62
  listBySessionId(sessionId) {
31
- return this.db
32
- .prepare(`SELECT
33
- session_id AS session_id,
34
- workspace_id AS workspace_id,
35
- path AS path,
36
- first_detected_at AS first_detected_at,
37
- last_detected_at AS last_detected_at,
38
- last_tool_name AS last_tool_name
39
- FROM session_changed_files
40
- WHERE session_id = ?
41
- ORDER BY path ASC`)
42
- .all(sessionId)
63
+ return this.listBySessionIdStatement.all(sessionId)
43
64
  .map((row) => mapSessionChangedFileRow(row));
44
65
  }
45
66
  findIndexStateBySessionId(sessionId) {
46
- const row = this.db
47
- .prepare(`SELECT
48
- session_id AS session_id,
49
- indexed_at AS indexed_at,
50
- updated_at AS updated_at
51
- FROM session_changed_file_states
52
- WHERE session_id = ?`)
53
- .get(sessionId);
67
+ const row = this.findIndexStateBySessionIdStatement.get(sessionId);
54
68
  return row ? mapSessionChangedFileStateRow(row) : null;
55
69
  }
56
70
  upsertIndexState(record) {
57
- this.db
58
- .prepare(`INSERT INTO session_changed_file_states (
59
- session_id,
60
- indexed_at,
61
- updated_at
62
- ) VALUES (?, ?, ?)
63
- ON CONFLICT(session_id) DO UPDATE SET
64
- indexed_at = excluded.indexed_at,
65
- updated_at = excluded.updated_at`)
66
- .run(record.sessionId, record.indexedAt, record.updatedAt);
71
+ this.upsertIndexStateStatement.run(record.sessionId, record.indexedAt, record.updatedAt);
67
72
  }
68
73
  deleteBySessionId(sessionId) {
69
- this.db
70
- .prepare("DELETE FROM session_changed_files WHERE session_id = ?")
71
- .run(sessionId);
72
- this.db
73
- .prepare("DELETE FROM session_changed_file_states WHERE session_id = ?")
74
- .run(sessionId);
74
+ this.deleteFilesBySessionIdStatement.run(sessionId);
75
+ this.deleteStatesBySessionIdStatement.run(sessionId);
75
76
  }
76
77
  }
77
78
  function mapSessionChangedFileRow(row) {
@@ -1 +1 @@
1
- {"version":3,"file":"session-changed-file-repository.js","sourceRoot":"","sources":["../../../../src/storage/repositories/session-changed-file-repository.ts"],"names":[],"mappings":"AAOA,MAAM,OAAO,4BAA4B;IACV;IAA7B,YAA6B,EAAqB;QAArB,OAAE,GAAF,EAAE,CAAmB;IAAG,CAAC;IAEtD,UAAU,CAAC,OAAmC;QAC5C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAC/B;;;;;;;;;;;;kGAY4F,CAC7F,CAAC;QAEF,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,KAAiC,EAAE,EAAE;YACxE,KAAK,MAAM,MAAM,IAAI,KAAK,EAAE,CAAC;gBAC3B,SAAS,CAAC,GAAG,CACX,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,eAAe,EACtB,MAAM,CAAC,cAAc,EACrB,MAAM,CAAC,YAAY,CACpB,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC;IAED,eAAe,CAAC,SAAiB;QAC/B,OAAO,IAAI,CAAC,EAAE;aACX,OAAO,CACN;;;;;;;;;2BASmB,CACpB;aACA,GAAG,CAAC,SAAS,CAAC;aACd,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,wBAAwB,CAAC,GAA4B,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,yBAAyB,CAAC,SAAiB;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE;aAChB,OAAO,CACN;;;;;8BAKsB,CACvB;aACA,GAAG,CAAC,SAAS,CAA2C,CAAC;QAE5D,OAAO,GAAG,CAAC,CAAC,CAAC,6BAA6B,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACzD,CAAC;IAED,gBAAgB,CAAC,MAAoC;QACnD,IAAI,CAAC,EAAE;aACJ,OAAO,CACN;;;;;;;4CAOoC,CACrC;aACA,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;IAC/D,CAAC;IAED,iBAAiB,CAAC,SAAiB;QACjC,IAAI,CAAC,EAAE;aACJ,OAAO,CAAC,wDAAwD,CAAC;aACjE,GAAG,CAAC,SAAS,CAAC,CAAC;QAClB,IAAI,CAAC,EAAE;aACJ,OAAO,CAAC,8DAA8D,CAAC;aACvE,GAAG,CAAC,SAAS,CAAC,CAAC;IACpB,CAAC;CACF;AAiBD,SAAS,wBAAwB,CAAC,GAA0B;IAC1D,OAAO;QACL,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,WAAW,EAAE,GAAG,CAAC,YAAY;QAC7B,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,eAAe,EAAE,GAAG,CAAC,iBAAiB;QACtC,cAAc,EAAE,GAAG,CAAC,gBAAgB;QACpC,YAAY,EAAE,GAAG,CAAC,cAAc;KACjC,CAAC;AACJ,CAAC;AAED,SAAS,6BAA6B,CACpC,GAA+B;IAE/B,OAAO;QACL,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,SAAS,EAAE,GAAG,CAAC,UAAU;KAC1B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"session-changed-file-repository.js","sourceRoot":"","sources":["../../../../src/storage/repositories/session-changed-file-repository.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,8 @@ import type Database from "better-sqlite3";
2
2
  import type { SessionForkRecord } from "../../types/domain.js";
3
3
  export declare class SessionForkRepository {
4
4
  private readonly db;
5
+ private readonly upsertStatement;
6
+ private readonly findBySessionIdStatement;
5
7
  constructor(db: Database.Database);
6
8
  upsert(record: SessionForkRecord): void;
7
9
  findBySessionId(sessionId: string): SessionForkRecord | null;
@@ -1,53 +1,54 @@
1
1
  export class SessionForkRepository {
2
2
  db;
3
+ upsertStatement;
4
+ findBySessionIdStatement;
3
5
  constructor(db) {
4
6
  this.db = db;
7
+ this.upsertStatement = this.db.prepare(`INSERT INTO session_forks (
8
+ session_id,
9
+ parent_session_id,
10
+ provider,
11
+ fork_source_type,
12
+ fork_source_session_id,
13
+ fork_source_message_id,
14
+ inherited_prefix_message_count,
15
+ provider_parent_session_id,
16
+ provider_source_message_id,
17
+ fork_method,
18
+ created_at
19
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
20
+ ON CONFLICT(session_id) DO UPDATE SET
21
+ parent_session_id = excluded.parent_session_id,
22
+ provider = excluded.provider,
23
+ fork_source_type = excluded.fork_source_type,
24
+ fork_source_session_id = excluded.fork_source_session_id,
25
+ fork_source_message_id = excluded.fork_source_message_id,
26
+ inherited_prefix_message_count = excluded.inherited_prefix_message_count,
27
+ provider_parent_session_id = excluded.provider_parent_session_id,
28
+ provider_source_message_id = excluded.provider_source_message_id,
29
+ fork_method = excluded.fork_method,
30
+ created_at = excluded.created_at`);
31
+ this.findBySessionIdStatement = this.db.prepare(`SELECT
32
+ session_id AS session_id,
33
+ parent_session_id AS parent_session_id,
34
+ provider AS provider,
35
+ fork_source_type AS fork_source_type,
36
+ fork_source_session_id AS fork_source_session_id,
37
+ fork_source_message_id AS fork_source_message_id,
38
+ inherited_prefix_message_count AS inherited_prefix_message_count,
39
+ provider_parent_session_id AS provider_parent_session_id,
40
+ provider_source_message_id AS provider_source_message_id,
41
+ fork_method AS fork_method,
42
+ created_at AS created_at
43
+ FROM session_forks
44
+ WHERE session_id = ?`);
5
45
  }
6
46
  upsert(record) {
7
- this.db
8
- .prepare(`INSERT INTO session_forks (
9
- session_id,
10
- parent_session_id,
11
- provider,
12
- fork_source_type,
13
- fork_source_session_id,
14
- fork_source_message_id,
15
- inherited_prefix_message_count,
16
- provider_parent_session_id,
17
- provider_source_message_id,
18
- fork_method,
19
- created_at
20
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
21
- ON CONFLICT(session_id) DO UPDATE SET
22
- parent_session_id = excluded.parent_session_id,
23
- provider = excluded.provider,
24
- fork_source_type = excluded.fork_source_type,
25
- fork_source_session_id = excluded.fork_source_session_id,
26
- fork_source_message_id = excluded.fork_source_message_id,
27
- inherited_prefix_message_count = excluded.inherited_prefix_message_count,
28
- provider_parent_session_id = excluded.provider_parent_session_id,
29
- provider_source_message_id = excluded.provider_source_message_id,
30
- fork_method = excluded.fork_method,
31
- created_at = excluded.created_at`)
47
+ this.upsertStatement
32
48
  .run(record.sessionId, record.parentSessionId, record.provider, record.forkSourceType, record.forkSourceSessionId, record.forkSourceMessageId, record.inheritedPrefixMessageCount, record.providerParentSessionId, record.providerSourceMessageId, record.forkMethod, record.createdAt);
33
49
  }
34
50
  findBySessionId(sessionId) {
35
- const row = this.db
36
- .prepare(`SELECT
37
- session_id AS session_id,
38
- parent_session_id AS parent_session_id,
39
- provider AS provider,
40
- fork_source_type AS fork_source_type,
41
- fork_source_session_id AS fork_source_session_id,
42
- fork_source_message_id AS fork_source_message_id,
43
- inherited_prefix_message_count AS inherited_prefix_message_count,
44
- provider_parent_session_id AS provider_parent_session_id,
45
- provider_source_message_id AS provider_source_message_id,
46
- fork_method AS fork_method,
47
- created_at AS created_at
48
- FROM session_forks
49
- WHERE session_id = ?`)
50
- .get(sessionId);
51
+ const row = this.findBySessionIdStatement.get(sessionId);
51
52
  return row ? mapSessionForkRow(row) : null;
52
53
  }
53
54
  }
@@ -1 +1 @@
1
- {"version":3,"file":"session-fork-repository.js","sourceRoot":"","sources":["../../../../src/storage/repositories/session-fork-repository.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,qBAAqB;IACH;IAA7B,YAA6B,EAAqB;QAArB,OAAE,GAAF,EAAE,CAAmB;IAAG,CAAC;IAEtD,MAAM,CAAC,MAAyB;QAC9B,IAAI,CAAC,EAAE;aACJ,OAAO,CACN;;;;;;;;;;;;;;;;;;;;;;;4CAuBoC,CACrC;aACA,GAAG,CACF,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,eAAe,EACtB,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,cAAc,EACrB,MAAM,CAAC,mBAAmB,EAC1B,MAAM,CAAC,mBAAmB,EAC1B,MAAM,CAAC,2BAA2B,EAClC,MAAM,CAAC,uBAAuB,EAC9B,MAAM,CAAC,uBAAuB,EAC9B,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,SAAS,CACjB,CAAC;IACN,CAAC;IAED,eAAe,CAAC,SAAiB;QAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE;aAChB,OAAO,CACN;;;;;;;;;;;;;8BAasB,CACvB;aACA,GAAG,CAAC,SAAS,CAA+B,CAAC;QAEhD,OAAO,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7C,CAAC;CACF;AAgBD,SAAS,iBAAiB,CAAC,GAAmB;IAC5C,OAAO;QACL,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,eAAe,EAAE,GAAG,CAAC,iBAAiB;QACtC,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,cAAc,EAAE,GAAG,CAAC,gBAAgB;QACpC,mBAAmB,EAAE,GAAG,CAAC,sBAAsB;QAC/C,mBAAmB,EAAE,GAAG,CAAC,sBAAsB;QAC/C,2BAA2B,EAAE,GAAG,CAAC,8BAA8B;QAC/D,uBAAuB,EAAE,GAAG,CAAC,0BAA0B;QACvD,uBAAuB,EAAE,GAAG,CAAC,0BAA0B;QACvD,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,SAAS,EAAE,GAAG,CAAC,UAAU;KAC1B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"session-fork-repository.js","sourceRoot":"","sources":["../../../../src/storage/repositories/session-fork-repository.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,qBAAqB;IAIH;IAHZ,eAAe,CAAiC;IAChD,wBAAwB,CAAiC;IAE1E,YAA6B,EAAqB;QAArB,OAAE,GAAF,EAAE,CAAmB;QAChD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CACpC;;;;;;;;;;;;;;;;;;;;;;;0CAuBoC,CACrC,CAAC;QACF,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAC7C;;;;;;;;;;;;;4BAasB,CACvB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,MAAyB;QAC9B,IAAI,CAAC,eAAe;aACjB,GAAG,CACF,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,eAAe,EACtB,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,cAAc,EACrB,MAAM,CAAC,mBAAmB,EAC1B,MAAM,CAAC,mBAAmB,EAC1B,MAAM,CAAC,2BAA2B,EAClC,MAAM,CAAC,uBAAuB,EAC9B,MAAM,CAAC,uBAAuB,EAC9B,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,SAAS,CACjB,CAAC;IACN,CAAC;IAED,eAAe,CAAC,SAAiB;QAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,SAAS,CAA+B,CAAC;QAEvF,OAAO,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7C,CAAC;CACF;AAgBD,SAAS,iBAAiB,CAAC,GAAmB;IAC5C,OAAO;QACL,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,eAAe,EAAE,GAAG,CAAC,iBAAiB;QACtC,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,cAAc,EAAE,GAAG,CAAC,gBAAgB;QACpC,mBAAmB,EAAE,GAAG,CAAC,sBAAsB;QAC/C,mBAAmB,EAAE,GAAG,CAAC,sBAAsB;QAC/C,2BAA2B,EAAE,GAAG,CAAC,8BAA8B;QAC/D,uBAAuB,EAAE,GAAG,CAAC,0BAA0B;QACvD,uBAAuB,EAAE,GAAG,CAAC,0BAA0B;QACvD,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,SAAS,EAAE,GAAG,CAAC,UAAU;KAC1B,CAAC;AACJ,CAAC"}
@@ -2,6 +2,11 @@ import type Database from "better-sqlite3";
2
2
  import type { SessionIndexRecord, SessionListItem } from "../../types/domain.js";
3
3
  export declare class SessionIndexRepository {
4
4
  private readonly db;
5
+ private readonly upsertStatement;
6
+ private readonly listByWorkspaceStatement;
7
+ private readonly findBySessionIdStatement;
8
+ private readonly findIndexRecordBySessionIdStatement;
9
+ private readonly renameTitleStatement;
5
10
  constructor(db: Database.Database);
6
11
  upsert(record: SessionIndexRecord): void;
7
12
  listByWorkspace(workspaceId: string, userId: string): SessionListItem[];
@@ -1,173 +1,174 @@
1
1
  export class SessionIndexRepository {
2
2
  db;
3
+ upsertStatement;
4
+ listByWorkspaceStatement;
5
+ findBySessionIdStatement;
6
+ findIndexRecordBySessionIdStatement;
7
+ renameTitleStatement;
3
8
  constructor(db) {
4
9
  this.db = db;
10
+ this.upsertStatement = this.db.prepare(`INSERT INTO session_indices (
11
+ session_id,
12
+ workspace_id,
13
+ provider,
14
+ parent_session_id,
15
+ session_kind,
16
+ annotation_source_message_id,
17
+ annotation_source_text,
18
+ is_subagent,
19
+ subagent_label,
20
+ title,
21
+ message_count,
22
+ is_archived,
23
+ last_message_at,
24
+ created_at,
25
+ updated_at
26
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
27
+ ON CONFLICT(session_id) DO UPDATE SET
28
+ workspace_id = excluded.workspace_id,
29
+ provider = excluded.provider,
30
+ parent_session_id = excluded.parent_session_id,
31
+ session_kind = excluded.session_kind,
32
+ annotation_source_message_id = excluded.annotation_source_message_id,
33
+ annotation_source_text = excluded.annotation_source_text,
34
+ is_subagent = excluded.is_subagent,
35
+ subagent_label = excluded.subagent_label,
36
+ title = excluded.title,
37
+ message_count = excluded.message_count,
38
+ is_archived = excluded.is_archived,
39
+ last_message_at = excluded.last_message_at,
40
+ updated_at = excluded.updated_at`);
41
+ this.listByWorkspaceStatement = this.db.prepare(`SELECT
42
+ indices.session_id AS session_id,
43
+ indices.workspace_id AS workspace_id,
44
+ indices.provider AS provider,
45
+ bindings.provider_session_id AS provider_session_id,
46
+ bindings.raw_store_ref AS raw_store_ref,
47
+ bindings.provider_config_mode AS provider_config_mode,
48
+ bindings.provider_preset_id AS provider_preset_id,
49
+ indices.parent_session_id AS parent_session_id,
50
+ indices.session_kind AS session_kind,
51
+ indices.annotation_source_message_id AS annotation_source_message_id,
52
+ indices.annotation_source_text AS annotation_source_text,
53
+ forks.fork_method AS fork_method,
54
+ forks.fork_source_type AS fork_source_type,
55
+ forks.fork_source_session_id AS fork_source_session_id,
56
+ forks.fork_source_message_id AS fork_source_message_id,
57
+ forks.inherited_prefix_message_count AS inherited_prefix_message_count,
58
+ indices.is_subagent AS is_subagent,
59
+ indices.subagent_label AS subagent_label,
60
+ indices.title AS title,
61
+ indices.message_count AS message_count,
62
+ indices.last_message_at AS last_message_at,
63
+ indices.created_at AS created_at,
64
+ indices.updated_at AS updated_at,
65
+ snapshots.sync_status AS sync_status,
66
+ snapshots.sync_cursor AS sync_cursor,
67
+ snapshots.last_sync_at AS last_sync_at,
68
+ snapshots.last_error_code AS last_error_code,
69
+ snapshots.last_error_detail AS last_error_detail,
70
+ snapshots.resumed_at AS resumed_at,
71
+ states.running_state AS running_state,
72
+ COALESCE(states.activity_source, 'none') AS activity_source,
73
+ COALESCE(states.favorite, 0) AS favorite,
74
+ indices.is_archived AS is_archived,
75
+ states.last_event_at AS last_event_at,
76
+ states.completed_at AS completed_at,
77
+ states.last_seen_at AS last_seen_at
78
+ FROM session_indices indices
79
+ INNER JOIN session_bindings bindings ON bindings.session_id = indices.session_id
80
+ LEFT JOIN session_forks forks ON forks.session_id = indices.session_id
81
+ LEFT JOIN session_status_snapshots snapshots ON snapshots.session_id = indices.session_id
82
+ LEFT JOIN session_states states
83
+ ON states.session_id = indices.session_id
84
+ AND states.user_id = ?
85
+ WHERE indices.workspace_id = ?
86
+ ORDER BY COALESCE(indices.last_message_at, indices.updated_at) DESC, indices.updated_at DESC`);
87
+ this.findBySessionIdStatement = this.db.prepare(`SELECT
88
+ indices.session_id AS session_id,
89
+ indices.workspace_id AS workspace_id,
90
+ indices.provider AS provider,
91
+ bindings.provider_session_id AS provider_session_id,
92
+ bindings.raw_store_ref AS raw_store_ref,
93
+ bindings.provider_config_mode AS provider_config_mode,
94
+ bindings.provider_preset_id AS provider_preset_id,
95
+ indices.parent_session_id AS parent_session_id,
96
+ indices.session_kind AS session_kind,
97
+ indices.annotation_source_message_id AS annotation_source_message_id,
98
+ indices.annotation_source_text AS annotation_source_text,
99
+ forks.fork_method AS fork_method,
100
+ forks.fork_source_type AS fork_source_type,
101
+ forks.fork_source_session_id AS fork_source_session_id,
102
+ forks.fork_source_message_id AS fork_source_message_id,
103
+ forks.inherited_prefix_message_count AS inherited_prefix_message_count,
104
+ indices.is_subagent AS is_subagent,
105
+ indices.subagent_label AS subagent_label,
106
+ indices.title AS title,
107
+ indices.message_count AS message_count,
108
+ indices.last_message_at AS last_message_at,
109
+ indices.created_at AS created_at,
110
+ indices.updated_at AS updated_at,
111
+ snapshots.sync_status AS sync_status,
112
+ snapshots.sync_cursor AS sync_cursor,
113
+ snapshots.last_sync_at AS last_sync_at,
114
+ snapshots.last_error_code AS last_error_code,
115
+ snapshots.last_error_detail AS last_error_detail,
116
+ snapshots.resumed_at AS resumed_at,
117
+ states.running_state AS running_state,
118
+ COALESCE(states.activity_source, 'none') AS activity_source,
119
+ COALESCE(states.favorite, 0) AS favorite,
120
+ indices.is_archived AS is_archived,
121
+ states.last_event_at AS last_event_at,
122
+ states.completed_at AS completed_at,
123
+ states.last_seen_at AS last_seen_at
124
+ FROM session_indices indices
125
+ INNER JOIN session_bindings bindings ON bindings.session_id = indices.session_id
126
+ LEFT JOIN session_forks forks ON forks.session_id = indices.session_id
127
+ LEFT JOIN session_status_snapshots snapshots ON snapshots.session_id = indices.session_id
128
+ LEFT JOIN session_states states
129
+ ON states.session_id = indices.session_id
130
+ AND states.user_id = ?
131
+ WHERE indices.session_id = ?`);
132
+ this.findIndexRecordBySessionIdStatement = this.db.prepare(`SELECT
133
+ session_id AS session_id,
134
+ workspace_id AS workspace_id,
135
+ provider AS provider,
136
+ parent_session_id AS parent_session_id,
137
+ session_kind AS session_kind,
138
+ annotation_source_message_id AS annotation_source_message_id,
139
+ annotation_source_text AS annotation_source_text,
140
+ is_subagent AS is_subagent,
141
+ subagent_label AS subagent_label,
142
+ title AS title,
143
+ message_count AS message_count,
144
+ is_archived AS is_archived,
145
+ last_message_at AS last_message_at,
146
+ created_at AS created_at,
147
+ updated_at AS updated_at
148
+ FROM session_indices
149
+ WHERE session_id = ?`);
150
+ this.renameTitleStatement = this.db.prepare(`UPDATE session_indices
151
+ SET title = ?, updated_at = ?
152
+ WHERE session_id = ?`);
5
153
  }
6
154
  upsert(record) {
7
- this.db
8
- .prepare(`INSERT INTO session_indices (
9
- session_id,
10
- workspace_id,
11
- provider,
12
- parent_session_id,
13
- session_kind,
14
- annotation_source_message_id,
15
- annotation_source_text,
16
- is_subagent,
17
- subagent_label,
18
- title,
19
- message_count,
20
- is_archived,
21
- last_message_at,
22
- created_at,
23
- updated_at
24
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
25
- ON CONFLICT(session_id) DO UPDATE SET
26
- workspace_id = excluded.workspace_id,
27
- provider = excluded.provider,
28
- parent_session_id = excluded.parent_session_id,
29
- session_kind = excluded.session_kind,
30
- annotation_source_message_id = excluded.annotation_source_message_id,
31
- annotation_source_text = excluded.annotation_source_text,
32
- is_subagent = excluded.is_subagent,
33
- subagent_label = excluded.subagent_label,
34
- title = excluded.title,
35
- message_count = excluded.message_count,
36
- is_archived = excluded.is_archived,
37
- last_message_at = excluded.last_message_at,
38
- updated_at = excluded.updated_at`)
155
+ this.upsertStatement
39
156
  .run(record.sessionId, record.workspaceId, record.provider, record.parentSessionId ?? null, record.sessionKind ?? "default", record.annotationSourceMessageId ?? null, record.annotationSourceText ?? null, record.isSubagent ? 1 : 0, record.subagentLabel ?? null, record.title, record.messageCount, record.isArchived ? 1 : 0, record.lastMessageAt, record.createdAt, record.updatedAt);
40
157
  }
41
158
  listByWorkspace(workspaceId, userId) {
42
- return this.db
43
- .prepare(`SELECT
44
- indices.session_id AS session_id,
45
- indices.workspace_id AS workspace_id,
46
- indices.provider AS provider,
47
- bindings.provider_session_id AS provider_session_id,
48
- bindings.raw_store_ref AS raw_store_ref,
49
- bindings.provider_config_mode AS provider_config_mode,
50
- bindings.provider_preset_id AS provider_preset_id,
51
- indices.parent_session_id AS parent_session_id,
52
- indices.session_kind AS session_kind,
53
- indices.annotation_source_message_id AS annotation_source_message_id,
54
- indices.annotation_source_text AS annotation_source_text,
55
- forks.fork_method AS fork_method,
56
- forks.fork_source_type AS fork_source_type,
57
- forks.fork_source_session_id AS fork_source_session_id,
58
- forks.fork_source_message_id AS fork_source_message_id,
59
- forks.inherited_prefix_message_count AS inherited_prefix_message_count,
60
- indices.is_subagent AS is_subagent,
61
- indices.subagent_label AS subagent_label,
62
- indices.title AS title,
63
- indices.message_count AS message_count,
64
- indices.last_message_at AS last_message_at,
65
- indices.created_at AS created_at,
66
- indices.updated_at AS updated_at,
67
- snapshots.sync_status AS sync_status,
68
- snapshots.sync_cursor AS sync_cursor,
69
- snapshots.last_sync_at AS last_sync_at,
70
- snapshots.last_error_code AS last_error_code,
71
- snapshots.last_error_detail AS last_error_detail,
72
- snapshots.resumed_at AS resumed_at,
73
- states.running_state AS running_state,
74
- COALESCE(states.activity_source, 'none') AS activity_source,
75
- COALESCE(states.favorite, 0) AS favorite,
76
- indices.is_archived AS is_archived,
77
- states.last_event_at AS last_event_at,
78
- states.completed_at AS completed_at,
79
- states.last_seen_at AS last_seen_at
80
- FROM session_indices indices
81
- INNER JOIN session_bindings bindings ON bindings.session_id = indices.session_id
82
- LEFT JOIN session_forks forks ON forks.session_id = indices.session_id
83
- LEFT JOIN session_status_snapshots snapshots ON snapshots.session_id = indices.session_id
84
- LEFT JOIN session_states states
85
- ON states.session_id = indices.session_id
86
- AND states.user_id = ?
87
- WHERE indices.workspace_id = ?
88
- ORDER BY COALESCE(indices.last_message_at, indices.updated_at) DESC, indices.updated_at DESC`)
89
- .all(userId, workspaceId)
159
+ return this.listByWorkspaceStatement.all(userId, workspaceId)
90
160
  .map((row) => mapSessionListItemRow(row));
91
161
  }
92
162
  findBySessionId(sessionId, userId) {
93
- const row = this.db
94
- .prepare(`SELECT
95
- indices.session_id AS session_id,
96
- indices.workspace_id AS workspace_id,
97
- indices.provider AS provider,
98
- bindings.provider_session_id AS provider_session_id,
99
- bindings.raw_store_ref AS raw_store_ref,
100
- bindings.provider_config_mode AS provider_config_mode,
101
- bindings.provider_preset_id AS provider_preset_id,
102
- indices.parent_session_id AS parent_session_id,
103
- indices.session_kind AS session_kind,
104
- indices.annotation_source_message_id AS annotation_source_message_id,
105
- indices.annotation_source_text AS annotation_source_text,
106
- forks.fork_method AS fork_method,
107
- forks.fork_source_type AS fork_source_type,
108
- forks.fork_source_session_id AS fork_source_session_id,
109
- forks.fork_source_message_id AS fork_source_message_id,
110
- forks.inherited_prefix_message_count AS inherited_prefix_message_count,
111
- indices.is_subagent AS is_subagent,
112
- indices.subagent_label AS subagent_label,
113
- indices.title AS title,
114
- indices.message_count AS message_count,
115
- indices.last_message_at AS last_message_at,
116
- indices.created_at AS created_at,
117
- indices.updated_at AS updated_at,
118
- snapshots.sync_status AS sync_status,
119
- snapshots.sync_cursor AS sync_cursor,
120
- snapshots.last_sync_at AS last_sync_at,
121
- snapshots.last_error_code AS last_error_code,
122
- snapshots.last_error_detail AS last_error_detail,
123
- snapshots.resumed_at AS resumed_at,
124
- states.running_state AS running_state,
125
- COALESCE(states.activity_source, 'none') AS activity_source,
126
- COALESCE(states.favorite, 0) AS favorite,
127
- indices.is_archived AS is_archived,
128
- states.last_event_at AS last_event_at,
129
- states.completed_at AS completed_at,
130
- states.last_seen_at AS last_seen_at
131
- FROM session_indices indices
132
- INNER JOIN session_bindings bindings ON bindings.session_id = indices.session_id
133
- LEFT JOIN session_forks forks ON forks.session_id = indices.session_id
134
- LEFT JOIN session_status_snapshots snapshots ON snapshots.session_id = indices.session_id
135
- LEFT JOIN session_states states
136
- ON states.session_id = indices.session_id
137
- AND states.user_id = ?
138
- WHERE indices.session_id = ?`)
139
- .get(userId, sessionId);
163
+ const row = this.findBySessionIdStatement.get(userId, sessionId);
140
164
  return row ? mapSessionListItemRow(row) : null;
141
165
  }
142
166
  findIndexRecordBySessionId(sessionId) {
143
- const row = this.db
144
- .prepare(`SELECT
145
- session_id AS session_id,
146
- workspace_id AS workspace_id,
147
- provider AS provider,
148
- parent_session_id AS parent_session_id,
149
- session_kind AS session_kind,
150
- annotation_source_message_id AS annotation_source_message_id,
151
- annotation_source_text AS annotation_source_text,
152
- is_subagent AS is_subagent,
153
- subagent_label AS subagent_label,
154
- title AS title,
155
- message_count AS message_count,
156
- is_archived AS is_archived,
157
- last_message_at AS last_message_at,
158
- created_at AS created_at,
159
- updated_at AS updated_at
160
- FROM session_indices
161
- WHERE session_id = ?`)
162
- .get(sessionId);
167
+ const row = this.findIndexRecordBySessionIdStatement.get(sessionId);
163
168
  return row ? mapSessionIndexRecordRow(row) : null;
164
169
  }
165
170
  renameTitle(sessionId, title, updatedAt) {
166
- this.db
167
- .prepare(`UPDATE session_indices
168
- SET title = ?, updated_at = ?
169
- WHERE session_id = ?`)
170
- .run(title, updatedAt, sessionId);
171
+ this.renameTitleStatement.run(title, updatedAt, sessionId);
171
172
  }
172
173
  }
173
174
  function mapSessionListItemRow(row) {
@@ -1 +1 @@
1
- {"version":3,"file":"session-index-repository.js","sourceRoot":"","sources":["../../../../src/storage/repositories/session-index-repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-index-repository.js","sourceRoot":"","sources":["../../../../src/storage/repositories/session-index-repository.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,13 @@ import type Database from "better-sqlite3";
2
2
  import type { SessionMessageAttachmentRecord } from "../../types/domain.js";
3
3
  export declare class SessionMessageAttachmentRepository {
4
4
  private readonly db;
5
+ private readonly listBySessionAndClientRequestStatement;
6
+ private readonly listBySessionStatement;
7
+ private readonly findBySessionAndIdStatement;
8
+ private readonly insertStatement;
9
+ private readonly bindMessageStatement;
10
+ private readonly listUnboundBySessionAndClientRequestStatement;
11
+ private readonly deleteBySessionStatement;
5
12
  constructor(db: Database.Database);
6
13
  listBySessionAndClientRequest(sessionId: string, clientRequestId: string): SessionMessageAttachmentRecord[];
7
14
  listBySession(sessionId: string): SessionMessageAttachmentRecord[];