@overdeck/desktop 0.45.23 → 0.45.24
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/drizzle/overdeck/0000_overdeck_init.sql +2 -0
- package/package.json +1 -1
- package/server/{acceptance-criteria-DOA0KgXx.js → acceptance-criteria-DDCnXF58.js} +2 -2
- package/server/{advancing-selfheal-BBu6DSNm.js → advancing-selfheal-BVwW4qRn.js} +6 -6
- package/server/{agent-gc-BV1q_2EV.js → agent-gc-CHcnvonI.js} +4 -4
- package/server/agent-state-Bc3tzUC8.js +3 -0
- package/server/{agent-state-service-HoK8U4jW.js → agent-state-service-BsgWxZuB.js} +5 -5
- package/server/{agent-state-service-CnzFKSAQ.js → agent-state-service-D5UGKIJL.js} +1 -1
- package/server/{agents-B4Bjbkfv.js → agents-EbI0zCJl.js} +4 -4
- package/server/agents-wi9NWzs2.js +3 -0
- package/server/{archive-planning-zkJb3BeM.js → archive-planning-BZDgzoEj.js} +1 -1
- package/server/{archive-planning-DYrYojxl.js → archive-planning-Du25Jtst.js} +4 -4
- package/server/{artifact-index-jobs-C-xy7Z5v.js → artifact-index-jobs-CbEDfCDu.js} +2 -2
- package/server/assemble-J2ZZ2C15.js +339 -0
- package/server/{backlog-auto-trigger-GtG71X8H.js → backlog-auto-trigger-2R2jog7n.js} +3 -3
- package/server/{behavior-B_-4EKF3.js → behavior-B3exJ42O.js} +2 -2
- package/server/{briefing-freshness-DWdW7vUm.js → briefing-freshness-D1wzUIWv.js} +2 -2
- package/server/{build-info-DgTqZkL5.js → build-info-CZk_TITh.js} +1 -1
- package/server/{build-info-BT096lEl.js → build-info-Ie_D0_BT.js} +3 -3
- package/server/{checkpoint-manager-DDqcGyu8.js → checkpoint-manager-BI1Wxoku.js} +2 -2
- package/server/{checkpoint-manager-B7Bt29J0.js → checkpoint-manager-DwbQoqrC.js} +1 -1
- package/server/checkpoint-worker.js +1 -1
- package/server/{checkpoints-CpgCjAlN.js → checkpoints-BJIs5QIA.js} +1 -1
- package/server/{checkpoints-C-AXLfYT.js → checkpoints-CQB1h765.js} +2 -2
- package/server/{claude-hooks-provision-C8wdRnN1.js → claude-hooks-provision-8Ngo8TpT.js} +1 -1
- package/server/{claude-hooks-provision-but-_qGY.js → claude-hooks-provision-D8GXF3_s.js} +2 -2
- package/server/{claude-permissions-H_5wHQZQ.js → claude-permissions-DNWEVV6z.js} +2 -2
- package/server/{claude-settings-overlay-CbSz0Dvb.js → claude-settings-overlay-CEdaqpWI.js} +2 -2
- package/server/{claude-settings-overlay-BTENVmYf.js → claude-settings-overlay-DWy-Bb4Y.js} +1 -1
- package/server/cli-B86rejVV.js +3 -0
- package/server/{cli-vBeXbPrq.js → cli-RoOx5DUf.js} +9 -9
- package/server/{cliproxy-Bgb2XCqi.js → cliproxy-C8a1vtTU.js} +2 -2
- package/server/{cliproxy-DW0V86F8.js → cliproxy-fHfIeiGd.js} +1 -1
- package/server/{close-issue-Dn_4c4G8.js → close-issue-DoOifFIK.js} +5 -5
- package/server/{closed-issue-reaper-hANY_ehE.js → closed-issue-reaper-Bk3SU4RC.js} +9 -9
- package/server/{closed-issue-reaper-CWpY2uBw.js → closed-issue-reaper-CktPXo8m.js} +1 -1
- package/server/{codex-TmSi-yTv.js → codex-BZXGhUVB.js} +7 -7
- package/server/{codex-Dg7Is5yb.js → codex-GcHuUF-k.js} +1 -1
- package/server/{codex-parser-C4gSH-IR.js → codex-parser-CFZ1_1Jl.js} +2 -2
- package/server/{config-CCvjQf27.js → config-BZ0sHTju.js} +2 -2
- package/server/{config-DjLOdbgT.js → config-CKxYiCmX.js} +2 -2
- package/server/{config-DUIhMN_T.js → config-DzV30TOm.js} +1 -1
- package/server/{config-yaml-DvyMuOle.js → config-yaml-DySPNmKN.js} +23 -9
- package/server/{conflict-gate-CmrYpa47.js → conflict-gate-BaCVrH-N.js} +3 -3
- package/server/{conflict-gate-BSJkNTdp.js → conflict-gate-BhAY7TUd.js} +1 -1
- package/server/context-layers-BrPmE__h.js +4 -0
- package/server/context-layers-igZ4FI4_.js +37 -0
- package/server/{control-settings-aP1ANIlI.js → control-settings-BQp7_4uD.js} +4 -4
- package/server/{conversation-compaction-CNbTLB86.js → conversation-compaction-CgrR8YYp.js} +8 -8
- package/server/{conversation-compaction-DiG5zWQq.js → conversation-compaction-eQB5CkOe.js} +1 -1
- package/server/{conversation-service-Up7FEzIC.js → conversation-service-BLd3MYsG.js} +1 -1
- package/server/{conversation-service-Du-MTNpJ.js → conversation-service-DPJ71F33.js} +329 -19
- package/server/{conversations-DbOs1e9Q.js → conversations-6AfUfbwc.js} +5 -5
- package/server/{conversations-6mPANqvL.js → conversations-CAsJF9kh.js} +1 -1
- package/server/{cost-Ca0YTWDw.js → cost-B2ddP6wq.js} +2 -2
- package/server/{cost-CW4WSe72.js → cost-R-m6Yi-W.js} +3 -3
- package/server/{cost-sync-C0VdGme1.js → cost-sync-BsN6ER0n.js} +3 -3
- package/server/{dag-CdOjJVDT.js → dag-B1ucnjDU.js} +2 -2
- package/server/{dangerous-git-ops-CT-IypG3.js → dangerous-git-ops-BXqeWVSf.js} +1 -1
- package/server/dashboard-db-worker.js +7 -7
- package/server/{deacon-pRnyD5w9.js → deacon-CU_cAYSR.js} +254 -144
- package/server/{deacon-DYSEJb48.js → deacon-kiQrb4ZT.js} +3 -3
- package/server/{deacon-nudge-log-Bjg8U4Y9.js → deacon-nudge-log-6wVqAaqz.js} +3 -3
- package/server/{deacon-swarm-DftYRDo8.js → deacon-swarm-BXZZ1Z2-.js} +13 -13
- package/server/deacon-swarm-C-GwfjJy.js +2 -0
- package/server/deacon.js +8 -8
- package/server/{deploy-patrol-Bjsho_ha.js → deploy-patrol-AiFoP8dw.js} +6 -6
- package/server/{deploy-window-DeP_OIRk.js → deploy-window-C3F-tihF.js} +6 -6
- package/server/{deploy-window-CM6W1-c6.js → deploy-window-DkZraDyj.js} +1 -1
- package/server/{dev-supervisor-BpMoHlkR.js → dev-supervisor-bcOWqdQE.js} +2 -2
- package/server/{devcontainer-renderer-CtUgrVKW.js → devcontainer-renderer-_d6XhyND.js} +3 -3
- package/server/dist-Bzy0y69j.js +3 -0
- package/server/{dist-DyRx4cI7.js → dist-Cb_0uvpS.js} +1 -1
- package/server/{docker-BK7HIcBj.js → docker-DcMTFTUC.js} +2 -2
- package/server/{dod-BrSfUHm0.js → dod-C6n9RV3G.js} +1 -1
- package/server/{ensure-devcontainer-DRqaAkBR.js → ensure-devcontainer-BZgOhRo7.js} +1 -1
- package/server/{ensure-devcontainer-DseivYEy.js → ensure-devcontainer-DNi-ono3.js} +4 -4
- package/server/{esm-shims-CbI3BVkl.js → esm-shims-OSHAYaS1.js} +1 -1
- package/server/{event-store-tdiY5eDZ.js → event-store-CQL6NeqB.js} +3 -3
- package/server/{event-store-Cr5PQwFC.js → event-store-EV2cMiXj.js} +1 -1
- package/server/{events-CvvGK6LT.js → events-BTdrdEq8.js} +1 -1
- package/server/{events-CC1dgUpx.js → events-DTfAe4My.js} +3 -3
- package/server/{factory-CynerjXO.js → factory-CFibJuaw.js} +4 -4
- package/server/{feature-registry-population-B0pmAz0a.js → feature-registry-population-DKZFMbFt.js} +4 -4
- package/server/{feature-registry-storage-_wUBRD3J.js → feature-registry-storage-BdPuLcBX.js} +2 -2
- package/server/{features-Dhxz-wLc.js → features-ez2271oH.js} +2 -2
- package/server/{feedback-target-CPS15Vte.js → feedback-target-7mqqwrX6.js} +7 -7
- package/server/{feedback-target-iygZwmMc.js → feedback-target-CoFDHiM8.js} +1 -1
- package/server/{feedback-writer-C9b6ccN1.js → feedback-writer-CY5L1lB7.js} +5 -5
- package/server/{feedback-writer-qmiMbqTZ.js → feedback-writer-D3a22RCd.js} +1 -1
- package/server/flywheel-DHrgCphM.js +1084 -0
- package/server/flywheel-DzGtWnJ1.js +477 -0
- package/server/flywheel-SVF02Jpq.js +2 -0
- package/server/{flywheel-merge-order-DxbQKE1d.js → flywheel-merge-order-UU0tiUld.js} +9 -8
- package/server/{flywheel-merge-order-C-6zRLvM.js → flywheel-merge-order-UUcsCDb6.js} +1 -1
- package/server/{forge-Ch9gCFod.js → forge-CNFnyqps.js} +2 -2
- package/server/forge-DXnS_YFH.js +2 -0
- package/server/{from-CJ_aH5jD.js → from-kNxT0bZC.js} +1 -1
- package/server/{fts-db-CKgg0VKg.js → fts-db-CE46vDkZ.js} +2 -2
- package/server/{fts-operations-BrL_VTRr.js → fts-operations-CqY6zl-i.js} +2 -2
- package/server/{git-utils-BVa07a4a.js → git-utils-CRw2zLPC.js} +68 -3
- package/server/git-utils-D0_yhCgF.js +3 -0
- package/server/{github-app-CMBdIFBQ.js → github-app-C3QrAUd0.js} +18 -7
- package/server/{github-app-CPfoFAdV.js → github-app-ClZ2lk8D.js} +1 -1
- package/server/{github-client--XVlDpwM.js → github-client-BnIsSrEN.js} +2 -2
- package/server/{github-client-B4QsdE-X.js → github-client-DfQYVUaw.js} +1 -1
- package/server/{github-pr-lookup-BRbDW-qk.js → github-pr-lookup-D16NGsSO.js} +2 -2
- package/server/{harness-binary-CVio2m-u.js → harness-binary-DPUi-Pv8.js} +32 -6
- package/server/{harness-resolve-qHJBhy3Z.js → harness-resolve-3lNZkyT4.js} +18 -9
- package/server/{health-events-C9B8y1Hm.js → health-events-BBcTYQKU.js} +2 -2
- package/server/{health-events-CpfvuVmm.js → health-events-BDOHby5Q.js} +1 -1
- package/server/{hooks-DUXw8A0-.js → hooks-CKZgXlJb.js} +2 -2
- package/server/{hooks-ltecuFqZ.js → hooks-DPVX1rwQ.js} +1 -1
- package/server/{hume-BEq0bUDg.js → hume-Cz8igP9E.js} +2 -2
- package/server/hume-ccTf4wTX.js +3 -0
- package/server/{idle-stack-reaper-D7w9t3fE.js → idle-stack-reaper-CuLF0j2H.js} +1 -1
- package/server/{idle-stack-reaper-w1ISSlhs.js → idle-stack-reaper-DDIRwxUY.js} +2 -2
- package/server/{in-flight-guard-aQ1IxeI3.js → in-flight-guard-CAAkqPLu.js} +2 -2
- package/server/{infra-CzaSOgul.js → infra-BEqFxlJc.js} +14 -4
- package/server/{injection-DZ0PfYa4.js → injection-C8aiVJrF.js} +191 -183
- package/server/{injection-oNZeoDhL.js → injection-CPUIqNhI.js} +1 -1
- package/server/{inspect-agent-DJKLWcVT.js → inspect-agent-BLuJ1AkT.js} +135 -79
- package/server/inspect-agent-Brtz0URj.js +2 -0
- package/server/{internal-token-DXdfprGr.js → internal-token-BrcU6qfe.js} +1 -1
- package/server/{internal-token-Bb4XeV2x.js → internal-token-s0-oKybJ.js} +2 -2
- package/server/{io-B3_AHDfr.js → io-C9kF1wtJ.js} +3 -3
- package/server/{issue-closed-zhdvQicO.js → issue-closed-CDJk4pIp.js} +7 -7
- package/server/{issue-lifecycle-Dy4vd0Oa.js → issue-lifecycle-B8sZHVHh.js} +1 -1
- package/server/{issue-lifecycle-CreaCkjW.js → issue-lifecycle-ojZAzDBP.js} +21 -21
- package/server/{issue-service-singleton-DabvBWUp.js → issue-service-singleton-BvJ09SaR.js} +1 -1
- package/server/{issue-service-singleton-B5ushCvE.js → issue-service-singleton-Yx5DdmVJ.js} +8 -8
- package/server/{issues-B6ToV6x1.js → issues-BMmP_77e.js} +2 -2
- package/server/{jsonl-parser-Dhflo1SH.js → jsonl-parser-BXSlHwEh.js} +3 -3
- package/server/{label-cleanup-BKPJm4Hv.js → label-cleanup-B0UJwnv5.js} +3 -3
- package/server/{label-reconciler-DdWbHEBu.js → label-reconciler-B4iOAjlC.js} +4 -4
- package/server/{launcher-generator-CHVm7bGT.js → launcher-generator-BBWG_SiS.js} +101 -7
- package/server/{lifecycle-io-D8iNBcux.js → lifecycle-io-BREGpnLk.js} +5 -5
- package/server/{lifecycle-io-Bsnr2K4F.js → lifecycle-io-DPo7x11I.js} +1 -1
- package/server/{lifecycle-sycO16hj.js → lifecycle-xmBfK2GJ.js} +6 -6
- package/server/{lifecycle-DfeyBDwA.js → lifecycle-yPd___5E.js} +2 -2
- package/server/{linear-client-D4zqMnX7.js → linear-client-BsuUvkdA.js} +2 -2
- package/server/{linear-client-DqhDQO9k.js → linear-client-CTskEeT_.js} +1 -1
- package/server/memory-fts-worker.js +1 -1
- package/server/{merge-DK23JEdS.js → merge-B1DiziGU.js} +1 -1
- package/server/{merge-C_ZEhbqI.js → merge-CefQNAnq.js} +3 -3
- package/server/{merge-agent-XrB80vfT.js → merge-agent-4WOWlSYA.js} +28 -28
- package/server/{merge-agent-BQM3a8z5.js → merge-agent-CKkgIBPB.js} +1 -1
- package/server/{merge-batch-Bwoyr8Je.js → merge-batch-ClFn2T-y.js} +1 -1
- package/server/merge-ops-CR44oU9-.js +2 -0
- package/server/{merge-rebase-C1KIVr0s.js → merge-rebase-BfaTyXsw.js} +2 -2
- package/server/merge-set-DJ8-UErs.js +83 -0
- package/server/{merge-set-DnSYdBEp.js → merge-set-bUqbm3yc.js} +1 -1
- package/server/{merge-sync-SSv3E-pl.js → merge-sync-BJYeOODr.js} +1 -1
- package/server/{merge-sync-DZ9dojJn.js → merge-sync-VPV28g0g.js} +2 -2
- package/server/{merge-train-DxDfBTjr.js → merge-train-CHopycP0.js} +3 -3
- package/server/{merge-train-deps-CyYQUksx.js → merge-train-deps-D1cOZzy2.js} +4 -4
- package/server/{merge-verification-CSizH3HY.js → merge-verification-BkaOqPsw.js} +4 -4
- package/server/{multipart-parser-Dt8YPN5S.js → multipart-parser-duPAfSBw.js} +2 -2
- package/server/{no-resume-mode-Cx3K0hHi.js → no-resume-mode-Nw29vaFb.js} +1 -1
- package/server/node_modules/.package-lock.json +8 -8
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/package.json +3 -3
- package/server/node_modules/undici/README.md +5 -0
- package/server/node_modules/undici/docs/docs/api/Client.md +4 -0
- package/server/node_modules/undici/docs/docs/api/Dispatcher.md +6 -0
- package/server/node_modules/undici/docs/docs/api/Interceptors.md +59 -0
- package/server/node_modules/undici/docs/docs/api/MockAgent.md +27 -0
- package/server/node_modules/undici/docs/docs/api/MockPool.md +28 -1
- package/server/node_modules/undici/docs/docs/index.md +5 -0
- package/server/node_modules/undici/lib/core/request.js +1 -1
- package/server/node_modules/undici/lib/core/util.js +6 -1
- package/server/node_modules/undici/lib/dispatcher/agent.js +3 -3
- package/server/node_modules/undici/lib/dispatcher/client-h1.js +31 -6
- package/server/node_modules/undici/lib/dispatcher/client-h2.js +34 -43
- package/server/node_modules/undici/lib/handler/cache-handler.js +93 -5
- package/server/node_modules/undici/lib/handler/cache-revalidation-handler.js +10 -0
- package/server/node_modules/undici/lib/handler/redirect-handler.js +5 -2
- package/server/node_modules/undici/lib/handler/retry-handler.js +6 -4
- package/server/node_modules/undici/lib/interceptor/cache.js +21 -4
- package/server/node_modules/undici/lib/interceptor/decompress.js +4 -0
- package/server/node_modules/undici/lib/mock/mock-interceptor.js +25 -7
- package/server/node_modules/undici/lib/mock/mock-utils.js +39 -10
- package/server/node_modules/undici/lib/util/cache.js +49 -7
- package/server/node_modules/undici/lib/web/fetch/body.js +2 -1
- package/server/node_modules/undici/lib/web/fetch/response.js +1 -3
- package/server/node_modules/undici/package.json +2 -2
- package/server/node_modules/undici/types/client.d.ts +2 -2
- package/server/node_modules/undici/types/dispatcher.d.ts +3 -3
- package/server/node_modules/undici/types/mock-interceptor.d.ts +5 -1
- package/server/{orphan-proposed-reconciler-neK8dHQk.js → orphan-proposed-reconciler-BvKkWMJQ.js} +12 -12
- package/server/{orphan-proposed-reconciler-BTkDrl4R.js → orphan-proposed-reconciler-CTSGcK8p.js} +1 -1
- package/server/package-lock.json +9 -9
- package/server/package.json +1 -1
- package/server/{pan-dir-DeVUgwA7.js → pan-dir-B0c3w0Ya.js} +3 -3
- package/server/{paths-_zEts6wc.js → paths-D-xWGHdh.js} +2 -2
- package/server/{pickup-Dd0Znxxy.js → pickup-DUCLWrJY.js} +17 -16
- package/server/{pipeline-membership-0HaEGDlH.js → pipeline-membership-mY3GprlK.js} +7 -7
- package/server/{pipeline-notifier-6iCJplFZ.js → pipeline-notifier-BJr8gQX6.js} +1 -1
- package/server/{pipeline-notifier-D0ykk59O.js → pipeline-notifier-BXkJzDC4.js} +2 -2
- package/server/{project-pipelines-2sK1apsO.js → project-pipelines-C0MWUeCU.js} +2 -2
- package/server/project-repos-B6GycDh9.js +94 -0
- package/server/project-repos-DXKQsc_m.js +3 -0
- package/server/{projects-9SkRpES9.js → projects-vjjcmiN8.js} +1 -1
- package/server/{prompts-Dp4Tpk39.js → prompts-DxzFXuLl.js} +2 -2
- package/server/{providers-DV7ec8l7.js → providers-qQAwGQDW.js} +7 -7
- package/server/{providers-DKkBXhxU.js → providers-u4Ga0jOr.js} +1 -1
- package/server/public/assets/{chunk-BO2N2NFS-CltymLRg.js → chunk-BO2N2NFS-BamJdinX.js} +4 -4
- package/server/public/assets/{diagram-OG6HWLK6-D2f6pjgA.js → diagram-OG6HWLK6-DfOB8-w4.js} +1 -1
- package/server/public/assets/{dist-DEmlBBNQ.js → dist-ByIuzMQW.js} +3 -3
- package/server/public/assets/{dist-BWR4qFiV.js → dist-D7zYSEA6.js} +1 -1
- package/server/public/assets/{ganttDiagram-6RSMTGT7-DnfiViPK.js → ganttDiagram-6RSMTGT7-EdmRyXL3.js} +1 -1
- package/server/public/assets/{highlighted-body-OFNGDK62-B8Wrmj9H.js → highlighted-body-OFNGDK62-MerOfTX8.js} +1 -1
- package/server/public/assets/{index-CsSuZQBI.js → index-CWeMerGO.js} +146 -144
- package/server/public/assets/{index-CUr1xv8w.css → index-CenuJ3Cw.css} +1 -1
- package/server/public/assets/{linear-C9zFQpkX.js → linear-BBbArIcK.js} +1 -1
- package/server/public/assets/mermaid-GHXKKRXX-CpPWAFwE.js +1 -0
- package/server/public/assets/{pieDiagram-4H26LBE5-lR8H7Yjd.js → pieDiagram-4H26LBE5-BKIddiJN.js} +1 -1
- package/server/public/assets/{prod-B1jCQihw.js → prod-B8vYiu52.js} +4 -4
- package/server/public/assets/{quadrantDiagram-W4KKPZXB-CVQ2guem.js → quadrantDiagram-W4KKPZXB-D6RtoULk.js} +1 -1
- package/server/public/assets/{sankeyDiagram-5OEKKPKP-eD1RB4gm.js → sankeyDiagram-5OEKKPKP-CLrCedZX.js} +1 -1
- package/server/public/assets/{xychartDiagram-2RQKCTM6-ChEC6dQn.js → xychartDiagram-2RQKCTM6-hznR8DYl.js} +1 -1
- package/server/public/index.html +2 -2
- package/server/{pull-requests--Ib2jTgy.js → pull-requests-7N8WKseP.js} +1 -1
- package/server/{pull-requests-CXIhdCYD.js → pull-requests-_lHueOHW.js} +3 -3
- package/server/{queries-6d7Cdtm7.js → queries-CjNIf-Ub.js} +576 -166
- package/server/{rally-B708-nZn.js → rally-CyWT_lNO.js} +3 -3
- package/server/{rally-api-nY0ZANw3.js → rally-api-C8e_1JRi.js} +2 -2
- package/server/{rally-api-yjQ0TfHd.js → rally-api-ClOSd-Tt.js} +1 -1
- package/server/{rally-client-B1EJhfV0.js → rally-client-lc-nokqr.js} +4 -4
- package/server/{rally-client-CULK2XAY.js → rally-client-sgtVqzNU.js} +1 -1
- package/server/rally-zhhtXuDP.js +3 -0
- package/server/{reap-terminal-sessions-MWnqdLCJ.js → reap-terminal-sessions-7KeHv1R1.js} +1 -1
- package/server/{reap-terminal-sessions-N3BTkmX_.js → reap-terminal-sessions-BtHPo6Xc.js} +1 -1
- package/server/rebuild-stack-CFvcBHsS.js +4 -0
- package/server/{rebuild-stack-Dp4eLkt4.js → rebuild-stack-lwtsW0GO.js} +26 -35
- package/server/{reconstruct-cache-uWbZfjms.js → reconstruct-cache-C3Ui7ojV.js} +6 -6
- package/server/{record-t6V-3Dcj.js → record-CN0pj4_5.js} +1 -1
- package/server/{record-update-DACtKh6_.js → record-update-bLJxAXH4.js} +1 -1
- package/server/{record-update-Dq0t2uBG.js → record-update-dE1Aw83j.js} +2 -2
- package/server/{recovery-trip-BJtIQuag.js → recovery-trip-BvRWfUXM.js} +2 -2
- package/server/{release-engine-DZpmGGzb.js → release-engine-Cx48W7z8.js} +5 -5
- package/server/{release-set-hnXd_kga.js → release-set-CQfuN9-v.js} +3 -3
- package/server/{remote-Br-ZWVIP.js → remote-C_2hasl7.js} +3 -3
- package/server/{remote-4tiENDaI.js → remote-ChgimyYa.js} +3 -3
- package/server/{remote-agents-nmty1mLu.js → remote-agents-By1ige5O.js} +6 -6
- package/server/{remote-agents-CRCg1L4H.js → remote-agents-CA3Ihlxj.js} +1 -1
- package/server/{remote-completion-BbWNd10K.js → remote-completion-fVe9e_3u.js} +12 -12
- package/server/resume-BFv1PGpA.js +3 -0
- package/server/{review-agent-sKkE1FEL.js → review-agent-CIGOQYBD.js} +29 -25
- package/server/{review-agent-DJRO8EG8.js → review-agent-DNboMyW4.js} +1 -1
- package/server/{review-artifacts-BLbSC4ke.js → review-artifacts-nRDPuMxd.js} +5 -5
- package/server/{review-context-BgX3lcCx.js → review-context-2uj-YQ8J.js} +69 -25
- package/server/{review-status-C6n6-9f_.js → review-status-btEYlaxA.js} +1 -1
- package/server/{review-status-enrichment-tbOn_A_u.js → review-status-enrichment-Dci-ZwEt.js} +3 -3
- package/server/{review-status-A7quS5KJ.js → review-status-kZj_KyCk.js} +42 -26
- package/server/{review-status-sync-BhSQ0d0l.js → review-status-sync-BTOpxtTC.js} +10 -5
- package/server/{review-status-sync-To3-iS-N.js → review-status-sync-DSDK3OMy.js} +1 -1
- package/server/{review-verdict-feedback-CTRNtzXO.js → review-verdict-feedback-CCjVA7Uk.js} +6 -6
- package/server/{review-verdict-feedback-C1Kg8n7t.js → review-verdict-feedback-CTd4QMBu.js} +1 -1
- package/server/{rollup-B53Y81xK.js → rollup-BKQC7jp4.js} +1 -1
- package/server/{rollup-WA0VD-Rr.js → rollup-FGsKki9R.js} +8 -8
- package/server/{scanner-D2743cp8.js → scanner-CnqEZeDy.js} +41 -14
- package/server/{sequence-io-Cg0zYj_E.js → sequence-io-D909zgeH.js} +4 -4
- package/server/{sequencer-agent-BGY8gjg-.js → sequencer-agent-CzkcK6P5.js} +5 -5
- package/server/server.js +2194 -341
- package/server/{service-DCpB_SGd.js → service-CLeAoU6G.js} +51 -50
- package/server/{session-fork-BQ8_6H32.js → session-fork-CHI1XvL9.js} +2 -2
- package/server/{session-history-CVZDpS3c.js → session-history-BT3IvqhC.js} +4 -4
- package/server/settings-66A6uvIA.js +2 -0
- package/server/{settings-BZ5m1UCl.js → settings-BTMvpNFU.js} +3 -3
- package/server/{settings-ylxwqwQG.js → settings-C0zgxOGf.js} +2 -2
- package/server/{shadow-engineering-BlxG6Xye.js → shadow-engineering-BJfgm-hX.js} +2 -2
- package/server/{shadow-state-Dh-HzF2J.js → shadow-state-7a-524T8.js} +2 -2
- package/server/{shadow-state-C2_epgx2.js → shadow-state-DnDyjujH.js} +1 -1
- package/server/{shadow-utils-4bvjn9b3.js → shadow-utils-Db3oroFG.js} +2 -2
- package/server/{ship-log-ClSMIzZX.js → ship-log-D9MlVzYU.js} +1 -1
- package/server/{smart-compaction-CHIxLr_d.js → smart-compaction-CV2ukKND.js} +1 -1
- package/server/{smart-compaction-r4pHQBIr.js → smart-compaction-KCYScAU1.js} +7 -7
- package/server/{spawn-planning-session-DWAorh2B.js → spawn-planning-session-DKpdFyOC.js} +30 -23
- package/server/{spawn-planning-session-KC_UduxD.js → spawn-planning-session-qUC2VWu3.js} +1 -1
- package/server/{specialist-completion-BXhav38U.js → specialist-completion-Ky9wCDpb.js} +1 -1
- package/server/{specialist-context-DtrYvGJ-.js → specialist-context-Bn3dCGS2.js} +5 -5
- package/server/{specialist-handoff-logger-C45ouoZ6.js → specialist-handoff-logger-CMEwYxa2.js} +2 -2
- package/server/{specialist-logs-DJ3RzKxW.js → specialist-logs-C5p8G7tx.js} +3 -3
- package/server/{specialists-JVO00bs7.js → specialists-CC4r-c2s.js} +776 -347
- package/server/{specialists-D5fRZXmN.js → specialists-CShuVGWT.js} +1 -1
- package/server/{specialists-DVj0hvaL.js → specialists-DM6bWjsi.js} +1 -1
- package/server/{specialists-DyFeedjn.js → specialists-jiuuyVkp.js} +21 -19
- package/server/specs-C8Wsn2XO.js +3 -0
- package/server/{src-CG9mCkP6.js → src-CXmtj0im.js} +6 -6
- package/server/{src-CMTQGyCK.js → src-CdmnTM2m.js} +5 -5
- package/server/{src-U7_kTPEE.js → src-DtcUOZCq.js} +111 -18
- package/server/stack-health-Bn3o8FBX.js +3 -0
- package/server/{stack-health-puygdaMd.js → stack-health-DxSdG9cW.js} +63 -9
- package/server/{stale-task-claims-BbFwCTb0.js → stale-task-claims-KJKxxiiQ.js} +4 -4
- package/server/{staleness-Cbl_w4Bw.js → staleness-CT34nwr9.js} +1 -1
- package/server/{staleness-Bpy41ngS.js → staleness-DPm7ClwA.js} +1 -1
- package/server/{state-home-CIGjwNfJ.js → state-home-Cn_Qu8IX.js} +2 -2
- package/server/{state-migrate-Dkzaxvny.js → state-migrate-BGg2ZaOt.js} +4 -4
- package/server/{stuck-remediation-CzEov_fq.js → stuck-remediation-DYuPRYYw.js} +300 -23
- package/server/{stuck-remediation-sY_MHHgQ.js → stuck-remediation-s9_2qfi6.js} +1 -1
- package/server/{substrate-bug-weights-service-BH66lhm7.js → substrate-bug-weights-service-B-FwCs5V.js} +3 -3
- package/server/{summary-fork-DHhJIsAL.js → summary-fork-D1RAk9rJ.js} +78 -12
- package/server/{summary-fork-D8bXjCr7.js → summary-fork-DpcxN9tf.js} +2 -2
- package/server/supervisor/{injection-budget-C1iPirFS.js → injection-budget-Csw5tqfJ.js} +2 -41
- package/server/supervisor/pty-supervisor.js +2 -1
- package/server/supervisor/pty-token-x-ea28Us.js +43 -0
- package/server/supervisor-FTJAIsAK.js +2 -0
- package/server/{supervisor-BO-Zk_h-.js → supervisor-wM4ooB5O.js} +3 -3
- package/server/{swarm-readiness-CQ_fwUWF.js → swarm-readiness-DlP_UjHq.js} +3 -3
- package/server/{system-prerequisites-Bza0ffAh.js → system-prerequisites-DUDj1YHf.js} +56 -29
- package/server/{teardown-workspace-CEgauF4U.js → teardown-workspace-DeTTImn-.js} +15 -15
- package/server/{test-agent-queue-DXDt0Xa-.js → test-agent-queue-MbxX5vqq.js} +6 -6
- package/server/{test-verdict-CmUBK5cT.js → test-verdict-bWYBtqBg.js} +1 -1
- package/server/{test-verdict-DFjjIHR5.js → test-verdict-gscuksPv.js} +1 -1
- package/server/{tldr-daemon-DL566HbH.js → tldr-daemon-BYFkts95.js} +1 -1
- package/server/{tldr-daemon-BDtLOIlO.js → tldr-daemon-C-69c3OI.js} +2 -2
- package/server/{tmux-DoThH6aj.js → tmux-B6z7h_vZ.js} +1 -1
- package/server/{tmux-ftABRAmc.js → tmux-R7N7y-Mh.js} +2 -2
- package/server/{token-CsOhvw42.js → token-BK6t8BIT.js} +2 -2
- package/server/token-util-DuPuNriz.js +3 -0
- package/server/{token-util-CTmczIfW.js → token-util-DxXu-vd1.js} +1 -1
- package/server/{tracker-config-B4itFzDo.js → tracker-config-G6latr8C.js} +2 -2
- package/server/{tracker-utils-BePq_oj-.js → tracker-utils-B4ylXZQK.js} +1 -1
- package/server/{tracker-utils-tnxxqROg.js → tracker-utils-DHv5pSDT.js} +2 -2
- package/server/{traefik-connect-m73vGebA.js → traefik-connect-Df2uXPsQ.js} +1 -1
- package/server/{tunnel-B2vxjx_b.js → tunnel-CDVKJpRv.js} +3 -3
- package/server/{tunnel-Cgj-IGIl.js → tunnel-DGdUkGoZ.js} +1 -1
- package/server/{types-BBNjPcqU.js → types-5M0lupud.js} +1 -1
- package/server/{uat-train-cKfM-_WW.js → uat-train-B05BWkp-.js} +1 -1
- package/server/{uat-train-CuEn0t9M.js → uat-train-DDSrSoV1.js} +25 -25
- package/server/validate-IfDGkaVR.js +177 -0
- package/server/{validation-CIi6pnI2.js → validation-CC9OPqJZ.js} +1 -1
- package/server/{validation-B5JxoPUS.js → validation-Dw1pzDzr.js} +4 -4
- package/server/{verification-artifact-C-lIHfUa.js → verification-artifact-B3itKTxu.js} +1 -1
- package/server/{verification-artifact-BcnIbigL.js → verification-artifact-TVFSz_q1.js} +1 -1
- package/server/{verification-runner-CDj4lD4t.js → verification-runner-BW4HOKAz.js} +1 -1
- package/server/{verification-runner-Br0S_Ous.js → verification-runner-CkgX6EtI.js} +91 -106
- package/server/{vtt-parser-DKpNNW5i.js → vtt-parser-DYPbKcIJ.js} +1 -1
- package/server/{work-agent-prompt-Yb2bd3Fq.js → work-agent-prompt-Du8Vh2aJ.js} +9 -9
- package/server/workflows-BQu4RFQ-.js +2 -0
- package/server/{workflows-C9WmILql.js → workflows-mbQzh6mQ.js} +18 -18
- package/server/{workspace-DuUdndHe.js → workspace--8tnhDI0.js} +1 -1
- package/server/{workspace-BVl4rihN.js → workspace-BPUws1-_.js} +3 -3
- package/server/{workspace-config-cEGcO6UT.js → workspace-config-CIVWZOQr.js} +1 -1
- package/server/{workspace-manager-hLUv3ADC.js → workspace-manager-CBhNdzE4.js} +66 -15
- package/server/workspace-manager-CWT55qeI.js +3 -0
- package/server/{workspace-metadata-DNpMixRq.js → workspace-metadata-BzHnwwX4.js} +1 -1
- package/server/{workspace-metadata-CskwzzhL.js → workspace-metadata-_WygnyoX.js} +2 -2
- package/server/{workspaces-hWvy9eKs.js → workspaces-Do_9J0LQ.js} +130 -111
- package/sync-sources/hooks/record-cost-event.js +6 -4
- package/sync-sources/skills/okf/README.md +11 -3
- package/sync-sources/skills/okf/SKILL.md +12 -1
- package/sync-sources/skills/okf/docs/USAGE.md +15 -0
- package/sync-sources/skills/okf/references/overdeck.md +28 -0
- package/sync-sources/skills/pan-flywheel/SKILL.md +18 -1
- package/sync-sources/skills/pan-knowledge/SKILL.md +10 -0
- package/sync-sources/skills/pan-orders/SKILL.md +33 -0
- package/sync-sources/skills/pan-start/SKILL.md +4 -0
- package/sync-sources/templates/traefik/dynamic/overdeck.yml.template +10 -0
- package/server/agent-state-Bg0lhqwj.js +0 -3
- package/server/agents-FlIgQ3ql.js +0 -3
- package/server/cli-BsVIHwzC.js +0 -3
- package/server/context-layers-B3Nt58jl.js +0 -4
- package/server/context-layers-ZYFcWiyc.js +0 -165
- package/server/deacon-swarm-9jRLS5Ke.js +0 -2
- package/server/dist-Bd3vn0Hw.js +0 -3
- package/server/flywheel-DMCUzDWg.js +0 -2
- package/server/flywheel-DSSpWmqF.js +0 -522
- package/server/flywheel-DcBkQvgE.js +0 -207
- package/server/forge-B-ZWyTRm.js +0 -2
- package/server/git-utils-Dry_Ka_D.js +0 -3
- package/server/hume-B_DbflNM.js +0 -3
- package/server/inspect-agent-ch-F-5Ci.js +0 -2
- package/server/layers-DzxSTGNA.js +0 -93
- package/server/merge-blockers-BsFjGrQ8.js +0 -41
- package/server/merge-ops-DlB1IM0Y.js +0 -2
- package/server/merge-set-DLz0MkGT.js +0 -139
- package/server/public/assets/mermaid-GHXKKRXX-BUAB8hqt.js +0 -1
- package/server/rally-njs_mJrt.js +0 -3
- package/server/rebuild-stack-kA7XngID.js +0 -3
- package/server/resume-CcKqnTvE.js +0 -3
- package/server/settings-D0OSwos5.js +0 -2
- package/server/specs-nN45DG2X.js +0 -3
- package/server/stack-health-Df0YEZKa.js +0 -3
- package/server/supervisor-BPy-o1A8.js +0 -2
- package/server/token-util-DrHg8abn.js +0 -3
- package/server/workflows-D90rMOya.js +0 -2
- package/server/workspace-manager-ZTdJAy9M.js +0 -3
|
@@ -1,184 +1,14 @@
|
|
|
1
1
|
import { n as __esmMin, o as __toESM } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import { Tn as init_projects, er as require_dist, jn as loadProjectsConfigSync, zn as resolveProjectFromIssueSync } from "./config-yaml-
|
|
3
|
-
import { d as resolveRagRunsFile, f as resolveStatusFile, i as init_paths, r as ensureParentDir } from "./paths-
|
|
4
|
-
import { n as isBackgroundFeatureEnabled, t as init_features } from "./features-
|
|
5
|
-
import { a as isMemoryKnowledgeIndexEnabled, i as init_settings, o as isMemoryPromptTimeInjectionEnabled } from "./settings-
|
|
6
|
-
import { n as extractWithProviderPolicy, t as init_providers } from "./providers-
|
|
7
|
-
import { n as init_fts_db, r as runMemoryFtsStatement } from "./fts-db-
|
|
2
|
+
import { Tn as init_projects, er as require_dist, fn as findProjectByPathSync, jn as loadProjectsConfigSync, zn as resolveProjectFromIssueSync } from "./config-yaml-DySPNmKN.js";
|
|
3
|
+
import { d as resolveRagRunsFile, f as resolveStatusFile, i as init_paths, r as ensureParentDir } from "./paths-D-xWGHdh.js";
|
|
4
|
+
import { n as isBackgroundFeatureEnabled, t as init_features } from "./features-ez2271oH.js";
|
|
5
|
+
import { a as isMemoryKnowledgeIndexEnabled, i as init_settings, o as isMemoryPromptTimeInjectionEnabled } from "./settings-BTMvpNFU.js";
|
|
6
|
+
import { n as extractWithProviderPolicy, t as init_providers } from "./providers-qQAwGQDW.js";
|
|
7
|
+
import { n as init_fts_db, r as runMemoryFtsStatement } from "./fts-db-CE46vDkZ.js";
|
|
8
8
|
import { Result, Schema } from "effect";
|
|
9
9
|
import { extname, isAbsolute, join, relative, resolve } from "path";
|
|
10
10
|
import { createHash, randomUUID } from "crypto";
|
|
11
11
|
import { appendFile, readFile, readdir } from "fs/promises";
|
|
12
|
-
//#region ../../lib/memory/search.ts
|
|
13
|
-
async function searchMemory(input) {
|
|
14
|
-
const matchQuery = buildMatchQuery(input.query);
|
|
15
|
-
if (!matchQuery) return [];
|
|
16
|
-
const limit = normalizeLimit(input.limit);
|
|
17
|
-
const identityPredicate = buildIdentityPredicate(input);
|
|
18
|
-
if (!identityPredicate) return [];
|
|
19
|
-
const rows = await runMemoryFtsStatement(input.projectId, {
|
|
20
|
-
method: "all",
|
|
21
|
-
sql: `
|
|
22
|
-
SELECT
|
|
23
|
-
rowid,
|
|
24
|
-
content,
|
|
25
|
-
display_content,
|
|
26
|
-
source,
|
|
27
|
-
branch,
|
|
28
|
-
entry_date,
|
|
29
|
-
entry_time,
|
|
30
|
-
entry_type,
|
|
31
|
-
files,
|
|
32
|
-
tags,
|
|
33
|
-
doc_type,
|
|
34
|
-
scope,
|
|
35
|
-
project_id,
|
|
36
|
-
workspace_id,
|
|
37
|
-
issue_id,
|
|
38
|
-
run_id,
|
|
39
|
-
session_id,
|
|
40
|
-
agent_role,
|
|
41
|
-
agent_harness,
|
|
42
|
-
bm25(memory_fts) AS bm25
|
|
43
|
-
FROM memory_fts
|
|
44
|
-
WHERE memory_fts MATCH ?
|
|
45
|
-
AND project_id = ?
|
|
46
|
-
${identityPredicate.sql}
|
|
47
|
-
AND (? = 1 OR (entry_date || 'T' || entry_time) > COALESCE((
|
|
48
|
-
SELECT MAX(from_timestamp)
|
|
49
|
-
FROM reset_markers
|
|
50
|
-
WHERE (scope = 'project' AND scope_id = memory_fts.project_id)
|
|
51
|
-
OR (scope = 'workspace' AND scope_id = memory_fts.workspace_id)
|
|
52
|
-
OR (scope = 'issue' AND scope_id = memory_fts.issue_id)
|
|
53
|
-
OR (scope = 'session' AND scope_id = memory_fts.session_id)
|
|
54
|
-
), ''))
|
|
55
|
-
ORDER BY bm25(memory_fts) ASC
|
|
56
|
-
LIMIT ?
|
|
57
|
-
`,
|
|
58
|
-
params: [
|
|
59
|
-
matchQuery,
|
|
60
|
-
input.projectId,
|
|
61
|
-
...identityPredicate.params,
|
|
62
|
-
input.includeArchived ? 1 : 0,
|
|
63
|
-
limit * OVERFETCH_RATIO
|
|
64
|
-
]
|
|
65
|
-
});
|
|
66
|
-
const tokenBudget = input.sibling ? normalizeSiblingTokenBudget(input.siblingTokenBudget) : null;
|
|
67
|
-
const queryTerms = extractQueryTerms(input.query);
|
|
68
|
-
const now = input.now ?? /* @__PURE__ */ new Date();
|
|
69
|
-
return rows.map((row) => rowToHit(row, tokenBudget, rankHit(row, queryTerms, now))).filter((hit) => matchesTags(hit, input.tags)).sort((a, b) => b.rankScore - a.rankScore || b.entryDate.localeCompare(a.entryDate) || b.entryTime.localeCompare(a.entryTime)).slice(0, limit);
|
|
70
|
-
}
|
|
71
|
-
function buildMatchQuery(query) {
|
|
72
|
-
return extractQueryTerms(query).map((term) => `"${term.replaceAll("\"", "\"\"")}"`).join(" ");
|
|
73
|
-
}
|
|
74
|
-
function extractQueryTerms(query) {
|
|
75
|
-
return query.match(/[\p{L}\p{N}_-]+/gu) ?? [];
|
|
76
|
-
}
|
|
77
|
-
function buildIdentityPredicate(input) {
|
|
78
|
-
if (input.sibling) {
|
|
79
|
-
if (!input.workspaceId || !input.issueId) return null;
|
|
80
|
-
return {
|
|
81
|
-
sql: "AND workspace_id != ? AND issue_id != ?",
|
|
82
|
-
params: [input.workspaceId, input.issueId]
|
|
83
|
-
};
|
|
84
|
-
}
|
|
85
|
-
const clauses = [];
|
|
86
|
-
const params = [];
|
|
87
|
-
if (input.workspaceId) {
|
|
88
|
-
clauses.push("AND workspace_id = ?");
|
|
89
|
-
params.push(input.workspaceId);
|
|
90
|
-
}
|
|
91
|
-
if (input.issueId) {
|
|
92
|
-
clauses.push("AND issue_id = ?");
|
|
93
|
-
params.push(input.issueId);
|
|
94
|
-
}
|
|
95
|
-
return {
|
|
96
|
-
sql: clauses.join("\n "),
|
|
97
|
-
params
|
|
98
|
-
};
|
|
99
|
-
}
|
|
100
|
-
function normalizeLimit(limit) {
|
|
101
|
-
if (limit === void 0) return DEFAULT_LIMIT;
|
|
102
|
-
if (!Number.isInteger(limit) || limit <= 0) return DEFAULT_LIMIT;
|
|
103
|
-
return limit;
|
|
104
|
-
}
|
|
105
|
-
function normalizeSiblingTokenBudget(tokenBudget) {
|
|
106
|
-
if (tokenBudget === void 0) return DEFAULT_SIBLING_TOKEN_BUDGET;
|
|
107
|
-
if (!Number.isInteger(tokenBudget) || tokenBudget <= 0) return DEFAULT_SIBLING_TOKEN_BUDGET;
|
|
108
|
-
return tokenBudget;
|
|
109
|
-
}
|
|
110
|
-
function rankHit(row, queryTerms, now) {
|
|
111
|
-
const tags = splitList(row.tags).map((tag) => tag.toLowerCase());
|
|
112
|
-
const tagSet = new Set(tags);
|
|
113
|
-
const matchingTagCount = new Set(queryTerms.map((term) => term.toLowerCase()).filter((term) => tagSet.has(term))).size;
|
|
114
|
-
const ageDays = ageInDays(`${row.entry_date}T${row.entry_time}`, now);
|
|
115
|
-
const boostedScore = Math.abs(row.bm25) * Math.exp(-RECENCY_DECAY_RATE * ageDays) + TAG_BOOST * matchingTagCount;
|
|
116
|
-
if (ageDays < HIGH_SIGNAL_WINDOW_HOURS / 24 && tags.some((tag) => HIGH_SIGNAL_TAGS.has(tag))) return Math.max(boostedScore, HIGH_SIGNAL_SCORE_FLOOR);
|
|
117
|
-
return boostedScore;
|
|
118
|
-
}
|
|
119
|
-
function ageInDays(timestamp, now) {
|
|
120
|
-
const parsed = Date.parse(timestamp);
|
|
121
|
-
if (Number.isNaN(parsed)) return 0;
|
|
122
|
-
return Math.max(0, (now.getTime() - parsed) / 864e5);
|
|
123
|
-
}
|
|
124
|
-
function rowToHit(row, tokenBudget, rankScore) {
|
|
125
|
-
return {
|
|
126
|
-
rowid: row.rowid,
|
|
127
|
-
content: row.content,
|
|
128
|
-
displayContent: row.display_content,
|
|
129
|
-
source: row.source,
|
|
130
|
-
branch: row.branch,
|
|
131
|
-
entryDate: row.entry_date,
|
|
132
|
-
entryTime: row.entry_time,
|
|
133
|
-
entryType: row.entry_type,
|
|
134
|
-
files: splitList(row.files),
|
|
135
|
-
tags: splitList(row.tags),
|
|
136
|
-
docType: row.doc_type,
|
|
137
|
-
scope: row.scope,
|
|
138
|
-
projectId: row.project_id,
|
|
139
|
-
workspaceId: row.workspace_id,
|
|
140
|
-
issueId: row.issue_id,
|
|
141
|
-
runId: row.run_id,
|
|
142
|
-
sessionId: row.session_id,
|
|
143
|
-
agentRole: row.agent_role,
|
|
144
|
-
agentHarness: row.agent_harness,
|
|
145
|
-
bm25: row.bm25,
|
|
146
|
-
rankScore,
|
|
147
|
-
provenance: `${row.workspace_id}:${row.issue_id}`,
|
|
148
|
-
tokenBudget
|
|
149
|
-
};
|
|
150
|
-
}
|
|
151
|
-
function splitList(value) {
|
|
152
|
-
return value.split(",").map((entry) => entry.trim()).filter(Boolean);
|
|
153
|
-
}
|
|
154
|
-
function matchesTags(hit, tags) {
|
|
155
|
-
if (!tags || tags.length === 0) return true;
|
|
156
|
-
return tags.every((tag) => hit.tags.includes(tag));
|
|
157
|
-
}
|
|
158
|
-
var DEFAULT_LIMIT, OVERFETCH_RATIO, DEFAULT_SIBLING_TOKEN_BUDGET, RECENCY_DECAY_RATE, TAG_BOOST, HIGH_SIGNAL_SCORE_FLOOR, HIGH_SIGNAL_WINDOW_HOURS, HIGH_SIGNAL_TAGS;
|
|
159
|
-
var init_search = __esmMin((() => {
|
|
160
|
-
init_fts_db();
|
|
161
|
-
DEFAULT_LIMIT = 20;
|
|
162
|
-
OVERFETCH_RATIO = 3;
|
|
163
|
-
DEFAULT_SIBLING_TOKEN_BUDGET = 1500;
|
|
164
|
-
RECENCY_DECAY_RATE = .02;
|
|
165
|
-
TAG_BOOST = .3;
|
|
166
|
-
HIGH_SIGNAL_SCORE_FLOOR = 1;
|
|
167
|
-
HIGH_SIGNAL_WINDOW_HOURS = 72;
|
|
168
|
-
HIGH_SIGNAL_TAGS = new Set([
|
|
169
|
-
"error",
|
|
170
|
-
"decision",
|
|
171
|
-
"blocker",
|
|
172
|
-
"shipped",
|
|
173
|
-
"architecture",
|
|
174
|
-
"review-blocker",
|
|
175
|
-
"test-failure",
|
|
176
|
-
"merge-risk",
|
|
177
|
-
"architecture-decision",
|
|
178
|
-
"regression"
|
|
179
|
-
]);
|
|
180
|
-
}));
|
|
181
|
-
//#endregion
|
|
182
12
|
//#region ../../lib/memory/query-expansion.ts
|
|
183
13
|
async function expandMemoryQuery(input) {
|
|
184
14
|
const cacheKey = buildQueryExpansionCacheKey(input);
|
|
@@ -356,6 +186,176 @@ var init_query_expansion = __esmMin((() => {
|
|
|
356
186
|
expansionCache = /* @__PURE__ */ new Map();
|
|
357
187
|
}));
|
|
358
188
|
//#endregion
|
|
189
|
+
//#region ../../lib/memory/search.ts
|
|
190
|
+
async function searchMemory(input) {
|
|
191
|
+
const matchQuery = buildMatchQuery(input.query);
|
|
192
|
+
if (!matchQuery) return [];
|
|
193
|
+
const limit = normalizeLimit(input.limit);
|
|
194
|
+
const identityPredicate = buildIdentityPredicate(input);
|
|
195
|
+
if (!identityPredicate) return [];
|
|
196
|
+
const rows = await runMemoryFtsStatement(input.projectId, {
|
|
197
|
+
method: "all",
|
|
198
|
+
sql: `
|
|
199
|
+
SELECT
|
|
200
|
+
rowid,
|
|
201
|
+
content,
|
|
202
|
+
display_content,
|
|
203
|
+
source,
|
|
204
|
+
branch,
|
|
205
|
+
entry_date,
|
|
206
|
+
entry_time,
|
|
207
|
+
entry_type,
|
|
208
|
+
files,
|
|
209
|
+
tags,
|
|
210
|
+
doc_type,
|
|
211
|
+
scope,
|
|
212
|
+
project_id,
|
|
213
|
+
workspace_id,
|
|
214
|
+
issue_id,
|
|
215
|
+
run_id,
|
|
216
|
+
session_id,
|
|
217
|
+
agent_role,
|
|
218
|
+
agent_harness,
|
|
219
|
+
bm25(memory_fts) AS bm25
|
|
220
|
+
FROM memory_fts
|
|
221
|
+
WHERE memory_fts MATCH ?
|
|
222
|
+
AND project_id = ?
|
|
223
|
+
${identityPredicate.sql}
|
|
224
|
+
AND (? = 1 OR (entry_date || 'T' || entry_time) > COALESCE((
|
|
225
|
+
SELECT MAX(from_timestamp)
|
|
226
|
+
FROM reset_markers
|
|
227
|
+
WHERE (scope = 'project' AND scope_id = memory_fts.project_id)
|
|
228
|
+
OR (scope = 'workspace' AND scope_id = memory_fts.workspace_id)
|
|
229
|
+
OR (scope = 'issue' AND scope_id = memory_fts.issue_id)
|
|
230
|
+
OR (scope = 'session' AND scope_id = memory_fts.session_id)
|
|
231
|
+
), ''))
|
|
232
|
+
ORDER BY bm25(memory_fts) ASC
|
|
233
|
+
LIMIT ?
|
|
234
|
+
`,
|
|
235
|
+
params: [
|
|
236
|
+
matchQuery,
|
|
237
|
+
input.projectId,
|
|
238
|
+
...identityPredicate.params,
|
|
239
|
+
input.includeArchived ? 1 : 0,
|
|
240
|
+
limit * OVERFETCH_RATIO
|
|
241
|
+
]
|
|
242
|
+
});
|
|
243
|
+
const tokenBudget = input.sibling ? normalizeSiblingTokenBudget(input.siblingTokenBudget) : null;
|
|
244
|
+
const queryTerms = extractQueryTerms(input.query);
|
|
245
|
+
const now = input.now ?? /* @__PURE__ */ new Date();
|
|
246
|
+
return rows.map((row) => rowToHit(row, tokenBudget, rankHit(row, queryTerms, now))).filter((hit) => matchesTags(hit, input.tags)).sort((a, b) => b.rankScore - a.rankScore || b.entryDate.localeCompare(a.entryDate) || b.entryTime.localeCompare(a.entryTime)).slice(0, limit);
|
|
247
|
+
}
|
|
248
|
+
function buildMatchQuery(query) {
|
|
249
|
+
return extractQueryTerms(query).map((term) => `"${term.replaceAll("\"", "\"\"")}"`).join(" ");
|
|
250
|
+
}
|
|
251
|
+
function extractQueryTerms(query) {
|
|
252
|
+
return query.match(/[\p{L}\p{N}_-]+/gu) ?? [];
|
|
253
|
+
}
|
|
254
|
+
function buildIdentityPredicate(input) {
|
|
255
|
+
if (input.sibling) {
|
|
256
|
+
if (!input.workspaceId || !input.issueId) return null;
|
|
257
|
+
return {
|
|
258
|
+
sql: "AND workspace_id != ? AND issue_id != ?",
|
|
259
|
+
params: [input.workspaceId, input.issueId]
|
|
260
|
+
};
|
|
261
|
+
}
|
|
262
|
+
const clauses = [];
|
|
263
|
+
const params = [];
|
|
264
|
+
if (input.workspaceId) {
|
|
265
|
+
clauses.push("AND workspace_id = ?");
|
|
266
|
+
params.push(input.workspaceId);
|
|
267
|
+
}
|
|
268
|
+
if (input.issueId) {
|
|
269
|
+
clauses.push("AND issue_id = ?");
|
|
270
|
+
params.push(input.issueId);
|
|
271
|
+
}
|
|
272
|
+
return {
|
|
273
|
+
sql: clauses.join("\n "),
|
|
274
|
+
params
|
|
275
|
+
};
|
|
276
|
+
}
|
|
277
|
+
function normalizeLimit(limit) {
|
|
278
|
+
if (limit === void 0) return DEFAULT_LIMIT;
|
|
279
|
+
if (!Number.isInteger(limit) || limit <= 0) return DEFAULT_LIMIT;
|
|
280
|
+
return limit;
|
|
281
|
+
}
|
|
282
|
+
function normalizeSiblingTokenBudget(tokenBudget) {
|
|
283
|
+
if (tokenBudget === void 0) return DEFAULT_SIBLING_TOKEN_BUDGET;
|
|
284
|
+
if (!Number.isInteger(tokenBudget) || tokenBudget <= 0) return DEFAULT_SIBLING_TOKEN_BUDGET;
|
|
285
|
+
return tokenBudget;
|
|
286
|
+
}
|
|
287
|
+
function rankHit(row, queryTerms, now) {
|
|
288
|
+
const tags = splitList(row.tags).map((tag) => tag.toLowerCase());
|
|
289
|
+
const tagSet = new Set(tags);
|
|
290
|
+
const matchingTagCount = new Set(queryTerms.map((term) => term.toLowerCase()).filter((term) => tagSet.has(term))).size;
|
|
291
|
+
const ageDays = ageInDays(`${row.entry_date}T${row.entry_time}`, now);
|
|
292
|
+
const boostedScore = Math.abs(row.bm25) * Math.exp(-RECENCY_DECAY_RATE * ageDays) + TAG_BOOST * matchingTagCount;
|
|
293
|
+
if (ageDays < HIGH_SIGNAL_WINDOW_HOURS / 24 && tags.some((tag) => HIGH_SIGNAL_TAGS.has(tag))) return Math.max(boostedScore, HIGH_SIGNAL_SCORE_FLOOR);
|
|
294
|
+
return boostedScore;
|
|
295
|
+
}
|
|
296
|
+
function ageInDays(timestamp, now) {
|
|
297
|
+
const parsed = Date.parse(timestamp);
|
|
298
|
+
if (Number.isNaN(parsed)) return 0;
|
|
299
|
+
return Math.max(0, (now.getTime() - parsed) / 864e5);
|
|
300
|
+
}
|
|
301
|
+
function rowToHit(row, tokenBudget, rankScore) {
|
|
302
|
+
return {
|
|
303
|
+
rowid: row.rowid,
|
|
304
|
+
content: row.content,
|
|
305
|
+
displayContent: row.display_content,
|
|
306
|
+
source: row.source,
|
|
307
|
+
branch: row.branch,
|
|
308
|
+
entryDate: row.entry_date,
|
|
309
|
+
entryTime: row.entry_time,
|
|
310
|
+
entryType: row.entry_type,
|
|
311
|
+
files: splitList(row.files),
|
|
312
|
+
tags: splitList(row.tags),
|
|
313
|
+
docType: row.doc_type,
|
|
314
|
+
scope: row.scope,
|
|
315
|
+
projectId: row.project_id,
|
|
316
|
+
workspaceId: row.workspace_id,
|
|
317
|
+
issueId: row.issue_id,
|
|
318
|
+
runId: row.run_id,
|
|
319
|
+
sessionId: row.session_id,
|
|
320
|
+
agentRole: row.agent_role,
|
|
321
|
+
agentHarness: row.agent_harness,
|
|
322
|
+
bm25: row.bm25,
|
|
323
|
+
rankScore,
|
|
324
|
+
provenance: `${row.workspace_id}:${row.issue_id}`,
|
|
325
|
+
tokenBudget
|
|
326
|
+
};
|
|
327
|
+
}
|
|
328
|
+
function splitList(value) {
|
|
329
|
+
return value.split(",").map((entry) => entry.trim()).filter(Boolean);
|
|
330
|
+
}
|
|
331
|
+
function matchesTags(hit, tags) {
|
|
332
|
+
if (!tags || tags.length === 0) return true;
|
|
333
|
+
return tags.every((tag) => hit.tags.includes(tag));
|
|
334
|
+
}
|
|
335
|
+
var DEFAULT_LIMIT, OVERFETCH_RATIO, DEFAULT_SIBLING_TOKEN_BUDGET, RECENCY_DECAY_RATE, TAG_BOOST, HIGH_SIGNAL_SCORE_FLOOR, HIGH_SIGNAL_WINDOW_HOURS, HIGH_SIGNAL_TAGS;
|
|
336
|
+
var init_search = __esmMin((() => {
|
|
337
|
+
init_fts_db();
|
|
338
|
+
DEFAULT_LIMIT = 20;
|
|
339
|
+
OVERFETCH_RATIO = 3;
|
|
340
|
+
DEFAULT_SIBLING_TOKEN_BUDGET = 1500;
|
|
341
|
+
RECENCY_DECAY_RATE = .02;
|
|
342
|
+
TAG_BOOST = .3;
|
|
343
|
+
HIGH_SIGNAL_SCORE_FLOOR = 1;
|
|
344
|
+
HIGH_SIGNAL_WINDOW_HOURS = 72;
|
|
345
|
+
HIGH_SIGNAL_TAGS = new Set([
|
|
346
|
+
"error",
|
|
347
|
+
"decision",
|
|
348
|
+
"blocker",
|
|
349
|
+
"shipped",
|
|
350
|
+
"architecture",
|
|
351
|
+
"review-blocker",
|
|
352
|
+
"test-failure",
|
|
353
|
+
"merge-risk",
|
|
354
|
+
"architecture-decision",
|
|
355
|
+
"regression"
|
|
356
|
+
]);
|
|
357
|
+
}));
|
|
358
|
+
//#endregion
|
|
359
359
|
//#region ../../lib/memory/injection.ts
|
|
360
360
|
async function injectPromptTimeMemory(input) {
|
|
361
361
|
const now = input.now ?? /* @__PURE__ */ new Date();
|
|
@@ -693,11 +693,19 @@ async function readKnowledgeIndex(identity) {
|
|
|
693
693
|
return lines.join("\n");
|
|
694
694
|
}
|
|
695
695
|
async function resolveKnowledgeBundleRoot(identity) {
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
696
|
+
let projectPath;
|
|
697
|
+
let knowledgeRepo;
|
|
698
|
+
if ("issueId" in identity) {
|
|
699
|
+
const resolved = resolveProjectFromIssueSync(identity.issueId);
|
|
700
|
+
if (!resolved) return null;
|
|
701
|
+
projectPath = resolved.projectPath;
|
|
702
|
+
knowledgeRepo = loadProjectsConfigSync().projects[resolved.projectKey]?.knowledge_repo;
|
|
703
|
+
} else {
|
|
704
|
+
const project = findProjectByPathSync(identity.projectPath);
|
|
705
|
+
projectPath = project?.path ?? identity.projectPath;
|
|
706
|
+
knowledgeRepo = project?.knowledge_repo;
|
|
707
|
+
}
|
|
708
|
+
if (typeof knowledgeRepo === "string" && knowledgeRepo.trim()) return resolvePath(projectPath, knowledgeRepo);
|
|
701
709
|
try {
|
|
702
710
|
const pointer = (0, import_dist.parse)(await readFile(join(projectPath, ".okf.yml"), "utf8"));
|
|
703
711
|
if (isRecord(pointer) && typeof pointer.bundle === "string" && pointer.bundle.trim()) return resolvePath(projectPath, pointer.bundle);
|
|
@@ -813,6 +821,6 @@ var init_injection = __esmMin((() => {
|
|
|
813
821
|
PROMPT_TIME_EXPANSION_TIMEOUT_MS = 750;
|
|
814
822
|
}));
|
|
815
823
|
//#endregion
|
|
816
|
-
export {
|
|
824
|
+
export { buildMatchQuery as a, init_query_expansion as c, resolveKnowledgeBundleRoot as i, init_injection as n, init_search as o, injectPromptTimeMemory as r, clearQueryExpansionCache as s, PROMPT_TIME_MEMORY_BUDGETS as t };
|
|
817
825
|
|
|
818
|
-
//# sourceMappingURL=injection-
|
|
826
|
+
//# sourceMappingURL=injection-C8aiVJrF.js.map
|