@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,207 +0,0 @@
|
|
|
1
|
-
import { t as init_config_yaml } from "./config-yaml-DvyMuOle.js";
|
|
2
|
-
import { H as sessionExists, w as init_tmux } from "./tmux-ftABRAmc.js";
|
|
3
|
-
import { l as FlywheelStats, t as init_src, y as FlywheelStatus } from "./src-U7_kTPEE.js";
|
|
4
|
-
import { b as init_agents } from "./queries-6d7Cdtm7.js";
|
|
5
|
-
import { s as init_internal_token } from "./internal-token-Bb4XeV2x.js";
|
|
6
|
-
import { i as getFlywheelActiveRunId, s as init_control_settings } from "./control-settings-aP1ANIlI.js";
|
|
7
|
-
import { t as init_harness_resolve } from "./harness-resolve-qHJBhy3Z.js";
|
|
8
|
-
import { f as init_github_app } from "./github-app-CMBdIFBQ.js";
|
|
9
|
-
import "./substrate-bug-weights-service-BH66lhm7.js";
|
|
10
|
-
import { f as clearFlywheelGate, g as listFlywheelRuns, m as getFlywheelRunDir, p as getFlywheelRunDetail } from "./flywheel-DSSpWmqF.js";
|
|
11
|
-
import { t as init_sequence_io } from "./sequence-io-Cg0zYj_E.js";
|
|
12
|
-
import { r as computeMergeQueue } from "./flywheel-merge-order-DxbQKE1d.js";
|
|
13
|
-
import "./merge-blockers-BsFjGrQ8.js";
|
|
14
|
-
import { join } from "node:path";
|
|
15
|
-
import { Effect, Schema } from "effect";
|
|
16
|
-
import "node:os";
|
|
17
|
-
import "node:fs";
|
|
18
|
-
import { writeFile } from "node:fs/promises";
|
|
19
|
-
import { exec, execFile } from "node:child_process";
|
|
20
|
-
import { promisify } from "node:util";
|
|
21
|
-
import { layer } from "@effect/platform-node/NodeServices";
|
|
22
|
-
//#region ../../lib/flywheel-start.ts
|
|
23
|
-
init_config_yaml();
|
|
24
|
-
init_tmux();
|
|
25
|
-
init_src();
|
|
26
|
-
init_internal_token();
|
|
27
|
-
init_control_settings();
|
|
28
|
-
init_harness_resolve();
|
|
29
|
-
init_agents();
|
|
30
|
-
promisify(exec);
|
|
31
|
-
//#endregion
|
|
32
|
-
//#region ../../cli/commands/flywheel-merge-backend.ts
|
|
33
|
-
init_github_app();
|
|
34
|
-
//#endregion
|
|
35
|
-
//#region ../../cli/commands/flywheel-surfaces.ts
|
|
36
|
-
init_sequence_io();
|
|
37
|
-
init_github_app();
|
|
38
|
-
promisify(exec);
|
|
39
|
-
promisify(execFile);
|
|
40
|
-
//#endregion
|
|
41
|
-
//#region ../../cli/commands/flywheel.ts
|
|
42
|
-
init_control_settings();
|
|
43
|
-
Schema.decodeUnknownSync(FlywheelStatus);
|
|
44
|
-
Schema.decodeUnknownSync(FlywheelStats);
|
|
45
|
-
const execAsync = promisify(exec);
|
|
46
|
-
function runNumberFromRunId(runId) {
|
|
47
|
-
const match = /^RUN-(\d+)$/.exec(runId);
|
|
48
|
-
if (!match) throw new Error(`Invalid Flywheel run id for report: ${runId}`);
|
|
49
|
-
return Number(match[1]);
|
|
50
|
-
}
|
|
51
|
-
function reportDate(status) {
|
|
52
|
-
return status.lastTickAt.slice(0, 10);
|
|
53
|
-
}
|
|
54
|
-
function tableCell(value) {
|
|
55
|
-
return String(value ?? "").replace(/\|/g, "\\|").replace(/\n/g, " ");
|
|
56
|
-
}
|
|
57
|
-
function formatFlywheelStateReport(status, mergeQueue = []) {
|
|
58
|
-
const runNumber = runNumberFromRunId(status.runId);
|
|
59
|
-
const suggestionRows = status.suggestions.length > 0 ? status.suggestions.map((suggestion) => `| ${tableCell(suggestion.priority)} | ${tableCell(suggestion.action)} | ${tableCell(suggestion.issueId)} | ${tableCell(suggestion.rationale)} |`).join("\n") : "No suggestions emitted this run.";
|
|
60
|
-
const activePipelineRows = status.activePipeline.length > 0 ? status.activePipeline.map((item) => `| ${tableCell(item.issueId)} | ${tableCell(item.verb)} | ${tableCell(item.status)} | ${tableCell(item.title)} | ${tableCell(item.progressPercent)} | ${tableCell(item.pr)} |`).join("\n") : "| _None_ | | | | | |";
|
|
61
|
-
const substrateRows = status.substrateBugs.length > 0 ? status.substrateBugs.map((bug) => `| ${tableCell(bug.issueId)} | ${tableCell(bug.status)} | ${tableCell(bug.title)} | ${tableCell(bug.commitSha?.slice(0, 10))} |`).join("\n") : "| _None_ | | | |";
|
|
62
|
-
const patternLines = status.parked.length > 0 ? status.parked.map((item) => `- **${item.issueId}** (${item.reason}) — ${item.title}`).join("\n") : "- None recorded this run.";
|
|
63
|
-
const questionLines = status.openQuestions.length > 0 ? status.openQuestions.map((question) => `- ${question}`).join("\n") : "- None.";
|
|
64
|
-
const mergeQueueSection = mergeQueue.length > 0 ? `## Merge Queue
|
|
65
|
-
|
|
66
|
-
Merge ship-ready PRs in this order to avoid rebase conflicts. Branches with overlapping file changes must be merged in sequence; non-overlapping branches can be merged in any order.
|
|
67
|
-
|
|
68
|
-
| # | Issue | PR | Conflicts With |
|
|
69
|
-
|---|---|---|---|
|
|
70
|
-
${mergeQueue.map((item) => {
|
|
71
|
-
const prCell = item.pr != null ? `#${item.pr}` : "—";
|
|
72
|
-
const conflictsCell = item.conflictsWith.length > 0 ? item.conflictsWith.join(", ") : "—";
|
|
73
|
-
return `| ${item.mergeOrder} | ${item.issueId} | ${prCell} | ${conflictsCell} |`;
|
|
74
|
-
}).join("\n")}
|
|
75
|
-
|
|
76
|
-
---
|
|
77
|
-
|
|
78
|
-
` : "";
|
|
79
|
-
return `# Flywheel Run ${runNumber} Report — ${reportDate(status)}
|
|
80
|
-
|
|
81
|
-
Per-run report derived from the last \`FlywheelStatus\` snapshot. Durable cumulative memory across runs lives in \`docs/FLYWHEEL-STATE.md\`.
|
|
82
|
-
|
|
83
|
-
**Run window:** ${status.startedAt} → ${status.lastTickAt} (${status.orchestrator.harness}, ${status.orchestrator.model}, ${status.orchestrator.effort})
|
|
84
|
-
|
|
85
|
-
**Headline result:** ${status.headline.bugsFixed} substrate bugs fixed; ${status.headline.swarmItemsMerged}/${status.headline.swarmItemsTotal} SWARM items merged; ${status.headline.prsMerged} PRs merged; ${status.headline.awaitingUat} awaiting UAT.
|
|
86
|
-
|
|
87
|
-
**Run counters:** ticks ${status.ticks}; last tick ${status.lastTickAt}; orchestrator context ${status.orchestrator.ctxPercent}%.
|
|
88
|
-
|
|
89
|
-
---
|
|
90
|
-
|
|
91
|
-
${mergeQueueSection}## Suggestions
|
|
92
|
-
|
|
93
|
-
${status.suggestions.length > 0 ? `| Priority | Action | Issue | Rationale |
|
|
94
|
-
|---|---|---|---|
|
|
95
|
-
${suggestionRows}` : suggestionRows}
|
|
96
|
-
|
|
97
|
-
---
|
|
98
|
-
|
|
99
|
-
## Active Pipeline
|
|
100
|
-
|
|
101
|
-
| Issue | Verb | Status | Title | Progress | PR |
|
|
102
|
-
|---|---|---|---|---:|---:|
|
|
103
|
-
${activePipelineRows}
|
|
104
|
-
|
|
105
|
-
---
|
|
106
|
-
|
|
107
|
-
## Cycling Alerts
|
|
108
|
-
|
|
109
|
-
${questionLines}
|
|
110
|
-
|
|
111
|
-
---
|
|
112
|
-
|
|
113
|
-
## Infrastructure Gaps
|
|
114
|
-
|
|
115
|
-
| Issue | Status | Notes | Commit |
|
|
116
|
-
|---|---|---|---|
|
|
117
|
-
${substrateRows}
|
|
118
|
-
|
|
119
|
-
---
|
|
120
|
-
|
|
121
|
-
## Pattern Ledger
|
|
122
|
-
|
|
123
|
-
${patternLines}
|
|
124
|
-
|
|
125
|
-
---
|
|
126
|
-
|
|
127
|
-
## Skill Gaps
|
|
128
|
-
|
|
129
|
-
- Keep \`pan flywheel report\` in the closeout path so run summaries stay archived under the run directory.
|
|
130
|
-
`;
|
|
131
|
-
}
|
|
132
|
-
async function isFlywheelStateDirty(cwd) {
|
|
133
|
-
try {
|
|
134
|
-
const { stdout } = await execAsync("git status --porcelain docs/FLYWHEEL-STATE.md", {
|
|
135
|
-
cwd,
|
|
136
|
-
encoding: "utf8"
|
|
137
|
-
});
|
|
138
|
-
return stdout.trim().length > 0;
|
|
139
|
-
} catch {
|
|
140
|
-
return false;
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
async function loadReportFlywheelStatus() {
|
|
144
|
-
const activeRunId = getFlywheelActiveRunId();
|
|
145
|
-
if (activeRunId) {
|
|
146
|
-
const activeDetail = await getFlywheelRunDetail(activeRunId);
|
|
147
|
-
if (activeDetail?.latest) return activeDetail.latest;
|
|
148
|
-
}
|
|
149
|
-
const runs = await listFlywheelRuns();
|
|
150
|
-
const run = runs.find((candidate) => candidate.status === "running") ?? runs[0];
|
|
151
|
-
if (!run) return null;
|
|
152
|
-
return (await getFlywheelRunDetail(run.id))?.latest ?? null;
|
|
153
|
-
}
|
|
154
|
-
async function gitOutput(command, cwd) {
|
|
155
|
-
const { stdout } = await execAsync(command, {
|
|
156
|
-
cwd,
|
|
157
|
-
encoding: "utf8"
|
|
158
|
-
});
|
|
159
|
-
return stdout.trim();
|
|
160
|
-
}
|
|
161
|
-
async function commitFlywheelStateChanges(cwd, runNumber) {
|
|
162
|
-
const subject = `docs(flywheel): run ${runNumber}`;
|
|
163
|
-
await execAsync("git add docs/FLYWHEEL-STATE.md", { cwd });
|
|
164
|
-
await execAsync(await gitOutput("git log -1 --format=%s", cwd).catch(() => "") === subject ? `git commit --amend -m ${JSON.stringify(subject)}` : `git commit -m ${JSON.stringify(subject)}`, {
|
|
165
|
-
cwd,
|
|
166
|
-
encoding: "utf8"
|
|
167
|
-
});
|
|
168
|
-
}
|
|
169
|
-
function clearFlywheelRunGate(runId) {
|
|
170
|
-
if (getFlywheelActiveRunId() === runId) clearFlywheelGate();
|
|
171
|
-
}
|
|
172
|
-
async function flywheelReportCommand(options = {}) {
|
|
173
|
-
try {
|
|
174
|
-
const cwd = options.cwd ?? process.cwd();
|
|
175
|
-
if (!options.force && await Effect.runPromise(sessionExists("flywheel-orchestrator"))) {
|
|
176
|
-
console.error("Refusing to write report — flywheel orchestrator session is still alive.");
|
|
177
|
-
console.error("This command finalizes the run (writes report.md and clears the active-run gate).");
|
|
178
|
-
console.error("Run `pan flywheel pause` (or `pan flywheel abort`) first, or pass --force to override.");
|
|
179
|
-
process.exitCode = 1;
|
|
180
|
-
return;
|
|
181
|
-
}
|
|
182
|
-
const status = await loadReportFlywheelStatus();
|
|
183
|
-
if (!status) {
|
|
184
|
-
console.error("no flywheel run to report");
|
|
185
|
-
process.exitCode = 1;
|
|
186
|
-
return;
|
|
187
|
-
}
|
|
188
|
-
const runNumber = runNumberFromRunId(status.runId);
|
|
189
|
-
const runReport = formatFlywheelStateReport(status, await Effect.runPromise(computeMergeQueue(status.activePipeline, cwd).pipe(Effect.provide(layer))));
|
|
190
|
-
await writeFile(join(getFlywheelRunDir(status.runId), "report.md"), runReport, "utf8");
|
|
191
|
-
try {
|
|
192
|
-
if (await isFlywheelStateDirty(cwd)) {
|
|
193
|
-
await commitFlywheelStateChanges(cwd, runNumber);
|
|
194
|
-
console.log(`Wrote per-run report and committed FLYWHEEL-STATE.md changes for run ${runNumber}.`);
|
|
195
|
-
} else console.log(`Wrote per-run report for run ${runNumber}. No FLYWHEEL-STATE.md changes to commit.`);
|
|
196
|
-
} finally {
|
|
197
|
-
clearFlywheelRunGate(status.runId);
|
|
198
|
-
}
|
|
199
|
-
} catch (error) {
|
|
200
|
-
console.error(error instanceof Error ? error.message : String(error));
|
|
201
|
-
process.exitCode = 1;
|
|
202
|
-
}
|
|
203
|
-
}
|
|
204
|
-
//#endregion
|
|
205
|
-
export { flywheelReportCommand };
|
|
206
|
-
|
|
207
|
-
//# sourceMappingURL=flywheel-DcBkQvgE.js.map
|
package/server/forge-B-ZWyTRm.js
DELETED
package/server/hume-B_DbflNM.js
DELETED
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import { Br as getOverdeckHome, Vr as init_paths } from "./config-yaml-DvyMuOle.js";
|
|
3
|
-
import { existsSync, mkdirSync, writeFileSync } from "fs";
|
|
4
|
-
import { join } from "path";
|
|
5
|
-
//#region ../../lib/context-layers/layers.ts
|
|
6
|
-
/**
|
|
7
|
-
* Context layer model (PAN-1201).
|
|
8
|
-
*
|
|
9
|
-
* Three layers of context compose at sync time:
|
|
10
|
-
*
|
|
11
|
-
* global — ~/.overdeck/context/global.md (+ global/{skills,agents}/)
|
|
12
|
-
* Applies to every harness invocation, everywhere.
|
|
13
|
-
* project — <projectRoot>/.overdeck/context/project.md
|
|
14
|
-
* Applies when CWD is under a registered project. Committed.
|
|
15
|
-
* workspace — <workspace>/.overdeck/context/workspace.md
|
|
16
|
-
* Auto-assembled by Overdeck at spawn time. Gitignored.
|
|
17
|
-
*
|
|
18
|
-
* The global layer lives under ~/.overdeck (per-machine). Project and
|
|
19
|
-
* Project and workspace context live outside the permanent state plane under
|
|
20
|
-
* `.overdeck/`. Reads retain a `.pan/context/` compatibility fallback.
|
|
21
|
-
*/
|
|
22
|
-
/** `~/.overdeck/context` — the global layer directory. */
|
|
23
|
-
function globalContextDir() {
|
|
24
|
-
return join(getOverdeckHome(), "context");
|
|
25
|
-
}
|
|
26
|
-
/** `~/.overdeck/context/global.md` — the global layer's canonical source. */
|
|
27
|
-
function globalContextFile() {
|
|
28
|
-
return join(globalContextDir(), "global.md");
|
|
29
|
-
}
|
|
30
|
-
/** `<projectRoot>/.overdeck/context` — a registered project's layer directory. */
|
|
31
|
-
function projectContextDir(projectRoot) {
|
|
32
|
-
return join(projectRoot, ".overdeck", "context");
|
|
33
|
-
}
|
|
34
|
-
/** `<projectRoot>/.overdeck/context/project.md` — a project's canonical source. */
|
|
35
|
-
function projectContextFile(projectRoot) {
|
|
36
|
-
return join(projectContextDir(projectRoot), "project.md");
|
|
37
|
-
}
|
|
38
|
-
function legacyProjectContextFile(projectRoot) {
|
|
39
|
-
return join(projectRoot, ".pan", "context", "project.md");
|
|
40
|
-
}
|
|
41
|
-
function resolveProjectContextFile(projectRoot) {
|
|
42
|
-
const canonical = projectContextFile(projectRoot);
|
|
43
|
-
return existsSync(canonical) ? canonical : legacyProjectContextFile(projectRoot);
|
|
44
|
-
}
|
|
45
|
-
/** `<workspace>/.overdeck/context` — a workspace's layer directory. */
|
|
46
|
-
function workspaceContextDir(workspacePath) {
|
|
47
|
-
return join(workspacePath, ".overdeck", "context");
|
|
48
|
-
}
|
|
49
|
-
/** `<workspace>/.pan/context/workspace.md` — the auto-assembled bundle. */
|
|
50
|
-
function workspaceContextFile(workspacePath) {
|
|
51
|
-
return join(workspaceContextDir(workspacePath), "workspace.md");
|
|
52
|
-
}
|
|
53
|
-
function legacyWorkspaceContextFile(workspacePath) {
|
|
54
|
-
return join(workspacePath, ".pan", "context", "workspace.md");
|
|
55
|
-
}
|
|
56
|
-
function resolveWorkspaceContextFile(workspacePath) {
|
|
57
|
-
const canonical = workspaceContextFile(workspacePath);
|
|
58
|
-
return existsSync(canonical) ? canonical : legacyWorkspaceContextFile(workspacePath);
|
|
59
|
-
}
|
|
60
|
-
/** `~/.overdeck/context/pi-global.md` — the rendered global layer for Pi. */
|
|
61
|
-
function piGlobalContextFile() {
|
|
62
|
-
return join(getOverdeckHome(), "context", "pi-global.md");
|
|
63
|
-
}
|
|
64
|
-
/** `~/.overdeck/context/codex-global.md` — the rendered global layer for Codex. */
|
|
65
|
-
function codexGlobalContextFile() {
|
|
66
|
-
return join(getOverdeckHome(), "context", "codex-global.md");
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* Ensure a project's layer dir exists with a stub `project.md`. Idempotent.
|
|
70
|
-
* Returns true when a file was created. Called by `pan projects add`.
|
|
71
|
-
*/
|
|
72
|
-
function ensureProjectLayer(projectRoot) {
|
|
73
|
-
const file = projectContextFile(projectRoot);
|
|
74
|
-
if (existsSync(file)) return false;
|
|
75
|
-
mkdirSync(projectContextDir(projectRoot), { recursive: true });
|
|
76
|
-
writeFileSync(file, PROJECT_STARTER, "utf-8");
|
|
77
|
-
return true;
|
|
78
|
-
}
|
|
79
|
-
var PROJECT_STARTER;
|
|
80
|
-
var init_layers = __esmMin((() => {
|
|
81
|
-
init_paths();
|
|
82
|
-
PROJECT_STARTER = `# Project Context
|
|
83
|
-
|
|
84
|
-
Context for this project specifically. \`pan sync\` renders it into the
|
|
85
|
-
project's CLAUDE.md (and equivalents) when CWD is under this project.
|
|
86
|
-
|
|
87
|
-
This file is committed to the repo; \`workspace.md\` is not.
|
|
88
|
-
`;
|
|
89
|
-
}));
|
|
90
|
-
//#endregion
|
|
91
|
-
export { globalContextFile as a, legacyWorkspaceContextFile as c, projectContextFile as d, resolveProjectContextFile as f, workspaceContextFile as h, globalContextDir as i, piGlobalContextFile as l, workspaceContextDir as m, codexGlobalContextFile as n, init_layers as o, resolveWorkspaceContextFile as p, ensureProjectLayer as r, legacyProjectContextFile as s, PROJECT_STARTER as t, projectContextDir as u };
|
|
92
|
-
|
|
93
|
-
//# sourceMappingURL=layers-DzxSTGNA.js.map
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { c as init_review_status_sync, r as getAllReviewStatusesFromDb } from "./review-status-sync-BhSQ0d0l.js";
|
|
2
|
-
//#region ../../lib/cloister/merge-blockers.ts
|
|
3
|
-
init_review_status_sync();
|
|
4
|
-
/**
|
|
5
|
-
* PRs that passed review but cannot merge for a GitHub-native reason (PAN-1620):
|
|
6
|
-
* merge_conflict / failing_checks / not_mergeable. These sit forever unless rebased.
|
|
7
|
-
*
|
|
8
|
-
* Reads `review_status` directly from SQLite — NO HTTP — so it works inside a
|
|
9
|
-
* network-sandboxed harness (e.g. codex's bwrap sandbox) where a `curl` to the
|
|
10
|
-
* dashboard's `/api/flywheel/merge-blockers` cannot reach `127.0.0.1:3011`.
|
|
11
|
-
* Shared by the dashboard route and the `pan flywheel merge-blockers` CLI so the
|
|
12
|
-
* two surfaces can never disagree.
|
|
13
|
-
*/
|
|
14
|
-
const MERGE_BLOCKER_TYPES = new Set([
|
|
15
|
-
"merge_conflict",
|
|
16
|
-
"failing_checks",
|
|
17
|
-
"not_mergeable"
|
|
18
|
-
]);
|
|
19
|
-
function getMergeBlockersPayload() {
|
|
20
|
-
const statuses = getAllReviewStatusesFromDb();
|
|
21
|
-
const out = [];
|
|
22
|
-
for (const [issueId, status] of Object.entries(statuses)) {
|
|
23
|
-
if (status.reviewStatus !== "passed") continue;
|
|
24
|
-
if (status.mergeStatus === "merged") continue;
|
|
25
|
-
const reasons = (status.blockerReasons ?? []).filter((b) => MERGE_BLOCKER_TYPES.has(b.type));
|
|
26
|
-
if (reasons.length === 0) continue;
|
|
27
|
-
out.push({
|
|
28
|
-
issueId,
|
|
29
|
-
prUrl: status.prUrl,
|
|
30
|
-
reasons: reasons.map((b) => ({
|
|
31
|
-
type: b.type,
|
|
32
|
-
summary: b.summary
|
|
33
|
-
}))
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
return out;
|
|
37
|
-
}
|
|
38
|
-
//#endregion
|
|
39
|
-
export { getMergeBlockersPayload as t };
|
|
40
|
-
|
|
41
|
-
//# sourceMappingURL=merge-blockers-BsFjGrQ8.js.map
|
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import { $n as resolveIssueIdSync, Tn as init_projects, Yn as init_issue_id, yn as getProjectSync, zn as resolveProjectFromIssueSync } from "./config-yaml-DvyMuOle.js";
|
|
3
|
-
import { T as upsertMergeSet, i as getMergeSetFromDb, o as init_merge_sync } from "./merge-sync-DZ9dojJn.js";
|
|
4
|
-
import "effect";
|
|
5
|
-
import { join } from "path";
|
|
6
|
-
//#region ../../lib/project-repos.ts
|
|
7
|
-
function normalizeForgeSync(value) {
|
|
8
|
-
if (!value) return null;
|
|
9
|
-
const normalized = value.trim().toLowerCase();
|
|
10
|
-
if (normalized === "github" || normalized.includes("github.com")) return "github";
|
|
11
|
-
if (normalized === "gitlab" || normalized.includes("gitlab.com")) return "gitlab";
|
|
12
|
-
return null;
|
|
13
|
-
}
|
|
14
|
-
function inferProjectForgeSync(projectConfig) {
|
|
15
|
-
if (projectConfig.github_repo && !projectConfig.gitlab_repo) return "github";
|
|
16
|
-
if (projectConfig.gitlab_repo && !projectConfig.github_repo) return "gitlab";
|
|
17
|
-
return null;
|
|
18
|
-
}
|
|
19
|
-
function getRepoSourceBranch(repo, issueId) {
|
|
20
|
-
return `${repo?.branch_prefix || "feature/"}${issueId.toLowerCase()}`;
|
|
21
|
-
}
|
|
22
|
-
function getRepoTargetBranch(repo, projectConfig) {
|
|
23
|
-
return repo?.pr_target || projectConfig.workspace?.pr_target || repo?.default_branch || projectConfig.workspace?.default_branch || "main";
|
|
24
|
-
}
|
|
25
|
-
function getRepoForge(repo, projectConfig) {
|
|
26
|
-
return normalizeForgeSync(repo?.forge) || normalizeForgeSync(repo?.remote) || inferProjectForgeSync(projectConfig) || "github";
|
|
27
|
-
}
|
|
28
|
-
function resolveConfiguredReposSync(projectKey, projectPath, projectConfig, issueId) {
|
|
29
|
-
const repos = projectConfig.workspace?.repos;
|
|
30
|
-
if (!repos || repos.length === 0) return [{
|
|
31
|
-
projectKey,
|
|
32
|
-
projectPath,
|
|
33
|
-
repoKey: projectKey,
|
|
34
|
-
repoPath: projectPath,
|
|
35
|
-
forge: inferProjectForgeSync(projectConfig) || "github",
|
|
36
|
-
sourceBranch: `feature/${issueId.toLowerCase()}`,
|
|
37
|
-
targetBranch: projectConfig.workspace?.pr_target || projectConfig.workspace?.default_branch || "main",
|
|
38
|
-
mergeOrder: 0,
|
|
39
|
-
required: true
|
|
40
|
-
}];
|
|
41
|
-
return repos.map((repo, index) => ({
|
|
42
|
-
projectKey,
|
|
43
|
-
projectPath,
|
|
44
|
-
repoKey: repo.name,
|
|
45
|
-
repoPath: join(projectPath, repo.path),
|
|
46
|
-
forge: getRepoForge(repo, projectConfig),
|
|
47
|
-
sourceBranch: getRepoSourceBranch(repo, issueId),
|
|
48
|
-
targetBranch: getRepoTargetBranch(repo, projectConfig),
|
|
49
|
-
mergeOrder: index,
|
|
50
|
-
required: repo.readonly !== true
|
|
51
|
-
}));
|
|
52
|
-
}
|
|
53
|
-
function resolveProjectReposFromResolvedIssueSync(issueId, resolvedProject) {
|
|
54
|
-
const projectConfig = getProjectSync(resolvedProject.projectKey);
|
|
55
|
-
if (!projectConfig) return null;
|
|
56
|
-
return resolveConfiguredReposSync(resolvedProject.projectKey, resolvedProject.projectPath, projectConfig, issueId);
|
|
57
|
-
}
|
|
58
|
-
var init_project_repos = __esmMin((() => {
|
|
59
|
-
init_projects();
|
|
60
|
-
}));
|
|
61
|
-
//#endregion
|
|
62
|
-
//#region ../../lib/merge-set.ts
|
|
63
|
-
function upsertMergeSetSync(mergeSet) {
|
|
64
|
-
upsertMergeSet({
|
|
65
|
-
...mergeSet,
|
|
66
|
-
issueId: resolveIssueIdSync(mergeSet.issueId)
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
function getMergeSetSync(issueId) {
|
|
70
|
-
return getMergeSetFromDb(resolveIssueIdSync(issueId));
|
|
71
|
-
}
|
|
72
|
-
function buildMergeSetForIssueSync(issueId, labels = []) {
|
|
73
|
-
const resolved = resolveProjectFromIssueSync(issueId, labels);
|
|
74
|
-
if (!resolved) return null;
|
|
75
|
-
const repos = resolveProjectReposFromResolvedIssueSync(issueId, resolved);
|
|
76
|
-
if (!repos) return null;
|
|
77
|
-
const now = (/* @__PURE__ */ new Date()).toISOString();
|
|
78
|
-
return {
|
|
79
|
-
issueId,
|
|
80
|
-
projectKey: resolved.projectKey,
|
|
81
|
-
projectPath: resolved.projectPath,
|
|
82
|
-
workspaceType: repos.length > 1 ? "polyrepo" : "monorepo",
|
|
83
|
-
status: "draft",
|
|
84
|
-
createdAt: now,
|
|
85
|
-
updatedAt: now,
|
|
86
|
-
repos: repos.map((repo) => ({
|
|
87
|
-
repoKey: repo.repoKey,
|
|
88
|
-
repoPath: repo.repoPath,
|
|
89
|
-
forge: repo.forge,
|
|
90
|
-
sourceBranch: repo.sourceBranch,
|
|
91
|
-
targetBranch: repo.targetBranch,
|
|
92
|
-
reviewStatus: "pending",
|
|
93
|
-
testStatus: "pending",
|
|
94
|
-
rebaseStatus: "pending",
|
|
95
|
-
verificationStatus: "pending",
|
|
96
|
-
mergeStatus: "pending",
|
|
97
|
-
mergeOrder: repo.mergeOrder,
|
|
98
|
-
required: repo.required
|
|
99
|
-
}))
|
|
100
|
-
};
|
|
101
|
-
}
|
|
102
|
-
function ensureMergeSetForIssueSync(issueId, labels = []) {
|
|
103
|
-
const existing = getMergeSetSync(issueId);
|
|
104
|
-
if (existing) return existing;
|
|
105
|
-
const built = buildMergeSetForIssueSync(issueId, labels);
|
|
106
|
-
if (built) upsertMergeSetSync(built);
|
|
107
|
-
return built;
|
|
108
|
-
}
|
|
109
|
-
function withRepoArtifactUrlSync(mergeSet, repoKey, artifactUrl, artifactId) {
|
|
110
|
-
return {
|
|
111
|
-
...mergeSet,
|
|
112
|
-
updatedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
113
|
-
repos: mergeSet.repos.map((repo) => repo.repoKey === repoKey ? {
|
|
114
|
-
...repo,
|
|
115
|
-
artifactUrl,
|
|
116
|
-
artifactId
|
|
117
|
-
} : repo)
|
|
118
|
-
};
|
|
119
|
-
}
|
|
120
|
-
function withRepoStateSync(mergeSet, repoKey, patch) {
|
|
121
|
-
return {
|
|
122
|
-
...mergeSet,
|
|
123
|
-
updatedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
124
|
-
repos: mergeSet.repos.map((repo) => repo.repoKey === repoKey ? {
|
|
125
|
-
...repo,
|
|
126
|
-
...patch
|
|
127
|
-
} : repo)
|
|
128
|
-
};
|
|
129
|
-
}
|
|
130
|
-
var init_merge_set = __esmMin((() => {
|
|
131
|
-
init_merge_sync();
|
|
132
|
-
init_projects();
|
|
133
|
-
init_project_repos();
|
|
134
|
-
init_issue_id();
|
|
135
|
-
}));
|
|
136
|
-
//#endregion
|
|
137
|
-
export { upsertMergeSetSync as a, init_merge_set as i, ensureMergeSetForIssueSync as n, withRepoArtifactUrlSync as o, getMergeSetSync as r, withRepoStateSync as s, buildMergeSetForIssueSync as t };
|
|
138
|
-
|
|
139
|
-
//# sourceMappingURL=merge-set-DLz0MkGT.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{C as e}from"./chunk-BO2N2NFS-CltymLRg.js";export{e as Mermaid};
|
package/server/rally-njs_mJrt.js
DELETED
package/server/specs-nN45DG2X.js
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import { a as removeWorkspace, d as copyOverdeckSettingsToWorkspaceSync, i as preTrustDirectory, o as stopWorkspaceDocker, r as init_workspace_manager, s as preTrustDirectorySync, t as createWorkspace } from "./workspace-manager-hLUv3ADC.js";
|
|
2
|
-
init_workspace_manager();
|
|
3
|
-
export { copyOverdeckSettingsToWorkspaceSync, createWorkspace, preTrustDirectory, preTrustDirectorySync, removeWorkspace, stopWorkspaceDocker };
|