@jingyi0605/codingns 0.7.3 → 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.
- package/README.md +6 -0
- package/bin/codingns.mjs +747 -28
- package/bin/office-mcp-server.mjs +620 -0
- package/dist/public/assets/{AdaptiveButlerPage-CgBX49t-.js → AdaptiveButlerPage-BsgVNRAa.js} +1 -1
- package/dist/public/assets/{App-tXOqoHNl.js → App-tPcbyRdS.js} +3 -3
- package/dist/public/assets/{BootstrapPage-DoRMz87R.js → BootstrapPage--MDOigQi.js} +1 -1
- package/dist/public/assets/{ConversationPage-DXR6Hp4O.js → ConversationPage-BBss5ED8.js} +6 -6
- package/dist/public/assets/{DesktopDetachPreviewPage-Cyk-ZYCk.js → DesktopDetachPreviewPage-CB8DoqwU.js} +1 -1
- package/dist/public/assets/{DesktopWindowPage-DNVNK3hs.js → DesktopWindowPage-GtIx5m8K.js} +1 -1
- package/dist/public/assets/FileContextPanel-BcM7AIT4.js +1 -0
- package/dist/public/assets/{GitSidebar-Cr3Z9OUI.js → GitSidebar-CMtkaxuI.js} +2 -2
- package/dist/public/assets/{MobileCreateSessionSheet-DMW0V6GJ.js → MobileCreateSessionSheet-CrFY41_8.js} +1 -1
- package/dist/public/assets/{MobileTopHeaderFrame-CkdnZ_MU.js → MobileTopHeaderFrame-DGVOzXyg.js} +1 -1
- package/dist/public/assets/{MobileWorkspaceSwitcherHeader-KIbqBYJN.js → MobileWorkspaceSwitcherHeader-DLkACTnQ.js} +1 -1
- package/dist/public/assets/{RelayConnectEntryPage-DIRBH3hw.js → RelayConnectEntryPage-0MPPjxtQ.js} +1 -1
- package/dist/public/assets/{ServerSettingsModal-C-9RxdWP.js → ServerSettingsModal-vgOhwus4.js} +1 -1
- package/dist/public/assets/{SessionIndexPage-bRlIydRA.js → SessionIndexPage-KK626Ra9.js} +1 -1
- package/dist/public/assets/{SettingsPage-CMEt4ua9.js → SettingsPage-B3edBJIo.js} +2 -2
- package/dist/public/assets/{TerminalManagerPanel-2bi9wVhT.js → TerminalManagerPanel-BxlhZp8c.js} +1 -1
- package/dist/public/assets/{TerminalPage-DayZz2Tf.js → TerminalPage-B6Rdhylx.js} +1 -1
- package/dist/public/assets/{TerminalRuntimeFallbackModal-DgwYcp-Y.js → TerminalRuntimeFallbackModal-BVLfrpSa.js} +1 -1
- package/dist/public/assets/{ToolFilesPage-YvnP_FXW.js → ToolFilesPage-N_gwwUjD.js} +1 -1
- package/dist/public/assets/{ToolGitPage-GMcQKtV9.js → ToolGitPage-DOcuuWM1.js} +1 -1
- package/dist/public/assets/{ToolProcessesPage-DFIQ7BCd.js → ToolProcessesPage-D-FfJ7Re.js} +1 -1
- package/dist/public/assets/{ToolsHomePage-CSilFzXR.js → ToolsHomePage-CHfPxd20.js} +1 -1
- package/dist/public/assets/{WorkbenchLandingPage-1VtToSz9.js → WorkbenchLandingPage-CTTnfovY.js} +1 -1
- package/dist/public/assets/WorkbenchLayout-CbpJg0g1.js +244 -0
- package/dist/public/assets/{WorkbenchModal-BWXYSXmC.js → WorkbenchModal-Bt_1fYmM.js} +1 -1
- package/dist/public/assets/WorkbenchShellRoute-B4XB8SwG.css +1 -0
- package/dist/public/assets/WorkbenchShellRoute-DyaMnPfS.js +1 -0
- package/dist/public/assets/{WorkspaceDebugDetailPage-Ux8_Q7la.js → WorkspaceDebugDetailPage-s7yuDIxR.js} +1 -1
- package/dist/public/assets/{WorkspaceDetailPage-B402p99m.js → WorkspaceDetailPage-Cf-gVpqK.js} +1 -1
- package/dist/public/assets/{WorkspaceHomePage-D2pob6HI.js → WorkspaceHomePage-COf6I8sT.js} +1 -1
- package/dist/public/assets/{client-runtime-manager-C5D76ewj.js → client-runtime-manager-DGdKvYzx.js} +1 -1
- package/dist/public/assets/file-tree-icon-BeHqeru9.js +590 -0
- package/dist/public/assets/index-CcaQt50x.css +1 -0
- package/dist/public/assets/index-CuzMc7q2.js +42 -0
- package/dist/public/assets/{login-direct-candidate-resolver-wXSaB0i7.js → login-direct-candidate-resolver-DEP_xCmR.js} +1 -1
- package/dist/public/assets/{model-switch-api-CPtou49j.js → model-switch-api-c6kcbBGm.js} +1 -1
- package/dist/public/assets/{preferences-service-CdaK7zA8.js → preferences-service-CV6Ih0BG.js} +1 -1
- package/dist/public/assets/{realtime-client-BjQazYsK.js → realtime-client-CRCx5xBt.js} +1 -1
- package/dist/public/assets/{relay-entry-BwE5nw0l.js → relay-entry-C751A-Sm.js} +1 -1
- package/dist/public/assets/{terminal-runtime-meta-C-Lbyx2i.js → terminal-runtime-meta-CRAVR-8G.js} +1 -1
- package/dist/public/assets/{useRegisteredDebugTemplates-BM7-c-gx.js → useRegisteredDebugTemplates-D6YtNS0r.js} +1 -1
- package/dist/public/index.html +2 -2
- package/dist/server/config/env.d.ts +3 -0
- package/dist/server/config/env.js +67 -1
- package/dist/server/config/env.js.map +1 -1
- package/dist/server/config/opencode-base-url-resolver.d.ts +3 -2
- package/dist/server/config/opencode-base-url-resolver.js +64 -24
- package/dist/server/config/opencode-base-url-resolver.js.map +1 -1
- package/dist/server/middlewares/auth-guard.js +4 -0
- package/dist/server/middlewares/auth-guard.js.map +1 -1
- package/dist/server/modules/assistant-capability/assistant-capability-controller.d.ts +168 -1
- package/dist/server/modules/assistant-capability/assistant-capability-controller.js +205 -4
- package/dist/server/modules/assistant-capability/assistant-capability-controller.js.map +1 -1
- package/dist/server/modules/assistant-capability/assistant-capability-service.d.ts +296 -2
- package/dist/server/modules/assistant-capability/assistant-capability-service.js +872 -3
- package/dist/server/modules/assistant-capability/assistant-capability-service.js.map +1 -1
- package/dist/server/modules/auth/auth-service.d.ts +21 -1
- package/dist/server/modules/auth/auth-service.js +64 -0
- package/dist/server/modules/auth/auth-service.js.map +1 -1
- package/dist/server/modules/browser-runtime/browser-profile-service.d.ts +26 -0
- package/dist/server/modules/browser-runtime/browser-profile-service.js +85 -0
- package/dist/server/modules/browser-runtime/browser-profile-service.js.map +1 -0
- package/dist/server/modules/browser-runtime/browser-runtime-controller.d.ts +69 -0
- package/dist/server/modules/browser-runtime/browser-runtime-controller.js +83 -0
- package/dist/server/modules/browser-runtime/browser-runtime-controller.js.map +1 -0
- package/dist/server/modules/browser-runtime/browser-runtime-service.d.ts +56 -0
- package/dist/server/modules/browser-runtime/browser-runtime-service.js +215 -0
- package/dist/server/modules/browser-runtime/browser-runtime-service.js.map +1 -0
- package/dist/server/modules/browser-runtime/browser-task-execution-support.d.ts +65 -0
- package/dist/server/modules/browser-runtime/browser-task-execution-support.js +432 -0
- package/dist/server/modules/browser-runtime/browser-task-execution-support.js.map +1 -0
- package/dist/server/modules/browser-runtime/browser-task-executor-registry.d.ts +7 -0
- package/dist/server/modules/browser-runtime/browser-task-executor-registry.js +21 -0
- package/dist/server/modules/browser-runtime/browser-task-executor-registry.js.map +1 -0
- package/dist/server/modules/browser-runtime/browser-task-executor.d.ts +55 -0
- package/dist/server/modules/browser-runtime/browser-task-executor.js +2 -0
- package/dist/server/modules/browser-runtime/browser-task-executor.js.map +1 -0
- package/dist/server/modules/browser-runtime/browser-task-payload.d.ts +31 -0
- package/dist/server/modules/browser-runtime/browser-task-payload.js +55 -0
- package/dist/server/modules/browser-runtime/browser-task-payload.js.map +1 -0
- package/dist/server/modules/browser-runtime/opencli-bridge-browser-executor.d.ts +19 -0
- package/dist/server/modules/browser-runtime/opencli-bridge-browser-executor.js +219 -0
- package/dist/server/modules/browser-runtime/opencli-bridge-browser-executor.js.map +1 -0
- package/dist/server/modules/browser-runtime/opencli-browser-bridge-service.d.ts +15 -0
- package/dist/server/modules/browser-runtime/opencli-browser-bridge-service.js +33 -0
- package/dist/server/modules/browser-runtime/opencli-browser-bridge-service.js.map +1 -0
- package/dist/server/modules/browser-runtime/playwright-browser-executor.d.ts +16 -0
- package/dist/server/modules/browser-runtime/playwright-browser-executor.js +272 -0
- package/dist/server/modules/browser-runtime/playwright-browser-executor.js.map +1 -0
- package/dist/server/modules/butler/butler-auth-service.js +4 -0
- package/dist/server/modules/butler/butler-auth-service.js.map +1 -1
- package/dist/server/modules/butler/butler-inbox-instruction-adapter.js +1 -0
- package/dist/server/modules/butler/butler-inbox-instruction-adapter.js.map +1 -1
- package/dist/server/modules/butler/butler-session-summary-service.d.ts +1 -0
- package/dist/server/modules/butler/butler-session-summary-service.js +5 -3
- package/dist/server/modules/butler/butler-session-summary-service.js.map +1 -1
- package/dist/server/modules/butler/butler-workspace-context.js +23 -0
- package/dist/server/modules/butler/butler-workspace-context.js.map +1 -1
- package/dist/server/modules/channels/wechat-claw-client.d.ts +51 -0
- package/dist/server/modules/channels/wechat-claw-client.js +245 -0
- package/dist/server/modules/channels/wechat-claw-client.js.map +1 -0
- package/dist/server/modules/debug-target/debug-target-service.d.ts +2 -0
- package/dist/server/modules/debug-target/debug-target-service.js +14 -0
- package/dist/server/modules/debug-target/debug-target-service.js.map +1 -1
- package/dist/server/modules/document-runtime/document-docx-fallback-renderer.py +139 -0
- package/dist/server/modules/document-runtime/document-export-executor.d.ts +50 -0
- package/dist/server/modules/document-runtime/document-export-executor.js +827 -0
- package/dist/server/modules/document-runtime/document-export-executor.js.map +1 -0
- package/dist/server/modules/document-runtime/document-runtime-controller.d.ts +127 -0
- package/dist/server/modules/document-runtime/document-runtime-controller.js +131 -0
- package/dist/server/modules/document-runtime/document-runtime-controller.js.map +1 -0
- package/dist/server/modules/document-runtime/document-runtime-service.d.ts +125 -0
- package/dist/server/modules/document-runtime/document-runtime-service.js +706 -0
- package/dist/server/modules/document-runtime/document-runtime-service.js.map +1 -0
- package/dist/server/modules/office/office-controller.d.ts +77 -0
- package/dist/server/modules/office/office-controller.js +174 -0
- package/dist/server/modules/office/office-controller.js.map +1 -0
- package/dist/server/modules/office/office-preview-link-service.d.ts +27 -0
- package/dist/server/modules/office/office-preview-link-service.js +121 -0
- package/dist/server/modules/office/office-preview-link-service.js.map +1 -0
- package/dist/server/modules/office/office-service.d.ts +67 -0
- package/dist/server/modules/office/office-service.js +359 -0
- package/dist/server/modules/office/office-service.js.map +1 -0
- package/dist/server/modules/opencli/opencli-bridge-skill-service.js +38 -14
- package/dist/server/modules/opencli/opencli-bridge-skill-service.js.map +1 -1
- package/dist/server/modules/opencli/opencli-install-discovery.d.ts +4 -0
- package/dist/server/modules/opencli/opencli-install-discovery.js +94 -0
- package/dist/server/modules/opencli/opencli-install-discovery.js.map +1 -1
- package/dist/server/modules/opencli/opencli-runtime-builder.js +29 -0
- package/dist/server/modules/opencli/opencli-runtime-builder.js.map +1 -1
- package/dist/server/modules/opencli/opencli-runtime-guard.d.ts +2 -0
- package/dist/server/modules/opencli/opencli-runtime-guard.js +5 -0
- package/dist/server/modules/opencli/opencli-runtime-guard.js.map +1 -0
- package/dist/server/modules/ops-runtime/ops-runtime-controller.d.ts +70 -0
- package/dist/server/modules/ops-runtime/ops-runtime-controller.js +83 -0
- package/dist/server/modules/ops-runtime/ops-runtime-controller.js.map +1 -0
- package/dist/server/modules/ops-runtime/ops-runtime-service.d.ts +80 -0
- package/dist/server/modules/ops-runtime/ops-runtime-service.js +327 -0
- package/dist/server/modules/ops-runtime/ops-runtime-service.js.map +1 -0
- package/dist/server/modules/ops-runtime/ssh-ops-executor.d.ts +41 -0
- package/dist/server/modules/ops-runtime/ssh-ops-executor.js +478 -0
- package/dist/server/modules/ops-runtime/ssh-ops-executor.js.map +1 -0
- package/dist/server/modules/presentation/presentation-controller.d.ts +22 -0
- package/dist/server/modules/presentation/presentation-controller.js +59 -0
- package/dist/server/modules/presentation/presentation-controller.js.map +1 -0
- package/dist/server/modules/presentation/presentation-export-task-service.d.ts +24 -0
- package/dist/server/modules/presentation/presentation-export-task-service.js +137 -0
- package/dist/server/modules/presentation/presentation-export-task-service.js.map +1 -0
- package/dist/server/modules/presentation/presentation-export-types.d.ts +12 -0
- package/dist/server/modules/presentation/presentation-export-types.js +2 -0
- package/dist/server/modules/presentation/presentation-export-types.js.map +1 -0
- package/dist/server/modules/presentation/presentation-pdf-export-service.d.ts +20 -0
- package/dist/server/modules/presentation/presentation-pdf-export-service.js +29 -0
- package/dist/server/modules/presentation/presentation-pdf-export-service.js.map +1 -0
- package/dist/server/modules/presentation/presentation-pptx-export-service.d.ts +20 -0
- package/dist/server/modules/presentation/presentation-pptx-export-service.js +64 -0
- package/dist/server/modules/presentation/presentation-pptx-export-service.js.map +1 -0
- package/dist/server/modules/presentation/presentation-renderer.d.ts +21 -0
- package/dist/server/modules/presentation/presentation-renderer.js +208 -0
- package/dist/server/modules/presentation/presentation-renderer.js.map +1 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-gateway-service.js +3 -3
- package/dist/server/modules/relay-tunnel/relay-tunnel-gateway-service.js.map +1 -1
- package/dist/server/modules/relay-tunnel/relay-tunnel-service.js +6 -1
- package/dist/server/modules/relay-tunnel/relay-tunnel-service.js.map +1 -1
- package/dist/server/modules/sessions/codex-app-server-helper-process.js +2 -1
- package/dist/server/modules/sessions/codex-app-server-helper-process.js.map +1 -1
- package/dist/server/modules/sessions/session-controller.d.ts +1 -0
- package/dist/server/modules/sessions/session-controller.js +59 -4
- package/dist/server/modules/sessions/session-controller.js.map +1 -1
- package/dist/server/modules/sessions/session-history-service.js +17 -5
- package/dist/server/modules/sessions/session-history-service.js.map +1 -1
- package/dist/server/modules/sessions/session-live-runtime-service.d.ts +5 -1
- package/dist/server/modules/sessions/session-live-runtime-service.js +86 -8
- package/dist/server/modules/sessions/session-live-runtime-service.js.map +1 -1
- package/dist/server/modules/sessions/session-provider-config-service.d.ts +25 -1
- package/dist/server/modules/sessions/session-provider-config-service.js +54 -5
- package/dist/server/modules/sessions/session-provider-config-service.js.map +1 -1
- package/dist/server/modules/sessions/workspace-office-mcp-config.d.ts +14 -0
- package/dist/server/modules/sessions/workspace-office-mcp-config.js +54 -0
- package/dist/server/modules/sessions/workspace-office-mcp-config.js.map +1 -0
- package/dist/server/modules/sessions/workspace-session-auth-service.d.ts +27 -0
- package/dist/server/modules/sessions/workspace-session-auth-service.js +109 -0
- package/dist/server/modules/sessions/workspace-session-auth-service.js.map +1 -0
- package/dist/server/modules/sessions/workspace-session-runtime-context-service.d.ts +50 -0
- package/dist/server/modules/sessions/workspace-session-runtime-context-service.js +332 -0
- package/dist/server/modules/sessions/workspace-session-runtime-context-service.js.map +1 -0
- package/dist/server/modules/skills/assistant-runtime-skill-catalog.js +5 -0
- package/dist/server/modules/skills/assistant-runtime-skill-catalog.js.map +1 -1
- package/dist/server/modules/skills/builtin-skills/codingns-workspace-session/SKILL.md +67 -0
- package/dist/server/modules/skills/builtin-skills/codingns-workspace-session/agents/openai.yaml +4 -0
- package/dist/server/modules/skills/builtin-skills/codingns-workspace-session/references/cli-workflow.md +133 -0
- package/dist/server/modules/skills/skill-controller.d.ts +7 -0
- package/dist/server/modules/skills/skill-controller.js +7 -0
- package/dist/server/modules/skills/skill-controller.js.map +1 -1
- package/dist/server/modules/skills/skill-manager-service.d.ts +61 -0
- package/dist/server/modules/skills/skill-manager-service.js +218 -0
- package/dist/server/modules/skills/skill-manager-service.js.map +1 -1
- package/dist/server/modules/skills/skill-name-policy.js +2 -1
- package/dist/server/modules/skills/skill-name-policy.js.map +1 -1
- package/dist/server/modules/tasks/task-helper-client.d.ts +1 -0
- package/dist/server/modules/tasks/task-helper-client.js +45 -9
- package/dist/server/modules/tasks/task-helper-client.js.map +1 -1
- package/dist/server/modules/tasks/task-types.d.ts +5 -0
- package/dist/server/modules/tasks/task-types.js +6 -1
- package/dist/server/modules/tasks/task-types.js.map +1 -1
- package/dist/server/modules/terminal/runtime/conpty-session-agent-process.js +2 -1
- package/dist/server/modules/terminal/runtime/conpty-session-agent-process.js.map +1 -1
- package/dist/server/modules/terminal/runtime/node-pty-loader.d.ts +5 -0
- package/dist/server/modules/terminal/runtime/node-pty-loader.js +68 -0
- package/dist/server/modules/terminal/runtime/node-pty-loader.js.map +1 -0
- package/dist/server/modules/terminal/runtime/pty-broker-agent-process.js +2 -1
- package/dist/server/modules/terminal/runtime/pty-broker-agent-process.js.map +1 -1
- package/dist/server/modules/terminal/runtime/pty-host-attachment-manager.js +6 -9
- package/dist/server/modules/terminal/runtime/pty-host-attachment-manager.js.map +1 -1
- package/dist/server/modules/terminal/runtime/pty-runtime-manager.js +6 -9
- package/dist/server/modules/terminal/runtime/pty-runtime-manager.js.map +1 -1
- package/dist/server/routes/assistant.d.ts +2 -1
- package/dist/server/routes/assistant.js +20 -1
- package/dist/server/routes/assistant.js.map +1 -1
- package/dist/server/routes/browser-runtime.d.ts +3 -0
- package/dist/server/routes/browser-runtime.js +14 -0
- package/dist/server/routes/browser-runtime.js.map +1 -0
- package/dist/server/routes/document-runtime.d.ts +3 -0
- package/dist/server/routes/document-runtime.js +18 -0
- package/dist/server/routes/document-runtime.js.map +1 -0
- package/dist/server/routes/office.d.ts +3 -0
- package/dist/server/routes/office.js +16 -0
- package/dist/server/routes/office.js.map +1 -0
- package/dist/server/routes/ops-runtime.d.ts +3 -0
- package/dist/server/routes/ops-runtime.js +13 -0
- package/dist/server/routes/ops-runtime.js.map +1 -0
- package/dist/server/routes/presentation.d.ts +3 -0
- package/dist/server/routes/presentation.js +5 -0
- package/dist/server/routes/presentation.js.map +1 -0
- package/dist/server/routes/skills.js +1 -0
- package/dist/server/routes/skills.js.map +1 -1
- package/dist/server/server/create-server.d.ts +36 -0
- package/dist/server/server/create-server.js +215 -4
- package/dist/server/server/create-server.js.map +1 -1
- package/dist/server/server/release-manifest-sync.d.ts +1 -0
- package/dist/server/server/release-manifest-sync.js +2 -2
- package/dist/server/server/release-manifest-sync.js.map +1 -1
- package/dist/server/server/start-host.js +1 -1
- package/dist/server/server/start-host.js.map +1 -1
- package/dist/server/storage/repositories/auth-token-repository.js +22 -6
- package/dist/server/storage/repositories/auth-token-repository.js.map +1 -1
- package/dist/server/storage/repositories/browser-profile-repository.d.ts +18 -0
- package/dist/server/storage/repositories/browser-profile-repository.js +134 -0
- package/dist/server/storage/repositories/browser-profile-repository.js.map +1 -0
- package/dist/server/storage/repositories/document-comment-repository.d.ts +10 -0
- package/dist/server/storage/repositories/document-comment-repository.js +118 -0
- package/dist/server/storage/repositories/document-comment-repository.js.map +1 -0
- package/dist/server/storage/repositories/document-repository.d.ts +16 -0
- package/dist/server/storage/repositories/document-repository.js +109 -0
- package/dist/server/storage/repositories/document-repository.js.map +1 -0
- package/dist/server/storage/repositories/document-revision-repository.d.ts +10 -0
- package/dist/server/storage/repositories/document-revision-repository.js +79 -0
- package/dist/server/storage/repositories/document-revision-repository.js.map +1 -0
- package/dist/server/storage/repositories/document-template-repository.d.ts +13 -0
- package/dist/server/storage/repositories/document-template-repository.js +244 -0
- package/dist/server/storage/repositories/document-template-repository.js.map +1 -0
- package/dist/server/storage/repositories/office-approval-repository.d.ts +11 -0
- package/dist/server/storage/repositories/office-approval-repository.js +109 -0
- package/dist/server/storage/repositories/office-approval-repository.js.map +1 -0
- package/dist/server/storage/repositories/office-artifact-repository.d.ts +10 -0
- package/dist/server/storage/repositories/office-artifact-repository.js +89 -0
- package/dist/server/storage/repositories/office-artifact-repository.js.map +1 -0
- package/dist/server/storage/repositories/office-audit-event-repository.d.ts +8 -0
- package/dist/server/storage/repositories/office-audit-event-repository.js +54 -0
- package/dist/server/storage/repositories/office-audit-event-repository.js.map +1 -0
- package/dist/server/storage/repositories/office-connector-repository.d.ts +10 -0
- package/dist/server/storage/repositories/office-connector-repository.js +97 -0
- package/dist/server/storage/repositories/office-connector-repository.js.map +1 -0
- package/dist/server/storage/repositories/office-receipt-repository.d.ts +8 -0
- package/dist/server/storage/repositories/office-receipt-repository.js +48 -0
- package/dist/server/storage/repositories/office-receipt-repository.js.map +1 -0
- package/dist/server/storage/repositories/office-rollback-record-repository.d.ts +8 -0
- package/dist/server/storage/repositories/office-rollback-record-repository.js +60 -0
- package/dist/server/storage/repositories/office-rollback-record-repository.js.map +1 -0
- package/dist/server/storage/repositories/office-task-repository.d.ts +19 -0
- package/dist/server/storage/repositories/office-task-repository.js +199 -0
- package/dist/server/storage/repositories/office-task-repository.js.map +1 -0
- package/dist/server/storage/repositories/office-task-step-repository.d.ts +10 -0
- package/dist/server/storage/repositories/office-task-step-repository.js +110 -0
- package/dist/server/storage/repositories/office-task-step-repository.js.map +1 -0
- package/dist/server/storage/repositories/ops-target-repository.d.ts +16 -0
- package/dist/server/storage/repositories/ops-target-repository.js +119 -0
- package/dist/server/storage/repositories/ops-target-repository.js.map +1 -0
- package/dist/server/storage/repositories/session-binding-repository.d.ts +4 -0
- package/dist/server/storage/repositories/session-binding-repository.js +70 -69
- package/dist/server/storage/repositories/session-binding-repository.js.map +1 -1
- package/dist/server/storage/repositories/session-changed-file-repository.d.ts +6 -0
- package/dist/server/storage/repositories/session-changed-file-repository.js +44 -43
- package/dist/server/storage/repositories/session-changed-file-repository.js.map +1 -1
- package/dist/server/storage/repositories/session-fork-repository.d.ts +2 -0
- package/dist/server/storage/repositories/session-fork-repository.js +42 -41
- package/dist/server/storage/repositories/session-fork-repository.js.map +1 -1
- package/dist/server/storage/repositories/session-index-repository.d.ts +5 -0
- package/dist/server/storage/repositories/session-index-repository.js +153 -152
- package/dist/server/storage/repositories/session-index-repository.js.map +1 -1
- package/dist/server/storage/repositories/session-message-attachment-repository.d.ts +7 -0
- package/dist/server/storage/repositories/session-message-attachment-repository.js +91 -90
- package/dist/server/storage/repositories/session-message-attachment-repository.js.map +1 -1
- package/dist/server/storage/repositories/session-message-origin-repository.d.ts +2 -0
- package/dist/server/storage/repositories/session-message-origin-repository.js +25 -24
- package/dist/server/storage/repositories/session-message-origin-repository.js.map +1 -1
- package/dist/server/storage/repositories/session-state-repository.d.ts +2 -0
- package/dist/server/storage/repositories/session-state-repository.js +35 -34
- package/dist/server/storage/repositories/session-state-repository.js.map +1 -1
- package/dist/server/storage/repositories/session-status-snapshot-repository.d.ts +2 -0
- package/dist/server/storage/repositories/session-status-snapshot-repository.js +25 -24
- package/dist/server/storage/repositories/session-status-snapshot-repository.js.map +1 -1
- package/dist/server/storage/sqlite/client.js +123 -1
- package/dist/server/storage/sqlite/client.js.map +1 -1
- package/dist/server/storage/sqlite/schema.sql +300 -1
- package/dist/server/types/domain.d.ts +205 -1
- package/package.json +14 -7
- package/scripts/postinstall.mjs +170 -36
- package/dist/public/assets/FileContextPanel-xGTYDclT.js +0 -1
- package/dist/public/assets/WorkbenchLayout-DScHaza9.js +0 -244
- package/dist/public/assets/WorkbenchShellRoute-DN6LdrqC.js +0 -1
- package/dist/public/assets/WorkbenchShellRoute-DhQo_0vu.css +0 -1
- package/dist/public/assets/file-tree-icon-lfU9Ag77.js +0 -3
- package/dist/public/assets/index-CFYXCsyx.css +0 -1
- package/dist/public/assets/index-NGxWr8Ix.js +0 -42
- package/node_modules/@codingns/session-sync-core/dist/claude-message-utils.d.ts +0 -42
- package/node_modules/@codingns/session-sync-core/dist/claude-message-utils.js +0 -346
- package/node_modules/@codingns/session-sync-core/dist/claude-message-utils.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/codex-resume-history.d.ts +0 -1
- package/node_modules/@codingns/session-sync-core/dist/codex-resume-history.js +0 -80
- package/node_modules/@codingns/session-sync-core/dist/codex-resume-history.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/index.d.ts +0 -18
- package/node_modules/@codingns/session-sync-core/dist/index.js +0 -19
- package/node_modules/@codingns/session-sync-core/dist/index.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/kimi-message-normalizer.d.ts +0 -18
- package/node_modules/@codingns/session-sync-core/dist/kimi-message-normalizer.js +0 -659
- package/node_modules/@codingns/session-sync-core/dist/kimi-message-normalizer.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/kimi-shared.d.ts +0 -11
- package/node_modules/@codingns/session-sync-core/dist/kimi-shared.js +0 -72
- package/node_modules/@codingns/session-sync-core/dist/kimi-shared.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/patch-builder.d.ts +0 -67
- package/node_modules/@codingns/session-sync-core/dist/patch-builder.js +0 -752
- package/node_modules/@codingns/session-sync-core/dist/patch-builder.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.d.ts +0 -48
- package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.js +0 -1184
- package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/claude-session-store.d.ts +0 -11
- package/node_modules/@codingns/session-sync-core/dist/providers/claude-session-store.js +0 -105
- package/node_modules/@codingns/session-sync-core/dist/providers/claude-session-store.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/codex.d.ts +0 -84
- package/node_modules/@codingns/session-sync-core/dist/providers/codex.js +0 -2436
- package/node_modules/@codingns/session-sync-core/dist/providers/codex.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/gemini.d.ts +0 -47
- package/node_modules/@codingns/session-sync-core/dist/providers/gemini.js +0 -1480
- package/node_modules/@codingns/session-sync-core/dist/providers/gemini.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/kimi.d.ts +0 -33
- package/node_modules/@codingns/session-sync-core/dist/providers/kimi.js +0 -684
- package/node_modules/@codingns/session-sync-core/dist/providers/kimi.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/legna-code.d.ts +0 -9
- package/node_modules/@codingns/session-sync-core/dist/providers/legna-code.js +0 -17
- package/node_modules/@codingns/session-sync-core/dist/providers/legna-code.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/opencode-permissions.d.ts +0 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/opencode-permissions.js +0 -8
- package/node_modules/@codingns/session-sync-core/dist/providers/opencode-permissions.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/opencode-shared.d.ts +0 -48
- package/node_modules/@codingns/session-sync-core/dist/providers/opencode-shared.js +0 -373
- package/node_modules/@codingns/session-sync-core/dist/providers/opencode-shared.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/opencode.d.ts +0 -61
- package/node_modules/@codingns/session-sync-core/dist/providers/opencode.js +0 -1191
- package/node_modules/@codingns/session-sync-core/dist/providers/opencode.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/utils.d.ts +0 -27
- package/node_modules/@codingns/session-sync-core/dist/providers/utils.js +0 -415
- package/node_modules/@codingns/session-sync-core/dist/providers/utils.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/registry.d.ts +0 -7
- package/node_modules/@codingns/session-sync-core/dist/registry.js +0 -22
- package/node_modules/@codingns/session-sync-core/dist/registry.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/runtime/active-run-registry.d.ts +0 -24
- package/node_modules/@codingns/session-sync-core/dist/runtime/active-run-registry.js +0 -329
- package/node_modules/@codingns/session-sync-core/dist/runtime/active-run-registry.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/runtime/claude-runtime.d.ts +0 -30
- package/node_modules/@codingns/session-sync-core/dist/runtime/claude-runtime.js +0 -939
- package/node_modules/@codingns/session-sync-core/dist/runtime/claude-runtime.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/runtime/codex-permissions.d.ts +0 -1
- package/node_modules/@codingns/session-sync-core/dist/runtime/codex-permissions.js +0 -16
- package/node_modules/@codingns/session-sync-core/dist/runtime/codex-permissions.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.d.ts +0 -70
- package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.js +0 -2571
- package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/runtime/gemini-runtime.d.ts +0 -21
- package/node_modules/@codingns/session-sync-core/dist/runtime/gemini-runtime.js +0 -561
- package/node_modules/@codingns/session-sync-core/dist/runtime/gemini-runtime.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/runtime/kimi-runtime.d.ts +0 -38
- package/node_modules/@codingns/session-sync-core/dist/runtime/kimi-runtime.js +0 -911
- package/node_modules/@codingns/session-sync-core/dist/runtime/kimi-runtime.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/runtime/legna-runtime.d.ts +0 -15
- package/node_modules/@codingns/session-sync-core/dist/runtime/legna-runtime.js +0 -16
- package/node_modules/@codingns/session-sync-core/dist/runtime/legna-runtime.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/runtime/opencode-runtime.d.ts +0 -37
- package/node_modules/@codingns/session-sync-core/dist/runtime/opencode-runtime.js +0 -963
- package/node_modules/@codingns/session-sync-core/dist/runtime/opencode-runtime.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/runtime/provider-runtime-service.d.ts +0 -21
- package/node_modules/@codingns/session-sync-core/dist/runtime/provider-runtime-service.js +0 -168
- package/node_modules/@codingns/session-sync-core/dist/runtime/provider-runtime-service.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/runtime/types.d.ts +0 -152
- package/node_modules/@codingns/session-sync-core/dist/runtime/types.js +0 -2
- package/node_modules/@codingns/session-sync-core/dist/runtime/types.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/services.d.ts +0 -28
- package/node_modules/@codingns/session-sync-core/dist/services.js +0 -148
- package/node_modules/@codingns/session-sync-core/dist/services.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/sqlite/node-sqlite.d.ts +0 -6
- package/node_modules/@codingns/session-sync-core/dist/sqlite/node-sqlite.js +0 -9
- package/node_modules/@codingns/session-sync-core/dist/sqlite/node-sqlite.js.map +0 -1
- package/node_modules/@codingns/session-sync-core/dist/types.d.ts +0 -198
- package/node_modules/@codingns/session-sync-core/dist/types.js +0 -2
- package/node_modules/@codingns/session-sync-core/dist/types.js.map +0 -1
- 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
|
-
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
70
|
-
|
|
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;
|
|
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.
|
|
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.
|
|
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;
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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":"AAIA,MAAM,OAAO,sBAAsB;
|
|
1
|
+
{"version":3,"file":"session-index-repository.js","sourceRoot":"","sources":["../../../../src/storage/repositories/session-index-repository.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,sBAAsB;IAOJ;IANZ,eAAe,CAAiC;IAChD,wBAAwB,CAAiC;IACzD,wBAAwB,CAAiC;IACzD,mCAAmC,CAAiC;IACpE,oBAAoB,CAAiC;IAEtE,YAA6B,EAAqB;QAArB,OAAE,GAAF,EAAE,CAAmB;QAChD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CACpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0CA8BoC,CACrC,CAAC;QACF,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAC7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oGA6C8F,CAC/F,CAAC;QACF,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAC7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCA4C8B,CAC/B,CAAC;QACF,IAAI,CAAC,mCAAmC,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CACxD;;;;;;;;;;;;;;;;;4BAiBsB,CACvB,CAAC;QACF,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CACzC;;4BAEsB,CACvB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,MAA0B;QAC/B,IAAI,CAAC,eAAe;aACjB,GAAG,CACF,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,eAAe,IAAI,IAAI,EAC9B,MAAM,CAAC,WAAW,IAAI,SAAS,EAC/B,MAAM,CAAC,yBAAyB,IAAI,IAAI,EACxC,MAAM,CAAC,oBAAoB,IAAI,IAAI,EACnC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACzB,MAAM,CAAC,aAAa,IAAI,IAAI,EAC5B,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACzB,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,SAAS,CACjB,CAAC;IACN,CAAC;IAED,eAAe,CAAC,WAAmB,EAAE,MAAc;QACjD,OAAO,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC;aAC1D,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,qBAAqB,CAAC,GAAyB,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,eAAe,CAAC,SAAiB,EAAE,MAAc;QAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAmC,CAAC;QAEnG,OAAO,GAAG,CAAC,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACjD,CAAC;IAED,0BAA0B,CAAC,SAAiB;QAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,mCAAmC,CAAC,GAAG,CAAC,SAAS,CAAsC,CAAC;QAEzG,OAAO,GAAG,CAAC,CAAC,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACpD,CAAC;IAED,WAAW,CAAC,SAAiB,EAAE,KAAa,EAAE,SAAiB;QAC7D,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAC7D,CAAC;CACF;AA2DD,SAAS,qBAAqB,CAAC,GAAuB;IACpD,MAAM,eAAe,GACnB,GAAG,CAAC,eAAe,KAAK,SAAS;WAC9B,CAAC,GAAG,CAAC,aAAa,KAAK,UAAU,IAAI,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC;IAC3E,MAAM,gBAAgB,GAAG,GAAG,CAAC,eAAe,KAAK,UAAU,IAAI,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC;IAC/F,MAAM,mBAAmB,GACvB,GAAG,CAAC,eAAe,KAAK,MAAM;WAC3B,CAAC,CAAC,GAAG,CAAC,YAAY;WAClB,CAAC,CAAC,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC;IAChE,MAAM,aAAa,GACjB,eAAe,IAAI,gBAAgB;QACjC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,mBAAmB;YACnB,CAAC,CAAC,kBAAkB;YACpB,CAAC,CAAC,MAAM,CAAC;IAEf,OAAO;QACL,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,WAAW,EAAE,GAAG,CAAC,YAAY;QAC7B,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,iBAAiB,EAAE,GAAG,CAAC,mBAAmB;QAC1C,WAAW,EAAE,GAAG,CAAC,aAAa;QAC9B,kBAAkB,EAAE,GAAG,CAAC,oBAAoB;QAC5C,gBAAgB,EAAE,GAAG,CAAC,kBAAkB;QACxC,eAAe,EAAE,GAAG,CAAC,iBAAiB;QACtC,WAAW,EAAE,GAAG,CAAC,YAAY,IAAI,SAAS;QAC1C,yBAAyB,EAAE,GAAG,CAAC,4BAA4B;QAC3D,oBAAoB,EAAE,GAAG,CAAC,sBAAsB;QAChD,UAAU,EAAE,GAAG,CAAC,WAAW,IAAI,IAAI;QACnC,cAAc,EAAE,GAAG,CAAC,gBAAgB,IAAI,IAAI;QAC5C,mBAAmB,EAAE,GAAG,CAAC,sBAAsB;QAC/C,mBAAmB,EAAE,GAAG,CAAC,sBAAsB;QAC/C,2BAA2B,EAAE,GAAG,CAAC,8BAA8B,IAAI,IAAI;QACvE,UAAU,EAAE,GAAG,CAAC,WAAW,KAAK,CAAC;QACjC,aAAa,EAAE,GAAG,CAAC,cAAc;QACjC,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,UAAU,EAAE,GAAG,CAAC,QAAQ,KAAK,CAAC;QAC9B,YAAY,EAAE,GAAG,CAAC,aAAa;QAC/B,aAAa,EAAE,GAAG,CAAC,eAAe;QAClC,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,UAAU,EAAE,GAAG,CAAC,YAAY;QAC5B,aAAa,EAAE,GAAG,CAAC,eAAe;QAClC,eAAe,EAAE,GAAG,CAAC,iBAAiB;QACtC,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,YAAY,EAAE,GAAG,CAAC,aAAa;QAC/B,cAAc,EAAE,GAAG,CAAC,eAAe;QACnC,UAAU,EAAE,GAAG,CAAC,WAAW,KAAK,CAAC;QACjC,WAAW,EAAE,GAAG,CAAC,aAAa;QAC9B,WAAW,EAAE,GAAG,CAAC,YAAY;QAC7B,UAAU,EAAE,GAAG,CAAC,YAAY;QAC5B,aAAa;KACd,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAAC,GAA0B;IAC1D,OAAO;QACL,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,WAAW,EAAE,GAAG,CAAC,YAAY;QAC7B,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,eAAe,EAAE,GAAG,CAAC,iBAAiB;QACtC,WAAW,EAAE,GAAG,CAAC,YAAY,IAAI,SAAS;QAC1C,yBAAyB,EAAE,GAAG,CAAC,4BAA4B;QAC3D,oBAAoB,EAAE,GAAG,CAAC,sBAAsB;QAChD,UAAU,EAAE,GAAG,CAAC,WAAW,KAAK,CAAC;QACjC,aAAa,EAAE,GAAG,CAAC,cAAc;QACjC,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,YAAY,EAAE,GAAG,CAAC,aAAa;QAC/B,UAAU,EAAE,GAAG,CAAC,WAAW,KAAK,CAAC;QACjC,aAAa,EAAE,GAAG,CAAC,eAAe;QAClC,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,SAAS,EAAE,GAAG,CAAC,UAAU;KAC1B,CAAC;AACJ,CAAC"}
|
|
@@ -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[];
|