@overdeck/desktop 0.49.1 → 0.49.2
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/package.json +1 -1
- package/server/{acceptance-criteria-Crw-xSJ3.js → acceptance-criteria-CHtDkHEL.js} +2 -2
- package/server/{active-dashboard-bundle-CLwfD-Om.js → active-dashboard-bundle-Byh6sP-q.js} +2 -2
- package/server/{activity-logger-BAVLrkR7.js → activity-logger-BWZhVphb.js} +22 -4
- package/server/activity-logger-Ck8qoluj.js +3 -0
- package/server/{advancing-selfheal-BQiJ7mIH.js → advancing-selfheal-65W4yUQi.js} +6 -6
- package/server/{agent-gc-5E0lgxI1.js → agent-gc-BNUudFnt.js} +10 -10
- package/server/agent-idle-ONBssBN_.js +745 -0
- package/server/{agent-state-Bb3UUxQm.js → agent-state-BJhGIJZe.js} +421 -135
- package/server/agent-state-CM8iVw5B.js +3 -0
- package/server/{agent-state-service-BFbttwRA.js → agent-state-service-CiIuwzIs.js} +5 -5
- package/server/{agent-state-service-keg-x1bT.js → agent-state-service-CzHfoqKQ.js} +1 -1
- package/server/agents-DpCuoF65.js +3 -0
- package/server/{agents-CqQJW75N.js → agents-jXgqpHca.js} +8 -8
- package/server/archive-planning-BW4MKNI7.js +2 -0
- package/server/{archive-planning-BwEhu9Oq.js → archive-planning-CGkU6UeL.js} +20 -135
- package/server/{artifact-index-jobs-C6Lg2rKm.js → artifact-index-jobs-Ck4NRRkY.js} +3 -3
- package/server/{assemble-DyTp2gSB.js → assemble-CyvEBmmq.js} +28 -9
- package/server/{auto-spawn-consent-BDfe4qz0.js → auto-spawn-consent-Dc4mtM-B.js} +8 -7
- package/server/{backlog-auto-trigger-DuOGpdDW.js → backlog-auto-trigger-CCEpr4YT.js} +3 -3
- package/server/{behavior-Bitko0mD.js → behavior-BiCQzqyT.js} +3 -3
- package/server/{bridge-pool-patrol-DiHEd13O.js → bridge-pool-patrol-Ce8rNPym.js} +2 -2
- package/server/{briefing-freshness-CDJcmHHZ.js → briefing-freshness-e_OEYZEe.js} +2 -2
- package/server/{build-info-DTX8JwVP.js → build-info-BRw4QlYO.js} +3 -3
- package/server/build-info-Bj2vQEMh.js +2 -0
- package/server/{checkpoint-manager-CKg1tn34.js → checkpoint-manager-CKr42Usw.js} +1 -1
- package/server/{checkpoint-manager-BlOOdzLF.js → checkpoint-manager-DOwRGFff.js} +26 -9
- package/server/checkpoint-worker.js +1 -1
- package/server/{checkpoints-DRALkfDS.js → checkpoints-Cb6CWT4S.js} +1 -1
- package/server/{checkpoints-BGfl0cHM.js → checkpoints-Cszp_0Np.js} +2 -2
- package/server/{claude-hooks-provision-B_tv3wzE.js → claude-hooks-provision-C5JHpxTS.js} +1 -1
- package/server/{claude-hooks-provision-BlGv6twJ.js → claude-hooks-provision-Cer2eFfj.js} +2 -2
- package/server/{claude-permissions-aHgDcZi5.js → claude-permissions-Bc5kjX1q.js} +2 -2
- package/server/{claude-settings-overlay-CYOvFE3A.js → claude-settings-overlay-C7rWsnya.js} +1 -1
- package/server/{claude-settings-overlay-T2LWLteV.js → claude-settings-overlay-m-VVZej1.js} +2 -2
- package/server/cli-BRuzUT_I.js +2 -0
- package/server/{cli-Do8UpLoI.js → cli-BmczsfD6.js} +11 -11
- package/server/{cliproxy-CX6jHRDP.js → cliproxy-BpYpkogS.js} +52 -17
- package/server/cliproxy-_yUU0HRY.js +3 -0
- package/server/{close-issue-J0_eWYT1.js → close-issue-CxvRD0UI.js} +5 -5
- package/server/{closed-issue-reaper-bFppuk6F.js → closed-issue-reaper-nMLRi5de.js} +13 -12
- package/server/{closed-issue-reaper-Cl2h9AfT.js → closed-issue-reaper-omOcUDBl.js} +1 -1
- package/server/{codex-icapA4om.js → codex-DZhFfcWu.js} +1 -1
- package/server/{codex-OOea7lXs.js → codex-KaSKE-R3.js} +16 -10
- package/server/{compaction-continuation-D5voR1ME.js → compaction-continuation-Bjfi70G-.js} +3 -3
- package/server/{config-Cjleh3_U.js → config-CH1AqqIQ.js} +1 -1
- package/server/{config-DC75T4Mr.js → config-Doq_tF-f.js} +2 -2
- package/server/{config-tucKBCCc.js → config-ZGjvuR6J.js} +2 -2
- package/server/{config-yaml-BwOEANMr.js → config-yaml-D9nfpEx1.js} +33 -8
- package/server/{conflict-gate-DlpWCMd7.js → conflict-gate-D4XCtrm2.js} +1 -1
- package/server/{conflict-gate-D2L1kZeL.js → conflict-gate-DcUTY4Gb.js} +4 -4
- package/server/{context-layers-CSPGc2Hb.js → context-layers-BBTKP-Y4.js} +3 -3
- package/server/context-layers-BGj2Y9l3.js +4 -0
- package/server/{continue-U3Af0jUq.js → continue-i7Revg8D.js} +3 -3
- package/server/{control-settings-5k6ixdFW.js → control-settings-BMoDHY1G.js} +6 -6
- package/server/{conversation-compaction-CSpVpxN6.js → conversation-compaction-D4VOmF7p.js} +8 -8
- package/server/{conversation-compaction-Ciit9O6k.js → conversation-compaction-DzIjYMfg.js} +1 -1
- package/server/{conversation-service-BxrB5lUT.js → conversation-service-CzZUJFEx.js} +1 -1
- package/server/{conversation-service-BteE4ELK.js → conversation-service-tQCIbBVZ.js} +6 -6
- package/server/{conversations-DhwxsOru.js → conversations-C75EFFjf.js} +12 -7
- package/server/conversations-bFDaD5YN.js +3 -0
- package/server/{cost-Bnf9NUC5.js → cost-BCWEkvro.js} +3 -3
- package/server/{cost-CQKI6OCu.js → cost-CiIwxH1D.js} +2 -2
- package/server/{cost-sync-B-ADeXKY.js → cost-sync-DOkdE_yB.js} +3 -3
- package/server/{dag-DI9LaK_q.js → dag-BPc74hwj.js} +6 -19
- package/server/{dangerous-git-ops-akhA3iyF.js → dangerous-git-ops-By9iguTP.js} +1 -1
- package/server/dashboard-db-worker.js +7 -7
- package/server/{deacon-TPYssFYt.js → deacon-B24dNzr8.js} +1774 -171
- package/server/deacon-CzSZMtb-.js +4 -0
- package/server/{deacon-canonical-state-DFYymrDw.js → deacon-canonical-state-CkvxRPck.js} +3 -3
- package/server/{deacon-event-client-Te5v10-b.js → deacon-event-client-BYIQBu0T.js} +1 -1
- package/server/{deacon-event-client-BKOL4AcL.js → deacon-event-client-Do6Z2gKl.js} +2 -2
- package/server/{deacon-nudge-log-BtlTWgWu.js → deacon-nudge-log-CzM9JA9t.js} +1 -1
- package/server/{deacon-pending-lifecycle-DVHjOLje.js → deacon-pending-lifecycle-BObEdT-L.js} +3 -3
- package/server/deacon.js +11 -11
- package/server/dead-end-trip-6V_CwveT.js +2 -0
- package/server/{dead-end-trip-P0IF1O0E.js → dead-end-trip-CnVmjnya.js} +3 -3
- package/server/delivery-gyce0vQ7.js +3 -0
- package/server/{deploy-patrol-BXjlvoV3.js → deploy-patrol-CEwwEYDM.js} +8 -8
- package/server/deploy-queue-CjLErpgw.js +2 -0
- package/server/{deploy-queue-o7shYg1j.js → deploy-queue-r96ojDI3.js} +2 -2
- package/server/{deploy-window-CNT6fOff.js → deploy-window-D_3hhfxt.js} +4 -4
- package/server/{deploy-window-BMk5_oX6.js → deploy-window-DeJK8mTK.js} +1 -1
- package/server/{dev-supervisor-SR1CLOAK.js → dev-supervisor-DZWwpENk.js} +2 -2
- package/server/{devcontainer-renderer-enMmNDFa.js → devcontainer-renderer-d-9dCV_2.js} +3 -3
- package/server/{dist-CPTO_zMR.js → dist-DsLAsFSh.js} +1 -1
- package/server/dist-fCA6y2bH.js +3 -0
- package/server/{docker-B7qUZptz.js → docker-B2mUBzGk.js} +3 -3
- package/server/{docker-KR3zSFKY.js → docker-CRPHBylA.js} +1 -1
- package/server/{dod-gK835UMf.js → dod-DWtilRLx.js} +1 -1
- package/server/{done-preflight-CksRvh49.js → done-preflight-BDVdWed5.js} +1 -1
- package/server/{done-preflight-Bk8aExAL.js → done-preflight-D4ukUf-S.js} +5 -5
- package/server/{driver-CmsY2RLl.js → driver-BtcFz-qu.js} +14 -3
- package/server/{durable-review-pipeline-DgYHucN2.js → durable-review-pipeline-B3OS2_He.js} +11 -2
- package/server/durable-review-pipeline-CaCbEJSt.js +3 -0
- package/server/{ensure-devcontainer-ojerEqQg.js → ensure-devcontainer-BUeBRjmm.js} +4 -4
- package/server/{ensure-devcontainer-BQ4YizSH.js → ensure-devcontainer-rGSh0JHK.js} +1 -1
- package/server/{esm-shims-1htPASWs.js → esm-shims-oAaKIa-a.js} +1 -1
- package/server/{event-store-D7qcJXuZ.js → event-store-BCSgMubf.js} +5 -5
- package/server/{event-store-BgEjNsvk.js → event-store-Db4w4YIY.js} +1 -1
- package/server/{event-store-provider-BKvk2rDj.js → event-store-provider-DlSQND3V.js} +1 -1
- package/server/{events-BIKGJZOT.js → events-B6zioJA_.js} +3 -3
- package/server/{dist-src-BM9eudEd.js → factory-BrdqXBeK.js} +714 -2
- package/server/{feature-registry-storage-ewNSIVsQ.js → feature-registry-storage-zh3ZXW6f.js} +3 -3
- package/server/{features-CGopJXdU.js → features-BGntOWdy.js} +2 -2
- package/server/{feedback-stuck-retirement-B8-fX7NA.js → feedback-stuck-retirement-DpA5u1kt.js} +2 -2
- package/server/{feedback-target-Ci6N5p4G.js → feedback-target-D7GxdUYG.js} +10 -10
- package/server/{feedback-target-CkyLYohm.js → feedback-target-Ddqk93NF.js} +1 -1
- package/server/{feedback-writer-D4ULO4qG.js → feedback-writer-C1gCLFmp.js} +5 -5
- package/server/{feedback-writer-DfuVjvH0.js → feedback-writer-CH2846DP.js} +1 -1
- package/server/{flywheel-C7yek87O.js → flywheel-CjW2L7BS.js} +79 -29
- package/server/{flywheel-DXI_WITn.js → flywheel-HJt7QdWP.js} +1 -1
- package/server/{flywheel-merge-order-C5m5bYBc.js → flywheel-merge-order-4fNRN2F2.js} +1 -1
- package/server/{flywheel-merge-order-CXfU4M6l.js → flywheel-merge-order-D_yyAlND.js} +7 -7
- package/server/{flywheel-BwYPDlhK.js → flywheel-v1cCOBx-.js} +14 -14
- package/server/{forge-DYX9sKzG.js → forge-RVTCK_5X.js} +2 -2
- package/server/forge-bvak6vXJ.js +2 -0
- package/server/{from-DAdMxC29.js → from-BnLgKYvw.js} +1 -1
- package/server/{fs-lock-cw25uO_E.js → fs-lock-C7J-ugIf.js} +2 -2
- package/server/{fts-operations-D_rzLxX5.js → fts-operations-CU0B5WUx.js} +3 -3
- package/server/git-info-BSrI9owC.js +148 -0
- package/server/{git-utils-Y0zG25ez.js → git-utils-CsKV0Dis.js} +1 -1
- package/server/{git-utils-DV4B9TRl.js → git-utils-DW8-jIUJ.js} +4 -4
- package/server/{github-app-4UX8VIr8.js → github-app-7ywLhuZO.js} +2 -2
- package/server/{github-app-C33lDk9Z.js → github-app-Oi5hdn1n.js} +1 -1
- package/server/{github-client-nPj5ckZO.js → github-client-Cy0fSj1a.js} +1 -1
- package/server/{github-client-DkJVR908.js → github-client-DAbuXLuk.js} +3 -3
- package/server/{github-pr-lookup-C9Vokb0W.js → github-pr-lookup-Dhh3ec1V.js} +2 -2
- package/server/{harness-binary-BgXYDo2Z.js → harness-binary-tMmgJfC1.js} +2 -2
- package/server/{harness-resolve-1NZcVx7n.js → harness-resolve-DusNpVEe.js} +4 -4
- package/server/{health-events-jMfxrElt.js → health-events-BYDZ9n2i.js} +1 -1
- package/server/{health-events-DlX_FVAB.js → health-events-DNw9Mzw9.js} +2 -2
- package/server/{hooks-W3REcb3h.js → hooks-B4wj32l2.js} +1 -1
- package/server/{hooks-NQ19vvlB.js → hooks-BjBjxqNh.js} +2 -2
- package/server/{hume-BFkid2PO.js → hume-BP9YbxaE.js} +2 -2
- package/server/hume-TYTb6fDU.js +3 -0
- package/server/{identity-Bwh6VGeL.js → identity-C23uY8dZ.js} +3 -3
- package/server/{idle-stack-reaper-BeU_KxWx.js → idle-stack-reaper-BSxb1bln.js} +4 -4
- package/server/{idle-stack-reaper-CHtCNpvd.js → idle-stack-reaper-Bw0rU9GC.js} +1 -1
- package/server/{in-flight-guard-pcwXKLGz.js → in-flight-guard-DuxabAHT.js} +1 -1
- package/server/{infra-KTp9KV9u.js → infra-CHIvOb9q.js} +30 -7
- package/server/{injection-67YyU6SC.js → injection-BYUt8ml1.js} +8 -8
- package/server/{injection-BxbZKPDh.js → injection-BviePcm3.js} +1 -1
- package/server/inspect-agent-JFEaYTRa.js +2 -0
- package/server/{inspect-agent-VHSihlb7.js → inspect-agent-sV_19NxZ.js} +12 -12
- package/server/{internal-token-B-z-sGBH.js → internal-token-BOtIRJU7.js} +1 -1
- package/server/{internal-token-zY75jrRJ.js → internal-token-DoVzb4b7.js} +2 -2
- package/server/{io-DfvO2xyh.js → io-DKrWd3gX.js} +5 -5
- package/server/{issue-closed-dvEWKO7Q.js → issue-closed-6RQsAjDX.js} +7 -7
- package/server/{issue-lifecycle-3N8XF7lP.js → issue-lifecycle-D9nLErvS.js} +206 -29
- package/server/{issue-lifecycle-BI6jAfp8.js → issue-lifecycle-DOPVv7xz.js} +1 -1
- package/server/{issue-service-singleton-BN_2MXp4.js → issue-service-singleton-B2xy-IS9.js} +124 -11
- package/server/{issue-service-singleton-CL6hESX2.js → issue-service-singleton-CvgNAWqK.js} +1 -1
- package/server/issue-title-fallback-DTSCQVu0.js +120 -0
- package/server/{issues-CkvUoAnq.js → issues-e_Ck1Ln2.js} +2 -2
- package/server/{jsonl-parser-CrEb2PWr.js → jsonl-parser-DqxVCZ1k.js} +3 -3
- package/server/jsonl-resolver-07OS3qOr.js +324 -0
- package/server/{kimi-code-C26gmGxM.js → kimi-code-BjtAHIz1.js} +14 -12
- package/server/{kimi-code-DoMoGqIu.js → kimi-code-vtXl2DR5.js} +1 -1
- package/server/{kimi-parser-Dmhy3UlR.js → kimi-parser-B1lgy2Vt.js} +2 -2
- package/server/{label-cleanup-X2lWfghH.js → label-cleanup-D2zUMasf.js} +3 -3
- package/server/{lifecycle-Bg44O-9x.js → lifecycle-0NOEzomy.js} +2 -2
- package/server/{lifecycle-B0rL38D3.js → lifecycle-DaCovZwn.js} +6 -6
- package/server/{lifecycle-io-CCBpRv5m.js → lifecycle-io-6WL46dsB.js} +5 -5
- package/server/{lifecycle-io-DQDU0apV.js → lifecycle-io-BBMTaP7S.js} +1 -1
- package/server/{linear-client-B0cIkTs4.js → linear-client-7fQThJTc.js} +3 -3
- package/server/{linear-client-6V2E-DSa.js → linear-client-BTGApNLo.js} +1 -1
- package/server/{linear-mcp-auth-LCo9AWUd.js → linear-mcp-auth-B8pYRsiU.js} +1 -1
- package/server/{linear-mcp-auth-Dsu9Io9r.js → linear-mcp-auth-Nk5s3L9M.js} +5 -5
- package/server/memory-fts-worker.js +1 -1
- package/server/{memory-governor-A4O6vI9d.js → memory-governor-Cqvbusr4.js} +14 -14
- package/server/{memory-pressure-patrol-BWlWywmA.js → memory-pressure-patrol-DPb8foam.js} +5 -5
- package/server/{merge-BGWcBxku.js → merge-BB_bjJ9a.js} +1 -1
- package/server/{merge-vz80RvSE.js → merge-FZ78_cEz.js} +3 -3
- package/server/{merge-agent-GWhmnxFk.js → merge-agent-B3jRrlS1.js} +37 -33
- package/server/{merge-agent-BRSz26Oh.js → merge-agent-BuoC_PRZ.js} +2 -2
- package/server/{merge-batch-CFMEtTxv.js → merge-batch-B8bVjFWS.js} +1 -1
- package/server/{merge-completeness-CP347umA.js → merge-completeness-DQt7Qa7i.js} +4 -4
- package/server/{merge-completeness-7ajHAIR-.js → merge-completeness-DkdabVch.js} +1 -1
- package/server/merge-ops-DabXHp2i.js +2 -0
- package/server/merge-rebase-CXq0qsgR.js +2 -0
- package/server/{merge-rebase-C5htyEEH.js → merge-rebase-qq40s91P.js} +2 -2
- package/server/{merge-set-DsGW8fmc.js → merge-set-BTNYvxM3.js} +1 -1
- package/server/{merge-set-eiE2nC6C.js → merge-set-BmRRflt0.js} +4 -4
- package/server/{merge-sync-CM2-myXu.js → merge-sync-0m2Q087q.js} +1 -1
- package/server/{merge-sync-Ct0-cxMX.js → merge-sync-CJpOa0cZ.js} +2 -2
- package/server/{merge-train-deps-LXHGK61n.js → merge-train-deps-CH5Mr3vN.js} +4 -4
- package/server/{merge-train-BOu3fN7O.js → merge-train-iwKqjtCF.js} +4 -4
- package/server/{merge-verification-BRp08IzI.js → merge-verification-JJc5GC2t.js} +6 -6
- package/server/{merged-docker-cleanup-worker-CwldDjHV.js → merged-docker-cleanup-worker-BOqWA373.js} +4 -4
- package/server/{merged-docker-cleanup-worker-C8eGn78a.js → merged-docker-cleanup-worker-CrhTdxZV.js} +1 -1
- package/server/messaging-nuwStbdQ.js +3 -0
- package/server/{multipart-parser-OAuW7824.js → multipart-parser-DxuW_rZV.js} +2 -2
- package/server/{no-resume-mode-MWI6pnrK.js → no-resume-mode-xuYLFhLw.js} +1 -1
- package/server/node_modules/.package-lock.json +11 -11
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/AGENTS.md +14 -0
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/CLAUDE.md +14 -0
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/README.md +10 -3
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/40_sql/10_basics.ts +175 -0
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/40_sql/index.md +6 -0
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/10_basics.ts +3 -1
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/20_testing.ts +100 -0
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/fixtures/api/Users.ts +30 -14
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/fixtures/domain/User.ts +15 -6
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/fixtures/server/Authorization.ts +11 -10
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/fixtures/server/Users/http.ts +41 -32
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/fixtures/server/Users.ts +141 -20
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/70_cli/10_basics.ts +27 -3
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeChildProcessSpawner.d.ts.map +1 -1
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeChildProcessSpawner.js +10 -9
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeChildProcessSpawner.js.map +1 -1
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeSocketServer.js +4 -4
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeSocketServer.js.map +1 -1
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeStream.d.ts.map +1 -1
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeStream.js +10 -4
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeStream.js.map +1 -1
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/internal/nodeChildProcessSpawner.d.ts +4 -0
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/internal/nodeChildProcessSpawner.d.ts.map +1 -0
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/internal/nodeChildProcessSpawner.js +10 -0
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/internal/nodeChildProcessSpawner.js.map +1 -0
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/package.json +4 -4
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/src/NodeChildProcessSpawner.ts +16 -11
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/src/NodeSocketServer.ts +4 -4
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/src/NodeStream.ts +10 -4
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/src/internal/nodeChildProcessSpawner.ts +16 -0
- package/server/node_modules/ansi-regex/index.js +3 -2
- package/server/node_modules/ansi-regex/package.json +1 -1
- package/server/node_modules/gaxios/build/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/server/node_modules/gaxios/build/esm/tsconfig.tsbuildinfo +1 -1
- package/server/node_modules/gaxios/package.json +3 -3
- package/server/{orphan-proposed-reconciler-cV3URUqk.js → orphan-proposed-reconciler-Dmk0kO_p.js} +24 -23
- package/server/{orphan-proposed-reconciler-BAE5AZ_e.js → orphan-proposed-reconciler-gf4TxfZb.js} +2 -2
- package/server/package-lock.json +12 -12
- package/server/package.json +1 -1
- package/server/{pan-dir-DDd91kMb.js → pan-dir-BMda7tQj.js} +5 -5
- package/server/{deacon-merge-BOGFEV8_.js → parked-residue-BiHb8cD7.js} +150 -35
- package/server/{paths-CRLnDgcI.js → paths-DEe9j-kw.js} +2 -2
- package/server/{pending-lifecycle-claim-CYgMiDAP.js → pending-lifecycle-claim-J5uIIJPu.js} +2 -2
- package/server/{pickup-BjJsSX12.js → pickup-D1UbSDPd.js} +1 -1
- package/server/{pipeline-agent-reader-BLc43dVJ.js → pipeline-agent-reader-D-6okryb.js} +5 -5
- package/server/{pipeline-membership-5qlRz5Qg.js → pipeline-membership-CCbgBzNC.js} +1 -1
- package/server/{pipeline-membership-BHZp_ShY.js → pipeline-membership-PGX3Pe8V.js} +1 -1
- package/server/{pipeline-membership-gather-CGFY1v-y.js → pipeline-membership-gather-BK4dzh0X.js} +17 -12
- package/server/{pipeline-membership-gather-WhRc1yke.js → pipeline-membership-gather-BRhU7XPx.js} +1 -1
- package/server/{pipeline-notifier-BmsLWM_2.js → pipeline-notifier-BNAV9kpa.js} +2 -2
- package/server/{pipeline-notifier-C4fZ2ito.js → pipeline-notifier-DvHLaXKb.js} +1 -1
- package/server/{post-merge-lifecycle-worker-KK1RTKRE.js → post-merge-lifecycle-worker-DAWgzXQA.js} +3 -3
- package/server/{post-merge-state-_Lj3LDLh.js → post-merge-state-DC2_0t12.js} +4 -4
- package/server/prd-locations-BbAvqQmT.js +124 -0
- package/server/{project-pipelines-CCkebHOu.js → project-pipelines-By_5WcT4.js} +2 -2
- package/server/{project-repos-B4MK48j4.js → project-repos--QeCg7yQ.js} +29 -3
- package/server/project-repos-3bI6t4fO.js +3 -0
- package/server/project-resource-refresh-queue-BaZC79S3.js +2 -0
- package/server/project-resource-refresh-queue-x-K9mvpP.js +865 -0
- package/server/{projects-DvPEAP18.js → projects-LftaVK99.js} +1 -1
- package/server/{prompts-BiS5I2tZ.js → prompts-BotGu-6W.js} +2 -2
- package/server/{providers-DrfK0Ip8.js → providers-BL1I66sM.js} +7 -7
- package/server/providers-Dqgz3MY5.js +3 -0
- package/server/public/assets/{chunk-BO2N2NFS-GtVe_o56.js → chunk-BO2N2NFS-D5Fz5jND.js} +4 -4
- package/server/public/assets/{diagram-OG6HWLK6-BvhcYYHc.js → diagram-OG6HWLK6-Eux0gWFq.js} +1 -1
- package/server/public/assets/{dist-D0ryefak.js → dist-C3zShwhA.js} +1 -1
- package/server/public/assets/{dist-CSmUXazd.js → dist-D-JX_u7m.js} +3 -3
- package/server/public/assets/{ganttDiagram-6RSMTGT7-BXA51DzM.js → ganttDiagram-6RSMTGT7-UH3aweia.js} +1 -1
- package/server/public/assets/{highlighted-body-OFNGDK62-mlV4EpWt.js → highlighted-body-OFNGDK62-ccIQ-WXS.js} +1 -1
- package/server/public/assets/index-2wV4ipy_.css +1 -0
- package/server/public/assets/index-BTVcdPve.js +860 -0
- package/server/public/assets/{linear-BPE7oswm.js → linear-Cnnu4YQy.js} +1 -1
- package/server/public/assets/mermaid-GHXKKRXX-Bjto8iJh.js +1 -0
- package/server/public/assets/{pieDiagram-4H26LBE5-BguGGV3S.js → pieDiagram-4H26LBE5-BD8-Tye6.js} +1 -1
- package/server/public/assets/{prod-aKDYUrXQ.js → prod-Ca6aKMts.js} +4 -4
- package/server/public/assets/{quadrantDiagram-W4KKPZXB-Bx3i4B6H.js → quadrantDiagram-W4KKPZXB-BmSrVyFD.js} +1 -1
- package/server/public/assets/{sankeyDiagram-5OEKKPKP-B5vuLjA4.js → sankeyDiagram-5OEKKPKP-CEGy8Das.js} +1 -1
- package/server/public/assets/{xychartDiagram-2RQKCTM6-HPlpkqsN.js → xychartDiagram-2RQKCTM6-VnQ8iY8s.js} +1 -1
- package/server/public/index.html +2 -2
- package/server/{pull-requests-BcHIsFJv.js → pull-requests-Cp_FDT8-.js} +3 -3
- package/server/pull-requests-jVGcVq5G.js +2 -0
- package/server/rally-CxhVgIQ6.js +3 -0
- package/server/{rally-api-ShZ4kvn0.js → rally-api-CqAIJ8RX.js} +2 -2
- package/server/{rally-api-u_vkr5c_.js → rally-api-Ij1Zt0NI.js} +1 -1
- package/server/{rally-B1OMtzch.js → rally-bQpBzUNf.js} +3 -3
- package/server/{rally-client-DgZvUZqX.js → rally-client-CN5vh4Ac.js} +1 -1
- package/server/{rally-client-D6Feq1Ka.js → rally-client-qKbCNRVW.js} +5 -5
- package/server/{reap-terminal-sessions-CRfiXLY0.js → reap-terminal-sessions-BaDSNR-k.js} +2 -2
- package/server/{reap-terminal-sessions-D7f3zSE9.js → reap-terminal-sessions-DgEIKMhH.js} +2 -2
- package/server/{rebuild-stack-DKxOnkpE.js → rebuild-stack-BNOMVh7C.js} +7 -7
- package/server/{rebuild-stack-CCwKHZb6.js → rebuild-stack-DrMyA_mA.js} +2 -2
- package/server/{reconstruct-cache-BP8UIKt7.js → reconstruct-cache-mxIYCnqs.js} +7 -7
- package/server/{record-By-wp6pg.js → record-Ug18Cp4V.js} +1 -1
- package/server/{record-update-ByGtIlUK.js → record-update-WyhsREoH.js} +1 -1
- package/server/{record-update-D23jPU6b.js → record-update-dBGxL9OC.js} +8 -6
- package/server/{recovery-trip-C4dTl8DO.js → recovery-trip-BKLrL6NX.js} +43 -10
- package/server/{recovery-trip-qloOYOFz.js → recovery-trip-wFAixKsg.js} +1 -1
- package/server/{release-engine-Crc0Tjx-.js → release-engine-D9gaCBn9.js} +5 -5
- package/server/{release-set-DDXwbIK7.js → release-set-DPHHzEGx.js} +3 -3
- package/server/{remote-CBpLi4Yy.js → remote-BU6ONLpv.js} +3 -3
- package/server/{remote-oEMfXlwT.js → remote-BUEeUic6.js} +3 -3
- package/server/{remote-agents-DQVGZVQ9.js → remote-agents-BVtASiOF.js} +1 -1
- package/server/{remote-agents-Bgtc2nOO.js → remote-agents-CSaTLi3u.js} +6 -6
- package/server/{remote-completion-DxUJ5HKR.js → remote-completion-CBV3b9TI.js} +13 -13
- package/server/{resolver-C8rooxoz.js → resolver-DvSMXty7.js} +31 -8
- package/server/{resolver-CuAULbLs.js → resolver-gxv97jsQ.js} +2 -2
- package/server/resume-DvHuF-bm.js +3 -0
- package/server/review-agent-DgkUPRx0.js +3 -0
- package/server/{review-agent-7C2w5CzU.js → review-agent-esZ0QXdY.js} +43 -55
- package/server/{review-artifacts-BJeEfm2r.js → review-artifacts-DGGEobLp.js} +6 -6
- package/server/{review-convoy-liveness-DfF9eXjI.js → review-convoy-liveness-DmO8dIBH.js} +20 -11
- package/server/{review-run-recovery-7BKt2Es0.js → review-run-recovery-Ct0q7FkE.js} +3 -3
- package/server/{review-run-recovery-ZjuDTNhZ.js → review-run-recovery-DHiiw7d8.js} +1 -1
- package/server/{review-status-CUnjjOUu.js → review-status-C_kQeeX0.js} +1 -1
- package/server/{review-status-emit-Cg4tOb8U.js → review-status-emit-BZz1Y_22.js} +3 -3
- package/server/{review-status-enrichment-D-rQshu6.js → review-status-enrichment-BWH0XW_m.js} +3 -3
- package/server/{review-status-source-DSn0glLa.js → review-status-source-D2PCWS6E.js} +1 -1
- package/server/{review-status-source-Ct912fv_.js → review-status-source-Jq0BXmn3.js} +1 -1
- package/server/{review-status-sync-B7V_Gg51.js → review-status-sync-2C9lk85r.js} +2 -2
- package/server/{review-status-sync-YthpOH_q.js → review-status-sync-Bq00Loey.js} +1 -1
- package/server/{review-status-DBnR5t4z.js → review-status-yOGD2MuK.js} +86 -27
- package/server/{review-verdict-feedback-DqXTuJk8.js → review-verdict-feedback-Brjaxoda.js} +1 -1
- package/server/{review-verdict-feedback-C-dBon_-.js → review-verdict-feedback-CE_tr2iQ.js} +8 -8
- package/server/{review-verdict-writer-jldSh3Bm.js → review-verdict-writer-CD-4kDVx.js} +1 -1
- package/server/{review-verdict-writer-CKaJWp75.js → review-verdict-writer-Ca2V7QSY.js} +7 -7
- package/server/{rollup-DZwH4CLs.js → rollup--g9ik1XQ.js} +1 -1
- package/server/{rollup-QCwYcBdP.js → rollup-B6g9Nr6L.js} +8 -8
- package/server/{scanner-2aHeLC3W.js → scanner-YxIv-fG1.js} +8 -8
- package/server/{search-DwHYaj66.js → search-DqMN4__-.js} +2 -2
- package/server/{secret-redaction-B5G1xZ3k.js → secret-redaction-DLZ-VqHq.js} +1 -1
- package/server/{sequence-io-POKWdusG.js → sequence-io--b3_PsWq.js} +4 -4
- package/server/{sequencer-agent-DS00KHVm.js → sequencer-agent-CqouKVZG.js} +6 -6
- package/server/server.js +1115 -1269
- package/server/{service-BLb_CyPL.js → service-CEp-3iow.js} +64 -63
- package/server/{session-fork-DcTzVwex.js → session-fork-GtoeCh2H.js} +2 -2
- package/server/{settings-Clw8UVNs.js → settings-CLQcdkoD.js} +2 -2
- package/server/{settings-B9-H2K_E.js → settings-Ch2pCVtt.js} +3 -3
- package/server/settings-DhtPDmmI.js +2 -0
- package/server/{shadow-engineering-C6oO_PiR.js → shadow-engineering-BxiFrIKv.js} +3 -3
- package/server/{shadow-state-CEGrrECe.js → shadow-state-CSA1vtxr.js} +2 -2
- package/server/{shadow-state-e7250VUx.js → shadow-state-nGhCNXT2.js} +1 -1
- package/server/{shadow-utils-xFk2Wusb.js → shadow-utils-7q5QDmMj.js} +2 -2
- package/server/{ship-log-7BnQHuKU.js → ship-log-ie0A_SqV.js} +1 -1
- package/server/{ship-record-CwUX6Afo.js → ship-record-BM3oVvnL.js} +7 -7
- package/server/{ship-record-BgUPnpT0.js → ship-record-DHWH1hLz.js} +1 -1
- package/server/{ship-status-Ce3_3edi.js → ship-status-BEkddXMT.js} +2 -2
- package/server/{smart-compaction-BmfIi3oL.js → smart-compaction-BkzjVpWL.js} +1 -1
- package/server/{smart-compaction-Dy0gw1VH.js → smart-compaction-D0TE1lBD.js} +7 -7
- package/server/{spawn-planning-session-nH3b4Drz.js → spawn-planning-session-CkGweSCC.js} +19 -19
- package/server/{spawn-planning-session-CfhxRJoY.js → spawn-planning-session-s406rw1N.js} +2 -2
- package/server/{specialist-completion-CC1XJbTx.js → specialist-completion-CTAjwH5j.js} +1 -1
- package/server/{specialist-context-cHwpcXSh.js → specialist-context-CKasRfYu.js} +5 -5
- package/server/{specialist-handoff-logger-GqnGSYoJ.js → specialist-handoff-logger-DrjrOmmn.js} +2 -2
- package/server/{specialist-logs-5OTnrV91.js → specialist-logs-Du6quZ0_.js} +3 -3
- package/server/{specialists-xXcJHAyg.js → specialists-B-4zyE4Y.js} +1 -1
- package/server/{specialists-8LcQi9Np.js → specialists-CuDWiNdB.js} +21 -272
- package/server/{specialists-DocAK-7A.js → specialists-b0dMMjWq.js} +148 -685
- package/server/specialists-registry-1y6Rt_F1.js +3 -0
- package/server/specialists-registry-BYjs04iK.js +277 -0
- package/server/specialists-x-kPMhrL.js +4 -0
- package/server/specs-IYsFlM-L.js +3 -0
- package/server/{src-DudQNYVw.js → src-CY2Wl8IX.js} +337 -6
- package/server/{src-C2TAxwki.js → src-CZsPs61V.js} +6 -6
- package/server/{src-DUVvEA8Q.js → src-DeQwpuh6.js} +3 -3
- package/server/{stack-health-DKT4ySnA.js → stack-health-BQFSJc0l.js} +3 -3
- package/server/{stack-health-CbyiYS9H.js → stack-health-ypIKtkbE.js} +1 -1
- package/server/{stale-task-claims-PzFee70R.js → stale-task-claims-C2e1zdMT.js} +5 -5
- package/server/{staleness-BjOAq9-d.js → staleness-CRDK6LFG.js} +1 -1
- package/server/{staleness-D8UTEXV5.js → staleness-Fzx_3_Hr.js} +1 -1
- package/server/{stall-sweeper-DOyIfeLR.js → stall-sweeper-QNk4h9m6.js} +8 -8
- package/server/{state-home-DhAZlk5k.js → state-home-DdG8erBI.js} +2 -2
- package/server/{state-mapping-BVSs84bO.js → state-mapping-D2yC81Vy.js} +1 -1
- package/server/{state-migrate-CJKEwpB0.js → state-migrate-C6H3jfHE.js} +6 -6
- package/server/{state-mirror-Do7pag7W.js → state-mirror-DF4Lfxm0.js} +3 -3
- package/server/stuck-remediation-BDa_tXgB.js +774 -0
- package/server/stuck-remediation-BVNd9txd.js +2 -0
- package/server/{substrate-bug-weights-service-BTNjHBnl.js → substrate-bug-weights-service-BbbCZEtJ.js} +3 -3
- package/server/{summary-fork-CZ88rhVx.js → summary-fork-BvcW6bq0.js} +113 -30
- package/server/{summary-fork-CvB7Oyq9.js → summary-fork-DIQmtOuV.js} +2 -2
- package/server/supervisor/{pane-composer-BaLLspSj.js → pane-composer-CoiVkGIt.js} +8 -1
- package/server/supervisor/{paths-D6XUcR_g.js → paths-DTGbtcaP.js} +8 -4
- package/server/supervisor/pty-supervisor.js +3 -3
- package/server/supervisor/{pty-token-DjjHxoCq.js → pty-token-GVqnvU3U.js} +2 -2
- package/server/{supervisor-D4v0WfiQ.js → supervisor-D3jC2c7A.js} +4 -4
- package/server/supervisor-v0cYN2Vp.js +2 -0
- package/server/{swarm-readiness-D8R-LWX5.js → swarm-readiness-CMWAQuWM.js} +3 -3
- package/server/{synthesis-verdict-B6wvLGcA.js → synthesis-verdict-C-pJOPsn.js} +1 -1
- package/server/{synthesis-verdict-N5Z11pg7.js → synthesis-verdict-DVlrLF9A.js} +2 -2
- package/server/{system-prerequisites-BbGZ_WHF.js → system-prerequisites-QKtIYXI2.js} +2 -2
- package/server/{teardown-workspace-CYend-KY.js → teardown-workspace-cJea1OLo.js} +16 -16
- package/server/{test-agent-queue-BUtWhNcc.js → test-agent-queue-C5DI_gWX.js} +6 -6
- package/server/{test-verdict-BWm3hgDj.js → test-verdict-C7kmd2_Y.js} +1 -1
- package/server/{test-verdict-BWtRmdiR.js → test-verdict-DUbDHqeD.js} +2 -2
- package/server/{tldr-daemon-CneJ24eL.js → tldr-daemon-BNQHwblU.js} +1 -1
- package/server/{tldr-daemon-CMVBT4kT.js → tldr-daemon-CO08YlfQ.js} +2 -2
- package/server/tmux-B8zsqD_6.js +4 -0
- package/server/{tmux-BqXzRuaH.js → tmux-DWEc4Ld9.js} +91 -19
- package/server/{token-CO3INKbh.js → token-Bez-qCB2.js} +2 -2
- package/server/{token-util-DyJJyX_B.js → token-util-Crcay9j_.js} +1 -1
- package/server/token-util-DfUS3Lpp.js +3 -0
- package/server/{tracker-config-DVzhaUxO.js → tracker-config-CJzPhSHv.js} +2 -2
- package/server/{tracker-utils-xnVJVrrO.js → tracker-utils-DJAOAuMN.js} +2 -2
- package/server/{traefik-connect-A5k54mCv.js → traefik-connect-D3H5I6b9.js} +1 -1
- package/server/{tunnel-DauSR-rs.js → tunnel-BSdKnW0U.js} +1 -1
- package/server/{tunnel-CwOnS-PB.js → tunnel-Cr3ctqxp.js} +3 -3
- package/server/{typed-errors-B-gfU2RB.js → typed-errors-CZ3GFBvo.js} +1 -1
- package/server/{typed-errors-DzC4zXbI.js → typed-errors-DXqf3RnP.js} +1 -1
- package/server/{types-DjpLVpsj.js → types-fzBp9cYi.js} +1 -1
- package/server/{types-DbxY2QB6.js → types-pLpbsNto.js} +1 -1
- package/server/{uat-failure-feedback-BVqsWlrr.js → uat-failure-feedback-IZQ-J8jt.js} +5 -5
- package/server/{uat-promote-verification-DmG097QS.js → uat-promote-verification-DXApKcc2.js} +5 -5
- package/server/{uat-train-COSy-vEX.js → uat-train-CycEzpbE.js} +1 -1
- package/server/{uat-train-DVUNW03P.js → uat-train-IIZlz7r3.js} +0 -0
- package/server/{validate-Dvv83iBx.js → validate-Ur4xH5bN.js} +3 -3
- package/server/{validation-BdCjzWLN.js → validation-CHovCoTT.js} +1 -1
- package/server/{validation-DlHafKzu.js → validation-Dr6V4PXx.js} +9 -6
- package/server/{verification-artifact-CaSbxUVg.js → verification-artifact-D3viYe_t.js} +1 -1
- package/server/{verification-artifact-0Zku8N-W.js → verification-artifact-k5Ftpg0c.js} +1 -1
- package/server/{verification-runner-C6wdZda2.js → verification-runner-BuqGwm2t.js} +1 -1
- package/server/{verification-runner-DwP2fUEF.js → verification-runner-Dl13mmsI.js} +53 -27
- package/server/{vtt-parser-luerJpYT.js → vtt-parser-BSnAB-Og.js} +1 -1
- package/server/work-agent-prompt-CJJ4tXci.js +3 -0
- package/server/{work-agent-prompt--9AWNYwZ.js → work-agent-prompt-CioeOuM4.js} +14 -14
- package/server/{work-agent-start-BNQO65W7.js → work-agent-start-B65Gqn9N.js} +2 -2
- package/server/{work-agent-start-DkzseQFl.js → work-agent-start-Ct1HVh6z.js} +1 -1
- package/server/{workflows-BYwR2aIN.js → workflows-AgFul1xc.js} +114 -41
- package/server/workflows-CfHm8lVd.js +2 -0
- package/server/{workspace-B-QJa3Ps.js → workspace-Cu3XlMXt.js} +1 -1
- package/server/{workspace-iTnTycOB.js → workspace-Cy4sDd3q.js} +3 -3
- package/server/{workspace-anchor-drift-DTt6h2Em.js → workspace-anchor-drift-BI0Hz6zI.js} +1 -1
- package/server/{workspace-anchor-drift-CHiGg8iu.js → workspace-anchor-drift-CMaqvizr.js} +4 -4
- package/server/{workspace-config-D0CavVtz.js → workspace-config-DRYDO7Zr.js} +1 -1
- package/server/{workspace-manager-W1OnbvU5.js → workspace-manager-CgovxDrO.js} +17 -17
- package/server/{workspace-manager-5BKPV6SY.js → workspace-manager-jfkKAEuO.js} +1 -1
- package/server/{workspace-metadata-tbbevEmP.js → workspace-metadata-BDqXzGGK.js} +1 -1
- package/server/{workspace-metadata-dJhXvZGQ.js → workspace-metadata-BNzODIv6.js} +2 -2
- package/server/{workspaces-BlpbOPZ7.js → workspaces-BJdPqx_J.js} +131 -127
- package/sync-sources/dev-skills/pan-style-guide/SKILL.md +90 -15
- package/sync-sources/hooks/linear-mcp-auth-hook +6 -1
- package/sync-sources/rules/handoff-isolate-cwd.md +4 -4
- package/sync-sources/rules/pan-handoff-focus-limit.md +12 -5
- package/sync-sources/rules/ste-writing.md +17 -0
- package/sync-sources/rules/work-agents-via-pan.md +2 -1
- package/sync-sources/rules/writing-style.md +3 -2
- package/sync-sources/skills/{skill-creator → claude-skill-creator}/SKILL.md +1 -1
- package/sync-sources/skills/{skill-creator → claude-skill-creator}/scripts/init_skill.py +1 -1
- package/sync-sources/skills/{skill-creator → claude-skill-creator}/scripts/package_skill.py +1 -1
- package/sync-sources/skills/pan-gauntlet-loop/SKILL.md +182 -0
- package/sync-sources/skills/pan-gauntlet-loop/assets/PROMPT.template.md +92 -0
- package/sync-sources/skills/pan-gauntlet-loop/assets/REFERENCE-BAR.template.md +53 -0
- package/sync-sources/skills/pan-gauntlet-loop/assets/STYLE.template.md +41 -0
- package/sync-sources/skills/pan-gauntlet-loop/assets/gauntlet-index.html +237 -0
- package/sync-sources/skills/pan-gauntlet-loop/references/domains.md +106 -0
- package/sync-sources/skills/pan-gauntlet-loop/references/lessons.md +60 -0
- package/sync-sources/skills/pan-handoff/SKILL.md +13 -6
- package/sync-sources/skills/pan-help/SKILL.md +1 -1
- package/sync-sources/skills/pan-peer-review/SKILL.md +3 -3
- package/sync-sources/skills/pan-restart/SKILL.md +6 -3
- package/sync-sources/skills/pan-start/SKILL.md +3 -0
- package/sync-sources/skills/pan-swarm/SKILL.md +32 -44
- package/sync-sources/skills/pan-sync/SKILL.md +1 -1
- package/server/activity-logger-BejO16Am.js +0 -3
- package/server/agent-state-DH_-Jkua.js +0 -3
- package/server/agents-megfmQHM.js +0 -3
- package/server/archive-planning-C-H9cM_J.js +0 -2
- package/server/build-info-PQlh_Rhb.js +0 -2
- package/server/cli-TaZspPHS.js +0 -2
- package/server/cliproxy-36ncAXlu.js +0 -3
- package/server/context-layers-CF6zHws4.js +0 -4
- package/server/conversations-AnGJ5rtX.js +0 -3
- package/server/deacon-BEH-IY0v.js +0 -5
- package/server/deacon-swarm-BHX-kR1b.js +0 -2
- package/server/deacon-swarm-BiLfNm_v.js +0 -1522
- package/server/dead-end-trip-BWpDg1Qd.js +0 -2
- package/server/delivery-cJM6zRjJ.js +0 -3
- package/server/deploy-queue-CmVBZEja.js +0 -2
- package/server/dist-VKBfkdi7.js +0 -3
- package/server/durable-review-pipeline-DgcVCYDL.js +0 -3
- package/server/factory-D4V2wd_V.js +0 -717
- package/server/forge-CrP1L3i6.js +0 -2
- package/server/hume-1ubD_6O7.js +0 -3
- package/server/inspect-agent-CfxERkNt.js +0 -2
- package/server/merge-ops-DtHx17Vd.js +0 -2
- package/server/merge-rebase-BvB4UuNS.js +0 -2
- package/server/project-repos-BJiShUsN.js +0 -3
- package/server/providers-CStNGwze.js +0 -3
- package/server/public/assets/index-BFEwfmqX.js +0 -860
- package/server/public/assets/index-_USwyTAT.css +0 -1
- package/server/public/assets/mermaid-GHXKKRXX-Dsln95SK.js +0 -1
- package/server/pull-requests-C1Cqp2yo.js +0 -2
- package/server/rally-CjayjUIl.js +0 -3
- package/server/resume-D7JuMCRQ.js +0 -3
- package/server/review-agent-BUNTVJK2.js +0 -2
- package/server/settings-DBWB1gsG.js +0 -2
- package/server/specialists-D8gsOCwh.js +0 -3
- package/server/specs-BqkrRnU9.js +0 -3
- package/server/stuck-remediation-Di5JYkoo.js +0 -1164
- package/server/stuck-remediation-TNM1VhZb.js +0 -2
- package/server/supervisor-DX8VsPnb.js +0 -2
- package/server/tmux-CqNapnrr.js +0 -4
- package/server/token-util-Bu8bPF9f.js +0 -3
- package/server/workflows-Cf4LAnhg.js +0 -2
|
@@ -1,51 +1,51 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Ct as
|
|
3
|
-
import { h as loadConfigSync$1, p as init_config } from "./config-
|
|
4
|
-
import {
|
|
5
|
-
import { d as getOverdeckDatabaseSync, f as init_infra } from "./infra-
|
|
6
|
-
import {
|
|
7
|
-
import { d as resolveIssueWorkspaceSyncTarget, o as init_resolver } from "./resolver-
|
|
8
|
-
import { a as init_event_store, n as getEventStore } from "./event-store-
|
|
9
|
-
import {
|
|
10
|
-
import { o as getPricingSync, s as init_cost, t as calculateCostSync } from "./cost-
|
|
11
|
-
import {
|
|
12
|
-
import { c as CostDoorLive, d as CostWriter } from "./service-
|
|
13
|
-
import { o as getInternalTokenSync, s as init_internal_token, t as INTERNAL_TOKEN_HEADER } from "./internal-token-
|
|
14
|
-
import {
|
|
15
|
-
import { D as normalizeModelOverrideSync, E as init_model_validation } from "./auto-spawn-consent-
|
|
16
|
-
import { c as init_stack_health, n as collectDockerContainerLifecycleSnapshot, o as getWorkspaceStackHealth, r as composeProjectNameForWorkspace } from "./stack-health-
|
|
17
|
-
import { a as PAN_DIRNAME, i as PAN_CONTINUE_FILENAME, m as init_types } from "./types-
|
|
18
|
-
import { A as init_xbrief_index, M as readXBriefDocument, _ as serializeXBriefDocument, c as isPlanningComplete, d as readPlan, k as findXBriefByIssue, l as mergeRecordStatusOverrides, r as findPlan, s as init_io, v as XBRIEF_INSPECTION_POLICIES, y as init_types$1 } from "./io-
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import { S as setDeaconIgnored, _ as markWorkspaceStuck, d as getReviewStatusSync, h as loadReviewStatuses, o as clearWorkspaceStuck, p as init_review_status, r as clearFeedbackDeliveryStuck, w as setReviewStatusSync, x as setAutoMerge, y as registerReviewVerdictFeedbackDelivery } from "./review-status-
|
|
26
|
-
import { E as verifyAppCanMerge, M as withConcurrencyLimit, f as init_github_app, j as init_concurrency, m as isIntegrationPermissionError } from "./github-app-
|
|
27
|
-
import { a as init_events, i as getEventsFileSizeSync, l as init_wal, o as readEventsFromByteOffsetSync, r as forEachCostEventSync, t as appendCostEventSync } from "./events-
|
|
28
|
-
import { n as getContainersReferencingWorkspacePath, r as init_workspace_manager } from "./workspace-manager-
|
|
29
|
-
import { r as init_devcontainer_renderer, t as DEVCONTAINER_DIRNAME } from "./devcontainer-renderer-
|
|
30
|
-
import { a as init_jsonl_parser, t as getActiveSessionModelSync } from "./jsonl-parser-
|
|
31
|
-
import { i as findWorkspacePath } from "./archive-planning-
|
|
32
|
-
import { t as handlePostRebaseVerificationDeferral } from "./merge-verification-
|
|
33
|
-
import { n as deliverReviewVerdictFeedbackFromStatus } from "./review-verdict-feedback-
|
|
34
|
-
import { t as createInFlightGuard } from "./in-flight-guard-
|
|
35
|
-
import { a as loadWorkspaceMetadataSync, i as listWorkspaceMetadataSync } from "./workspace-metadata-
|
|
36
|
-
import { n as enrichReviewStatusFromSessions } from "./review-status-enrichment-
|
|
37
|
-
import { n as generateDailySummary } from "./cli-
|
|
38
|
-
import {
|
|
39
|
-
import { n as getTldrDaemonServiceSync, r as init_tldr_daemon } from "./tldr-daemon-
|
|
40
|
-
import { _ as syncMainIntoWorkspace, b as gitPush, x as listGitOperationsSync, y as MainDivergedError } from "./merge-agent-
|
|
41
|
-
import { F as enqueueMerge, I as getAllActiveQueues$1, L as getCurrentMerge, P as dequeueMerge, z as markMergeProcessing } from "./merge-
|
|
42
|
-
import { t as rebaseFeatureBranch } from "./merge-rebase-
|
|
43
|
-
import { t as getReleaseSetSync } from "./release-set-
|
|
44
|
-
import { r as getCachedConflictGateMergeability } from "./conflict-gate-
|
|
45
|
-
import { r as runVerificationForIssue } from "./verification-runner-
|
|
46
|
-
import {
|
|
47
|
-
import { t as teardownWorkspace } from "./teardown-workspace-
|
|
48
|
-
import { t as init_rebuild_stack } from "./rebuild-stack-
|
|
1
|
+
import { Gn as extractNumberSync, Kn as extractPrefixSync, Li as getOverdeckHome, Mt as init_state_plane, On as resolveProjectFromIssueSync, Or as resolveModel, Pt as isOverdeckOwnedOnlyStatus, Qr as GitError, Ri as init_paths, Yn as parseIssueIdSync, Zn as resolveIssueIdSync, Zr as FsError, Zt as extractTeamPrefix, ci as init_errors, fn as init_projects, ki as encodeClaudeProjectDir, on as getProjectSync, qn as init_issue_id, t as init_config_yaml, tn as findProjectByTeamSync, vn as listProjectsSync } from "./config-yaml-D9nfpEx1.js";
|
|
2
|
+
import { Ct as jsonResponse, _t as getHeaderFromMap, at as resolveRequestedStartedBy, ct as spawnPanCli, ft as rejectUnauthorizedDashboardRequest, it as isInternalAgentRequest, mt as rejectUnsafeDashboardMutationRequest, n as _serverManagedMerges, ot as getWorkAgentLifecycleStateSync, xt as httpHandler } from "./specialists-b0dMMjWq.js";
|
|
3
|
+
import { h as loadConfigSync$1, p as init_config } from "./config-ZGjvuR6J.js";
|
|
4
|
+
import { l as init_activity_logger, o as emitActivityEntrySync } from "./activity-logger-BWZhVphb.js";
|
|
5
|
+
import { d as getOverdeckDatabaseSync, f as init_infra } from "./infra-CHIvOb9q.js";
|
|
6
|
+
import { C as init_tmux, U as sessionExists, dt as init_child_env, j as listSessionNames, r as capturePane, ut as buildChildEnvWithoutTmuxSync } from "./tmux-DWEc4Ld9.js";
|
|
7
|
+
import { d as resolveIssueWorkspaceSyncTarget, o as init_resolver } from "./resolver-gxv97jsQ.js";
|
|
8
|
+
import { a as init_event_store, n as getEventStore } from "./event-store-BCSgMubf.js";
|
|
9
|
+
import { g as findPositionInQueueSync, h as computeQueuePositionFromStatusSync, i as EventStoreService } from "./issue-lifecycle-D9nLErvS.js";
|
|
10
|
+
import { o as getPricingSync, s as init_cost, t as calculateCostSync } from "./cost-CiIwxH1D.js";
|
|
11
|
+
import { A as saveAgentStateSync, Ar as transitionIssueToInReview, K as saveAgentRuntimeState, Ut as messageAgent, W as getAgentRuntimeStateSync, _ as init_agent_state, d as decideResumeGate, g as getAgentStateSync, m as getAgentState, on as spawnAgent, p as getAgentResumeGateBlockReason, q as init_agents, u as clearYieldForResumeSync, vn as listRunningAgents } from "./agent-state-BJhGIJZe.js";
|
|
12
|
+
import { c as CostDoorLive, d as CostWriter } from "./service-CEp-3iow.js";
|
|
13
|
+
import { o as getInternalTokenSync, s as init_internal_token, t as INTERNAL_TOKEN_HEADER } from "./internal-token-DoVzb4b7.js";
|
|
14
|
+
import { A as init_conversations, st as findConversationForCostSessionSync } from "./conversations-C75EFFjf.js";
|
|
15
|
+
import { D as normalizeModelOverrideSync, E as init_model_validation } from "./auto-spawn-consent-Dc4mtM-B.js";
|
|
16
|
+
import { c as init_stack_health, n as collectDockerContainerLifecycleSnapshot, o as getWorkspaceStackHealth, r as composeProjectNameForWorkspace } from "./stack-health-BQFSJc0l.js";
|
|
17
|
+
import { a as PAN_DIRNAME, i as PAN_CONTINUE_FILENAME, m as init_types } from "./types-pLpbsNto.js";
|
|
18
|
+
import { A as init_xbrief_index, M as readXBriefDocument, _ as serializeXBriefDocument, c as isPlanningComplete, d as readPlan, k as findXBriefByIssue, l as mergeRecordStatusOverrides, r as findPlan, s as init_io, v as XBRIEF_INSPECTION_POLICIES, y as init_types$1 } from "./io-DKrWd3gX.js";
|
|
19
|
+
import { c as init_dag, i as criticalPath, t as actionableDoc } from "./dag-BPc74hwj.js";
|
|
20
|
+
import { d as resolveWorkspaceRepoRootsSync, i as init_project_repos } from "./project-repos--QeCg7yQ.js";
|
|
21
|
+
import { a as init_tracker_config, t as getGitHubConfig } from "./tracker-config-CJzPhSHv.js";
|
|
22
|
+
import { n as resolveGitHubIssueSync, t as init_tracker_utils } from "./tracker-utils-DJAOAuMN.js";
|
|
23
|
+
import { r as notifyPipelineSync, t as init_pipeline_notifier } from "./pipeline-notifier-BNAV9kpa.js";
|
|
24
|
+
import { a as getAllActiveQueues, c as init_merge_sync } from "./merge-sync-CJpOa0cZ.js";
|
|
25
|
+
import { S as setDeaconIgnored, _ as markWorkspaceStuck, d as getReviewStatusSync, h as loadReviewStatuses, o as clearWorkspaceStuck, p as init_review_status, r as clearFeedbackDeliveryStuck, w as setReviewStatusSync, x as setAutoMerge, y as registerReviewVerdictFeedbackDelivery } from "./review-status-yOGD2MuK.js";
|
|
26
|
+
import { E as verifyAppCanMerge, M as withConcurrencyLimit, f as init_github_app, j as init_concurrency, m as isIntegrationPermissionError } from "./github-app-7ywLhuZO.js";
|
|
27
|
+
import { a as init_events, i as getEventsFileSizeSync, l as init_wal, o as readEventsFromByteOffsetSync, r as forEachCostEventSync, t as appendCostEventSync } from "./events-B6zioJA_.js";
|
|
28
|
+
import { n as getContainersReferencingWorkspacePath, r as init_workspace_manager } from "./workspace-manager-CgovxDrO.js";
|
|
29
|
+
import { r as init_devcontainer_renderer, t as DEVCONTAINER_DIRNAME } from "./devcontainer-renderer-d-9dCV_2.js";
|
|
30
|
+
import { a as init_jsonl_parser, t as getActiveSessionModelSync } from "./jsonl-parser-DqxVCZ1k.js";
|
|
31
|
+
import { i as findWorkspacePath } from "./archive-planning-CGkU6UeL.js";
|
|
32
|
+
import { t as handlePostRebaseVerificationDeferral } from "./merge-verification-JJc5GC2t.js";
|
|
33
|
+
import { n as deliverReviewVerdictFeedbackFromStatus } from "./review-verdict-feedback-CE_tr2iQ.js";
|
|
34
|
+
import { t as createInFlightGuard } from "./in-flight-guard-DuxabAHT.js";
|
|
35
|
+
import { a as loadWorkspaceMetadataSync, i as listWorkspaceMetadataSync } from "./workspace-metadata-BNzODIv6.js";
|
|
36
|
+
import { n as enrichReviewStatusFromSessions } from "./review-status-enrichment-BWH0XW_m.js";
|
|
37
|
+
import { n as generateDailySummary } from "./cli-BmczsfD6.js";
|
|
38
|
+
import { g as getDiffStat, h as getDiffBase, l as spawnReviewRoleForIssue, m as getChangedFiles } from "./review-agent-esZ0QXdY.js";
|
|
39
|
+
import { n as getTldrDaemonServiceSync, r as init_tldr_daemon } from "./tldr-daemon-CO08YlfQ.js";
|
|
40
|
+
import { _ as syncMainIntoWorkspace, b as gitPush, x as listGitOperationsSync, y as MainDivergedError } from "./merge-agent-B3jRrlS1.js";
|
|
41
|
+
import { F as enqueueMerge, I as getAllActiveQueues$1, L as getCurrentMerge, P as dequeueMerge, z as markMergeProcessing } from "./merge-FZ78_cEz.js";
|
|
42
|
+
import { t as rebaseFeatureBranch } from "./merge-rebase-qq40s91P.js";
|
|
43
|
+
import { t as getReleaseSetSync } from "./release-set-DPHHzEGx.js";
|
|
44
|
+
import { r as getCachedConflictGateMergeability } from "./conflict-gate-DcUTY4Gb.js";
|
|
45
|
+
import { r as runVerificationForIssue } from "./verification-runner-Dl13mmsI.js";
|
|
46
|
+
import { a as registerDurableReviewPipelineHandler, i as registerDurableReviewDispatcher, r as init_durable_review_pipeline } from "./durable-review-pipeline-B3OS2_He.js";
|
|
47
|
+
import { t as teardownWorkspace } from "./teardown-workspace-cJea1OLo.js";
|
|
48
|
+
import { t as init_rebuild_stack } from "./rebuild-stack-BNOMVh7C.js";
|
|
49
49
|
import { basename, dirname, join, resolve, sep } from "node:path";
|
|
50
50
|
import { Cause, Effect, Layer, Option, Stream } from "effect";
|
|
51
51
|
import { closeSync, existsSync, fstatSync, mkdirSync, openSync, readFileSync, readSync, readdirSync, renameSync, writeFileSync } from "fs";
|
|
@@ -104,7 +104,7 @@ async function captureInterestedAgent(state, agentId) {
|
|
|
104
104
|
try {
|
|
105
105
|
const remoteState = await readFile(join(homedir$1(), ".overdeck", "agents", agentId, "remote-state.json"), "utf-8").then((text) => JSON.parse(text)).catch(() => null);
|
|
106
106
|
if (remoteState?.location === "remote" && remoteState?.vmName) {
|
|
107
|
-
const { getRemoteAgentOutput } = await import("./remote-agents-
|
|
107
|
+
const { getRemoteAgentOutput } = await import("./remote-agents-BVtASiOF.js");
|
|
108
108
|
stdout = await getRemoteAgentOutput(agentId, remoteState.vmName, 50);
|
|
109
109
|
} else stdout = await Effect.runPromise(capturePane(agentId, 50));
|
|
110
110
|
} catch {
|
|
@@ -937,7 +937,7 @@ const postWorkspaceContainerActionRoute = HttpRouter.add("POST", "/api/workspace
|
|
|
937
937
|
}
|
|
938
938
|
if (!workspacePath) return jsonResponse({ error: `Workspace not found for ${issueId}` }, { status: 404 });
|
|
939
939
|
if (!composeFile && ["start", "restart"].includes(action)) {
|
|
940
|
-
const { ensureDevcontainerSync } = yield* Effect.promise(() => import("./ensure-devcontainer-
|
|
940
|
+
const { ensureDevcontainerSync } = yield* Effect.promise(() => import("./ensure-devcontainer-rGSh0JHK.js"));
|
|
941
941
|
if (ensureDevcontainerSync({
|
|
942
942
|
workspacePath,
|
|
943
943
|
issueId
|
|
@@ -2821,9 +2821,9 @@ function mergeVerificationOptions(request) {
|
|
|
2821
2821
|
*/
|
|
2822
2822
|
async function recordCiGreenVerificationVerdict(issueId, workspacePath) {
|
|
2823
2823
|
try {
|
|
2824
|
-
const { snapshotWorkspaceHeadsPromise } = await import("./git-utils-
|
|
2824
|
+
const { snapshotWorkspaceHeadsPromise } = await import("./git-utils-CsKV0Dis.js");
|
|
2825
2825
|
const verifiedAnchor = await snapshotWorkspaceHeadsPromise(issueId, workspacePath).catch(() => void 0);
|
|
2826
|
-
const { setReviewStatusSync } = await import("./review-status-
|
|
2826
|
+
const { setReviewStatusSync } = await import("./review-status-C_kQeeX0.js");
|
|
2827
2827
|
setReviewStatusSync(issueId, {
|
|
2828
2828
|
verificationStatus: "passed",
|
|
2829
2829
|
verificationNotes: "merge-verify: CI green on the merged tip (PAN-2487 local-gate skip)",
|
|
@@ -2842,7 +2842,7 @@ async function recordCiGreenVerificationVerdict(issueId, workspacePath) {
|
|
|
2842
2842
|
* the workspaces-route import cycle.
|
|
2843
2843
|
*/
|
|
2844
2844
|
async function prepareWorkAgentForRebase(opts) {
|
|
2845
|
-
const { appendShipLog } = await import("./ship-log-
|
|
2845
|
+
const { appendShipLog } = await import("./ship-log-ie0A_SqV.js");
|
|
2846
2846
|
opts.setStatus({
|
|
2847
2847
|
mergeStep: "preparing-work-agent",
|
|
2848
2848
|
mergeNotes: `Preparing work agent ${opts.agentId} to rebase ${opts.scopeNote}…`
|
|
@@ -3267,7 +3267,7 @@ async function reconcileGitHubMergeStatus(issueId, status) {
|
|
|
3267
3267
|
const prRef = parseGitHubPullRequestUrl(status.prUrl);
|
|
3268
3268
|
if (!prRef) return false;
|
|
3269
3269
|
try {
|
|
3270
|
-
const { getPullRequestState, isGitHubAppConfigured } = await import("./github-app-
|
|
3270
|
+
const { getPullRequestState, isGitHubAppConfigured } = await import("./github-app-Oi5hdn1n.js");
|
|
3271
3271
|
if (!isGitHubAppConfigured()) return false;
|
|
3272
3272
|
const prState = await Effect.runPromise(getPullRequestState(prRef.owner, prRef.repo, prRef.number));
|
|
3273
3273
|
console.log(`[merge] reconcileGitHubMergeStatus: ${issueId} PR #${prRef.number} merged=${prState.merged} state=${prState.state}`);
|
|
@@ -3317,24 +3317,28 @@ async function ensurePRExists(issueId, options) {
|
|
|
3317
3317
|
const targetBranch = options?.targetBranch ?? "main";
|
|
3318
3318
|
const execOptions = { encoding: "utf-8" };
|
|
3319
3319
|
if (options?.cwd) execOptions.cwd = options.cwd;
|
|
3320
|
-
let existingOut = "";
|
|
3321
3320
|
try {
|
|
3322
3321
|
const { stdout } = await execFileAsync$4("gh", [
|
|
3323
3322
|
"pr",
|
|
3324
|
-
"
|
|
3323
|
+
"list",
|
|
3324
|
+
"--head",
|
|
3325
3325
|
branchName,
|
|
3326
|
+
"--base",
|
|
3327
|
+
targetBranch,
|
|
3328
|
+
"--state",
|
|
3329
|
+
"all",
|
|
3326
3330
|
"--json",
|
|
3327
|
-
"url",
|
|
3328
|
-
"--
|
|
3329
|
-
"
|
|
3331
|
+
"url,state",
|
|
3332
|
+
"--limit",
|
|
3333
|
+
"100"
|
|
3330
3334
|
], execOptions);
|
|
3331
|
-
|
|
3335
|
+
const pullRequests = JSON.parse(String(stdout));
|
|
3336
|
+
const existing = pullRequests.find((pr) => pr.state === "OPEN") ?? pullRequests.find((pr) => pr.state === "MERGED");
|
|
3337
|
+
if (existing?.url) return {
|
|
3338
|
+
created: false,
|
|
3339
|
+
prUrl: existing.url
|
|
3340
|
+
};
|
|
3332
3341
|
} catch {}
|
|
3333
|
-
const existing = existingOut.trim();
|
|
3334
|
-
if (existing) return {
|
|
3335
|
-
created: false,
|
|
3336
|
-
prUrl: existing
|
|
3337
|
-
};
|
|
3338
3342
|
const prBody = options?.cwd ? await buildRichPRBody(issueId, options.cwd) : `Automated PR for ${issueId}`;
|
|
3339
3343
|
const { tmpdir } = await import("os");
|
|
3340
3344
|
const { join: pathJoin } = await import("path");
|
|
@@ -3534,8 +3538,8 @@ async function triggerMerge(issueId, request = { kind: "normal" }) {
|
|
|
3534
3538
|
try {
|
|
3535
3539
|
if (request.kind === "normal" && workspaceInfo.isRemote && workspaceInfo.vmName) {
|
|
3536
3540
|
console.log(`[merge] Remote workspace detected for ${issueId}, using review artifact merge...`);
|
|
3537
|
-
const { getMergeSetSync, ensureMergeSetForIssueSync } = await import("./merge-set-
|
|
3538
|
-
const { getForgeAdapter } = await import("./forge-
|
|
3541
|
+
const { getMergeSetSync, ensureMergeSetForIssueSync } = await import("./merge-set-BTNYvxM3.js");
|
|
3542
|
+
const { getForgeAdapter } = await import("./forge-bvak6vXJ.js");
|
|
3539
3543
|
const remotePrimaryRepo = (getMergeSetSync(issueId) || ensureMergeSetForIssueSync(issueId))?.repos[0];
|
|
3540
3544
|
const remoteTargetBranch = remotePrimaryRepo?.targetBranch || "main";
|
|
3541
3545
|
const remoteForge = remotePrimaryRepo?.forge || "github";
|
|
@@ -3571,7 +3575,7 @@ async function triggerMerge(issueId, request = { kind: "normal" }) {
|
|
|
3571
3575
|
...mergeCompletionStatus(request)
|
|
3572
3576
|
});
|
|
3573
3577
|
completePendingOperation(issueId, null);
|
|
3574
|
-
const { postMergeLifecycle } = await import("./merge-agent-
|
|
3578
|
+
const { postMergeLifecycle } = await import("./merge-agent-BuoC_PRZ.js");
|
|
3575
3579
|
await postMergeLifecycle(issueId, projectPath);
|
|
3576
3580
|
return {
|
|
3577
3581
|
success: true,
|
|
@@ -3616,11 +3620,11 @@ async function triggerMerge(issueId, request = { kind: "normal" }) {
|
|
|
3616
3620
|
}
|
|
3617
3621
|
if (isPolyrepo && projectConfig?.workspace?.repos) {
|
|
3618
3622
|
console.log(`[merge] Polyrepo detected for ${issueId}, coordinating merge set...`);
|
|
3619
|
-
const { getMergeSetSync, ensureMergeSetForIssueSync, upsertMergeSetSync, withRepoStateSync } = await import("./merge-set-
|
|
3620
|
-
const { runQualityGates } = await import("./validation-
|
|
3621
|
-
const { reconcileStrandedRepos } = await import("./merge-completeness-
|
|
3622
|
-
const { getForgeAdapter } = await import("./forge-
|
|
3623
|
-
const { messageAgent } = await import("./agents-
|
|
3623
|
+
const { getMergeSetSync, ensureMergeSetForIssueSync, upsertMergeSetSync, withRepoStateSync } = await import("./merge-set-BTNYvxM3.js");
|
|
3624
|
+
const { runQualityGates } = await import("./validation-CHovCoTT.js");
|
|
3625
|
+
const { reconcileStrandedRepos } = await import("./merge-completeness-DkdabVch.js");
|
|
3626
|
+
const { getForgeAdapter } = await import("./forge-bvak6vXJ.js");
|
|
3627
|
+
const { messageAgent } = await import("./agents-DpCuoF65.js");
|
|
3624
3628
|
let mergeSet = getMergeSetSync(issueId) || ensureMergeSetForIssueSync(issueId);
|
|
3625
3629
|
if (!mergeSet) {
|
|
3626
3630
|
const error = `No merge set found for ${issueId}`;
|
|
@@ -3678,7 +3682,7 @@ async function triggerMerge(issueId, request = { kind: "normal" }) {
|
|
|
3678
3682
|
...mergeCompletionStatus(request)
|
|
3679
3683
|
});
|
|
3680
3684
|
completePendingOperation(issueId, null);
|
|
3681
|
-
const { postMergeLifecycle } = await import("./merge-agent-
|
|
3685
|
+
const { postMergeLifecycle } = await import("./merge-agent-BuoC_PRZ.js");
|
|
3682
3686
|
advanceQueue();
|
|
3683
3687
|
await postMergeLifecycle(issueId, projectPath);
|
|
3684
3688
|
return {
|
|
@@ -3932,7 +3936,7 @@ async function triggerMerge(issueId, request = { kind: "normal" }) {
|
|
|
3932
3936
|
...mergeCompletionStatus(request)
|
|
3933
3937
|
});
|
|
3934
3938
|
completePendingOperation(issueId, null);
|
|
3935
|
-
const { postMergeLifecycle } = await import("./merge-agent-
|
|
3939
|
+
const { postMergeLifecycle } = await import("./merge-agent-BuoC_PRZ.js");
|
|
3936
3940
|
advanceQueue();
|
|
3937
3941
|
await postMergeLifecycle(issueId, projectPath);
|
|
3938
3942
|
return {
|
|
@@ -3943,8 +3947,8 @@ async function triggerMerge(issueId, request = { kind: "normal" }) {
|
|
|
3943
3947
|
repos: mergeResults
|
|
3944
3948
|
};
|
|
3945
3949
|
}
|
|
3946
|
-
const { getMergeSetSync, ensureMergeSetForIssueSync } = await import("./merge-set-
|
|
3947
|
-
const { getForgeAdapter } = await import("./forge-
|
|
3950
|
+
const { getMergeSetSync, ensureMergeSetForIssueSync } = await import("./merge-set-BTNYvxM3.js");
|
|
3951
|
+
const { getForgeAdapter } = await import("./forge-bvak6vXJ.js");
|
|
3948
3952
|
const primaryRepo = (getMergeSetSync(issueId) || ensureMergeSetForIssueSync(issueId))?.repos[0];
|
|
3949
3953
|
const targetBranch = primaryRepo?.targetBranch || "main";
|
|
3950
3954
|
const primaryForge = primaryRepo?.forge || "github";
|
|
@@ -3987,7 +3991,7 @@ async function triggerMerge(issueId, request = { kind: "normal" }) {
|
|
|
3987
3991
|
}
|
|
3988
3992
|
let preMergePrState;
|
|
3989
3993
|
if (githubPrRef) try {
|
|
3990
|
-
const { getPullRequestState, isGitHubAppConfigured } = await import("./github-app-
|
|
3994
|
+
const { getPullRequestState, isGitHubAppConfigured } = await import("./github-app-Oi5hdn1n.js");
|
|
3991
3995
|
if (isGitHubAppConfigured()) {
|
|
3992
3996
|
const prState = await Effect.runPromise(getPullRequestState(githubPrRef.owner, githubPrRef.repo, githubPrRef.number));
|
|
3993
3997
|
preMergePrState = prState;
|
|
@@ -4050,7 +4054,7 @@ async function triggerMerge(issueId, request = { kind: "normal" }) {
|
|
|
4050
4054
|
...mergeCompletionStatus(request)
|
|
4051
4055
|
});
|
|
4052
4056
|
completePendingOperation(issueId, null);
|
|
4053
|
-
const { postMergeLifecycle } = await import("./merge-agent-
|
|
4057
|
+
const { postMergeLifecycle } = await import("./merge-agent-BuoC_PRZ.js");
|
|
4054
4058
|
await postMergeLifecycle(issueId, projectPath, branchName);
|
|
4055
4059
|
return {
|
|
4056
4060
|
success: true,
|
|
@@ -4064,8 +4068,8 @@ async function triggerMerge(issueId, request = { kind: "normal" }) {
|
|
|
4064
4068
|
} catch (prStateErr) {
|
|
4065
4069
|
console.warn(`[merge] Pre-merge PR state check failed for ${issueId}: ${prStateErr.message} — proceeding (check is best-effort)`);
|
|
4066
4070
|
}
|
|
4067
|
-
const { postMergeLifecycle } = await import("./merge-agent-
|
|
4068
|
-
const { beginShipLog, appendShipLog } = await import("./ship-log-
|
|
4071
|
+
const { postMergeLifecycle } = await import("./merge-agent-BuoC_PRZ.js");
|
|
4072
|
+
const { beginShipLog, appendShipLog } = await import("./ship-log-ie0A_SqV.js");
|
|
4069
4073
|
let rebaseResult;
|
|
4070
4074
|
if (preMergePrState?.mergeable === true && preMergePrState.mergeableState === "clean" && !preMergePrState.checksFailed && !preMergePrState.checksPending && !preMergePrState.draft && !preMergePrState.merged) {
|
|
4071
4075
|
console.log(`[merge] PR is CLEAN — merging directly without rebase for ${issueId}`);
|
|
@@ -4174,7 +4178,7 @@ async function triggerMerge(issueId, request = { kind: "normal" }) {
|
|
|
4174
4178
|
});
|
|
4175
4179
|
let skipLocalVerification = false;
|
|
4176
4180
|
if (primaryForge === "github" && artifactUrl) try {
|
|
4177
|
-
const { parsePullRequestRef, getCiCheckRunsStatePromise, isGitHubAppConfigured } = await import("./github-app-
|
|
4181
|
+
const { parsePullRequestRef, getCiCheckRunsStatePromise, isGitHubAppConfigured } = await import("./github-app-Oi5hdn1n.js");
|
|
4178
4182
|
if (isGitHubAppConfigured()) {
|
|
4179
4183
|
const ref = parsePullRequestRef({ url: artifactUrl });
|
|
4180
4184
|
if (ref) {
|
|
@@ -4199,7 +4203,7 @@ async function triggerMerge(issueId, request = { kind: "normal" }) {
|
|
|
4199
4203
|
const verifyResult = skipLocalVerification ? { outcome: "passed" } : await (async () => {
|
|
4200
4204
|
console.log(`[merge] Running post-rebase verification for ${issueId}...`);
|
|
4201
4205
|
appendShipLog(issueId, "Running post-rebase verification (full quality-gate suite)…", "verifying");
|
|
4202
|
-
const { runVerificationForIssue } = await import("./verification-runner-
|
|
4206
|
+
const { runVerificationForIssue } = await import("./verification-runner-BuqGwm2t.js");
|
|
4203
4207
|
return Effect.runPromise(runVerificationForIssue(issueId, workspacePath, { isRemote: false }, "merge-verify", {
|
|
4204
4208
|
...mergeVerificationOptions(request),
|
|
4205
4209
|
onGateLog: (line) => appendShipLog(issueId, line, "verifying")
|
|
@@ -4244,7 +4248,7 @@ async function triggerMerge(issueId, request = { kind: "normal" }) {
|
|
|
4244
4248
|
if (skipLocalVerification) await recordCiGreenVerificationVerdict(issueId, workspacePath);
|
|
4245
4249
|
setReviewStatus(issueId, { mergeStep: "reporting-statuses" });
|
|
4246
4250
|
try {
|
|
4247
|
-
const { getPullRequestState, isGitHubAppConfigured, reportCommitStatus } = await import("./github-app-
|
|
4251
|
+
const { getPullRequestState, isGitHubAppConfigured, reportCommitStatus } = await import("./github-app-Oi5hdn1n.js");
|
|
4248
4252
|
if (githubPrRef && isGitHubAppConfigured()) {
|
|
4249
4253
|
const sha = (await Effect.runPromise(getPullRequestState(githubPrRef.owner, githubPrRef.repo, githubPrRef.number))).headSha.trim();
|
|
4250
4254
|
if (sha) {
|
|
@@ -4272,7 +4276,7 @@ async function triggerMerge(issueId, request = { kind: "normal" }) {
|
|
|
4272
4276
|
} catch (prMergeErr) {
|
|
4273
4277
|
console.error(`[merge] Review artifact merge threw for ${issueId}:`, prMergeErr);
|
|
4274
4278
|
try {
|
|
4275
|
-
const { getPullRequestState, isGitHubAppConfigured } = await import("./github-app-
|
|
4279
|
+
const { getPullRequestState, isGitHubAppConfigured } = await import("./github-app-Oi5hdn1n.js");
|
|
4276
4280
|
if (githubPrRef && isGitHubAppConfigured()) {
|
|
4277
4281
|
artifactMerged = (await Effect.runPromise(getPullRequestState(githubPrRef.owner, githubPrRef.repo, githubPrRef.number))).merged;
|
|
4278
4282
|
if (artifactMerged) console.log(`[merge] Race-detected: PR #${githubPrRef.number} for ${issueId} was already merged despite thrown error; proceeding`);
|
|
@@ -4391,8 +4395,8 @@ const postForgeApproveRoute = HttpRouter.add("POST", "/api/issues/:issueId/forge
|
|
|
4391
4395
|
if (!parseIssueIdSync(issueId)) return jsonResponse({ error: "Invalid issue ID" }, { status: 400 });
|
|
4392
4396
|
if (!/^[A-Z]+-\d+$/i.test(issueId)) return jsonResponse({ error: "Invalid issue ID format" }, { status: 400 });
|
|
4393
4397
|
return yield* Effect.promise(async () => {
|
|
4394
|
-
const { getMergeSetSync, upsertMergeSetSync, withRepoArtifactUrlSync, withRepoStateSync } = await import("./merge-set-
|
|
4395
|
-
const { getForgeAdapter } = await import("./forge-
|
|
4398
|
+
const { getMergeSetSync, upsertMergeSetSync, withRepoArtifactUrlSync, withRepoStateSync } = await import("./merge-set-BTNYvxM3.js");
|
|
4399
|
+
const { getForgeAdapter } = await import("./forge-bvak6vXJ.js");
|
|
4396
4400
|
let mergeSet = getMergeSetSync(issueId);
|
|
4397
4401
|
if (!mergeSet) return jsonResponse({ error: `No merge set found for ${issueId}` }, { status: 404 });
|
|
4398
4402
|
const results = [];
|
|
@@ -4453,7 +4457,7 @@ const postForgeApproveRoute = HttpRouter.add("POST", "/api/issues/:issueId/forge
|
|
|
4453
4457
|
}
|
|
4454
4458
|
}
|
|
4455
4459
|
if (results.filter((r) => r.approved).length > 0) {
|
|
4456
|
-
const { emitActivityEntrySync, emitActivityTtsSync } = await import("./activity-logger-
|
|
4460
|
+
const { emitActivityEntrySync, emitActivityTtsSync } = await import("./activity-logger-Ck8qoluj.js");
|
|
4457
4461
|
emitActivityEntrySync({
|
|
4458
4462
|
source: "dashboard",
|
|
4459
4463
|
level: "success",
|
|
@@ -4480,9 +4484,9 @@ const postForgeMergeRoute = HttpRouter.add("POST", "/api/issues/:issueId/forge-m
|
|
|
4480
4484
|
if (!parseIssueIdSync(issueId)) return jsonResponse({ error: "Invalid issue ID" }, { status: 400 });
|
|
4481
4485
|
if (!/^[A-Z]+-\d+$/i.test(issueId)) return jsonResponse({ error: "Invalid issue ID format" }, { status: 400 });
|
|
4482
4486
|
return yield* Effect.promise(async () => {
|
|
4483
|
-
const { getMergeSetSync, upsertMergeSetSync, withRepoArtifactUrlSync, withRepoStateSync } = await import("./merge-set-
|
|
4484
|
-
const { getForgeAdapter } = await import("./forge-
|
|
4485
|
-
const { assessRepoMergeCompleteness } = await import("./merge-completeness-
|
|
4487
|
+
const { getMergeSetSync, upsertMergeSetSync, withRepoArtifactUrlSync, withRepoStateSync } = await import("./merge-set-BTNYvxM3.js");
|
|
4488
|
+
const { getForgeAdapter } = await import("./forge-bvak6vXJ.js");
|
|
4489
|
+
const { assessRepoMergeCompleteness } = await import("./merge-completeness-DkdabVch.js");
|
|
4486
4490
|
let mergeSet = getMergeSetSync(issueId);
|
|
4487
4491
|
if (!mergeSet) return jsonResponse({ error: `No merge set found for ${issueId}` }, { status: 404 });
|
|
4488
4492
|
const results = [];
|
|
@@ -4560,7 +4564,7 @@ const postForgeMergeRoute = HttpRouter.add("POST", "/api/issues/:issueId/forge-m
|
|
|
4560
4564
|
}
|
|
4561
4565
|
}
|
|
4562
4566
|
if (results.filter((r) => r.merged).length > 0) {
|
|
4563
|
-
const { emitActivityEntrySync, emitActivityTtsSync } = await import("./activity-logger-
|
|
4567
|
+
const { emitActivityEntrySync, emitActivityTtsSync } = await import("./activity-logger-Ck8qoluj.js");
|
|
4564
4568
|
emitActivityEntrySync({
|
|
4565
4569
|
source: "dashboard",
|
|
4566
4570
|
level: "success",
|
|
@@ -4685,7 +4689,7 @@ const postWorkspaceApproveRoute = HttpRouter.add("POST", "/api/issues/:issueId/a
|
|
|
4685
4689
|
console.log(`[approve] Starting role pipeline for ${issueId}...`);
|
|
4686
4690
|
let reviewResult;
|
|
4687
4691
|
try {
|
|
4688
|
-
const { spawnReviewRoleForIssue } = await import("./review-agent-
|
|
4692
|
+
const { spawnReviewRoleForIssue } = await import("./review-agent-DgkUPRx0.js");
|
|
4689
4693
|
reviewResult = await Effect.runPromise(spawnReviewRoleForIssue({
|
|
4690
4694
|
issueId,
|
|
4691
4695
|
workspace: workspacePath,
|
|
@@ -4732,7 +4736,7 @@ const postWorkspaceApproveRoute = HttpRouter.add("POST", "/api/issues/:issueId/a
|
|
|
4732
4736
|
}
|
|
4733
4737
|
console.log(`[approve] Step 3/3: Running server-side rebase for ${issueId}...`);
|
|
4734
4738
|
try {
|
|
4735
|
-
const { rebaseFeatureBranch } = await import("./merge-rebase-
|
|
4739
|
+
const { rebaseFeatureBranch } = await import("./merge-rebase-CXq0qsgR.js");
|
|
4736
4740
|
const workspacePathForRebase = join(projectPath, "workspaces", `feature-${issueId.toLowerCase()}`);
|
|
4737
4741
|
const rebaseResult = await Effect.runPromise(rebaseFeatureBranch(workspacePathForRebase, branchName, "main", issueId));
|
|
4738
4742
|
if (!rebaseResult.success) {
|
|
@@ -4752,7 +4756,7 @@ const postWorkspaceApproveRoute = HttpRouter.add("POST", "/api/issues/:issueId/a
|
|
|
4752
4756
|
completePendingOperation(issueId, pushResult.error);
|
|
4753
4757
|
return jsonResponse({ error: pushResult.error }, { status: pushResult.httpStatus });
|
|
4754
4758
|
}
|
|
4755
|
-
const { approve: lifecycleApprove } = await import("./lifecycle-
|
|
4759
|
+
const { approve: lifecycleApprove } = await import("./lifecycle-DaCovZwn.js");
|
|
4756
4760
|
const ghResolved = resolveGitHubIssueSync(issueId);
|
|
4757
4761
|
const isGitHubIssueFlag = ghResolved.isGitHub;
|
|
4758
4762
|
const lifecycleCtx = {
|
|
@@ -4786,7 +4790,7 @@ const getMergeQueueRoute = HttpRouter.add("GET", "/api/merge-queue", httpHandler
|
|
|
4786
4790
|
})));
|
|
4787
4791
|
const postInternalPipelineNotifyRoute = HttpRouter.add("POST", "/api/internal/pipeline/notify", httpHandler(Effect.gen(function* () {
|
|
4788
4792
|
const request = yield* HttpServerRequest.HttpServerRequest;
|
|
4789
|
-
const { INTERNAL_TOKEN_HEADER, getInternalTokenSync } = yield* Effect.promise(() => import("./internal-token-
|
|
4793
|
+
const { INTERNAL_TOKEN_HEADER, getInternalTokenSync } = yield* Effect.promise(() => import("./internal-token-BOtIRJU7.js"));
|
|
4790
4794
|
const expected = getInternalTokenSync();
|
|
4791
4795
|
if (!expected) return jsonResponse({
|
|
4792
4796
|
ok: false,
|
|
@@ -4800,7 +4804,7 @@ const postInternalPipelineNotifyRoute = HttpRouter.add("POST", "/api/internal/pi
|
|
|
4800
4804
|
}, 403);
|
|
4801
4805
|
const event = yield* readJsonBody;
|
|
4802
4806
|
const type = event.type;
|
|
4803
|
-
const { notifyPipelineSync } = yield* Effect.promise(() => import("./pipeline-notifier-
|
|
4807
|
+
const { notifyPipelineSync } = yield* Effect.promise(() => import("./pipeline-notifier-DvHLaXKb.js"));
|
|
4804
4808
|
switch (type) {
|
|
4805
4809
|
case "status_changed": {
|
|
4806
4810
|
const issueId = event.issueId;
|
|
@@ -5607,7 +5611,7 @@ const patchWorkspaceTieredExecutionRoute = HttpRouter.add("PATCH", "/api/workspa
|
|
|
5607
5611
|
if (override !== "on" && override !== "off" && override !== null && override !== void 0) return jsonResponse({ error: "Invalid tiered-execution override" }, { status: 400 });
|
|
5608
5612
|
const project = getProjectSync(extractPrefixSync(issueId) ?? issueId.split("-")[0]);
|
|
5609
5613
|
if (!project) return jsonResponse({ error: "Project not found" }, { status: 404 });
|
|
5610
|
-
yield* Effect.promise(() => import("./record-
|
|
5614
|
+
yield* Effect.promise(() => import("./record-Ug18Cp4V.js").then((m) => m.writeRecordTieredExecutionOverride(project, issueId, override)));
|
|
5611
5615
|
const projectPath = project.path;
|
|
5612
5616
|
const location = yield* resolvePlanLocation(projectPath, issueId);
|
|
5613
5617
|
if (!location) return jsonResponse({ error: "No xBRIEF plan found for this workspace" }, { status: 404 });
|
|
@@ -6022,7 +6026,7 @@ async function startDashboardDurableReviewPipeline(input, dependencies) {
|
|
|
6022
6026
|
});
|
|
6023
6027
|
if (!result.success) {
|
|
6024
6028
|
setReviewPending({
|
|
6025
|
-
reviewStatus: "
|
|
6029
|
+
reviewStatus: "failed",
|
|
6026
6030
|
reviewNotes: result.error || result.message || "Failed to dispatch review"
|
|
6027
6031
|
});
|
|
6028
6032
|
return;
|
|
@@ -6209,7 +6213,7 @@ const postWorkspaceReviewRoute = HttpRouter.add("POST", "/api/review/:issueId/tr
|
|
|
6209
6213
|
}
|
|
6210
6214
|
if (!workspaceInfo.exists) return jsonResponse({ error: "Workspace does not exist" }, { status: 400 });
|
|
6211
6215
|
const reviewModeProject = requestedReviewMode.mode === void 0 ? null : yield* Effect.promise(async () => {
|
|
6212
|
-
const { resolveProjectForIssue } = await import("./record-
|
|
6216
|
+
const { resolveProjectForIssue } = await import("./record-Ug18Cp4V.js");
|
|
6213
6217
|
return resolveProjectForIssue(issueId);
|
|
6214
6218
|
});
|
|
6215
6219
|
if (requestedReviewMode.mode !== void 0 && !reviewModeProject) return jsonResponse({ error: `No project configured for ${issueId}` }, { status: 500 });
|
|
@@ -6246,7 +6250,7 @@ const postWorkspaceReviewRoute = HttpRouter.add("POST", "/api/review/:issueId/tr
|
|
|
6246
6250
|
}
|
|
6247
6251
|
if (requestedReviewMode.mode !== void 0 && reviewModeProject) {
|
|
6248
6252
|
const persistenceError = yield* Effect.promise(async () => {
|
|
6249
|
-
const { updateIssueRecord } = await import("./record-update-
|
|
6253
|
+
const { updateIssueRecord } = await import("./record-update-WyhsREoH.js");
|
|
6250
6254
|
await updateIssueRecord(reviewModeProject, issueId, (record) => {
|
|
6251
6255
|
record.reviewMode = requestedReviewMode.mode;
|
|
6252
6256
|
});
|
|
@@ -6275,7 +6279,7 @@ const postWorkspaceReviewRoute = HttpRouter.add("POST", "/api/review/:issueId/tr
|
|
|
6275
6279
|
console.log(`Feature branch push note: ${errorMessage(pushErr)}`);
|
|
6276
6280
|
}
|
|
6277
6281
|
try {
|
|
6278
|
-
const { createReviewArtifactsForIssue } = await import("./review-artifacts-
|
|
6282
|
+
const { createReviewArtifactsForIssue } = await import("./review-artifacts-DGGEobLp.js");
|
|
6279
6283
|
const artifactResult = await Effect.runPromise(createReviewArtifactsForIssue(issueId, workspacePath));
|
|
6280
6284
|
const primaryArtifact = artifactResult.mergeSet?.repos.find((repo) => !!repo.artifactUrl);
|
|
6281
6285
|
artifactResult.mergeSet?.repos.find((repo) => repo.mergeStatus !== "skipped")?.targetBranch;
|
|
@@ -6335,7 +6339,7 @@ const postWorkspaceReviewRoute = HttpRouter.add("POST", "/api/review/:issueId/tr
|
|
|
6335
6339
|
completePendingOperation(issueId, verifyOutcome.reason);
|
|
6336
6340
|
return;
|
|
6337
6341
|
}
|
|
6338
|
-
const { spawnReviewRoleForIssue } = await import("./review-agent-
|
|
6342
|
+
const { spawnReviewRoleForIssue } = await import("./review-agent-DgkUPRx0.js");
|
|
6339
6343
|
const prUrl = getReviewStatusSync(issueId)?.prUrl;
|
|
6340
6344
|
const reviewResult = await Effect.runPromise(spawnReviewRoleForIssue({
|
|
6341
6345
|
issueId,
|
|
@@ -6471,7 +6475,7 @@ const postWorkspaceRequestReviewRoute = HttpRouter.add("POST", "/api/review/:iss
|
|
|
6471
6475
|
console.log(`[request-review] Feature branch push note: ${errorMessage(pushErr)}`);
|
|
6472
6476
|
}
|
|
6473
6477
|
const prUrl = getReviewStatusSync(issueId)?.prUrl;
|
|
6474
|
-
const { spawnReviewRoleForIssue } = await import("./review-agent-
|
|
6478
|
+
const { spawnReviewRoleForIssue } = await import("./review-agent-DgkUPRx0.js");
|
|
6475
6479
|
const result = await Effect.runPromise(spawnReviewRoleForIssue({
|
|
6476
6480
|
issueId,
|
|
6477
6481
|
workspace: workspacePathRerun,
|
|
@@ -6521,7 +6525,7 @@ const postWorkspaceRequestReviewRoute = HttpRouter.add("POST", "/api/review/:iss
|
|
|
6521
6525
|
});
|
|
6522
6526
|
} else {
|
|
6523
6527
|
const workspacePath = join(resolved.projectPath, "workspaces", `feature-${issueId.toLowerCase()}`);
|
|
6524
|
-
const { spawnRun } = yield* Effect.promise(() => import("./agents-
|
|
6528
|
+
const { spawnRun } = yield* Effect.promise(() => import("./agents-DpCuoF65.js"));
|
|
6525
6529
|
try {
|
|
6526
6530
|
const testRun = yield* Effect.promise(() => spawnRun(issueId, "test", { workspace: workspacePath }));
|
|
6527
6531
|
setReviewStatus(issueId, { testStatus: "testing" });
|
|
@@ -6636,7 +6640,7 @@ const postWorkspaceRequestReviewRoute = HttpRouter.add("POST", "/api/review/:iss
|
|
|
6636
6640
|
testStatus: "pending",
|
|
6637
6641
|
reviewNotes
|
|
6638
6642
|
});
|
|
6639
|
-
const { spawnReviewRoleForIssue } = await import("./review-agent-
|
|
6643
|
+
const { spawnReviewRoleForIssue } = await import("./review-agent-DgkUPRx0.js");
|
|
6640
6644
|
const result = await Effect.runPromise(spawnReviewRoleForIssue({
|
|
6641
6645
|
issueId,
|
|
6642
6646
|
workspace: workspacePath,
|
|
@@ -6986,7 +6990,7 @@ const postWorkspaceResetReviewRoute = HttpRouter.add("POST", "/api/review/:issue
|
|
|
6986
6990
|
const result = processResetReviewPipeline(issueId, resetWorkspace.exists);
|
|
6987
6991
|
if (result.httpStatus !== 200) return jsonResponse(result.body, { status: result.httpStatus });
|
|
6988
6992
|
try {
|
|
6989
|
-
const { resetPostMergeState } = yield* Effect.promise(() => import("./merge-agent-
|
|
6993
|
+
const { resetPostMergeState } = yield* Effect.promise(() => import("./merge-agent-BuoC_PRZ.js"));
|
|
6990
6994
|
resetPostMergeState(issueId);
|
|
6991
6995
|
} catch (err) {
|
|
6992
6996
|
console.warn(`[reset-review] resetPostMergeState best-effort failed for ${issueId}:`, err);
|
|
@@ -6995,7 +6999,7 @@ const postWorkspaceResetReviewRoute = HttpRouter.add("POST", "/api/review/:issue
|
|
|
6995
6999
|
const rerun = body?.rerun === true;
|
|
6996
7000
|
if (rerun) try {
|
|
6997
7001
|
yield* Effect.promise(async () => {
|
|
6998
|
-
const { spawnReviewRoleForIssue } = await import("./review-agent-
|
|
7002
|
+
const { spawnReviewRoleForIssue } = await import("./review-agent-DgkUPRx0.js");
|
|
6999
7003
|
const dispatchArgs = buildReviewRedispatchArgs(issueId, resetWorkspace, workspaceInfo, resolved);
|
|
7000
7004
|
if (dispatchArgs) {
|
|
7001
7005
|
const result = await Effect.runPromise(spawnReviewRoleForIssue({
|
|
@@ -7030,7 +7034,7 @@ const postReviewResyncRoute = HttpRouter.add("POST", "/api/review/:issueId/resyn
|
|
|
7030
7034
|
const postWorkspaceReviewPurgeRoute = HttpRouter.add("POST", "/api/review/:issueId/purge", httpHandler(Effect.gen(function* () {
|
|
7031
7035
|
const issueId = (yield* HttpRouter.params)["issueId"] ?? "";
|
|
7032
7036
|
if (!parseIssueIdSync(issueId)) return jsonResponse({ error: "Invalid issue ID" }, { status: 400 });
|
|
7033
|
-
const { purgeReviewAgentsForIssue } = yield* Effect.promise(() => import("./review-agent-
|
|
7037
|
+
const { purgeReviewAgentsForIssue } = yield* Effect.promise(() => import("./review-agent-DgkUPRx0.js"));
|
|
7034
7038
|
const projectKey = resolveProjectFromIssueSync(issueId)?.projectKey;
|
|
7035
7039
|
const purge = yield* Effect.promise(() => purgeReviewAgentsForIssue(projectKey, issueId));
|
|
7036
7040
|
const workspaceInfo = getWorkspaceInfoForIssue(issueId);
|
|
@@ -7060,8 +7064,8 @@ const postWorkspaceAbortReviewRoute = HttpRouter.add("POST", "/api/review/:issue
|
|
|
7060
7064
|
success: false,
|
|
7061
7065
|
error: "Workspace does not exist"
|
|
7062
7066
|
}, { status: 400 });
|
|
7063
|
-
const { resolveProjectFromIssueSync } = yield* Effect.promise(() => import("./projects-
|
|
7064
|
-
const { killAllReviewerSessions } = yield* Effect.promise(() => import("./review-agent-
|
|
7067
|
+
const { resolveProjectFromIssueSync } = yield* Effect.promise(() => import("./projects-LftaVK99.js"));
|
|
7068
|
+
const { killAllReviewerSessions } = yield* Effect.promise(() => import("./review-agent-DgkUPRx0.js"));
|
|
7065
7069
|
const { killed, failed } = yield* killAllReviewerSessions(resolveProjectFromIssueSync(issueId)?.projectKey, issueId);
|
|
7066
7070
|
setReviewStatus(issueId, {
|
|
7067
7071
|
reviewStatus: "pending",
|
|
@@ -7134,8 +7138,8 @@ const getReviewConfigRoute = HttpRouter.add("GET", "/api/review/:issueId/config"
|
|
|
7134
7138
|
const issueId = ((yield* HttpRouter.params)["issueId"] ?? "").toUpperCase();
|
|
7135
7139
|
if (!parseIssueIdSync(issueId)) return jsonResponse({ error: "Invalid issue ID" }, { status: 400 });
|
|
7136
7140
|
return jsonResponse(yield* Effect.promise(async () => {
|
|
7137
|
-
const { readIssueRecordSync, resolveProjectForIssue } = await import("./record-
|
|
7138
|
-
const { resolveReviewMode } = await import("./review-agent-
|
|
7141
|
+
const { readIssueRecordSync, resolveProjectForIssue } = await import("./record-Ug18Cp4V.js");
|
|
7142
|
+
const { resolveReviewMode } = await import("./review-agent-DgkUPRx0.js");
|
|
7139
7143
|
const project = resolveProjectForIssue(issueId);
|
|
7140
7144
|
const record = project ? readIssueRecordSync(project, issueId) : null;
|
|
7141
7145
|
return {
|
|
@@ -7166,9 +7170,9 @@ const postReviewConfigRoute = HttpRouter.add("POST", "/api/review/:issueId/confi
|
|
|
7166
7170
|
return jsonResponse({ error: error instanceof Error ? error.message : String(error) }, { status: 400 });
|
|
7167
7171
|
}
|
|
7168
7172
|
return jsonResponse(yield* Effect.promise(async () => {
|
|
7169
|
-
const { resolveProjectForIssue } = await import("./record-
|
|
7170
|
-
const { updateIssueRecord } = await import("./record-update-
|
|
7171
|
-
const { resolveReviewMode } = await import("./review-agent-
|
|
7173
|
+
const { resolveProjectForIssue } = await import("./record-Ug18Cp4V.js");
|
|
7174
|
+
const { updateIssueRecord } = await import("./record-update-WyhsREoH.js");
|
|
7175
|
+
const { resolveReviewMode } = await import("./review-agent-DgkUPRx0.js");
|
|
7172
7176
|
const record = await updateIssueRecord(resolveProjectForIssue(issueId), issueId, (current) => {
|
|
7173
7177
|
if (hasMode) if (body.reviewMode === null) delete current.reviewMode;
|
|
7174
7178
|
else current.reviewMode = body.reviewMode;
|
|
@@ -7595,7 +7599,7 @@ async function readWorkspacePlanningMarkdown(issueId, fileName) {
|
|
|
7595
7599
|
*/
|
|
7596
7600
|
async function readWorkspaceContinueFile(_projectPath, workspacePath, issueId) {
|
|
7597
7601
|
try {
|
|
7598
|
-
const { readRecordContinueViewSync, getProjectConfigFromWorkspacePath, resolveProjectForIssue } = await import("./record-
|
|
7602
|
+
const { readRecordContinueViewSync, getProjectConfigFromWorkspacePath, resolveProjectForIssue } = await import("./record-Ug18Cp4V.js");
|
|
7599
7603
|
const recordView = readRecordContinueViewSync(resolveProjectForIssue(issueId) ?? getProjectConfigFromWorkspacePath(workspacePath), issueId);
|
|
7600
7604
|
return recordView ? JSON.stringify(recordView, null, 2) : null;
|
|
7601
7605
|
} catch {
|
|
@@ -8375,7 +8379,7 @@ const getWorkspaceReviewStatusRoute = HttpRouter.add("GET", "/api/review/:issueI
|
|
|
8375
8379
|
if (queuePosition === null) try {
|
|
8376
8380
|
const resolved = resolveProjectFromIssueSync(issueId);
|
|
8377
8381
|
if (resolved) {
|
|
8378
|
-
const { getQueueForProject } = yield* Effect.promise(() => import("./merge-
|
|
8382
|
+
const { getQueueForProject } = yield* Effect.promise(() => import("./merge-BB_bjJ9a.js"));
|
|
8379
8383
|
const mergePos = findPositionInQueueSync(issueId, getQueueForProject(resolved.projectKey).map((e) => ({
|
|
8380
8384
|
id: String(e.id),
|
|
8381
8385
|
type: "task",
|
|
@@ -8415,7 +8419,7 @@ const postWorkspaceReviewStatusRoute = HttpRouter.add("POST", "/api/review/:issu
|
|
|
8415
8419
|
const workspaceInfo = getWorkspaceInfoForIssue(issueId);
|
|
8416
8420
|
if (workspaceInfo.exists && workspaceInfo.localPath) {
|
|
8417
8421
|
const localPath = workspaceInfo.localPath;
|
|
8418
|
-
const { snapshotWorkspaceHeadsPromise } = yield* Effect.promise(() => import("./git-utils-
|
|
8422
|
+
const { snapshotWorkspaceHeadsPromise } = yield* Effect.promise(() => import("./git-utils-CsKV0Dis.js"));
|
|
8419
8423
|
try {
|
|
8420
8424
|
const headAnchor = yield* Effect.promise(() => snapshotWorkspaceHeadsPromise(issueId, localPath));
|
|
8421
8425
|
if (headAnchor) update.reviewedAtCommit = headAnchor;
|
|
@@ -8432,7 +8436,7 @@ const postWorkspaceReviewStatusRoute = HttpRouter.add("POST", "/api/review/:issu
|
|
|
8432
8436
|
if (verificationStatus) update.verificationStatus = verificationStatus;
|
|
8433
8437
|
if (readyForMerge !== void 0) update.readyForMerge = readyForMerge;
|
|
8434
8438
|
const status = setReviewStatus(issueId, update);
|
|
8435
|
-
const { getTmuxSessionName } = yield* Effect.promise(() => import("./specialists-
|
|
8439
|
+
const { getTmuxSessionName } = yield* Effect.promise(() => import("./specialists-x-kPMhrL.js"));
|
|
8436
8440
|
const projectKey = resolveProjectFromIssueSync(issueId)?.projectKey;
|
|
8437
8441
|
if (reviewStatus && [
|
|
8438
8442
|
"passed",
|
|
@@ -8450,7 +8454,7 @@ const postWorkspaceReviewStatusRoute = HttpRouter.add("POST", "/api/review/:issu
|
|
|
8450
8454
|
const agentId = `agent-${issueId.toLowerCase()}`;
|
|
8451
8455
|
const feedbackBody = `CODE REVIEW ${reviewStatus.toUpperCase()} for ${issueId}:\n\n${reviewNotes}\n\n## REQUIRED: Fix ALL issues above, then invoke the /rebase-and-submit skill\n\n1. Read each blocking issue carefully\n2. Fix the code for EVERY issue listed\n3. Run tests locally to verify your fixes\n4. Commit every change\n5. Invoke the /rebase-and-submit skill for ${issueId} — this is an atomic task that runs pan done (which handles rebase + push + re-submit internally)\n\nDo NOT stop between steps. Do NOT run git push manually — the skill handles it. Do NOT stop until pan done has completed successfully.`;
|
|
8452
8456
|
yield* Effect.gen(function* () {
|
|
8453
|
-
const { writeFeedbackFile } = yield* Effect.promise(() => import("./feedback-writer-
|
|
8457
|
+
const { writeFeedbackFile } = yield* Effect.promise(() => import("./feedback-writer-CH2846DP.js"));
|
|
8454
8458
|
const fileResult = yield* writeFeedbackFile({
|
|
8455
8459
|
issueId,
|
|
8456
8460
|
workspacePath: getWorkspaceInfoForIssue(issueId).localPath,
|
|
@@ -8513,7 +8517,7 @@ const postWorkspaceReviewStatusRoute = HttpRouter.add("POST", "/api/review/:issu
|
|
|
8513
8517
|
const agentId = `agent-${issueId.toLowerCase()}`;
|
|
8514
8518
|
const feedbackBody = `TESTS FAILED for ${issueId}:\n\n${testNotes}\n\n## REQUIRED: Fix ALL test failures, then invoke the /rebase-and-submit skill\n\n1. Read each test failure carefully\n2. Fix the code causing EVERY failure\n3. Run the test suite locally to verify your fixes pass\n4. Commit every change\n5. Invoke the /rebase-and-submit skill for ${issueId} — this is an atomic task that runs pan done (which handles rebase + push + re-submit internally)\n\nDo NOT stop between steps. Do NOT run git push manually — the skill handles it. Do NOT stop until pan done has completed successfully.`;
|
|
8515
8519
|
yield* Effect.gen(function* () {
|
|
8516
|
-
const { writeFeedbackFile } = yield* Effect.promise(() => import("./feedback-writer-
|
|
8520
|
+
const { writeFeedbackFile } = yield* Effect.promise(() => import("./feedback-writer-CH2846DP.js"));
|
|
8517
8521
|
const fileResult = yield* writeFeedbackFile({
|
|
8518
8522
|
issueId,
|
|
8519
8523
|
workspacePath: getWorkspaceInfoForIssue(issueId).localPath,
|
|
@@ -8546,14 +8550,14 @@ const postWorkspaceReviewStatusRoute = HttpRouter.add("POST", "/api/review/:issu
|
|
|
8546
8550
|
} else console.log(`[review-status] ${issueId} automated tests passed, but another gate remains unresolved (uat=${status.uatStatus ?? "not-required"})`);
|
|
8547
8551
|
yield* Effect.promise(async () => {
|
|
8548
8552
|
try {
|
|
8549
|
-
const { resolveProjectFromIssueSync, getProjectSync } = await import("./projects-
|
|
8553
|
+
const { resolveProjectFromIssueSync, getProjectSync } = await import("./projects-LftaVK99.js");
|
|
8550
8554
|
const project = resolveProjectFromIssueSync(issueId);
|
|
8551
8555
|
const repo = (project ? getProjectSync(project.projectKey) : null)?.github_repo;
|
|
8552
8556
|
if (!repo || !repo.includes("/")) return;
|
|
8553
8557
|
const [owner, name] = repo.split("/");
|
|
8554
8558
|
const wsInfo = getWorkspaceInfoForIssue(issueId);
|
|
8555
8559
|
if (!wsInfo?.localPath) return;
|
|
8556
|
-
const { postOverdeckTestsStatus } = await import("./github-app-
|
|
8560
|
+
const { postOverdeckTestsStatus } = await import("./github-app-Oi5hdn1n.js");
|
|
8557
8561
|
await postOverdeckTestsStatus(wsInfo.localPath, owner, name, "success", "Test specialist passed");
|
|
8558
8562
|
} catch (err) {
|
|
8559
8563
|
console.warn(`[review-status] Failed to post overdeck/tests for ${issueId}: ${err.message}`);
|
|
@@ -8597,7 +8601,7 @@ const postWorkspaceRefreshTokenRoute = HttpRouter.add("POST", "/api/workspaces/:
|
|
|
8597
8601
|
if (!parseIssueIdSync(issueId)) return jsonResponse({ error: "Invalid issue ID" }, { status: 400 });
|
|
8598
8602
|
const issueLower = issueId.toLowerCase();
|
|
8599
8603
|
const workspacePath = join(getProjectPath(void 0, extractPrefixSync(issueId) ?? issueId.split("-")[0]), "workspaces", `feature-${issueLower}`);
|
|
8600
|
-
const { refreshWorkspaceToken, isGitHubAppConfigured } = yield* Effect.promise(() => import("./github-app-
|
|
8604
|
+
const { refreshWorkspaceToken, isGitHubAppConfigured } = yield* Effect.promise(() => import("./github-app-Oi5hdn1n.js"));
|
|
8601
8605
|
if (!isGitHubAppConfigured()) return jsonResponse({
|
|
8602
8606
|
success: false,
|
|
8603
8607
|
error: "GitHub App not configured"
|
|
@@ -8617,6 +8621,6 @@ const postWorkspaceRefreshTokenRoute = HttpRouter.add("POST", "/api/workspaces/:
|
|
|
8617
8621
|
})));
|
|
8618
8622
|
const workspacesRouteLayer = Layer.mergeAll(workspaceDataRouteLayer, postWorkspaceRebuildRoute, postWorkspaceRebuildAndStartRoute, uatStackActionRouteLayer, getWorkspaceStateMdRoute, getWorkspaceInferenceMdRoute, stashCleanRouteLayer, containerOpsRouteLayer, postWorkspaceStartRoute, getWorkspaceReviewStatusRoute, postWorkspaceReviewStatusRoute, reviewPipelineRouteLayer, reviewControlRouteLayer, mergeOpsRouteLayer, postWorkspaceRefreshTokenRoute);
|
|
8619
8623
|
//#endregion
|
|
8620
|
-
export {
|
|
8624
|
+
export { resolveIssueHeadlineCost as C, stopAgentOutputService as D, startAgentOutputService as E, getCachedRunningAgents as S, retainAgentOutputInterest as T, migrateAllSessionsSync as _, mergeOpsRouteLayer as a, syncCacheSync as b, shouldBlockApproveForDirtyStatus as c, eventsRouteLayer as d, resumeQueuedMerges as f, reclassifyUnknownCostEventsSync as g, reconcilePiTranscripts as h, isBranchAlreadyRebased as i, triggerMerge as l, reconcile as m, buildRichPRBody as n, pushApproveMain as o, syncWalFromAllProjects as p, ensurePRExists as r, reconcileGitHubMergeStatus as s, workspacesRouteLayer as t, internalEventsRouteLayer as u, getCostsForIssueSync as v, getWorkspacePathForIssue as w, processPendingFeedbackDeliveries as x, rebuildCacheSync as y };
|
|
8621
8625
|
|
|
8622
|
-
//# sourceMappingURL=workspaces-
|
|
8626
|
+
//# sourceMappingURL=workspaces-BJdPqx_J.js.map
|