agor-live 0.17.2 → 0.17.3
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/dist/cli/lib/banner.d.ts +1 -1
- package/dist/cli/lib/banner.js +1 -1
- package/dist/cli/lib/check-migrations.test.js +9627 -9112
- package/dist/cli/lib/daemon-manager.test.js +9632 -9117
- package/dist/cli/lib/help.js +1 -1
- package/dist/core/api/index.d.cts +3 -3
- package/dist/core/api/index.d.ts +3 -3
- package/dist/core/{board-comment-DIdOJrSF.d.cts → board-comment-CCFVVN7K.d.cts} +0 -2
- package/dist/core/{board-comment-3N-jSgsk.d.ts → board-comment-iT3DgZb4.d.ts} +0 -2
- package/dist/core/claude/index.cjs +29 -19
- package/dist/core/claude/index.d.cts +2 -2
- package/dist/core/claude/index.d.ts +2 -2
- package/dist/core/claude/index.js +32 -33
- package/dist/core/client/index.cjs +49 -0
- package/dist/core/client/index.d.cts +7 -7
- package/dist/core/client/index.d.ts +7 -7
- package/dist/core/client/index.js +46 -0
- package/dist/core/{client-B5PyIvNc.d.cts → client-CemqXk0v.d.cts} +116 -100
- package/dist/core/{client-C1CsRi19.d.ts → client-uYEOha6g.d.ts} +116 -100
- package/dist/core/config/browser.d.cts +3 -3
- package/dist/core/config/browser.d.ts +3 -3
- package/dist/core/config/index.cjs +84 -41
- package/dist/core/config/index.d.cts +59 -17
- package/dist/core/config/index.d.ts +59 -17
- package/dist/core/config/index.js +86 -55
- package/dist/core/{config-manager-TxxjFMRd.d.cts → config-manager-B8TP9Kz0.d.cts} +12 -3
- package/dist/core/{config-manager-DTrsj6G3.d.ts → config-manager-CDEB0FY4.d.ts} +12 -3
- package/dist/core/{config-services-YEZ4DwCD.d.cts → config-services-CXyQKEK5.d.cts} +1 -1
- package/dist/core/{config-services-DcO2GRgh.d.ts → config-services-DhM7_yWn.d.ts} +1 -1
- package/dist/core/db/index.cjs +235 -175
- package/dist/core/db/index.d.cts +190 -147
- package/dist/core/db/index.d.ts +190 -147
- package/dist/core/db/index.js +239 -190
- package/dist/core/db/session-guard.d.cts +4 -4
- package/dist/core/db/session-guard.d.ts +4 -4
- package/dist/core/drizzle/postgres/0028_queued_tasks.sql +8 -0
- package/dist/core/drizzle/postgres/0030_migrate_queued_messages.sql +24 -0
- package/dist/core/drizzle/postgres/0031_restructure_agentic_tool_config.sql +201 -0
- package/dist/core/drizzle/postgres/meta/_journal.json +21 -0
- package/dist/core/drizzle/sqlite/0039_queued_tasks.sql +13 -0
- package/dist/core/drizzle/sqlite/0040_migrate_queued_messages.sql +61 -0
- package/dist/core/drizzle/sqlite/0041_restructure_agentic_tool_config.sql +204 -0
- package/dist/core/drizzle/sqlite/meta/_journal.json +21 -0
- package/dist/core/gateway/index.d.cts +2 -2
- package/dist/core/gateway/index.d.ts +2 -2
- package/dist/core/{gateway-BnOlAelY.d.cts → gateway-BWq4j_Ll.d.cts} +1 -1
- package/dist/core/{gateway-B_4X-v07.d.ts → gateway-C3Jm_akw.d.ts} +1 -1
- package/dist/core/git/index.d.cts +4 -4
- package/dist/core/git/index.d.ts +4 -4
- package/dist/core/index.cjs +474 -201
- package/dist/core/index.d.cts +12 -10
- package/dist/core/index.d.ts +12 -10
- package/dist/core/index.js +473 -216
- package/dist/core/lib/feathers-validation.cjs +2 -1
- package/dist/core/lib/feathers-validation.d.cts +1 -1
- package/dist/core/lib/feathers-validation.d.ts +1 -1
- package/dist/core/lib/feathers-validation.js +2 -1
- package/dist/core/mcp/index.cjs +26 -16
- package/dist/core/mcp/index.js +26 -16
- package/dist/core/{message-DinITA7a.d.cts → message-CSWOsdcZ.d.cts} +1 -9
- package/dist/core/{message-CHUUP6OS.d.ts → message-DZa8g0s0.d.ts} +1 -9
- package/dist/core/models/index.d.cts +3 -73
- package/dist/core/models/index.d.ts +3 -73
- package/dist/core/package.json +5 -0
- package/dist/core/permissions/index.d.cts +1 -1
- package/dist/core/permissions/index.d.ts +1 -1
- package/dist/core/resolve-config-BcL-Hv8k.d.ts +74 -0
- package/dist/core/resolve-config-DTCxuSBx.d.cts +74 -0
- package/dist/core/seed/index.cjs +145 -98
- package/dist/core/seed/index.js +148 -112
- package/dist/core/{session-guard-C0LkDEN7.d.ts → session-guard-BFqVtBoS.d.ts} +1 -1
- package/dist/core/{session-guard-kvAx_8Fb.d.cts → session-guard-KHh0cnET.d.cts} +1 -1
- package/dist/core/sessions/index.cjs +184 -0
- package/dist/core/sessions/index.d.cts +79 -0
- package/dist/core/sessions/index.d.ts +79 -0
- package/dist/core/sessions/index.js +157 -0
- package/dist/core/{task-BLPFCORT.d.ts → task-BHV-YHg1.d.ts} +41 -3
- package/dist/core/{task-wht1RJEL.d.cts → task-C2Hy7H6u.d.cts} +41 -3
- package/dist/core/templates/session-context.d.cts +1 -1
- package/dist/core/templates/session-context.d.ts +1 -1
- package/dist/core/tools/mcp/oauth-mcp-transport.cjs +168 -66
- package/dist/core/tools/mcp/oauth-mcp-transport.d.cts +92 -16
- package/dist/core/tools/mcp/oauth-mcp-transport.d.ts +92 -16
- package/dist/core/tools/mcp/oauth-mcp-transport.js +165 -66
- package/dist/core/tools/mcp/oauth-refresh.cjs +43 -53
- package/dist/core/tools/mcp/oauth-refresh.d.cts +3 -3
- package/dist/core/tools/mcp/oauth-refresh.d.ts +3 -3
- package/dist/core/tools/mcp/oauth-refresh.js +58 -78
- package/dist/core/types/index.cjs +49 -0
- package/dist/core/types/index.d.cts +7 -7
- package/dist/core/types/index.d.ts +7 -7
- package/dist/core/types/index.js +46 -0
- package/dist/core/{types-DNqfdt1z.d.cts → types-D4Rl6ZKN.d.cts} +18 -2
- package/dist/core/{types-DqPMmTad.d.ts → types-n61iaXub.d.ts} +18 -2
- package/dist/core/unix/index.cjs +164 -110
- package/dist/core/unix/index.d.cts +7 -8
- package/dist/core/unix/index.d.ts +7 -8
- package/dist/core/unix/index.js +167 -124
- package/dist/core/{user-DkNdeFoz.d.cts → user-CpfkcV2C.d.cts} +139 -13
- package/dist/core/{user-BfVWBmXA.d.ts → user-DP-XZMIM.d.ts} +139 -13
- package/dist/core/utils/permission-mode-mapper.d.cts +0 -2
- package/dist/core/utils/permission-mode-mapper.d.ts +0 -2
- package/dist/daemon/index.js +2976 -2791
- package/dist/daemon/main.js +2976 -2791
- package/dist/daemon/mcp/server.js +177 -134
- package/dist/daemon/mcp/tools/analytics.js +19 -5
- package/dist/daemon/mcp/tools/artifacts.js +19 -5
- package/dist/daemon/mcp/tools/boards.js +19 -5
- package/dist/daemon/mcp/tools/card-types.js +19 -5
- package/dist/daemon/mcp/tools/cards.js +19 -5
- package/dist/daemon/mcp/tools/environment.js +19 -5
- package/dist/daemon/mcp/tools/mcp-servers.d.ts +29 -2
- package/dist/daemon/mcp/tools/mcp-servers.js +64 -54
- package/dist/daemon/mcp/tools/messages.js +19 -5
- package/dist/daemon/mcp/tools/repos.js +19 -5
- package/dist/daemon/mcp/tools/search.js +19 -5
- package/dist/daemon/mcp/tools/sessions.js +175 -53
- package/dist/daemon/mcp/tools/tasks.js +19 -5
- package/dist/daemon/mcp/tools/users.js +19 -5
- package/dist/daemon/mcp/tools/worktrees.js +37 -38
- package/dist/daemon/register-hooks.js +52 -1
- package/dist/daemon/register-routes.js +436 -424
- package/dist/daemon/register-services.js +255 -140
- package/dist/daemon/services/config.d.ts +7 -1
- package/dist/daemon/services/config.js +3 -2
- package/dist/daemon/services/gateway.js +28 -15
- package/dist/daemon/services/mcp-servers.d.ts +7 -2
- package/dist/daemon/services/repos.js +2 -0
- package/dist/daemon/services/sessions.d.ts +1 -1
- package/dist/daemon/services/sessions.js +8 -16
- package/dist/daemon/services/tasks.js +16 -10
- package/dist/daemon/services/terminals.js +2 -0
- package/dist/daemon/services/users.d.ts +27 -11
- package/dist/daemon/services/users.js +89 -43
- package/dist/daemon/services/worktree-owners.js +2 -0
- package/dist/daemon/services/worktrees.js +2 -0
- package/dist/daemon/setup/index.js +5 -2
- package/dist/daemon/setup/socketio.d.ts +10 -1
- package/dist/daemon/setup/socketio.js +7 -3
- package/dist/daemon/startup.js +13 -1
- package/dist/daemon/utils/apply-session-config-defaults.d.ts +54 -0
- package/dist/daemon/utils/apply-session-config-defaults.js +46 -0
- package/dist/daemon/utils/spawn-executor.js +2 -0
- package/dist/daemon/utils/worktree-authorization.d.ts +2 -4
- package/dist/executor/commands/zellij.d.ts.map +1 -1
- package/dist/executor/commands/zellij.js +2 -2
- package/dist/executor/handlers/sdk/base-executor.d.ts +4 -3
- package/dist/executor/handlers/sdk/base-executor.d.ts.map +1 -1
- package/dist/executor/handlers/sdk/base-executor.js +11 -5
- package/dist/executor/payload-types.d.ts +14 -14
- package/dist/executor/sdk-handlers/claude/claude-tool.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/claude/claude-tool.js +9 -4
- package/dist/executor/sdk-handlers/claude/import/task-extractor.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/claude/import/task-extractor.js +0 -5
- package/dist/executor/sdk-handlers/claude/message-builder.d.ts +23 -2
- package/dist/executor/sdk-handlers/claude/message-builder.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/claude/message-builder.js +33 -2
- package/dist/executor/sdk-handlers/claude/permissions/permission-hooks.d.ts +9 -1
- package/dist/executor/sdk-handlers/claude/permissions/permission-hooks.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/claude/permissions/permission-hooks.js +12 -0
- package/dist/executor/sdk-handlers/claude/query-builder.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/claude/query-builder.js +11 -6
- package/dist/executor/sdk-handlers/codex/codex-tool.d.ts +0 -5
- package/dist/executor/sdk-handlers/codex/codex-tool.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/codex/codex-tool.js +9 -24
- package/dist/executor/sdk-handlers/codex/prompt-service.d.ts +15 -2
- package/dist/executor/sdk-handlers/codex/prompt-service.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/codex/prompt-service.js +39 -10
- package/dist/executor/sdk-handlers/copilot/copilot-tool.d.ts +0 -5
- package/dist/executor/sdk-handlers/copilot/copilot-tool.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/copilot/copilot-tool.js +5 -22
- package/dist/executor/sdk-handlers/gemini/gemini-tool.d.ts +0 -5
- package/dist/executor/sdk-handlers/gemini/gemini-tool.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/gemini/gemini-tool.js +9 -24
- package/dist/ui/assets/{CodeEditor.inner-CO-5PAnZ.js → CodeEditor.inner-CVLqZBtM.js} +1 -1
- package/dist/ui/assets/{CodeEditor.inner-CO-5PAnZ.js.gz → CodeEditor.inner-CVLqZBtM.js.gz} +0 -0
- package/dist/ui/assets/{_basePickBy-DfxojsEt.js → _basePickBy-CFq5ES2J.js} +1 -1
- package/dist/ui/assets/_basePickBy-CFq5ES2J.js.gz +0 -0
- package/dist/ui/assets/{_baseUniq-DWFPJOTC.js → _baseUniq-C4uKBvNt.js} +1 -1
- package/dist/ui/assets/_baseUniq-C4uKBvNt.js.gz +0 -0
- package/dist/ui/assets/{arc-vMZ_XGSI.js → arc-BnrcXDJJ.js} +1 -1
- package/dist/ui/assets/arc-BnrcXDJJ.js.gz +0 -0
- package/dist/ui/assets/{architectureDiagram-VXUJARFQ-DGpk_uOD.js → architectureDiagram-VXUJARFQ-DD9HD-WR.js} +1 -1
- package/dist/ui/assets/architectureDiagram-VXUJARFQ-DD9HD-WR.js.gz +0 -0
- package/dist/ui/assets/{base-80a1f760-BsVlOKqO.js → base-80a1f760-BK1VmxWU.js} +1 -1
- package/dist/ui/assets/{blockDiagram-VD42YOAC-BkRnxc94.js → blockDiagram-VD42YOAC-LBAckZZe.js} +1 -1
- package/dist/ui/assets/blockDiagram-VD42YOAC-LBAckZZe.js.gz +0 -0
- package/dist/ui/assets/{c4Diagram-YG6GDRKO-Dcf-anJy.js → c4Diagram-YG6GDRKO-yEdylcYP.js} +1 -1
- package/dist/ui/assets/{c4Diagram-YG6GDRKO-Dcf-anJy.js.gz → c4Diagram-YG6GDRKO-yEdylcYP.js.gz} +0 -0
- package/dist/ui/assets/channel-CMN-iY3Q.js +1 -0
- package/dist/ui/assets/{chunk-4BX2VUAB-C4oVWDo8.js → chunk-4BX2VUAB-IHtzKbmQ.js} +1 -1
- package/dist/ui/assets/{chunk-55IACEB6-CsBbTu57.js → chunk-55IACEB6-C4o5tv_F.js} +1 -1
- package/dist/ui/assets/{chunk-B4BG7PRW-DtkeCZab.js → chunk-B4BG7PRW-EPkzLvlB.js} +1 -1
- package/dist/ui/assets/chunk-B4BG7PRW-EPkzLvlB.js.gz +0 -0
- package/dist/ui/assets/{chunk-DI55MBZ5-BQ_asW-1.js → chunk-DI55MBZ5-CW-Bzkzj.js} +1 -1
- package/dist/ui/assets/chunk-DI55MBZ5-CW-Bzkzj.js.gz +0 -0
- package/dist/ui/assets/{chunk-FMBD7UC4-DAdcLNG-.js → chunk-FMBD7UC4-DvGU02Io.js} +1 -1
- package/dist/ui/assets/{chunk-QN33PNHL-Do2zad3m.js → chunk-QN33PNHL-C-PIlz9n.js} +1 -1
- package/dist/ui/assets/{chunk-QZHKN3VN-CyhMmSdC.js → chunk-QZHKN3VN-BhpJFm6h.js} +1 -1
- package/dist/ui/assets/{chunk-TZMSLE5B-DlPypnIq.js → chunk-TZMSLE5B-Biake8IU.js} +1 -1
- package/dist/ui/assets/chunk-TZMSLE5B-Biake8IU.js.gz +0 -0
- package/dist/ui/assets/classDiagram-2ON5EDUG-Bz1et8oA.js +1 -0
- package/dist/ui/assets/classDiagram-v2-WZHVMYZB-Bz1et8oA.js +1 -0
- package/dist/ui/assets/clone-Dxo5sEAf.js +1 -0
- package/dist/ui/assets/{consoleHook-59e792cb-DHYIclEd.js → consoleHook-59e792cb-BzEkHWE8.js} +1 -1
- package/dist/ui/assets/consoleHook-59e792cb-BzEkHWE8.js.gz +0 -0
- package/dist/ui/assets/{cose-bilkent-S5V4N54A-DotJH9qH.js → cose-bilkent-S5V4N54A-vAiVi74s.js} +1 -1
- package/dist/ui/assets/cose-bilkent-S5V4N54A-vAiVi74s.js.gz +0 -0
- package/dist/ui/assets/{dagre-6UL2VRFP-Btssr8QF.js → dagre-6UL2VRFP-C8w7TshD.js} +1 -1
- package/dist/ui/assets/dagre-6UL2VRFP-C8w7TshD.js.gz +0 -0
- package/dist/ui/assets/{diagram-PSM6KHXK-D5_Jkog3.js → diagram-PSM6KHXK-CvnjEmtQ.js} +1 -1
- package/dist/ui/assets/diagram-PSM6KHXK-CvnjEmtQ.js.gz +0 -0
- package/dist/ui/assets/{diagram-QEK2KX5R-DlPEVSL5.js → diagram-QEK2KX5R-D245unng.js} +1 -1
- package/dist/ui/assets/diagram-QEK2KX5R-D245unng.js.gz +0 -0
- package/dist/ui/assets/{diagram-S2PKOQOG-CjO1k8aG.js → diagram-S2PKOQOG-DgGUHL8Z.js} +1 -1
- package/dist/ui/assets/diagram-S2PKOQOG-DgGUHL8Z.js.gz +0 -0
- package/dist/ui/assets/{erDiagram-Q2GNP2WA-3cO02-K3.js → erDiagram-Q2GNP2WA-Cf5paK9b.js} +1 -1
- package/dist/ui/assets/erDiagram-Q2GNP2WA-Cf5paK9b.js.gz +0 -0
- package/dist/ui/assets/{flowDiagram-NV44I4VS-CajTpSxI.js → flowDiagram-NV44I4VS-BJpHmEXV.js} +1 -1
- package/dist/ui/assets/flowDiagram-NV44I4VS-BJpHmEXV.js.gz +0 -0
- package/dist/ui/assets/{ganttDiagram-LVOFAZNH-CnY_bV3o.js → ganttDiagram-LVOFAZNH-zOyTZcXC.js} +1 -1
- package/dist/ui/assets/{ganttDiagram-LVOFAZNH-CnY_bV3o.js.gz → ganttDiagram-LVOFAZNH-zOyTZcXC.js.gz} +0 -0
- package/dist/ui/assets/{gitGraphDiagram-NY62KEGX-CH16bg-j.js → gitGraphDiagram-NY62KEGX-B0uxwqMv.js} +1 -1
- package/dist/ui/assets/gitGraphDiagram-NY62KEGX-B0uxwqMv.js.gz +0 -0
- package/dist/ui/assets/{graph-IQoZvE3o.js → graph-NWXc73TO.js} +1 -1
- package/dist/ui/assets/graph-NWXc73TO.js.gz +0 -0
- package/dist/ui/assets/{index-599aeaf7-RUCkgwsg.js → index-599aeaf7-BKmNqoNF.js} +1 -1
- package/dist/ui/assets/index-599aeaf7-BKmNqoNF.js.gz +0 -0
- package/dist/ui/assets/{index-B3AvIgqP.js → index-BRYNiHLB.js} +345 -349
- package/dist/ui/assets/index-BRYNiHLB.js.gz +0 -0
- package/dist/ui/assets/{index-QV5-5yA2.js → index-BX6Xmhes.js} +1 -1
- package/dist/ui/assets/index-BX6Xmhes.js.gz +0 -0
- package/dist/ui/assets/{index-ChmRuj_T.js → index-W1hIq1uU.js} +1 -1
- package/dist/ui/assets/index-W1hIq1uU.js.gz +0 -0
- package/dist/ui/assets/{index-C-quzPWC.js → index-ctuok0zf.js} +1 -1
- package/dist/ui/assets/index-ctuok0zf.js.gz +0 -0
- package/dist/ui/assets/{infoDiagram-ER5ION4S-2e4gZVGT.js → infoDiagram-ER5ION4S-CquCuoTH.js} +1 -1
- package/dist/ui/assets/{journeyDiagram-XKPGCS4Q-B5bgV3GH.js → journeyDiagram-XKPGCS4Q-B_XkufZ8.js} +1 -1
- package/dist/ui/assets/journeyDiagram-XKPGCS4Q-B_XkufZ8.js.gz +0 -0
- package/dist/ui/assets/{kanban-definition-3W4ZIXB7-Bp-aWRSc.js → kanban-definition-3W4ZIXB7-C2Bo9HkB.js} +1 -1
- package/dist/ui/assets/kanban-definition-3W4ZIXB7-C2Bo9HkB.js.gz +0 -0
- package/dist/ui/assets/katex-C6wkUDai.css +1 -0
- package/dist/ui/assets/{katex-DGRguze2.css.gz → katex-C6wkUDai.css.gz} +0 -0
- package/dist/ui/assets/{layout-BH-2XJZq.js → layout-D9A7Uaku.js} +1 -1
- package/dist/ui/assets/layout-D9A7Uaku.js.gz +0 -0
- package/dist/ui/assets/{linear-DCYXhl_f.js → linear-BJUwJsxE.js} +1 -1
- package/dist/ui/assets/linear-BJUwJsxE.js.gz +0 -0
- package/dist/ui/assets/{mermaid.core-BAuL6kgQ.js → mermaid.core-DcOEcjcA.js} +5 -5
- package/dist/ui/assets/mermaid.core-DcOEcjcA.js.gz +0 -0
- package/dist/ui/assets/{mindmap-definition-VGOIOE7T-DpH5N-N0.js → mindmap-definition-VGOIOE7T-BFT1m7BG.js} +1 -1
- package/dist/ui/assets/mindmap-definition-VGOIOE7T-BFT1m7BG.js.gz +0 -0
- package/dist/ui/assets/{pieDiagram-ADFJNKIX-BB8fBxj1.js → pieDiagram-ADFJNKIX-BFaX1oBV.js} +1 -1
- package/dist/ui/assets/pieDiagram-ADFJNKIX-BFaX1oBV.js.gz +0 -0
- package/dist/ui/assets/{quadrantDiagram-AYHSOK5B-D6oZLdUD.js → quadrantDiagram-AYHSOK5B-DQps5392.js} +1 -1
- package/dist/ui/assets/quadrantDiagram-AYHSOK5B-DQps5392.js.gz +0 -0
- package/dist/ui/assets/{requirementDiagram-UZGBJVZJ-B4uGPp8w.js → requirementDiagram-UZGBJVZJ-3EZ5KWEi.js} +1 -1
- package/dist/ui/assets/requirementDiagram-UZGBJVZJ-3EZ5KWEi.js.gz +0 -0
- package/dist/ui/assets/{sankeyDiagram-TZEHDZUN-MXhIjhme.js → sankeyDiagram-TZEHDZUN-D0qcydqq.js} +1 -1
- package/dist/ui/assets/sankeyDiagram-TZEHDZUN-D0qcydqq.js.gz +0 -0
- package/dist/ui/assets/{sequenceDiagram-WL72ISMW-Cm53TYug.js → sequenceDiagram-WL72ISMW-BCR5gaaN.js} +1 -1
- package/dist/ui/assets/sequenceDiagram-WL72ISMW-BCR5gaaN.js.gz +0 -0
- package/dist/ui/assets/{stateDiagram-FKZM4ZOC-BVuxUkj5.js → stateDiagram-FKZM4ZOC-BvX4FLQ9.js} +1 -1
- package/dist/ui/assets/stateDiagram-FKZM4ZOC-BvX4FLQ9.js.gz +0 -0
- package/dist/ui/assets/stateDiagram-v2-4FDKWEC3-CxLDvgTF.js +1 -0
- package/dist/ui/assets/{timeline-definition-IT6M3QCI-CMypNiEP.js → timeline-definition-IT6M3QCI-_AWp5LJn.js} +1 -1
- package/dist/ui/assets/timeline-definition-IT6M3QCI-_AWp5LJn.js.gz +0 -0
- package/dist/ui/assets/{treemap-KMMF4GRG-BEtnV3BT.js → treemap-KMMF4GRG-BZ9FBl5-.js} +1 -1
- package/dist/ui/assets/treemap-KMMF4GRG-BZ9FBl5-.js.gz +0 -0
- package/dist/ui/assets/{xychartDiagram-PRI3JC2R-BnioEYUM.js → xychartDiagram-PRI3JC2R-_wB7yuVd.js} +1 -1
- package/dist/ui/assets/xychartDiagram-PRI3JC2R-_wB7yuVd.js.gz +0 -0
- package/dist/ui/index.html +1 -1
- package/package.json +8 -8
- package/dist/ui/assets/_basePickBy-DfxojsEt.js.gz +0 -0
- package/dist/ui/assets/_baseUniq-DWFPJOTC.js.gz +0 -0
- package/dist/ui/assets/arc-vMZ_XGSI.js.gz +0 -0
- package/dist/ui/assets/architectureDiagram-VXUJARFQ-DGpk_uOD.js.gz +0 -0
- package/dist/ui/assets/blockDiagram-VD42YOAC-BkRnxc94.js.gz +0 -0
- package/dist/ui/assets/channel-B9aI4bYN.js +0 -1
- package/dist/ui/assets/chunk-B4BG7PRW-DtkeCZab.js.gz +0 -0
- package/dist/ui/assets/chunk-DI55MBZ5-BQ_asW-1.js.gz +0 -0
- package/dist/ui/assets/chunk-TZMSLE5B-DlPypnIq.js.gz +0 -0
- package/dist/ui/assets/classDiagram-2ON5EDUG-p-68WO4Z.js +0 -1
- package/dist/ui/assets/classDiagram-v2-WZHVMYZB-p-68WO4Z.js +0 -1
- package/dist/ui/assets/clone-DzK5ogfn.js +0 -1
- package/dist/ui/assets/consoleHook-59e792cb-DHYIclEd.js.gz +0 -0
- package/dist/ui/assets/cose-bilkent-S5V4N54A-DotJH9qH.js.gz +0 -0
- package/dist/ui/assets/dagre-6UL2VRFP-Btssr8QF.js.gz +0 -0
- package/dist/ui/assets/diagram-PSM6KHXK-D5_Jkog3.js.gz +0 -0
- package/dist/ui/assets/diagram-QEK2KX5R-DlPEVSL5.js.gz +0 -0
- package/dist/ui/assets/diagram-S2PKOQOG-CjO1k8aG.js.gz +0 -0
- package/dist/ui/assets/erDiagram-Q2GNP2WA-3cO02-K3.js.gz +0 -0
- package/dist/ui/assets/flowDiagram-NV44I4VS-CajTpSxI.js.gz +0 -0
- package/dist/ui/assets/gitGraphDiagram-NY62KEGX-CH16bg-j.js.gz +0 -0
- package/dist/ui/assets/graph-IQoZvE3o.js.gz +0 -0
- package/dist/ui/assets/index-599aeaf7-RUCkgwsg.js.gz +0 -0
- package/dist/ui/assets/index-B3AvIgqP.js.gz +0 -0
- package/dist/ui/assets/index-C-quzPWC.js.gz +0 -0
- package/dist/ui/assets/index-ChmRuj_T.js.gz +0 -0
- package/dist/ui/assets/index-QV5-5yA2.js.gz +0 -0
- package/dist/ui/assets/journeyDiagram-XKPGCS4Q-B5bgV3GH.js.gz +0 -0
- package/dist/ui/assets/kanban-definition-3W4ZIXB7-Bp-aWRSc.js.gz +0 -0
- package/dist/ui/assets/katex-DGRguze2.css +0 -1
- package/dist/ui/assets/layout-BH-2XJZq.js.gz +0 -0
- package/dist/ui/assets/linear-DCYXhl_f.js.gz +0 -0
- package/dist/ui/assets/mermaid.core-BAuL6kgQ.js.gz +0 -0
- package/dist/ui/assets/mindmap-definition-VGOIOE7T-DpH5N-N0.js.gz +0 -0
- package/dist/ui/assets/pieDiagram-ADFJNKIX-BB8fBxj1.js.gz +0 -0
- package/dist/ui/assets/quadrantDiagram-AYHSOK5B-D6oZLdUD.js.gz +0 -0
- package/dist/ui/assets/requirementDiagram-UZGBJVZJ-B4uGPp8w.js.gz +0 -0
- package/dist/ui/assets/sankeyDiagram-TZEHDZUN-MXhIjhme.js.gz +0 -0
- package/dist/ui/assets/sequenceDiagram-WL72ISMW-Cm53TYug.js.gz +0 -0
- package/dist/ui/assets/stateDiagram-FKZM4ZOC-BVuxUkj5.js.gz +0 -0
- package/dist/ui/assets/stateDiagram-v2-4FDKWEC3-8Jeww6Dc.js +0 -1
- package/dist/ui/assets/timeline-definition-IT6M3QCI-CMypNiEP.js.gz +0 -0
- package/dist/ui/assets/treemap-KMMF4GRG-BEtnV3BT.js.gz +0 -0
- package/dist/ui/assets/xychartDiagram-PRI3JC2R-BnioEYUM.js.gz +0 -0
|
@@ -137,7 +137,8 @@ var taskQuerySchema = createQuerySchema(
|
|
|
137
137
|
session_id: import_typebox.Type.Optional(CommonSchemas.uuid),
|
|
138
138
|
status: import_typebox.Type.Optional(
|
|
139
139
|
import_typebox.Type.Union([
|
|
140
|
-
import_typebox.Type.Literal("
|
|
140
|
+
import_typebox.Type.Literal("queued"),
|
|
141
|
+
import_typebox.Type.Literal("created"),
|
|
141
142
|
import_typebox.Type.Literal("running"),
|
|
142
143
|
import_typebox.Type.Literal("stopping"),
|
|
143
144
|
import_typebox.Type.Literal("awaiting_permission"),
|
|
@@ -55,7 +55,7 @@ declare const sessionQuerySchema: _feathersjs_typebox.TIntersect<[TObject<{
|
|
|
55
55
|
declare const taskQuerySchema: _feathersjs_typebox.TIntersect<[TObject<{
|
|
56
56
|
task_id: _feathersjs_typebox.TOptional<_feathersjs_typebox.TString<string>>;
|
|
57
57
|
session_id: _feathersjs_typebox.TOptional<_feathersjs_typebox.TString<string>>;
|
|
58
|
-
status: _feathersjs_typebox.TOptional<_feathersjs_typebox.TUnion<[_feathersjs_typebox.TLiteral<"
|
|
58
|
+
status: _feathersjs_typebox.TOptional<_feathersjs_typebox.TUnion<[_feathersjs_typebox.TLiteral<"queued">, _feathersjs_typebox.TLiteral<"created">, _feathersjs_typebox.TLiteral<"running">, _feathersjs_typebox.TLiteral<"stopping">, _feathersjs_typebox.TLiteral<"awaiting_permission">, _feathersjs_typebox.TLiteral<"awaiting_input">, _feathersjs_typebox.TLiteral<"timed_out">, _feathersjs_typebox.TLiteral<"completed">, _feathersjs_typebox.TLiteral<"failed">, _feathersjs_typebox.TLiteral<"stopped">]>>;
|
|
59
59
|
created_at: _feathersjs_typebox.TOptional<_feathersjs_typebox.TInteger>;
|
|
60
60
|
updated_at: _feathersjs_typebox.TOptional<_feathersjs_typebox.TInteger>;
|
|
61
61
|
}>, TObject<{
|
|
@@ -55,7 +55,7 @@ declare const sessionQuerySchema: _feathersjs_typebox.TIntersect<[TObject<{
|
|
|
55
55
|
declare const taskQuerySchema: _feathersjs_typebox.TIntersect<[TObject<{
|
|
56
56
|
task_id: _feathersjs_typebox.TOptional<_feathersjs_typebox.TString<string>>;
|
|
57
57
|
session_id: _feathersjs_typebox.TOptional<_feathersjs_typebox.TString<string>>;
|
|
58
|
-
status: _feathersjs_typebox.TOptional<_feathersjs_typebox.TUnion<[_feathersjs_typebox.TLiteral<"
|
|
58
|
+
status: _feathersjs_typebox.TOptional<_feathersjs_typebox.TUnion<[_feathersjs_typebox.TLiteral<"queued">, _feathersjs_typebox.TLiteral<"created">, _feathersjs_typebox.TLiteral<"running">, _feathersjs_typebox.TLiteral<"stopping">, _feathersjs_typebox.TLiteral<"awaiting_permission">, _feathersjs_typebox.TLiteral<"awaiting_input">, _feathersjs_typebox.TLiteral<"timed_out">, _feathersjs_typebox.TLiteral<"completed">, _feathersjs_typebox.TLiteral<"failed">, _feathersjs_typebox.TLiteral<"stopped">]>>;
|
|
59
59
|
created_at: _feathersjs_typebox.TOptional<_feathersjs_typebox.TInteger>;
|
|
60
60
|
updated_at: _feathersjs_typebox.TOptional<_feathersjs_typebox.TInteger>;
|
|
61
61
|
}>, TObject<{
|
|
@@ -92,7 +92,8 @@ var taskQuerySchema = createQuerySchema(
|
|
|
92
92
|
session_id: Type.Optional(CommonSchemas.uuid),
|
|
93
93
|
status: Type.Optional(
|
|
94
94
|
Type.Union([
|
|
95
|
-
Type.Literal("
|
|
95
|
+
Type.Literal("queued"),
|
|
96
|
+
Type.Literal("created"),
|
|
96
97
|
Type.Literal("running"),
|
|
97
98
|
Type.Literal("stopping"),
|
|
98
99
|
Type.Literal("awaiting_permission"),
|
package/dist/core/mcp/index.cjs
CHANGED
|
@@ -186,6 +186,7 @@ var tasks = (0, import_pg_core.pgTable)(
|
|
|
186
186
|
completed_at: t.timestamp("completed_at"),
|
|
187
187
|
status: (0, import_pg_core.text)("status", {
|
|
188
188
|
enum: [
|
|
189
|
+
"queued",
|
|
189
190
|
"created",
|
|
190
191
|
"running",
|
|
191
192
|
"stopping",
|
|
@@ -197,6 +198,8 @@ var tasks = (0, import_pg_core.pgTable)(
|
|
|
197
198
|
"stopped"
|
|
198
199
|
]
|
|
199
200
|
}).notNull(),
|
|
201
|
+
// Queue position (lower drains first); only populated for status='queued'
|
|
202
|
+
queue_position: (0, import_pg_core.integer)("queue_position"),
|
|
200
203
|
// User attribution
|
|
201
204
|
created_by: (0, import_pg_core.varchar)("created_by", { length: 36 }).notNull().default("anonymous"),
|
|
202
205
|
// MD5 of SDK session file at task completion (only populated when stateless_fs_mode is enabled)
|
|
@@ -206,7 +209,12 @@ var tasks = (0, import_pg_core.pgTable)(
|
|
|
206
209
|
(table) => ({
|
|
207
210
|
sessionIdx: (0, import_pg_core.index)("tasks_session_idx").on(table.session_id),
|
|
208
211
|
statusIdx: (0, import_pg_core.index)("tasks_status_idx").on(table.status),
|
|
209
|
-
createdIdx: (0, import_pg_core.index)("tasks_created_idx").on(table.created_at)
|
|
212
|
+
createdIdx: (0, import_pg_core.index)("tasks_created_idx").on(table.created_at),
|
|
213
|
+
queueIdx: (0, import_pg_core.index)("tasks_queue_idx").on(table.session_id, table.status, table.queue_position),
|
|
214
|
+
// Partial unique index — defense-in-depth for `tasks.createPending` race
|
|
215
|
+
// serialization. Only QUEUED rows are constrained; CREATED/RUNNING/done
|
|
216
|
+
// rows have NULL queue_position and are unaffected.
|
|
217
|
+
queuedPositionUnique: (0, import_pg_core.uniqueIndex)("tasks_queued_position_unique").on(table.session_id, table.queue_position).where(import_drizzle_orm2.sql`${table.status} = 'queued'`)
|
|
210
218
|
})
|
|
211
219
|
);
|
|
212
220
|
var serializedSessions = (0, import_pg_core.pgTable)(
|
|
@@ -266,11 +274,9 @@ var messages = (0, import_pg_core.pgTable)(
|
|
|
266
274
|
// First 200 chars for list views
|
|
267
275
|
// Parent tool use ID (for nested tool calls - e.g., Task tool spawning Read/Grep)
|
|
268
276
|
parent_tool_use_id: (0, import_pg_core.text)("parent_tool_use_id"),
|
|
269
|
-
//
|
|
270
|
-
|
|
271
|
-
//
|
|
272
|
-
queue_position: (0, import_pg_core.integer)("queue_position"),
|
|
273
|
-
// Position in queue (1, 2, 3, ...)
|
|
277
|
+
// NOTE: queueing moved off `messages` and onto `tasks.status='queued'` as
|
|
278
|
+
// of migration sqlite/0040 (postgres/0030). The legacy `status` and
|
|
279
|
+
// `queue_position` columns are gone — see `tasks.queue_position` instead.
|
|
274
280
|
// Full data (JSON blob)
|
|
275
281
|
data: t.json("data").$type().notNull()
|
|
276
282
|
},
|
|
@@ -278,8 +284,7 @@ var messages = (0, import_pg_core.pgTable)(
|
|
|
278
284
|
// Indexes for efficient lookups
|
|
279
285
|
sessionIdx: (0, import_pg_core.index)("messages_session_id_idx").on(table.session_id),
|
|
280
286
|
taskIdx: (0, import_pg_core.index)("messages_task_id_idx").on(table.task_id),
|
|
281
|
-
sessionIndexIdx: (0, import_pg_core.index)("messages_session_index_idx").on(table.session_id, table.index)
|
|
282
|
-
queueIdx: (0, import_pg_core.index)("messages_queue_idx").on(table.session_id, table.status, table.queue_position)
|
|
287
|
+
sessionIndexIdx: (0, import_pg_core.index)("messages_session_index_idx").on(table.session_id, table.index)
|
|
283
288
|
})
|
|
284
289
|
);
|
|
285
290
|
var boards = (0, import_pg_core.pgTable)(
|
|
@@ -908,6 +913,7 @@ var tasks2 = (0, import_sqlite_core.sqliteTable)(
|
|
|
908
913
|
completed_at: t2.timestamp("completed_at"),
|
|
909
914
|
status: (0, import_sqlite_core.text)("status", {
|
|
910
915
|
enum: [
|
|
916
|
+
"queued",
|
|
911
917
|
"created",
|
|
912
918
|
"running",
|
|
913
919
|
"stopping",
|
|
@@ -919,6 +925,8 @@ var tasks2 = (0, import_sqlite_core.sqliteTable)(
|
|
|
919
925
|
"stopped"
|
|
920
926
|
]
|
|
921
927
|
}).notNull(),
|
|
928
|
+
// Queue position (lower drains first); only populated for status='queued'
|
|
929
|
+
queue_position: (0, import_sqlite_core.integer)("queue_position"),
|
|
922
930
|
// User attribution
|
|
923
931
|
created_by: (0, import_sqlite_core.text)("created_by", { length: 36 }).notNull().default("anonymous"),
|
|
924
932
|
// MD5 of SDK session file at task completion (only populated when stateless_fs_mode is enabled)
|
|
@@ -928,7 +936,12 @@ var tasks2 = (0, import_sqlite_core.sqliteTable)(
|
|
|
928
936
|
(table) => ({
|
|
929
937
|
sessionIdx: (0, import_sqlite_core.index)("tasks_session_idx").on(table.session_id),
|
|
930
938
|
statusIdx: (0, import_sqlite_core.index)("tasks_status_idx").on(table.status),
|
|
931
|
-
createdIdx: (0, import_sqlite_core.index)("tasks_created_idx").on(table.created_at)
|
|
939
|
+
createdIdx: (0, import_sqlite_core.index)("tasks_created_idx").on(table.created_at),
|
|
940
|
+
queueIdx: (0, import_sqlite_core.index)("tasks_queue_idx").on(table.session_id, table.status, table.queue_position),
|
|
941
|
+
// Partial unique index — defense-in-depth for `tasks.createPending` race
|
|
942
|
+
// serialization. Only QUEUED rows are constrained; CREATED/RUNNING/done
|
|
943
|
+
// rows have NULL queue_position and are unaffected.
|
|
944
|
+
queuedPositionUnique: (0, import_sqlite_core.uniqueIndex)("tasks_queued_position_unique").on(table.session_id, table.queue_position).where(import_drizzle_orm3.sql`${table.status} = 'queued'`)
|
|
932
945
|
})
|
|
933
946
|
);
|
|
934
947
|
var serializedSessions2 = (0, import_sqlite_core.sqliteTable)(
|
|
@@ -988,11 +1001,9 @@ var messages2 = (0, import_sqlite_core.sqliteTable)(
|
|
|
988
1001
|
// First 200 chars for list views
|
|
989
1002
|
// Parent tool use ID (for nested tool calls - e.g., Task tool spawning Read/Grep)
|
|
990
1003
|
parent_tool_use_id: (0, import_sqlite_core.text)("parent_tool_use_id"),
|
|
991
|
-
//
|
|
992
|
-
|
|
993
|
-
//
|
|
994
|
-
queue_position: (0, import_sqlite_core.integer)("queue_position"),
|
|
995
|
-
// Position in queue (1, 2, 3, ...)
|
|
1004
|
+
// NOTE: queueing moved off `messages` and onto `tasks.status='queued'` as
|
|
1005
|
+
// of migration sqlite/0040 (postgres/0030). The legacy `status` and
|
|
1006
|
+
// `queue_position` columns are gone — see `tasks.queue_position` instead.
|
|
996
1007
|
// Full data (JSON blob)
|
|
997
1008
|
data: t2.json("data").$type().notNull()
|
|
998
1009
|
},
|
|
@@ -1000,8 +1011,7 @@ var messages2 = (0, import_sqlite_core.sqliteTable)(
|
|
|
1000
1011
|
// Indexes for efficient lookups
|
|
1001
1012
|
sessionIdx: (0, import_sqlite_core.index)("messages_session_id_idx").on(table.session_id),
|
|
1002
1013
|
taskIdx: (0, import_sqlite_core.index)("messages_task_id_idx").on(table.task_id),
|
|
1003
|
-
sessionIndexIdx: (0, import_sqlite_core.index)("messages_session_index_idx").on(table.session_id, table.index)
|
|
1004
|
-
queueIdx: (0, import_sqlite_core.index)("messages_queue_idx").on(table.session_id, table.status, table.queue_position)
|
|
1014
|
+
sessionIndexIdx: (0, import_sqlite_core.index)("messages_session_index_idx").on(table.session_id, table.index)
|
|
1005
1015
|
})
|
|
1006
1016
|
);
|
|
1007
1017
|
var boards2 = (0, import_sqlite_core.sqliteTable)(
|
package/dist/core/mcp/index.js
CHANGED
|
@@ -166,6 +166,7 @@ var tasks = pgTable(
|
|
|
166
166
|
completed_at: t.timestamp("completed_at"),
|
|
167
167
|
status: text("status", {
|
|
168
168
|
enum: [
|
|
169
|
+
"queued",
|
|
169
170
|
"created",
|
|
170
171
|
"running",
|
|
171
172
|
"stopping",
|
|
@@ -177,6 +178,8 @@ var tasks = pgTable(
|
|
|
177
178
|
"stopped"
|
|
178
179
|
]
|
|
179
180
|
}).notNull(),
|
|
181
|
+
// Queue position (lower drains first); only populated for status='queued'
|
|
182
|
+
queue_position: integer("queue_position"),
|
|
180
183
|
// User attribution
|
|
181
184
|
created_by: varchar("created_by", { length: 36 }).notNull().default("anonymous"),
|
|
182
185
|
// MD5 of SDK session file at task completion (only populated when stateless_fs_mode is enabled)
|
|
@@ -186,7 +189,12 @@ var tasks = pgTable(
|
|
|
186
189
|
(table) => ({
|
|
187
190
|
sessionIdx: index("tasks_session_idx").on(table.session_id),
|
|
188
191
|
statusIdx: index("tasks_status_idx").on(table.status),
|
|
189
|
-
createdIdx: index("tasks_created_idx").on(table.created_at)
|
|
192
|
+
createdIdx: index("tasks_created_idx").on(table.created_at),
|
|
193
|
+
queueIdx: index("tasks_queue_idx").on(table.session_id, table.status, table.queue_position),
|
|
194
|
+
// Partial unique index — defense-in-depth for `tasks.createPending` race
|
|
195
|
+
// serialization. Only QUEUED rows are constrained; CREATED/RUNNING/done
|
|
196
|
+
// rows have NULL queue_position and are unaffected.
|
|
197
|
+
queuedPositionUnique: uniqueIndex("tasks_queued_position_unique").on(table.session_id, table.queue_position).where(sql2`${table.status} = 'queued'`)
|
|
190
198
|
})
|
|
191
199
|
);
|
|
192
200
|
var serializedSessions = pgTable(
|
|
@@ -246,11 +254,9 @@ var messages = pgTable(
|
|
|
246
254
|
// First 200 chars for list views
|
|
247
255
|
// Parent tool use ID (for nested tool calls - e.g., Task tool spawning Read/Grep)
|
|
248
256
|
parent_tool_use_id: text("parent_tool_use_id"),
|
|
249
|
-
//
|
|
250
|
-
|
|
251
|
-
//
|
|
252
|
-
queue_position: integer("queue_position"),
|
|
253
|
-
// Position in queue (1, 2, 3, ...)
|
|
257
|
+
// NOTE: queueing moved off `messages` and onto `tasks.status='queued'` as
|
|
258
|
+
// of migration sqlite/0040 (postgres/0030). The legacy `status` and
|
|
259
|
+
// `queue_position` columns are gone — see `tasks.queue_position` instead.
|
|
254
260
|
// Full data (JSON blob)
|
|
255
261
|
data: t.json("data").$type().notNull()
|
|
256
262
|
},
|
|
@@ -258,8 +264,7 @@ var messages = pgTable(
|
|
|
258
264
|
// Indexes for efficient lookups
|
|
259
265
|
sessionIdx: index("messages_session_id_idx").on(table.session_id),
|
|
260
266
|
taskIdx: index("messages_task_id_idx").on(table.task_id),
|
|
261
|
-
sessionIndexIdx: index("messages_session_index_idx").on(table.session_id, table.index)
|
|
262
|
-
queueIdx: index("messages_queue_idx").on(table.session_id, table.status, table.queue_position)
|
|
267
|
+
sessionIndexIdx: index("messages_session_index_idx").on(table.session_id, table.index)
|
|
263
268
|
})
|
|
264
269
|
);
|
|
265
270
|
var boards = pgTable(
|
|
@@ -896,6 +901,7 @@ var tasks2 = sqliteTable(
|
|
|
896
901
|
completed_at: t2.timestamp("completed_at"),
|
|
897
902
|
status: text2("status", {
|
|
898
903
|
enum: [
|
|
904
|
+
"queued",
|
|
899
905
|
"created",
|
|
900
906
|
"running",
|
|
901
907
|
"stopping",
|
|
@@ -907,6 +913,8 @@ var tasks2 = sqliteTable(
|
|
|
907
913
|
"stopped"
|
|
908
914
|
]
|
|
909
915
|
}).notNull(),
|
|
916
|
+
// Queue position (lower drains first); only populated for status='queued'
|
|
917
|
+
queue_position: integer2("queue_position"),
|
|
910
918
|
// User attribution
|
|
911
919
|
created_by: text2("created_by", { length: 36 }).notNull().default("anonymous"),
|
|
912
920
|
// MD5 of SDK session file at task completion (only populated when stateless_fs_mode is enabled)
|
|
@@ -916,7 +924,12 @@ var tasks2 = sqliteTable(
|
|
|
916
924
|
(table) => ({
|
|
917
925
|
sessionIdx: index2("tasks_session_idx").on(table.session_id),
|
|
918
926
|
statusIdx: index2("tasks_status_idx").on(table.status),
|
|
919
|
-
createdIdx: index2("tasks_created_idx").on(table.created_at)
|
|
927
|
+
createdIdx: index2("tasks_created_idx").on(table.created_at),
|
|
928
|
+
queueIdx: index2("tasks_queue_idx").on(table.session_id, table.status, table.queue_position),
|
|
929
|
+
// Partial unique index — defense-in-depth for `tasks.createPending` race
|
|
930
|
+
// serialization. Only QUEUED rows are constrained; CREATED/RUNNING/done
|
|
931
|
+
// rows have NULL queue_position and are unaffected.
|
|
932
|
+
queuedPositionUnique: uniqueIndex2("tasks_queued_position_unique").on(table.session_id, table.queue_position).where(sql3`${table.status} = 'queued'`)
|
|
920
933
|
})
|
|
921
934
|
);
|
|
922
935
|
var serializedSessions2 = sqliteTable(
|
|
@@ -976,11 +989,9 @@ var messages2 = sqliteTable(
|
|
|
976
989
|
// First 200 chars for list views
|
|
977
990
|
// Parent tool use ID (for nested tool calls - e.g., Task tool spawning Read/Grep)
|
|
978
991
|
parent_tool_use_id: text2("parent_tool_use_id"),
|
|
979
|
-
//
|
|
980
|
-
|
|
981
|
-
//
|
|
982
|
-
queue_position: integer2("queue_position"),
|
|
983
|
-
// Position in queue (1, 2, 3, ...)
|
|
992
|
+
// NOTE: queueing moved off `messages` and onto `tasks.status='queued'` as
|
|
993
|
+
// of migration sqlite/0040 (postgres/0030). The legacy `status` and
|
|
994
|
+
// `queue_position` columns are gone — see `tasks.queue_position` instead.
|
|
984
995
|
// Full data (JSON blob)
|
|
985
996
|
data: t2.json("data").$type().notNull()
|
|
986
997
|
},
|
|
@@ -988,8 +999,7 @@ var messages2 = sqliteTable(
|
|
|
988
999
|
// Indexes for efficient lookups
|
|
989
1000
|
sessionIdx: index2("messages_session_id_idx").on(table.session_id),
|
|
990
1001
|
taskIdx: index2("messages_task_id_idx").on(table.task_id),
|
|
991
|
-
sessionIndexIdx: index2("messages_session_index_idx").on(table.session_id, table.index)
|
|
992
|
-
queueIdx: index2("messages_queue_idx").on(table.session_id, table.status, table.queue_position)
|
|
1002
|
+
sessionIndexIdx: index2("messages_session_index_idx").on(table.session_id, table.index)
|
|
993
1003
|
})
|
|
994
1004
|
);
|
|
995
1005
|
var boards2 = sqliteTable(
|
|
@@ -15,10 +15,6 @@ declare enum MessageRole {
|
|
|
15
15
|
ASSISTANT = "assistant",
|
|
16
16
|
SYSTEM = "system"
|
|
17
17
|
}
|
|
18
|
-
/**
|
|
19
|
-
* Message status for queueing
|
|
20
|
-
*/
|
|
21
|
-
type MessageStatus = 'queued' | null;
|
|
22
18
|
/**
|
|
23
19
|
* Message source - where the message originated
|
|
24
20
|
* - 'gateway': Message came from external platform (Slack, Discord, etc.)
|
|
@@ -186,10 +182,6 @@ interface Message {
|
|
|
186
182
|
* This enables grouping nested tool calls under their parent in the UI.
|
|
187
183
|
*/
|
|
188
184
|
parent_tool_use_id?: string | null;
|
|
189
|
-
/** Message status (queued vs normal) */
|
|
190
|
-
status?: MessageStatus;
|
|
191
|
-
/** Position in queue (for queued messages only) */
|
|
192
|
-
queue_position?: number | null;
|
|
193
185
|
/** Agent-specific metadata */
|
|
194
186
|
metadata?: {
|
|
195
187
|
/** Model used for this message */
|
|
@@ -230,4 +222,4 @@ type MessageCreate = Omit<Message, 'message_id'> & {
|
|
|
230
222
|
*/
|
|
231
223
|
type StreamingEventType = 'streaming:start' | 'streaming:chunk' | 'streaming:end' | 'streaming:error' | 'thinking:start' | 'thinking:chunk' | 'thinking:end';
|
|
232
224
|
|
|
233
|
-
export { type ContentBlock as C, type DiffEnrichment as D, type FileDiff as F, type InputRequestContent as I, type Message as M, type PermissionRequestContent as P, type StreamingEventType as S, type ToolUse as T, type InputRequestOption as a, type InputRequestQuestion as b, InputRequestStatus as c, type MessageCreate as d, MessageRole as e, type MessageSource as f, type
|
|
225
|
+
export { type ContentBlock as C, type DiffEnrichment as D, type FileDiff as F, type InputRequestContent as I, type Message as M, type PermissionRequestContent as P, type StreamingEventType as S, type ToolUse as T, type InputRequestOption as a, type InputRequestQuestion as b, InputRequestStatus as c, type MessageCreate as d, MessageRole as e, type MessageSource as f, type MessageType as g, PermissionScope as h, PermissionStatus as i, type StructuredPatchHunk as j };
|
|
@@ -15,10 +15,6 @@ declare enum MessageRole {
|
|
|
15
15
|
ASSISTANT = "assistant",
|
|
16
16
|
SYSTEM = "system"
|
|
17
17
|
}
|
|
18
|
-
/**
|
|
19
|
-
* Message status for queueing
|
|
20
|
-
*/
|
|
21
|
-
type MessageStatus = 'queued' | null;
|
|
22
18
|
/**
|
|
23
19
|
* Message source - where the message originated
|
|
24
20
|
* - 'gateway': Message came from external platform (Slack, Discord, etc.)
|
|
@@ -186,10 +182,6 @@ interface Message {
|
|
|
186
182
|
* This enables grouping nested tool calls under their parent in the UI.
|
|
187
183
|
*/
|
|
188
184
|
parent_tool_use_id?: string | null;
|
|
189
|
-
/** Message status (queued vs normal) */
|
|
190
|
-
status?: MessageStatus;
|
|
191
|
-
/** Position in queue (for queued messages only) */
|
|
192
|
-
queue_position?: number | null;
|
|
193
185
|
/** Agent-specific metadata */
|
|
194
186
|
metadata?: {
|
|
195
187
|
/** Model used for this message */
|
|
@@ -230,4 +222,4 @@ type MessageCreate = Omit<Message, 'message_id'> & {
|
|
|
230
222
|
*/
|
|
231
223
|
type StreamingEventType = 'streaming:start' | 'streaming:chunk' | 'streaming:end' | 'streaming:error' | 'thinking:start' | 'thinking:chunk' | 'thinking:end';
|
|
232
224
|
|
|
233
|
-
export { type ContentBlock as C, type DiffEnrichment as D, type FileDiff as F, type InputRequestContent as I, type Message as M, type PermissionRequestContent as P, type StreamingEventType as S, type ToolUse as T, type InputRequestOption as a, type InputRequestQuestion as b, InputRequestStatus as c, type MessageCreate as d, MessageRole as e, type MessageSource as f, type
|
|
225
|
+
export { type ContentBlock as C, type DiffEnrichment as D, type FileDiff as F, type InputRequestContent as I, type Message as M, type PermissionRequestContent as P, type StreamingEventType as S, type ToolUse as T, type InputRequestOption as a, type InputRequestQuestion as b, InputRequestStatus as c, type MessageCreate as d, MessageRole as e, type MessageSource as f, type MessageType as g, PermissionScope as h, PermissionStatus as i, type StructuredPatchHunk as j };
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
export { AVAILABLE_CLAUDE_MODEL_ALIASES, CODEX_CONTEXT_LIMITS, CODEX_MINI_MODEL, CODEX_MODELS, CODEX_MODEL_METADATA, ClaudeModel, CodexModel, DEFAULT_CLAUDE_MODEL, DEFAULT_CODEX_MODEL, getCodexContextWindowLimit } from './browser.cjs';
|
|
2
2
|
import { GeminiModelInfo } from './gemini-shared.cjs';
|
|
3
3
|
export { DEFAULT_GEMINI_MODEL, GEMINI_CONTEXT_LIMITS, GEMINI_MODELS, GeminiModel, getGeminiContextWindowLimit } from './gemini-shared.cjs';
|
|
4
|
-
|
|
4
|
+
export { M as ModelConfigInput, R as ResolvedModelConfig, r as resolveModelConfig, a as resolveModelConfigPrecedence } from '../resolve-config-DTCxuSBx.cjs';
|
|
5
|
+
import '../session-MNU4BQv4.cjs';
|
|
5
6
|
import '../agentic-tool-BulhIUGb.cjs';
|
|
6
7
|
import '../id-CoIbY_uc.cjs';
|
|
7
8
|
import '../context-BpkCELpO.cjs';
|
|
@@ -49,75 +50,4 @@ declare function getAvailableGeminiModels(apiKey?: string): Promise<string[]>;
|
|
|
49
50
|
*/
|
|
50
51
|
declare function clearGeminiModelCache(): void;
|
|
51
52
|
|
|
52
|
-
|
|
53
|
-
* Model configuration normalization
|
|
54
|
-
*
|
|
55
|
-
* Single source of truth for turning a partial model-config input (from an
|
|
56
|
-
* MCP tool arg, a user default, a worktree setting, etc.) into the canonical
|
|
57
|
-
* shape persisted on `Session['model_config']`.
|
|
58
|
-
*
|
|
59
|
-
* Callers compose these helpers into a precedence chain instead of hand-rolling
|
|
60
|
-
* the normalization at every session-creation site (MCP create, spawn service,
|
|
61
|
-
* worktree auto-create, gateway session creation, ...). Centralizing here:
|
|
62
|
-
*
|
|
63
|
-
* - Guarantees every site writes the same shape (mode default, updated_at
|
|
64
|
-
* stamp, conditional effort/provider inclusion), avoiding drift.
|
|
65
|
-
* - Makes it safe to add a new optional field (e.g. a future `notes` or
|
|
66
|
-
* `temperature`) in exactly one place.
|
|
67
|
-
* - Returns `undefined` when there is no usable model, so callers can chain
|
|
68
|
-
* with `??` or feed a list into `resolveModelConfigPrecedence`.
|
|
69
|
-
*/
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Loose input shape accepted by the resolver.
|
|
73
|
-
*
|
|
74
|
-
* Mirrors `Session['model_config']` but every field is optional so we can
|
|
75
|
-
* accept partials from MCP Zod schemas, user/tool defaults, worktree
|
|
76
|
-
* overrides, and legacy callers — then either normalize or reject them
|
|
77
|
-
* based on whether `model` is set.
|
|
78
|
-
*/
|
|
79
|
-
type ModelConfigInput = {
|
|
80
|
-
mode?: 'alias' | 'exact';
|
|
81
|
-
model?: string;
|
|
82
|
-
effort?: EffortLevel;
|
|
83
|
-
provider?: string;
|
|
84
|
-
};
|
|
85
|
-
/**
|
|
86
|
-
* Canonical persisted shape — a non-null `Session.model_config`.
|
|
87
|
-
*/
|
|
88
|
-
type ResolvedModelConfig = NonNullable<Session['model_config']>;
|
|
89
|
-
/**
|
|
90
|
-
* Normalize a partial model-config into the shape persisted on
|
|
91
|
-
* `session.model_config`. Returns `undefined` if no usable `model` was
|
|
92
|
-
* provided, so callers can fall through to the next source in a precedence
|
|
93
|
-
* chain.
|
|
94
|
-
*
|
|
95
|
-
* Behavior:
|
|
96
|
-
* - `mode` defaults to `'alias'` (matches every legacy call site).
|
|
97
|
-
* - `updated_at` is stamped from `opts.now ?? new Date()` (injectable for
|
|
98
|
-
* determinism in tests).
|
|
99
|
-
* - `effort` and `provider` are only included when explicitly defined, so
|
|
100
|
-
* we never write `undefined` values onto the persisted object.
|
|
101
|
-
*/
|
|
102
|
-
declare function resolveModelConfig(input: ModelConfigInput | undefined | null, opts?: {
|
|
103
|
-
now?: Date;
|
|
104
|
-
}): ResolvedModelConfig | undefined;
|
|
105
|
-
/**
|
|
106
|
-
* Walk a precedence list (highest priority first) and return the first
|
|
107
|
-
* source that yields a resolvable model config. Mirrors the "explicit arg >
|
|
108
|
-
* worktree override > user default" pattern used at session-create time.
|
|
109
|
-
*
|
|
110
|
-
* Example:
|
|
111
|
-
* ```ts
|
|
112
|
-
* const modelConfig = resolveModelConfigPrecedence([
|
|
113
|
-
* args.modelConfig, // explicit MCP arg
|
|
114
|
-
* worktree.modelConfig, // worktree override
|
|
115
|
-
* userToolDefaults?.modelConfig, // user default
|
|
116
|
-
* ]);
|
|
117
|
-
* ```
|
|
118
|
-
*/
|
|
119
|
-
declare function resolveModelConfigPrecedence(sources: Array<ModelConfigInput | undefined | null>, opts?: {
|
|
120
|
-
now?: Date;
|
|
121
|
-
}): ResolvedModelConfig | undefined;
|
|
122
|
-
|
|
123
|
-
export { GeminiModelInfo, type ModelConfigInput, type ResolvedModelConfig, clearGeminiModelCache, fetchGeminiModels, getAvailableGeminiModels, resolveModelConfig, resolveModelConfigPrecedence };
|
|
53
|
+
export { GeminiModelInfo, clearGeminiModelCache, fetchGeminiModels, getAvailableGeminiModels };
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
export { AVAILABLE_CLAUDE_MODEL_ALIASES, CODEX_CONTEXT_LIMITS, CODEX_MINI_MODEL, CODEX_MODELS, CODEX_MODEL_METADATA, ClaudeModel, CodexModel, DEFAULT_CLAUDE_MODEL, DEFAULT_CODEX_MODEL, getCodexContextWindowLimit } from './browser.js';
|
|
2
2
|
import { GeminiModelInfo } from './gemini-shared.js';
|
|
3
3
|
export { DEFAULT_GEMINI_MODEL, GEMINI_CONTEXT_LIMITS, GEMINI_MODELS, GeminiModel, getGeminiContextWindowLimit } from './gemini-shared.js';
|
|
4
|
-
|
|
4
|
+
export { M as ModelConfigInput, R as ResolvedModelConfig, r as resolveModelConfig, a as resolveModelConfigPrecedence } from '../resolve-config-BcL-Hv8k.js';
|
|
5
|
+
import '../session-CAfhv1qL.js';
|
|
5
6
|
import '../agentic-tool-cYqsU5i5.js';
|
|
6
7
|
import '../id-CoIbY_uc.js';
|
|
7
8
|
import '../context-BpkCELpO.js';
|
|
@@ -49,75 +50,4 @@ declare function getAvailableGeminiModels(apiKey?: string): Promise<string[]>;
|
|
|
49
50
|
*/
|
|
50
51
|
declare function clearGeminiModelCache(): void;
|
|
51
52
|
|
|
52
|
-
|
|
53
|
-
* Model configuration normalization
|
|
54
|
-
*
|
|
55
|
-
* Single source of truth for turning a partial model-config input (from an
|
|
56
|
-
* MCP tool arg, a user default, a worktree setting, etc.) into the canonical
|
|
57
|
-
* shape persisted on `Session['model_config']`.
|
|
58
|
-
*
|
|
59
|
-
* Callers compose these helpers into a precedence chain instead of hand-rolling
|
|
60
|
-
* the normalization at every session-creation site (MCP create, spawn service,
|
|
61
|
-
* worktree auto-create, gateway session creation, ...). Centralizing here:
|
|
62
|
-
*
|
|
63
|
-
* - Guarantees every site writes the same shape (mode default, updated_at
|
|
64
|
-
* stamp, conditional effort/provider inclusion), avoiding drift.
|
|
65
|
-
* - Makes it safe to add a new optional field (e.g. a future `notes` or
|
|
66
|
-
* `temperature`) in exactly one place.
|
|
67
|
-
* - Returns `undefined` when there is no usable model, so callers can chain
|
|
68
|
-
* with `??` or feed a list into `resolveModelConfigPrecedence`.
|
|
69
|
-
*/
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Loose input shape accepted by the resolver.
|
|
73
|
-
*
|
|
74
|
-
* Mirrors `Session['model_config']` but every field is optional so we can
|
|
75
|
-
* accept partials from MCP Zod schemas, user/tool defaults, worktree
|
|
76
|
-
* overrides, and legacy callers — then either normalize or reject them
|
|
77
|
-
* based on whether `model` is set.
|
|
78
|
-
*/
|
|
79
|
-
type ModelConfigInput = {
|
|
80
|
-
mode?: 'alias' | 'exact';
|
|
81
|
-
model?: string;
|
|
82
|
-
effort?: EffortLevel;
|
|
83
|
-
provider?: string;
|
|
84
|
-
};
|
|
85
|
-
/**
|
|
86
|
-
* Canonical persisted shape — a non-null `Session.model_config`.
|
|
87
|
-
*/
|
|
88
|
-
type ResolvedModelConfig = NonNullable<Session['model_config']>;
|
|
89
|
-
/**
|
|
90
|
-
* Normalize a partial model-config into the shape persisted on
|
|
91
|
-
* `session.model_config`. Returns `undefined` if no usable `model` was
|
|
92
|
-
* provided, so callers can fall through to the next source in a precedence
|
|
93
|
-
* chain.
|
|
94
|
-
*
|
|
95
|
-
* Behavior:
|
|
96
|
-
* - `mode` defaults to `'alias'` (matches every legacy call site).
|
|
97
|
-
* - `updated_at` is stamped from `opts.now ?? new Date()` (injectable for
|
|
98
|
-
* determinism in tests).
|
|
99
|
-
* - `effort` and `provider` are only included when explicitly defined, so
|
|
100
|
-
* we never write `undefined` values onto the persisted object.
|
|
101
|
-
*/
|
|
102
|
-
declare function resolveModelConfig(input: ModelConfigInput | undefined | null, opts?: {
|
|
103
|
-
now?: Date;
|
|
104
|
-
}): ResolvedModelConfig | undefined;
|
|
105
|
-
/**
|
|
106
|
-
* Walk a precedence list (highest priority first) and return the first
|
|
107
|
-
* source that yields a resolvable model config. Mirrors the "explicit arg >
|
|
108
|
-
* worktree override > user default" pattern used at session-create time.
|
|
109
|
-
*
|
|
110
|
-
* Example:
|
|
111
|
-
* ```ts
|
|
112
|
-
* const modelConfig = resolveModelConfigPrecedence([
|
|
113
|
-
* args.modelConfig, // explicit MCP arg
|
|
114
|
-
* worktree.modelConfig, // worktree override
|
|
115
|
-
* userToolDefaults?.modelConfig, // user default
|
|
116
|
-
* ]);
|
|
117
|
-
* ```
|
|
118
|
-
*/
|
|
119
|
-
declare function resolveModelConfigPrecedence(sources: Array<ModelConfigInput | undefined | null>, opts?: {
|
|
120
|
-
now?: Date;
|
|
121
|
-
}): ResolvedModelConfig | undefined;
|
|
122
|
-
|
|
123
|
-
export { GeminiModelInfo, type ModelConfigInput, type ResolvedModelConfig, clearGeminiModelCache, fetchGeminiModels, getAvailableGeminiModels, resolveModelConfig, resolveModelConfigPrecedence };
|
|
53
|
+
export { GeminiModelInfo, clearGeminiModelCache, fetchGeminiModels, getAvailableGeminiModels };
|
package/dist/core/package.json
CHANGED
|
@@ -155,6 +155,11 @@
|
|
|
155
155
|
"import": "./models/index.js",
|
|
156
156
|
"require": "./models/index.cjs"
|
|
157
157
|
},
|
|
158
|
+
"./sessions": {
|
|
159
|
+
"types": "./sessions/index.d.ts",
|
|
160
|
+
"import": "./sessions/index.js",
|
|
161
|
+
"require": "./sessions/index.cjs"
|
|
162
|
+
},
|
|
158
163
|
"./models/browser": {
|
|
159
164
|
"types": "./models/browser.d.ts",
|
|
160
165
|
"import": "./models/browser.js",
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { E as EffortLevel, a as Session } from './session-CAfhv1qL.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Model configuration normalization
|
|
5
|
+
*
|
|
6
|
+
* Single source of truth for turning a partial model-config input (from an
|
|
7
|
+
* MCP tool arg, a user default, a worktree setting, etc.) into the canonical
|
|
8
|
+
* shape persisted on `Session['model_config']`.
|
|
9
|
+
*
|
|
10
|
+
* Callers compose these helpers into a precedence chain instead of hand-rolling
|
|
11
|
+
* the normalization at every session-creation site (MCP create, spawn service,
|
|
12
|
+
* worktree auto-create, gateway session creation, ...). Centralizing here:
|
|
13
|
+
*
|
|
14
|
+
* - Guarantees every site writes the same shape (mode default, updated_at
|
|
15
|
+
* stamp, conditional effort/provider inclusion), avoiding drift.
|
|
16
|
+
* - Makes it safe to add a new optional field (e.g. a future `notes` or
|
|
17
|
+
* `temperature`) in exactly one place.
|
|
18
|
+
* - Returns `undefined` when there is no usable model, so callers can chain
|
|
19
|
+
* with `??` or feed a list into `resolveModelConfigPrecedence`.
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Loose input shape accepted by the resolver.
|
|
24
|
+
*
|
|
25
|
+
* Mirrors `Session['model_config']` but every field is optional so we can
|
|
26
|
+
* accept partials from MCP Zod schemas, user/tool defaults, worktree
|
|
27
|
+
* overrides, and legacy callers — then either normalize or reject them
|
|
28
|
+
* based on whether `model` is set.
|
|
29
|
+
*/
|
|
30
|
+
type ModelConfigInput = {
|
|
31
|
+
mode?: 'alias' | 'exact';
|
|
32
|
+
model?: string;
|
|
33
|
+
effort?: EffortLevel;
|
|
34
|
+
provider?: string;
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* Canonical persisted shape — a non-null `Session.model_config`.
|
|
38
|
+
*/
|
|
39
|
+
type ResolvedModelConfig = NonNullable<Session['model_config']>;
|
|
40
|
+
/**
|
|
41
|
+
* Normalize a partial model-config into the shape persisted on
|
|
42
|
+
* `session.model_config`. Returns `undefined` if no usable `model` was
|
|
43
|
+
* provided, so callers can fall through to the next source in a precedence
|
|
44
|
+
* chain.
|
|
45
|
+
*
|
|
46
|
+
* Behavior:
|
|
47
|
+
* - `mode` defaults to `'alias'` (matches every legacy call site).
|
|
48
|
+
* - `updated_at` is stamped from `opts.now ?? new Date()` (injectable for
|
|
49
|
+
* determinism in tests).
|
|
50
|
+
* - `effort` and `provider` are only included when explicitly defined, so
|
|
51
|
+
* we never write `undefined` values onto the persisted object.
|
|
52
|
+
*/
|
|
53
|
+
declare function resolveModelConfig(input: ModelConfigInput | undefined | null, opts?: {
|
|
54
|
+
now?: Date;
|
|
55
|
+
}): ResolvedModelConfig | undefined;
|
|
56
|
+
/**
|
|
57
|
+
* Walk a precedence list (highest priority first) and return the first
|
|
58
|
+
* source that yields a resolvable model config. Mirrors the "explicit arg >
|
|
59
|
+
* worktree override > user default" pattern used at session-create time.
|
|
60
|
+
*
|
|
61
|
+
* Example:
|
|
62
|
+
* ```ts
|
|
63
|
+
* const modelConfig = resolveModelConfigPrecedence([
|
|
64
|
+
* args.modelConfig, // explicit MCP arg
|
|
65
|
+
* worktree.modelConfig, // worktree override
|
|
66
|
+
* userToolDefaults?.modelConfig, // user default
|
|
67
|
+
* ]);
|
|
68
|
+
* ```
|
|
69
|
+
*/
|
|
70
|
+
declare function resolveModelConfigPrecedence(sources: Array<ModelConfigInput | undefined | null>, opts?: {
|
|
71
|
+
now?: Date;
|
|
72
|
+
}): ResolvedModelConfig | undefined;
|
|
73
|
+
|
|
74
|
+
export { type ModelConfigInput as M, type ResolvedModelConfig as R, resolveModelConfigPrecedence as a, resolveModelConfig as r };
|