@overdeck/desktop 0.47.0 → 0.48.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/drizzle/overdeck/0000_overdeck_init.sql +59 -0
- package/package.json +1 -1
- package/server/{acceptance-criteria-10Ur5Dne.js → acceptance-criteria-DmtLDbtt.js} +2 -2
- package/server/{activity-logger-CyteR4JO.js → activity-logger-Co5qljIj.js} +55 -4
- package/server/activity-logger-K7FYGF_z.js +3 -0
- package/server/{advancing-selfheal-BNwqxseD.js → advancing-selfheal-8AR68Asf.js} +6 -6
- package/server/{agent-gc-C3h9Or3a.js → agent-gc-BmYeT6eH.js} +5 -5
- package/server/agent-state-Dq3s84-P.js +3 -0
- package/server/{agent-state-service-C63p_ftq.js → agent-state-service-DK1Vay1E.js} +1 -1
- package/server/{agent-state-service-Ds6OeFvo.js → agent-state-service-rjnzpHDx.js} +6 -6
- package/server/agent-state-source-Ds968-j6.js +21 -0
- package/server/{agents-J5mEnekq.js → agents-Dls7tfJH.js} +5 -5
- package/server/agents-IPSa5kzn.js +3 -0
- package/server/{archive-planning-BwhxeP7C.js → archive-planning-Cq7cyinS.js} +51 -24
- package/server/archive-planning-MbkGCBIY.js +2 -0
- package/server/{artifact-index-jobs-D1q_vR3V.js → artifact-index-jobs-Dj_8kpTd.js} +3 -3
- package/server/{assemble-Bgwqv-Ro.js → assemble-BTCmbcfH.js} +20 -13
- package/server/{auto-spawn-consent-CQ9Bi9q6.js → auto-spawn-consent-lXqRJ1Dr.js} +304 -121
- package/server/{backlog-auto-trigger-n1lzPgN4.js → backlog-auto-trigger-Dn-amzt6.js} +3 -3
- package/server/{behavior-td6-xhQk.js → behavior-DIMQMRzs.js} +2 -2
- package/server/{boot-reconciled-stop-events-C7gGe3oB.js → boot-reconciled-stop-events-D6SeUTIr.js} +1 -1
- package/server/{bridge-pool-patrol-CYH2OLb5.js → bridge-pool-patrol-BEjt-xF3.js} +2 -2
- package/server/{briefing-freshness-DRqZ8lAz.js → briefing-freshness-3PNmL_p3.js} +2 -2
- package/server/{build-info-7yiEpl6u.js → build-info-CJg813Hm.js} +3 -3
- package/server/{build-info-CpG__c63.js → build-info-CXyeFsXu.js} +1 -1
- package/server/{checkpoint-manager-CkKmB0wZ.js → checkpoint-manager-9t7G5c1V.js} +1 -1
- package/server/{checkpoint-manager-DBcyNR8w.js → checkpoint-manager-B2G38R3p.js} +3 -3
- package/server/checkpoint-worker.js +1 -1
- package/server/{checkpoints-Wm963lm8.js → checkpoints-CuBgiXO-.js} +1 -1
- package/server/{checkpoints-D95apurL.js → checkpoints-VTZMd4Qm.js} +2 -2
- package/server/{claude-hooks-provision-Bjitl9aI.js → claude-hooks-provision-55SyQaPz.js} +2 -2
- package/server/{claude-hooks-provision-4RPxNkE8.js → claude-hooks-provision-CEUT-CZd.js} +1 -1
- package/server/{claude-permissions-CpbpvUQ2.js → claude-permissions-Cn0dIu2i.js} +2 -2
- package/server/{claude-settings-overlay-BzkHYDwR.js → claude-settings-overlay-B19hdzSA.js} +1 -1
- package/server/{claude-settings-overlay-_H9Yrzab.js → claude-settings-overlay-Yg_ANh81.js} +2 -2
- package/server/{cli-Cte9ZFGn.js → cli-C9S84iTy.js} +79 -22
- package/server/cli-M1cwZ__d.js +3 -0
- package/server/{cliproxy-C5fMJ7rY.js → cliproxy-CJq3KXU6.js} +2 -2
- package/server/{cliproxy-DaAbWMjC.js → cliproxy-DgEZlr7Y.js} +1 -1
- package/server/{close-issue-BPh1ARCF.js → close-issue-DPxRddGR.js} +5 -5
- package/server/{closed-issue-reaper-DoOZqGFK.js → closed-issue-reaper-C5Zn4GRS.js} +13 -13
- package/server/{closed-issue-reaper-DHRfRMrp.js → closed-issue-reaper-D-2B48Ri.js} +1 -1
- package/server/{codex-o8FJwzmy.js → codex-B3n_rkwn.js} +1 -1
- package/server/{codex-BzGDW_d3.js → codex-CjkD1PJu.js} +6 -6
- package/server/{codex-parser-Dt-ycU8L.js → codex-parser-DpB1Il-P.js} +2 -2
- package/server/{compaction-continuation-CvXpbZ4w.js → compaction-continuation-DZD9ukSE.js} +3 -3
- package/server/{config-CL3Gyvja.js → config-C5saf4Ja.js} +1 -1
- package/server/{config-BvLe652W.js → config-DnLJATZk.js} +2 -2
- package/server/{config-Bi3u1VK7.js → config-DvM8jtQK.js} +2 -2
- package/server/{config-yaml-CxdwhAIA.js → config-yaml-BSCqwmX0.js} +11299 -10972
- package/server/{conflict-gate-CX80JYYS.js → conflict-gate-DXa_L28t.js} +1 -1
- package/server/{conflict-gate-E4nt7ZeS.js → conflict-gate-WfVqgalf.js} +4 -4
- package/server/{context-layers-DAG83UZt.js → context-layers-D7UqH9Ab.js} +2 -2
- package/server/{context-layers-C_IIysnm.js → context-layers-Dpz3Vd6d.js} +3 -3
- package/server/{control-settings-CiqGxXnc.js → control-settings-DVf6pKyv.js} +4 -4
- package/server/{conversation-compaction-BE3CNtHF.js → conversation-compaction-5XuH6OBn.js} +1 -1
- package/server/{conversation-compaction-D6-yLtqt.js → conversation-compaction-COrbnX1J.js} +8 -8
- package/server/{conversation-service-DBxoYMDl.js → conversation-service-BufdtnZF.js} +169 -10
- package/server/{conversation-service-D_TS2b1r.js → conversation-service-DnUyIiLb.js} +1 -1
- package/server/{conversations-D0UEdLtk.js → conversations-B4rxz-Wl.js} +17 -10
- package/server/{conversations-BKDVpB-3.js → conversations-D1bwxQMy.js} +1 -1
- package/server/{cost-DpgYmYqR.js → cost-CpFDrJUS.js} +46 -2
- package/server/{cost-DS1s0DbG.js → cost-KLuwKCW9.js} +3 -3
- package/server/{cost-sync-tOCCGnEt.js → cost-sync-cesi9dp8.js} +3 -3
- package/server/{dag-BtkgLeqY.js → dag-BYiFMqpU.js} +2 -2
- package/server/{dangerous-git-ops-CFLykHWt.js → dangerous-git-ops-BKvd3-Hk.js} +1 -1
- package/server/dashboard-db-worker.js +7 -7
- package/server/{deacon-BIblC-WX.js → deacon-BbsWw8a6.js} +3 -3
- package/server/{deacon-pLRLbPvR.js → deacon-HdEh0Esp.js} +863 -214
- package/server/deacon-event-client-C93rvOT7.js +237 -0
- package/server/deacon-event-client-Ck5Ei7Mn.js +3 -0
- package/server/{deacon-nudge-log-B08gF0mh.js → deacon-nudge-log-BND_97Wo.js} +4 -3
- package/server/{deacon-pending-lifecycle-B-Io84AP.js → deacon-pending-lifecycle-CD3YsiQK.js} +3 -3
- package/server/deacon-swarm-DgWADWd_.js +2 -0
- package/server/{deacon-swarm-v5PMun-m.js → deacon-swarm-rqrl4TMs.js} +39 -18
- package/server/deacon.js +12 -210
- package/server/{dead-end-trip-D8A3msX9.js → dead-end-trip-DSF23CLX.js} +4 -3
- package/server/dead-end-trip-zKlS4v6f.js +2 -0
- package/server/delivery-CsbQdZkS.js +3 -0
- package/server/{deploy-patrol-sYgOxLeb.js → deploy-patrol-kARAkji4.js} +17 -21
- package/server/{deploy-queue-VfohaPN_.js → deploy-queue-Bj0HJT1i.js} +2 -2
- package/server/{deploy-queue-gHJBycaF.js → deploy-queue-rjTUy1RM.js} +1 -1
- package/server/{deploy-window-D4DQb8VP.js → deploy-window-B2IM-9G5.js} +10 -44
- package/server/{deploy-window-CFRZ0-kt.js → deploy-window-BNFWnA8D.js} +1 -1
- package/server/{dev-supervisor-DiOBDM1c.js → dev-supervisor-B1mZYXz4.js} +2 -2
- package/server/{devcontainer-renderer-BUOIlfgD.js → devcontainer-renderer-B-o68Z5B.js} +3 -3
- package/server/{dist-C3A8B8wM.js → dist-3W--cGMa.js} +1 -1
- package/server/dist-BR0QtwmS.js +3 -0
- package/server/{dist-src-C0adpegX.js → dist-src-C-Vk2jNk.js} +1 -1
- package/server/{docker-Y3PElJb0.js → docker-DH3jUYg1.js} +1 -1
- package/server/{docker-BJzlkqYB.js → docker-meuLKLzV.js} +27 -20
- package/server/{dod-DlNtcH6n.js → dod-D7-9dCOD.js} +1 -1
- package/server/{driver-CKVGi51s.js → driver-CmsY2RLl.js} +1 -1
- package/server/{durable-review-pipeline-DP6bIcOY.js → durable-review-pipeline-CStTgOAf.js} +1 -1
- package/server/{durable-review-pipeline-Cibps-Rg.js → durable-review-pipeline-Chq0lzjL.js} +1 -1
- package/server/{ensure-devcontainer-DMAbWqtQ.js → ensure-devcontainer-BE3llBWP.js} +1 -1
- package/server/{ensure-devcontainer-BAofzBPv.js → ensure-devcontainer-BXrY7C2Z.js} +4 -4
- package/server/{esm-shims-BeObUkaw.js → esm-shims-Bzy4ZzNU.js} +1 -1
- package/server/event-store-COd2tOx8.js +3 -0
- package/server/{event-store-CrHcVC5_.js → event-store-D_AR-Y78.js} +184 -11
- package/server/{events-CF8QDbuV.js → events-CCkFWa7X.js} +1 -1
- package/server/{events-BNrvchBg.js → events-zjDQozet.js} +3 -3
- package/server/{factory-Cmm9Hsho.js → factory-DhavwKVc.js} +5 -5
- package/server/{feature-registry-population-B6HpNWRy.js → feature-registry-population-DWGBKyWd.js} +4 -4
- package/server/{feature-registry-storage-DJEFx1Pf.js → feature-registry-storage-C5DkXmCM.js} +3 -3
- package/server/{features-D5km80UI.js → features-CC47YcCX.js} +2 -2
- package/server/{feedback-target-BJ5ZADsu.js → feedback-target-D9Tex35_.js} +1 -1
- package/server/{feedback-target-DSxEL6lP.js → feedback-target-DoRCR3L-.js} +18 -7
- package/server/{feedback-writer-CoB9Z6aU.js → feedback-writer-CTSuA6lw.js} +1 -1
- package/server/{feedback-writer-C27Hak8a.js → feedback-writer-DdsBdtNL.js} +5 -5
- package/server/{flywheel-DZZdtiOL.js → flywheel-DHWHzaYK.js} +1 -1
- package/server/{flywheel-f662Q-y2.js → flywheel-DJQa9az8.js} +14 -14
- package/server/{flywheel-BHx8XuMr.js → flywheel-TacAI9MA.js} +21 -17
- package/server/{flywheel-merge-order-Dil0LmdN.js → flywheel-merge-order-D2foPh88.js} +1 -1
- package/server/{flywheel-merge-order-D_xLMbJU.js → flywheel-merge-order-DRtex2Dt.js} +7 -7
- package/server/forge-CdlCG9aS.js +3 -0
- package/server/{forge-BaKGCya6.js → forge-c8LeC-tw.js} +2 -2
- package/server/{from-B3tZbB55.js → from-BogSwvr2.js} +1 -1
- package/server/{fs-lock-Bre3sGoz.js → fs-lock-D_GeJtXl.js} +3 -3
- package/server/{fts-operations-B9jG8wa3.js → fts-operations-DP9R-8Q3.js} +3 -3
- package/server/{git-utils-Xg4PFN45.js → git-utils-C31x1lpE.js} +1 -1
- package/server/{git-utils-CsvYfJU3.js → git-utils-xQ74FoSn.js} +5 -4
- package/server/{github-app-Bmg4R9mv.js → github-app-CpQSDlv8.js} +1 -1
- package/server/{github-app-CmNk0zLU.js → github-app-D2QuvZ3j.js} +3 -3
- package/server/{github-client-qazkPrg0.js → github-client-D9YvJX5D.js} +3 -3
- package/server/{github-client-B6KM9_wA.js → github-client-Tpi3PmKX.js} +1 -1
- package/server/{github-pr-lookup-DAcVeRLK.js → github-pr-lookup-DvBMv-IW.js} +2 -2
- package/server/{harness-binary-BSpiXaLw.js → harness-binary-BHxWf_sX.js} +7 -6
- package/server/{harness-resolve-BAJu5MX8.js → harness-resolve-bj9WMABA.js} +4 -4
- package/server/{health-events-BwX32k8d.js → health-events-bCDPn59Z.js} +2 -2
- package/server/{health-events-2Z6Wa9SM.js → health-events-qo7Ss34U.js} +1 -1
- package/server/{hooks-DbtbimEf.js → hooks-Dyxtg5fk.js} +2 -2
- package/server/{hooks-D1g1jKLI.js → hooks-X2XHBB2b.js} +1 -1
- package/server/{hume-DXNiu6nQ.js → hume-DrZEGpqc.js} +2 -2
- package/server/hume-YPsy4UA8.js +3 -0
- package/server/{idle-stack-reaper-Cy-dQzW4.js → idle-stack-reaper-CJ1ygW0p.js} +37 -7
- package/server/{idle-stack-reaper-CRA1e0jr.js → idle-stack-reaper-uJGOb-vu.js} +1 -1
- package/server/{in-flight-guard-D-sSkADM.js → in-flight-guard-CG2Eo-rr.js} +1 -1
- package/server/{infra-BDQDRopn.js → infra-CTrmVqc_.js} +111 -6
- package/server/{injection-Bl8d_jHZ.js → injection-BisQ0lpX.js} +1 -1
- package/server/{injection-6AGnXxlj.js → injection-C9sxqbc2.js} +73 -193
- package/server/{inspect-agent-nXdIptyh.js → inspect-agent-BoSO51YC.js} +12 -12
- package/server/inspect-agent-BykeOH4a.js +2 -0
- package/server/{internal-token-DzK385vD.js → internal-token-AvXePaQT.js} +2 -2
- package/server/{internal-token-Ias7N8Kg.js → internal-token-Djkj-yqK.js} +1 -1
- package/server/{io-B00PBNku.js → io-mxOWMZ7I.js} +6 -6
- package/server/{issue-closed-BehTG1be.js → issue-closed-Bj_bCv_0.js} +7 -7
- package/server/{issue-lifecycle-BqSuQvbn.js → issue-lifecycle-A5YIpDZE.js} +1 -1
- package/server/{issue-lifecycle-Birk-ifu.js → issue-lifecycle-BXUqaHzF.js} +32 -28
- package/server/{issue-service-singleton-C6ZduvuY.js → issue-service-singleton-BPNEXczv.js} +11 -11
- package/server/{issue-service-singleton-B2wXiIlw.js → issue-service-singleton-CcaHjKPR.js} +1 -1
- package/server/{issues-DQ5-LatB.js → issues-AX-YBeAQ.js} +2 -2
- package/server/{jsonl-parser-BDpnGFCl.js → jsonl-parser-CgYWQ20q.js} +7 -3
- package/server/kimi-code-BYbme0aV.js +579 -0
- package/server/kimi-code-D_Ppt82c.js +3 -0
- package/server/kimi-parser-B-JBg3Pv.js +147 -0
- package/server/{label-cleanup-Dwnky8FG.js → label-cleanup-sXUlgdM0.js} +3 -3
- package/server/{lifecycle-B4Xdb4cY.js → lifecycle-D2X3al0D.js} +2 -2
- package/server/{lifecycle-B3s4sM1G.js → lifecycle-DjlljAZ1.js} +6 -6
- package/server/{lifecycle-io-CzTHEooc.js → lifecycle-io-C5nVk55o.js} +1 -1
- package/server/{lifecycle-io-DCo6s6ks.js → lifecycle-io-NPm1YtIG.js} +5 -5
- package/server/{linear-client-CnbtHiic.js → linear-client--luYwCZg.js} +1 -1
- package/server/{linear-client-9uq7fhiV.js → linear-client-B8pLegW1.js} +3 -3
- package/server/{linear-mcp-auth-BxUOzswy.js → linear-mcp-auth-BQVWV0I3.js} +6 -6
- package/server/{linear-mcp-auth-D46fBCLf.js → linear-mcp-auth-Dx81Zl4G.js} +1 -1
- package/server/memory-fts-worker.js +1 -1
- package/server/{merge-DiW9RdSB.js → merge-Bx5Bh9pi.js} +3 -3
- package/server/{merge-sr8Nrnmi.js → merge-Dqmh_zja.js} +1 -1
- package/server/{merge-agent-BLUgRsz3.js → merge-agent-DP9AUY29.js} +33 -33
- package/server/{merge-agent-DQTXZk8z.js → merge-agent-DWd0KfiS.js} +1 -1
- package/server/{merge-batch-Cp_j9BGk.js → merge-batch-BdmvTEAC.js} +1 -1
- package/server/{merge-completeness-BLbB5-6n.js → merge-completeness-BfRwFjRx.js} +1 -1
- package/server/{merge-completeness-B46KqhtY.js → merge-completeness-C1FevcDT.js} +4 -4
- package/server/merge-ops-B98tKc1e.js +2 -0
- package/server/merge-rebase-BLykMwPO.js +2 -0
- package/server/{merge-rebase-DIkBjgwq.js → merge-rebase-BX1xKsrE.js} +2 -2
- package/server/{merge-set-CBgHfwM0.js → merge-set-DsLjjLEV.js} +4 -4
- package/server/{merge-set-DeUxFsC3.js → merge-set-H6epHOsw.js} +1 -1
- package/server/{merge-sync-kr4vqyjM.js → merge-sync-BEdfsQV4.js} +2 -2
- package/server/{merge-sync-CpGmk6Ch.js → merge-sync-BebcWWGA.js} +1 -1
- package/server/{merge-train-Dmrcus12.js → merge-train-D1I0lNOT.js} +4 -4
- package/server/{merge-train-deps-D_uGX91G.js → merge-train-deps-D_-C0Pk2.js} +4 -4
- package/server/{merge-verification-NvaAd8CZ.js → merge-verification-DN1Ov9bU.js} +6 -6
- package/server/{merged-docker-cleanup-worker-Y1R06TEl.js → merged-docker-cleanup-worker-CfXSr2pA.js} +4 -4
- package/server/{merged-docker-cleanup-worker-DH_hrGPI.js → merged-docker-cleanup-worker-ybsPyHjB.js} +1 -1
- package/server/{multipart-parser-R-oC8dQg.js → multipart-parser-CL5QG8iv.js} +2 -2
- package/server/{no-resume-mode-BgD0JUmM.js → no-resume-mode-DUR7Hi98.js} +1 -1
- package/server/node_modules/.package-lock.json +7 -7
- package/server/node_modules/brace-expansion/README.md +23 -1
- package/server/node_modules/brace-expansion/index.js +206 -85
- package/server/node_modules/brace-expansion/package.json +1 -1
- package/server/node_modules/msgpackr/dist/index-no-eval.cjs +34 -28
- package/server/node_modules/msgpackr/dist/index-no-eval.cjs.map +1 -1
- package/server/node_modules/msgpackr/dist/index-no-eval.min.js +1 -1
- package/server/node_modules/msgpackr/dist/index-no-eval.min.js.map +1 -1
- package/server/node_modules/msgpackr/dist/index.js +34 -28
- package/server/node_modules/msgpackr/dist/index.js.map +1 -1
- package/server/node_modules/msgpackr/dist/index.min.js +1 -1
- package/server/node_modules/msgpackr/dist/index.min.js.map +1 -1
- package/server/node_modules/msgpackr/dist/node.cjs +36 -29
- package/server/node_modules/msgpackr/dist/node.cjs.map +1 -1
- package/server/node_modules/msgpackr/dist/test.js +63 -32
- package/server/node_modules/msgpackr/dist/test.js.map +1 -1
- package/server/node_modules/msgpackr/dist/unpack-no-eval.cjs +34 -28
- package/server/node_modules/msgpackr/dist/unpack-no-eval.cjs.map +1 -1
- package/server/node_modules/msgpackr/package.json +1 -1
- package/server/node_modules/msgpackr/unpack.js +34 -28
- package/server/{orphan-proposed-reconciler-DcgTPPFY.js → orphan-proposed-reconciler-CEW1maPl.js} +1 -1
- package/server/{orphan-proposed-reconciler-B6vJHxtX.js → orphan-proposed-reconciler-DfqHZftT.js} +23 -22
- package/server/package-lock.json +8 -8
- package/server/package.json +1 -1
- package/server/{pan-dir-DMzF5wne.js → pan-dir-DhgKfO86.js} +21 -6
- package/server/{paths-sJBSb7Ul.js → paths-BUuhi6jM.js} +17 -17
- package/server/{pending-lifecycle-claim-DilzGfgk.js → pending-lifecycle-claim-DJlA1rTR.js} +2 -2
- package/server/{persistent-logger-H_VjuOu7.js → persistent-logger-s8cbpFNV.js} +2 -2
- package/server/{pickup-DWhqzliO.js → pickup-2AxtB3dW.js} +1 -1
- package/server/{pipeline-membership-C88VBnhJ.js → pipeline-membership-2_okL5bm.js} +1 -1
- package/server/{pipeline-membership-D9SBvItj.js → pipeline-membership-Dqv6_0ig.js} +1 -1
- package/server/{pipeline-membership-gather-4eR-7Tqy.js → pipeline-membership-gather-4F1-tXKI.js} +1 -1
- package/server/{pipeline-membership-gather-CeVGnNJ2.js → pipeline-membership-gather-CtJ_7aGf.js} +149 -17
- package/server/{pipeline-notifier-DT6xLFao.js → pipeline-notifier-CO9rxJgB.js} +1 -1
- package/server/{pipeline-notifier-D0ALV6Nw.js → pipeline-notifier-DDfVBJhJ.js} +2 -2
- package/server/{post-merge-lifecycle-worker-8HIeS_J6.js → post-merge-lifecycle-worker-DmSOkeNp.js} +3 -3
- package/server/{project-pipelines-9SKt2bEc.js → project-pipelines-72WE8GVK.js} +2 -2
- package/server/{project-repos-B5pIphKg.js → project-repos-BAqDwtvi.js} +16 -11
- package/server/project-repos-Df90Zw7Y.js +3 -0
- package/server/projects-WqMWCdpa.js +3 -0
- package/server/{prompts-CgzMBvQF.js → prompts-XkL10m8M.js} +2 -2
- package/server/{providers-BJQSnAAp.js → providers-ClGPGkQ8.js} +15 -12
- package/server/providers-DFUOed8u.js +3 -0
- package/server/public/assets/{chunk-BO2N2NFS-D_pGACYN.js → chunk-BO2N2NFS-CeQUdPxr.js} +4 -4
- package/server/public/assets/{diagram-OG6HWLK6-BO6fe3hH.js → diagram-OG6HWLK6-B7rgk4yT.js} +1 -1
- package/server/public/assets/{dist-5zingMiA.js → dist-2RPazfXY.js} +3 -3
- package/server/public/assets/{dist-CVxhbI2E.js → dist-B9NInrVZ.js} +1 -1
- package/server/public/assets/{ganttDiagram-6RSMTGT7-Bgj4A7kp.js → ganttDiagram-6RSMTGT7-Bxp0gV14.js} +1 -1
- package/server/public/assets/{highlighted-body-OFNGDK62-DNPK7_cm.js → highlighted-body-OFNGDK62-CzoRTVlC.js} +1 -1
- package/server/public/assets/index-Cml-kHo6.css +1 -0
- package/server/public/assets/{index-DEpY-D1O.js → index-CvN8cEgs.js} +216 -215
- package/server/public/assets/{linear-BB0jQT16.js → linear-CFEEl3ND.js} +1 -1
- package/server/public/assets/mermaid-GHXKKRXX-CpV7nCBM.js +1 -0
- package/server/public/assets/{pieDiagram-4H26LBE5-DeGIzzpZ.js → pieDiagram-4H26LBE5-BeR8R0cr.js} +1 -1
- package/server/public/assets/{prod-XBLvikex.js → prod-CYjzjCrn.js} +4 -4
- package/server/public/assets/{quadrantDiagram-W4KKPZXB-BV9SLeWz.js → quadrantDiagram-W4KKPZXB-BpcTkFuW.js} +1 -1
- package/server/public/assets/{sankeyDiagram-5OEKKPKP-Dwja0gj8.js → sankeyDiagram-5OEKKPKP-Bx2ETEV5.js} +1 -1
- package/server/public/assets/{xychartDiagram-2RQKCTM6-DCB4qvfw.js → xychartDiagram-2RQKCTM6-BKgEAFaj.js} +1 -1
- package/server/public/index.html +2 -2
- package/server/{pull-requests-7BgLDsIo.js → pull-requests-B-KrUph5.js} +3 -3
- package/server/{pull-requests-Dq0y6IxE.js → pull-requests-DK5k92B4.js} +1 -1
- package/server/{queries-C-MUZaIy.js → queries-DVpl1vsU.js} +1212 -193
- package/server/{rally-CPysR4T_.js → rally-DbE561hD.js} +3 -3
- package/server/rally-O_st_X7n.js +3 -0
- package/server/{rally-api-8Ptlp2os.js → rally-api-CZLeEd2C.js} +2 -2
- package/server/{rally-api-CgosKdKL.js → rally-api-DaHtn5QN.js} +1 -1
- package/server/{rally-client-CCX0hADj.js → rally-client-C-MAl8ur.js} +1 -1
- package/server/{rally-client-iYMHWQD7.js → rally-client-Ch3zRsBX.js} +5 -5
- package/server/{reap-terminal-sessions-Qf-9LVQc.js → reap-terminal-sessions-C1n0ALRb.js} +2 -2
- package/server/{reap-terminal-sessions-4Xg9NGA8.js → reap-terminal-sessions-DegFS2p1.js} +2 -2
- package/server/{rebuild-stack-CMdgaylx.js → rebuild-stack-C9Li44A3.js} +20 -10
- package/server/{rebuild-stack-DqcOVmJO.js → rebuild-stack-qC0jCNm6.js} +2 -2
- package/server/{reconstruct-cache-CMZJ_Vjq.js → reconstruct-cache-BHyiAg02.js} +7 -7
- package/server/record-aVzu-LGm.js +3 -0
- package/server/record-update-CZh46a2f.js +617 -0
- package/server/{record-update-DhI7eySG.js → record-update-DtdJK2Iw.js} +1 -1
- package/server/recovery-trip-CSNWSLDn.js +77 -0
- package/server/recovery-trip-_16hFKv4.js +3 -0
- package/server/{release-engine-B2X9AfFC.js → release-engine-Be5MX5GP.js} +5 -5
- package/server/{release-set-G4XKyQ8K.js → release-set-DJv_O6PS.js} +3 -3
- package/server/{remote-BXarMvqf.js → remote-BMM3uH2J.js} +3 -3
- package/server/{remote-CUhyqjXk.js → remote-C0xVTHA5.js} +3 -3
- package/server/{remote-agents-CLZB3Coc.js → remote-agents-BIIoc5pD.js} +1 -1
- package/server/{remote-agents-Bba-MgSA.js → remote-agents-EUiZ26bj.js} +7 -7
- package/server/{remote-completion-CwAp79EC.js → remote-completion-BS4tJUn8.js} +13 -13
- package/server/resolver-BvHd6RE4.js +163 -0
- package/server/resume-9thEqAQR.js +3 -0
- package/server/{review-agent--pOptAEV.js → review-agent-BHGaBoBu.js} +29 -29
- package/server/{review-agent-BTCNkq2h.js → review-agent-CD3RQ-tc.js} +1 -1
- package/server/{review-artifacts-BNmw8dWE.js → review-artifacts-DyhajWso.js} +6 -6
- package/server/{review-context-DFxYOOJW.js → review-context-B-dlsPnx.js} +9 -9
- package/server/{review-convoy-liveness-BgU_1jJf.js → review-convoy-liveness-D7M-s_nS.js} +2 -2
- package/server/{review-status-Dma9SFaN.js → review-status-B6wYcOtP.js} +1 -1
- package/server/{review-status-CGvlA4o_.js → review-status-CKLk5aZ-.js} +308 -58
- package/server/{review-status-emit-DURrmGYX.js → review-status-emit-CJ7UmEVU.js} +3 -3
- package/server/{review-status-enrichment-8NiNXi5W.js → review-status-enrichment-DJRgGX7-.js} +3 -3
- package/server/review-status-limits-4EJDCGHO.js +7 -0
- package/server/{review-status-source-DIk1JSow.js → review-status-source-7nU3Z2wL.js} +1 -1
- package/server/{review-status-source-BLx_1siH.js → review-status-source-BsDYGfyv.js} +1 -1
- package/server/{review-status-sync-muT-EBp2.js → review-status-sync-BLssMTEW.js} +1 -1
- package/server/{review-status-sync-0GxOqeqF.js → review-status-sync-BxBeHRde.js} +35 -11
- package/server/{review-verdict-feedback-xJNdqBnX.js → review-verdict-feedback-5jWuzgpc.js} +90 -16
- package/server/{review-verdict-feedback-HwF6ODFy.js → review-verdict-feedback-HRY9P4bN.js} +1 -1
- package/server/{rollup-BQaol5TX.js → rollup-BGIrCEkU.js} +79 -44
- package/server/rollup-CZB4UL9q.js +3 -0
- package/server/{scanner-C-D2cFdX.js → scanner-DydjXPrz.js} +16 -9
- package/server/search-DdtIjAiu.js +395 -0
- package/server/{sequence-io-Bmf1EZM5.js → sequence-io-Fw-cLyDs.js} +4 -4
- package/server/{sequencer-agent-CigMyKh2.js → sequencer-agent-BcpGMt5x.js} +15 -10
- package/server/server.js +1258 -438
- package/server/{service-CD0DvFvD.js → service-BFFkGsG4.js} +58 -58
- package/server/{session-fork-B6cQ5eya.js → session-fork-D0V-3e5P.js} +2 -2
- package/server/{session-history-3ON_IJjm.js → session-history-Bta5l9jY.js} +5 -5
- package/server/{settings-PilbFZAM.js → settings-Ce8B1daF.js} +2 -2
- package/server/{settings-VN0qOh4U.js → settings-E3FnEIUx.js} +3 -3
- package/server/settings-eOOJpxi_.js +2 -0
- package/server/{shadow-engineering-DXvx77oE.js → shadow-engineering-Mt9nJO4i.js} +3 -3
- package/server/{shadow-state-CZBp7pwq.js → shadow-state-Bzj_AZCV.js} +1 -1
- package/server/{shadow-state-BBk_zacw.js → shadow-state-DrkhoVSx.js} +2 -2
- package/server/{shadow-utils-DdZ05AJS.js → shadow-utils-H1GfqP06.js} +2 -2
- package/server/{ship-log-7kJfjUX2.js → ship-log-CFUIo4PR.js} +1 -1
- package/server/{smart-compaction-8fA5k5XN.js → smart-compaction-DSTq-Wua.js} +1 -1
- package/server/{smart-compaction-ByhL9cRS.js → smart-compaction-Hzp3KCJX.js} +7 -7
- package/server/{spawn-planning-session-vLUJoFjy.js → spawn-planning-session-C0uSA2SL.js} +2 -2
- package/server/{spawn-planning-session-pcF-YeFE.js → spawn-planning-session-DN4son31.js} +23 -21
- package/server/{specialist-completion-B07XjWD2.js → specialist-completion-Cf6tpIh1.js} +1 -1
- package/server/{specialist-context-DJ-zFyL3.js → specialist-context-DEUEkjIQ.js} +5 -5
- package/server/{specialist-handoff-logger-aKSxbIgD.js → specialist-handoff-logger-D_LmQDj3.js} +2 -2
- package/server/{specialist-logs-Dae-n52_.js → specialist-logs-7Ynue0R7.js} +3 -3
- package/server/{specialists-KR3pKulN.js → specialists-CQwBEGlD.js} +1 -1
- package/server/{specialists-6PWdtWcg.js → specialists-DAjPgYs_.js} +504 -238
- package/server/{specialists-DUiExaxb.js → specialists-Hr6iW9fU.js} +18 -18
- package/server/{specialists-Bz-wFT7R.js → specialists-MOoeB4A8.js} +1 -1
- package/server/specs-Dl88cbKY.js +3 -0
- package/server/{src-B948bGVR.js → src-BYdwL_n-.js} +668 -64
- package/server/{src-vHy2-oCv.js → src-DQnkPN2i.js} +3 -3
- package/server/{src-rac0Mepv.js → src-DhfDV0o4.js} +6 -6
- package/server/{stack-health-DqLTiEu4.js → stack-health-D_iKwNRg.js} +107 -16
- package/server/stack-health-deVSdDwn.js +3 -0
- package/server/{stale-task-claims-Cab_Fo_Z.js → stale-task-claims-BYJGqhLI.js} +5 -5
- package/server/{staleness-CGTZyp6V.js → staleness-CopBDKnA.js} +1 -1
- package/server/{staleness-C-a5rBxF.js → staleness-D8WeMUHd.js} +1 -1
- package/server/{state-home-722Dkx92.js → state-home-DjN8qduI.js} +24 -3
- package/server/{state-mapping-CybR81Uf.js → state-mapping-DlM7OYRW.js} +1 -1
- package/server/{state-migrate-2u8wIpoL.js → state-migrate-a2p1gtD7.js} +4 -4
- package/server/state-mirror-Cv_XgvT5.js +121 -0
- package/server/{stuck-remediation-r1TJu68G.js → stuck-remediation-CXJX_kki.js} +1 -1
- package/server/{stuck-remediation-CC6q3eqQ.js → stuck-remediation-CbCRSz1v.js} +31 -732
- package/server/{substrate-bug-weights-service-CzIyyWFT.js → substrate-bug-weights-service-DxpopNd9.js} +3 -3
- package/server/{summary-fork-BqgmgPDt.js → summary-fork-B61fjRJn.js} +2 -2
- package/server/{summary-fork-Df2WFijM.js → summary-fork-B9pszUJN.js} +91 -10
- package/server/supervisor/{injection-budget-Cg_KIb3o.js → injection-budget-Ar7hgyJq.js} +1 -1
- package/server/supervisor/pty-supervisor.js +12 -3
- package/server/supervisor/{pty-token-BbjwEUUM.js → pty-token-CXCFU0Z8.js} +1 -1
- package/server/{supervisor-BxqSpjcN.js → supervisor-BvnxbuuF.js} +6 -4
- package/server/supervisor-C69kpqvd.js +2 -0
- package/server/{swarm-readiness-DfFxa9-n.js → swarm-readiness-vTw1kqGa.js} +3 -3
- package/server/{system-prerequisites-ICLSkhhZ.js → system-prerequisites-LLzTEqsK.js} +3 -3
- package/server/{teardown-workspace-DRdi_CPa.js → teardown-workspace-CqKKVJr1.js} +15 -15
- package/server/{test-agent-queue-A_-p-i0I.js → test-agent-queue-CWMq7oyG.js} +8 -7
- package/server/{test-verdict-BHgTAwIG.js → test-verdict-NdtgRBuA.js} +1 -1
- package/server/{test-verdict-C4i9aqEP.js → test-verdict-diIWE6hz.js} +15 -3
- package/server/{tldr-daemon-CvWXBhX1.js → tldr-daemon-B1Jhrtc8.js} +1 -1
- package/server/{tldr-daemon-wvsU6bKv.js → tldr-daemon-Bpls1CJB.js} +2 -2
- package/server/{tmux-CfDHob9M.js → tmux-CImZaX4q.js} +10 -16
- package/server/tmux-Cjpx8L8u.js +4 -0
- package/server/{token-DrxwytsZ.js → token-Bgpjo3tE.js} +2 -2
- package/server/token-util-BsjFll-k.js +3 -0
- package/server/{token-util-B48BlCba.js → token-util-BymbpkJp.js} +1 -1
- package/server/{tracker-config-BcPMElRB.js → tracker-config-4DaKVTfc.js} +2 -2
- package/server/{tracker-utils-CJ6BHjcD.js → tracker-utils-BDeAXC-q.js} +2 -2
- package/server/{traefik-connect-DZ6nMYMj.js → traefik-connect-CC5FyxYj.js} +1 -1
- package/server/{tunnel-Bp-dRHZz.js → tunnel-CDWkeceJ.js} +1 -1
- package/server/{tunnel-DUbUPElU.js → tunnel-CPf5M-Pc.js} +3 -3
- package/server/{typed-errors-DyjseiB6.js → typed-errors-9K7Dq_Vn.js} +1 -1
- package/server/{typed-errors-CKeoDdU3.js → typed-errors-DrS5fb5z.js} +1 -1
- package/server/{types-Cm5ASJbq.js → types-DzlUKiuf.js} +4 -3
- package/server/{types-Di8wdakq.js → types-kI9ik8XO.js} +1 -1
- package/server/{uat-promote-verification-CoJuh7XO.js → uat-promote-verification-c_pxoxEc.js} +5 -5
- package/server/{uat-train-4Q0k06CQ.js → uat-train-CWGxBdJO.js} +0 -0
- package/server/{uat-train-Dewoatps.js → uat-train-CfCYd2ve.js} +1 -1
- package/server/{validate-B0C8p66t.js → validate-f3ItVCfm.js} +3 -3
- package/server/{validation-hVOwQk8T.js → validation-5G_wQtea.js} +1 -1
- package/server/{validation-B_kIRfNe.js → validation-7tSiCM82.js} +4 -4
- package/server/{verification-artifact-BxlxTiYK.js → verification-artifact-9h9dH8uX.js} +1 -1
- package/server/{verification-artifact-D70AtckY.js → verification-artifact-C_4WJnf6.js} +1 -1
- package/server/{verification-runner-Bc3cJvpC.js → verification-runner-BV5F6wrA.js} +1 -1
- package/server/{verification-runner-KZTz6u72.js → verification-runner-D58KmBhK.js} +18 -38
- package/server/{vtt-parser-CE_i3Bcw.js → vtt-parser-2iT9OHa9.js} +1 -1
- package/server/{work-agent-prompt-ByrPAzOy.js → work-agent-prompt-D03s4DD1.js} +9 -9
- package/server/{workflows-D0vP1WrK.js → workflows-BMBwLYPV.js} +281 -98
- package/server/workflows-BOmWGpIh.js +2 -0
- package/server/{workspace-DQkRPLlQ.js → workspace-BgflNCH0.js} +3 -3
- package/server/{workspace-COWvdibH.js → workspace-Cn9ywfSW.js} +1 -1
- package/server/{workspace-anchor-drift-pwz23TI1.js → workspace-anchor-drift-C8Fy3shi.js} +1 -1
- package/server/{workspace-anchor-drift-DXYIAHzr.js → workspace-anchor-drift-CMiNncwq.js} +5 -8
- package/server/{workspace-config-BdZM4PvZ.js → workspace-config-aUc2nIz6.js} +1 -1
- package/server/{workspace-manager-BPgTrG66.js → workspace-manager-Bem7ZBs9.js} +521 -292
- package/server/workspace-manager-C0CpNh3t.js +3 -0
- package/server/{workspace-metadata-CdjzAP8x.js → workspace-metadata-C5iSlPRo.js} +1 -1
- package/server/{workspace-metadata-DkO_iTLo.js → workspace-metadata-UKmTYmDQ.js} +2 -2
- package/server/{workspaces-CRBJikLp.js → workspaces-DqxgwDZ8.js} +143 -113
- package/sync-sources/hooks/notification-hook +12 -1
- package/sync-sources/hooks/pan-hook-lib.sh +226 -0
- package/sync-sources/hooks/session-start-hook +31 -4
- package/sync-sources/hooks/work-agent-stop-hook +23 -1
- package/sync-sources/skills/pan-memory/SKILL.md +19 -3
- package/sync-sources/skills/pan-projects/SKILL.md +9 -0
- package/sync-sources/skills/pan-restart/SKILL.md +26 -7
- package/sync-sources/skills/pan-workspace/SKILL.md +77 -0
- package/server/activity-logger-CMthG6Vd.js +0 -3
- package/server/agent-state-CYXJVG72.js +0 -3
- package/server/agents-ePFVoZbu.js +0 -3
- package/server/archive-planning-B2XplFzT.js +0 -2
- package/server/cli-CjOCSnfj.js +0 -3
- package/server/deacon-swarm-B1XkIvfr.js +0 -2
- package/server/delivery-BX9HR4wQ.js +0 -3
- package/server/dist-B3YPQa5A.js +0 -3
- package/server/event-store-5UKzh9Jf.js +0 -3
- package/server/forge-B5o319qI.js +0 -3
- package/server/fts-db-IVc4_M3f.js +0 -146
- package/server/hume-VUCNbTgn.js +0 -3
- package/server/inspect-agent-CUwVmr2h.js +0 -2
- package/server/merge-ops-1abz6O_P.js +0 -2
- package/server/merge-rebase-CJJVAJuz.js +0 -2
- package/server/node_modules/brace-expansion/.tap/coverage/8b906b8c-e21f-40b5-8c0d-214d8c2682c5.json +0 -757
- package/server/node_modules/brace-expansion/.tap/processinfo/8b906b8c-e21f-40b5-8c0d-214d8c2682c5.json +0 -719
- package/server/node_modules/brace-expansion/ADVISORY-CVE-2026-14257.md +0 -107
- package/server/node_modules/brace-expansion/dist/commonjs/index.d.ts +0 -8
- package/server/node_modules/brace-expansion/dist/commonjs/index.d.ts.map +0 -1
- package/server/node_modules/brace-expansion/dist/commonjs/index.js +0 -263
- package/server/node_modules/brace-expansion/dist/commonjs/index.js.map +0 -1
- package/server/node_modules/brace-expansion/dist/commonjs/package.json +0 -3
- package/server/node_modules/brace-expansion/dist/esm/index.d.ts +0 -8
- package/server/node_modules/brace-expansion/dist/esm/index.d.ts.map +0 -1
- package/server/node_modules/brace-expansion/dist/esm/index.js +0 -259
- package/server/node_modules/brace-expansion/dist/esm/index.js.map +0 -1
- package/server/node_modules/brace-expansion/dist/esm/package.json +0 -3
- package/server/project-repos-DPjOdfPa.js +0 -3
- package/server/projects-_n3Zui6K.js +0 -3
- package/server/providers-BI1mOBQ4.js +0 -3
- package/server/public/assets/index-Ddkcz3WT.css +0 -1
- package/server/public/assets/mermaid-GHXKKRXX-BzPfaQJ1.js +0 -1
- package/server/rally-D_VW4bJv.js +0 -3
- package/server/record-BTwWhtBb.js +0 -3
- package/server/record-update-DaOKS7Wb.js +0 -277
- package/server/recovery-trip-DDH-02ng.js +0 -44
- package/server/resume-mOREjlYu.js +0 -3
- package/server/rollup-BR4t_wck.js +0 -3
- package/server/settings-CVmWiJ-r.js +0 -2
- package/server/specs--enInima.js +0 -3
- package/server/stack-health-BikqHSjn.js +0 -3
- package/server/supervisor-B4anCCSm.js +0 -2
- package/server/tmux-Ctk6RV5l.js +0 -3
- package/server/token-util-D411CAq9.js +0 -3
- package/server/workflows-DtDX08ed.js +0 -2
- package/server/workspace-manager-C1F3XsnS.js +0 -3
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { d as getOverdeckDatabaseSync, f as init_infra } from "./infra-
|
|
2
|
-
import { a as init_event_store, i as initEventStore, r as getSharedDb } from "./event-store-
|
|
1
|
+
import { d as getOverdeckDatabaseSync, f as init_infra } from "./infra-CTrmVqc_.js";
|
|
2
|
+
import { a as init_event_store, i as initEventStore, r as getSharedDb } from "./event-store-D_AR-Y78.js";
|
|
3
3
|
//#region ../../lib/overdeck/flywheel-substrate-bugs.ts
|
|
4
4
|
init_infra();
|
|
5
5
|
function parseAffectedCriteriaColumn(value) {
|
|
@@ -871,4 +871,4 @@ async function listSubstrateBugWeights(window = "30d", deps = {}) {
|
|
|
871
871
|
//#endregion
|
|
872
872
|
export { getByIssueId as a, parseFlywheelStatsWindow as i, derivePipelineRunStatsInputs as n, markFixed as o, computeFlywheelStats as r, upsert as s, listSubstrateBugWeights as t };
|
|
873
873
|
|
|
874
|
-
//# sourceMappingURL=substrate-bug-weights-service-
|
|
874
|
+
//# sourceMappingURL=substrate-bug-weights-service-DxpopNd9.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "./smart-compaction-
|
|
2
|
-
import { a as generateFallbackSummary, l as init_summary_fork } from "./summary-fork-
|
|
1
|
+
import "./smart-compaction-Hzp3KCJX.js";
|
|
2
|
+
import { a as generateFallbackSummary, l as init_summary_fork } from "./summary-fork-B9pszUJN.js";
|
|
3
3
|
init_summary_fork();
|
|
4
4
|
export { generateFallbackSummary };
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { k as init_conversations } from "./conversations-
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
2
|
+
import { Ar as FsError, Vr as init_errors, _i as packageRoot, f as loadConfigSync, fi as getHandoffsDir, hi as init_paths, mi as getOverdeckHome, t as init_config_yaml, yi as sessionFilePath } from "./config-yaml-BSCqwmX0.js";
|
|
3
|
+
import { b as init_agents, qt as deliverAgentMessage } from "./queries-DVpl1vsU.js";
|
|
4
|
+
import { k as init_conversations } from "./conversations-B4rxz-Wl.js";
|
|
5
|
+
import { c as init_stack_health, o as getWorkspaceStackHealth } from "./stack-health-D_iKwNRg.js";
|
|
6
|
+
import { l as init_kimi_code, o as findKimiWirePathAsync } from "./kimi-code-BYbme0aV.js";
|
|
7
|
+
import { a as runModelSummary, i as parseEntries, o as serializeConversation, r as init_smart_compaction, s as summarizeSerializedText, t as generateSmartSummary } from "./smart-compaction-Hzp3KCJX.js";
|
|
7
8
|
import { join } from "node:path";
|
|
8
9
|
import { Effect } from "effect";
|
|
9
10
|
import { join as join$1 } from "path";
|
|
11
|
+
import { homedir } from "node:os";
|
|
10
12
|
import { existsSync } from "node:fs";
|
|
11
13
|
import { access, readFile, readdir, writeFile } from "node:fs/promises";
|
|
12
14
|
import { mkdir as mkdir$1 } from "fs/promises";
|
|
@@ -99,6 +101,42 @@ function serializeAcpEntry(entry) {
|
|
|
99
101
|
return lines.length > 1 ? lines.join("\n") : void 0;
|
|
100
102
|
}
|
|
101
103
|
/**
|
|
104
|
+
* Resolve the native Kimi Code CLI wire.jsonl for a conversation. Mirrors
|
|
105
|
+
* jsonl-resolver.ts's resolveKimiWirePath, reimplemented locally (rather than
|
|
106
|
+
* imported) to avoid a circular import this module would otherwise close:
|
|
107
|
+
* jsonl-resolver.js -> agents.js -> agents/resume.js ->
|
|
108
|
+
* conversation-compaction.js -> summary-fork.js -> transcript-adapter.js.
|
|
109
|
+
* Fast path: the captured `kimi-session-id` for this conversation's tmux
|
|
110
|
+
* session maps directly to the wire.jsonl path; fallback (no captured id):
|
|
111
|
+
* the newest session directory under the workspace's bucket.
|
|
112
|
+
*/
|
|
113
|
+
async function resolveKimiWireFileFromTmux(tmuxSession, workspace) {
|
|
114
|
+
return findKimiWirePathAsync(join(homedir(), ".kimi-code"), workspace, await readFile(join(getOverdeckHome(), "agents", tmuxSession, "kimi-session-id"), "utf-8").then((s) => s.trim(), () => null));
|
|
115
|
+
}
|
|
116
|
+
function extractKimiPromptText(input) {
|
|
117
|
+
if (!Array.isArray(input)) return "";
|
|
118
|
+
return input.filter((part) => part?.type === "text" && typeof part.text === "string").map((part) => part.text.trim()).filter(Boolean).join("\n\n");
|
|
119
|
+
}
|
|
120
|
+
function serializeKimiEntry(entry, includeThinking) {
|
|
121
|
+
if (entry.type === "turn.prompt") {
|
|
122
|
+
const text = extractKimiPromptText(entry.input);
|
|
123
|
+
return text ? `[user]\n${text}` : void 0;
|
|
124
|
+
}
|
|
125
|
+
if (entry.type !== "context.append_loop_event" || !entry.event) return void 0;
|
|
126
|
+
const event = entry.event;
|
|
127
|
+
if (event.type === "content.part" && event.part?.type === "text" && event.part.text?.trim()) return `[assistant]\n${event.part.text.trim()}`;
|
|
128
|
+
if (event.type === "content.part" && event.part?.type === "think" && includeThinking && event.part.think?.trim()) return `[assistant]\n[thinking]\n${event.part.think.trim()}`;
|
|
129
|
+
if (event.type === "tool.call" && typeof event.name === "string") {
|
|
130
|
+
let args = "";
|
|
131
|
+
try {
|
|
132
|
+
args = JSON.stringify(event.args).slice(0, 500);
|
|
133
|
+
} catch {
|
|
134
|
+
args = "<unserializable>";
|
|
135
|
+
}
|
|
136
|
+
return `[tool_use: ${event.name}]\n${args}`;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
102
140
|
* Look up the transcript adapter for a harness. Unknown harnesses default to
|
|
103
141
|
* the Claude Code adapter — that matches the conservative behavior of the rest
|
|
104
142
|
* of the codebase (see getHarness() in @overdeck/contracts).
|
|
@@ -106,9 +144,10 @@ function serializeAcpEntry(entry) {
|
|
|
106
144
|
function getTranscriptAdapter(harness) {
|
|
107
145
|
return REGISTRY[harness ?? "claude-code"] ?? claudeCodeAdapter;
|
|
108
146
|
}
|
|
109
|
-
var claudeCodeAdapter, piAdapter, ACP_TOOL_DETAIL_MAX_CHARS, acpAdapter, REGISTRY;
|
|
147
|
+
var claudeCodeAdapter, piAdapter, ACP_TOOL_DETAIL_MAX_CHARS, acpAdapter, kimiCodeAdapter, REGISTRY;
|
|
110
148
|
var init_transcript_adapter = __esmMin((() => {
|
|
111
149
|
init_paths();
|
|
150
|
+
init_kimi_code();
|
|
112
151
|
init_smart_compaction();
|
|
113
152
|
claudeCodeAdapter = {
|
|
114
153
|
name: "claude-code",
|
|
@@ -220,11 +259,53 @@ var init_transcript_adapter = __esmMin((() => {
|
|
|
220
259
|
};
|
|
221
260
|
}
|
|
222
261
|
};
|
|
262
|
+
kimiCodeAdapter = {
|
|
263
|
+
name: "kimi-code",
|
|
264
|
+
supportsPlainForkAsSource: false,
|
|
265
|
+
supportsSourceAuthoredHandoff: false,
|
|
266
|
+
async resolveSessionFile(conv) {
|
|
267
|
+
return resolveKimiWireFileFromTmux(conv.tmuxSession, conv.cwd);
|
|
268
|
+
},
|
|
269
|
+
async serializeTranscript(sessionFile, options) {
|
|
270
|
+
const includeThinking = options?.includeThinking ?? true;
|
|
271
|
+
const content = await readFile(sessionFile, "utf-8");
|
|
272
|
+
const parts = [];
|
|
273
|
+
for (const line of content.split("\n")) {
|
|
274
|
+
if (!line.trim()) continue;
|
|
275
|
+
let entry;
|
|
276
|
+
try {
|
|
277
|
+
entry = JSON.parse(line);
|
|
278
|
+
} catch {
|
|
279
|
+
continue;
|
|
280
|
+
}
|
|
281
|
+
const serialized = serializeKimiEntry(entry, includeThinking);
|
|
282
|
+
if (serialized) parts.push(serialized);
|
|
283
|
+
}
|
|
284
|
+
return parts.join("\n\n");
|
|
285
|
+
},
|
|
286
|
+
async compactSummary(sessionFile, options) {
|
|
287
|
+
const serialized = await kimiCodeAdapter.serializeTranscript(sessionFile, { includeThinking: options?.includeThinking ?? true });
|
|
288
|
+
if (!serialized.trim()) return {
|
|
289
|
+
summary: "",
|
|
290
|
+
summaryModel: null
|
|
291
|
+
};
|
|
292
|
+
return {
|
|
293
|
+
summary: await summarizeSerializedText(serialized, {
|
|
294
|
+
model: options?.model,
|
|
295
|
+
richMode: options?.richMode ?? false,
|
|
296
|
+
harness: options?.harness ?? "claude-code",
|
|
297
|
+
timeoutMs: options?.timeoutMs
|
|
298
|
+
}),
|
|
299
|
+
summaryModel: options?.model ?? null
|
|
300
|
+
};
|
|
301
|
+
}
|
|
302
|
+
};
|
|
223
303
|
REGISTRY = {
|
|
224
304
|
"claude-code": claudeCodeAdapter,
|
|
225
305
|
"ohmypi": piAdapter,
|
|
226
306
|
"codex": claudeCodeAdapter,
|
|
227
|
-
"acp": acpAdapter
|
|
307
|
+
"acp": acpAdapter,
|
|
308
|
+
"kimi-code": kimiCodeAdapter
|
|
228
309
|
};
|
|
229
310
|
}));
|
|
230
311
|
//#endregion
|
|
@@ -508,11 +589,11 @@ async function generateSummaryForFork(jsonlPath, summaryModel, includeThinkingIn
|
|
|
508
589
|
}
|
|
509
590
|
}
|
|
510
591
|
async function reserveSummaryForkSessionPromise(cwd) {
|
|
511
|
-
const { reserveForkSession } = await import("./session-fork-
|
|
592
|
+
const { reserveForkSession } = await import("./session-fork-D0V-3e5P.js");
|
|
512
593
|
return reserveForkSession(cwd);
|
|
513
594
|
}
|
|
514
595
|
async function copySessionFromCompactBoundaryPromise(sourcePath, destPath) {
|
|
515
|
-
const { copySessionForFork } = await import("./session-fork-
|
|
596
|
+
const { copySessionForFork } = await import("./session-fork-D0V-3e5P.js");
|
|
516
597
|
return copySessionForFork(sourcePath, destPath, { fullHistory: false });
|
|
517
598
|
}
|
|
518
599
|
/** Effect variant of generateFallbackSummary. */
|
|
@@ -587,4 +668,4 @@ var init_summary_fork = __esmMin((() => {
|
|
|
587
668
|
//#endregion
|
|
588
669
|
export { init_transcript_adapter as _, generateFallbackSummary as a, handoffPreconditionFallbackReason as c, prependFallbackFocus as d, requestHandoffFromAgent as f, getTranscriptAdapter as g, validateHandoffDoc as h, copySessionFromCompactBoundary as i, init_summary_fork as l, sanitizeHandoffDoc as m, HandoffValidationError as n, generateSummaryForFork as o, reserveSummaryForkSession as p, authorHandoffExternal as r, handoffFailureReason as s, HandoffStallError as t, logHandoffFallback as u };
|
|
589
670
|
|
|
590
|
-
//# sourceMappingURL=summary-fork-
|
|
671
|
+
//# sourceMappingURL=summary-fork-B9pszUJN.js.map
|
|
@@ -26,4 +26,4 @@ var init_injection_budget = __esmMin((() => {
|
|
|
26
26
|
//#endregion
|
|
27
27
|
export { inputSettleMs as a, init_injection_budget as i, SUPERVISOR_CLIENT_MARGIN_MS as n, purgeSettleMs as o, echoConfirmTimeoutMs as r, supervisorInjectionBudgetMs as s, INPUT_PURGE_MAX_CHARS as t };
|
|
28
28
|
|
|
29
|
-
//# sourceMappingURL=injection-budget-
|
|
29
|
+
//# sourceMappingURL=injection-budget-Ar7hgyJq.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { nt as init_paths, tt as getOverdeckHome } from "./paths-BBOnCYlO.js";
|
|
3
|
-
import { n as init_pty_token, r as readPtyToken, t as PTY_TOKEN_HEADER } from "./pty-token-
|
|
4
|
-
import { a as inputSettleMs, i as init_injection_budget, o as purgeSettleMs, r as echoConfirmTimeoutMs, t as INPUT_PURGE_MAX_CHARS } from "./injection-budget-
|
|
3
|
+
import { n as init_pty_token, r as readPtyToken, t as PTY_TOKEN_HEADER } from "./pty-token-CXCFU0Z8.js";
|
|
4
|
+
import { a as inputSettleMs, i as init_injection_budget, o as purgeSettleMs, r as echoConfirmTimeoutMs, t as INPUT_PURGE_MAX_CHARS } from "./injection-budget-Ar7hgyJq.js";
|
|
5
5
|
import { existsSync } from "node:fs";
|
|
6
6
|
import { appendFile, chmod, mkdir, unlink } from "node:fs/promises";
|
|
7
7
|
import { join } from "node:path";
|
|
@@ -406,7 +406,16 @@ async function main() {
|
|
|
406
406
|
const agentId = resolveAgentIdOrExit();
|
|
407
407
|
const { command, args } = resolveChildCommandOrExit();
|
|
408
408
|
const { cols, rows } = stdoutDimensions();
|
|
409
|
-
const
|
|
409
|
+
const hostTmux = process.env.OVERDECK_HOST_TMUX || process.env.TMUX;
|
|
410
|
+
const hostTmuxPane = process.env.OVERDECK_HOST_TMUX_PANE || process.env.TMUX_PANE;
|
|
411
|
+
const spawnCommand = hostTmux ? "/usr/bin/env" : command;
|
|
412
|
+
const spawnArgs = hostTmux ? [
|
|
413
|
+
`TMUX=${hostTmux}`,
|
|
414
|
+
...hostTmuxPane ? [`TMUX_PANE=${hostTmuxPane}`] : [],
|
|
415
|
+
command,
|
|
416
|
+
...args
|
|
417
|
+
] : args;
|
|
418
|
+
const child = pty.spawn(spawnCommand, spawnArgs, {
|
|
410
419
|
name: process.env.TERM || "xterm-256color",
|
|
411
420
|
cols,
|
|
412
421
|
rows,
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Jr as CONFIG_FILE, Vr as init_errors, Xr as LOGS_DIR, Zr as OVERDECK_HOME, ai as TRAEFIK_DIR, hi as init_paths } from "./config-yaml-BSCqwmX0.js";
|
|
2
2
|
import { t as require_toml } from "./toml-CeLDATih.js";
|
|
3
|
-
import { t as init_dev_supervisor } from "./dev-supervisor-
|
|
3
|
+
import { t as init_dev_supervisor } from "./dev-supervisor-B1mZYXz4.js";
|
|
4
4
|
import { join } from "node:path";
|
|
5
5
|
import "effect";
|
|
6
6
|
import { existsSync, readFileSync } from "fs";
|
|
7
7
|
import { join as join$1 } from "path";
|
|
8
8
|
import "node:fs";
|
|
9
|
+
import "fs/promises";
|
|
9
10
|
import "node:child_process";
|
|
10
11
|
import { exec as exec$1 } from "child_process";
|
|
11
12
|
import { promisify } from "util";
|
|
@@ -26,7 +27,8 @@ import { promisify } from "util";
|
|
|
26
27
|
* Health-gating: each stage reports success only after the component's healthcheck
|
|
27
28
|
* passes, or fails with an explicit `{ stage, reason }` on timeout.
|
|
28
29
|
*
|
|
29
|
-
*
|
|
30
|
+
* Shared with the supervisor sidecar. Keep shell/process I/O asynchronous so
|
|
31
|
+
* lifecycle checks cannot block its request loop.
|
|
30
32
|
*/
|
|
31
33
|
var import_toml = require_toml();
|
|
32
34
|
init_paths();
|
|
@@ -72,4 +74,4 @@ function getSupervisorUrlSync() {
|
|
|
72
74
|
//#endregion
|
|
73
75
|
export { getSupervisorUrlSync as n, getSupervisorPortSync as t };
|
|
74
76
|
|
|
75
|
-
//# sourceMappingURL=supervisor-
|
|
77
|
+
//# sourceMappingURL=supervisor-BvnxbuuF.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
3
|
-
import { c as hasFileOverlap, l as init_dag, o as getDispatchableItems, r as compileGlob, s as groupItemsByWave } from "./dag-
|
|
2
|
+
import { C as init_specs } from "./io-mxOWMZ7I.js";
|
|
3
|
+
import { c as hasFileOverlap, l as init_dag, o as getDispatchableItems, r as compileGlob, s as groupItemsByWave } from "./dag-BYiFMqpU.js";
|
|
4
4
|
import "effect";
|
|
5
5
|
//#region ../../lib/xbrief/swarm-readiness.ts
|
|
6
6
|
function computeIssueFootprint(doc) {
|
|
@@ -112,4 +112,4 @@ var init_swarm_readiness = __esmMin((() => {
|
|
|
112
112
|
//#endregion
|
|
113
113
|
export { computeIssueFootprint as n, init_swarm_readiness as r, analyzeSwarmReadiness as t };
|
|
114
114
|
|
|
115
|
-
//# sourceMappingURL=swarm-readiness-
|
|
115
|
+
//# sourceMappingURL=swarm-readiness-vTw1kqGa.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as resolveExecutable, o as resolveHarnessBinary, r as init_harness_binary } from "./harness-binary-
|
|
1
|
+
import { a as resolveExecutable, o as resolveHarnessBinary, r as init_harness_binary } from "./harness-binary-BHxWf_sX.js";
|
|
2
2
|
import { homedir } from "node:os";
|
|
3
3
|
import { execFile } from "node:child_process";
|
|
4
4
|
import { promisify } from "node:util";
|
|
@@ -132,7 +132,7 @@ const PREREQUISITES = [
|
|
|
132
132
|
id: "kimi",
|
|
133
133
|
name: "Kimi Code CLI",
|
|
134
134
|
required: false,
|
|
135
|
-
purpose: "Kimi Code agents
|
|
135
|
+
purpose: "Kimi Code agents — native (kimi-code) and ACP (acp) harnesses",
|
|
136
136
|
versionArgs: ["--version"],
|
|
137
137
|
install: {
|
|
138
138
|
linux: "https://www.kimi.com/code/docs/en/kimi-code-cli/guides/getting-started.html",
|
|
@@ -247,4 +247,4 @@ async function checkSystemPrerequisites(probe = defaultProbe, resolver = default
|
|
|
247
247
|
//#endregion
|
|
248
248
|
export { checkSystemPrerequisites, collectSetupDiagnostics };
|
|
249
249
|
|
|
250
|
-
//# sourceMappingURL=system-prerequisites-
|
|
250
|
+
//# sourceMappingURL=system-prerequisites-LLzTEqsK.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { n as getContainersReferencingWorkspacePath, r as init_workspace_manager } from "./workspace-manager-
|
|
4
|
-
import { r as init_devcontainer_renderer, t as DEVCONTAINER_DIRNAME } from "./devcontainer-renderer-
|
|
5
|
-
import { a as pidsWithCwdUnder } from "./agent-gc-
|
|
6
|
-
import { i as findWorkspacePath, r as findAllWorkspacePaths } from "./archive-planning-
|
|
7
|
-
import { a as stepSkipped, i as stepOk, n as init_types, r as stepFailed } from "./types-
|
|
1
|
+
import { Hr as AGENTS_DIR, hi as init_paths } from "./config-yaml-BSCqwmX0.js";
|
|
2
|
+
import { C as init_tmux, E as killSession, V as sessionExists, j as listSessionNames } from "./tmux-CImZaX4q.js";
|
|
3
|
+
import { n as getContainersReferencingWorkspacePath, r as init_workspace_manager } from "./workspace-manager-Bem7ZBs9.js";
|
|
4
|
+
import { r as init_devcontainer_renderer, t as DEVCONTAINER_DIRNAME } from "./devcontainer-renderer-B-o68Z5B.js";
|
|
5
|
+
import { a as pidsWithCwdUnder } from "./agent-gc-BmYeT6eH.js";
|
|
6
|
+
import { i as findWorkspacePath, r as findAllWorkspacePaths } from "./archive-planning-Cq7cyinS.js";
|
|
7
|
+
import { a as stepSkipped, i as stepOk, n as init_types, r as stepFailed } from "./types-kI9ik8XO.js";
|
|
8
8
|
import { Effect } from "effect";
|
|
9
9
|
import { existsSync } from "fs";
|
|
10
10
|
import { basename, join } from "path";
|
|
@@ -83,7 +83,7 @@ async function stopTldrDaemonImpl(workspacePath) {
|
|
|
83
83
|
const venvPath = join(workspacePath, ".venv");
|
|
84
84
|
if (!existsSync(venvPath)) return stepSkipped(step, ["No .venv found"]);
|
|
85
85
|
try {
|
|
86
|
-
const { getTldrDaemonServiceSync } = await import("./tldr-daemon-
|
|
86
|
+
const { getTldrDaemonServiceSync } = await import("./tldr-daemon-B1Jhrtc8.js");
|
|
87
87
|
await getTldrDaemonServiceSync(workspacePath, venvPath).stop();
|
|
88
88
|
return stepOk(step, ["Stopped TLDR daemon"]);
|
|
89
89
|
} catch {
|
|
@@ -102,7 +102,7 @@ function stopDocker(workspacePath, issueLower) {
|
|
|
102
102
|
async function stopDockerImpl(workspacePath, issueLower) {
|
|
103
103
|
const step = "teardown:docker";
|
|
104
104
|
try {
|
|
105
|
-
const { stopWorkspaceDocker } = await import("./workspace-manager-
|
|
105
|
+
const { stopWorkspaceDocker } = await import("./workspace-manager-C0CpNh3t.js");
|
|
106
106
|
await Effect.runPromise(stopWorkspaceDocker(workspacePath, issueLower));
|
|
107
107
|
return stepOk(step, ["Stopped Docker containers"]);
|
|
108
108
|
} catch {
|
|
@@ -406,7 +406,7 @@ function clearShadowState(issueId) {
|
|
|
406
406
|
async function clearShadowStateImpl(issueId) {
|
|
407
407
|
const step = "teardown:shadow-state";
|
|
408
408
|
try {
|
|
409
|
-
const { removeShadowState } = await import("./shadow-state-
|
|
409
|
+
const { removeShadowState } = await import("./shadow-state-Bzj_AZCV.js");
|
|
410
410
|
if (removeShadowState(issueId).success) return stepOk(step, [`Cleared shadow state for ${issueId}`]);
|
|
411
411
|
return stepSkipped(step, ["No shadow state found"]);
|
|
412
412
|
} catch {
|
|
@@ -456,7 +456,7 @@ function buildPlaceholders(ctx, opts, workspacePath) {
|
|
|
456
456
|
function removeTunnelConfig(tunnelConfig, placeholders) {
|
|
457
457
|
return Effect.tryPromise({
|
|
458
458
|
try: async () => {
|
|
459
|
-
const { removeTunnelIngress } = await import("./tunnel-
|
|
459
|
+
const { removeTunnelIngress } = await import("./tunnel-CDWkeceJ.js");
|
|
460
460
|
return stepOk("teardown:tunnel", (await Effect.runPromise(removeTunnelIngress(tunnelConfig, placeholders))).steps || ["Removed tunnel ingress"]);
|
|
461
461
|
},
|
|
462
462
|
catch: (err) => err
|
|
@@ -468,7 +468,7 @@ function removeTunnelConfig(tunnelConfig, placeholders) {
|
|
|
468
468
|
function removeHumeEviConfig(humeConfig, placeholders) {
|
|
469
469
|
return Effect.tryPromise({
|
|
470
470
|
try: async () => {
|
|
471
|
-
const { deleteHumeConfig } = await import("./hume-
|
|
471
|
+
const { deleteHumeConfig } = await import("./hume-YPsy4UA8.js");
|
|
472
472
|
return stepOk("teardown:hume", (await Effect.runPromise(deleteHumeConfig(humeConfig, placeholders))).steps || ["Removed Hume EVI config"]);
|
|
473
473
|
},
|
|
474
474
|
catch: (err) => err
|
|
@@ -513,7 +513,7 @@ function pruneSpecialistRegistry(issueId) {
|
|
|
513
513
|
return Effect.tryPromise({
|
|
514
514
|
try: async () => {
|
|
515
515
|
const step = "teardown:specialist-registry";
|
|
516
|
-
const { pruneSpecialistRegistryEntriesForIssue } = await import("./specialists-
|
|
516
|
+
const { pruneSpecialistRegistryEntriesForIssue } = await import("./specialists-MOoeB4A8.js");
|
|
517
517
|
const removed = pruneSpecialistRegistryEntriesForIssue(issueId);
|
|
518
518
|
return removed > 0 ? stepOk(step, [`Pruned ${removed} specialist registry entr${removed === 1 ? "y" : "ies"} for ${issueId}`]) : stepSkipped(step, [`No specialist registry entries for ${issueId}`]);
|
|
519
519
|
},
|
|
@@ -524,7 +524,7 @@ function pruneCheckpointRefs(projectPath, issueLower) {
|
|
|
524
524
|
return Effect.tryPromise({
|
|
525
525
|
try: async () => {
|
|
526
526
|
const step = "teardown:checkpoint-refs";
|
|
527
|
-
const { pruneCheckpointRefsForAgents } = await import("./checkpoint-manager-
|
|
527
|
+
const { pruneCheckpointRefsForAgents } = await import("./checkpoint-manager-9t7G5c1V.js");
|
|
528
528
|
const agentIds = [
|
|
529
529
|
`agent-${issueLower}`,
|
|
530
530
|
`planning-${issueLower}`,
|
|
@@ -538,4 +538,4 @@ function pruneCheckpointRefs(projectPath, issueLower) {
|
|
|
538
538
|
//#endregion
|
|
539
539
|
export { teardownWorkspace as t };
|
|
540
540
|
|
|
541
|
-
//# sourceMappingURL=teardown-workspace-
|
|
541
|
+
//# sourceMappingURL=teardown-workspace-CqKKVJr1.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { C as setReviewStatusSync, p as init_review_status } from "./review-status-
|
|
3
|
-
import {
|
|
4
|
-
import { n as init_merge_verification, r as shouldSkipDispatchAsMerged } from "./merge-verification-
|
|
5
|
-
import { r as init_test_verdict, t as clearTestVerdictArtifact } from "./test-verdict-
|
|
1
|
+
import { Sn as resolveProjectFromIssueSync, cn as init_projects } from "./config-yaml-BSCqwmX0.js";
|
|
2
|
+
import { C as setReviewStatusSync, p as init_review_status } from "./review-status-CKLk5aZ-.js";
|
|
3
|
+
import { Et as spawnRun, b as init_agents } from "./queries-DVpl1vsU.js";
|
|
4
|
+
import { n as init_merge_verification, r as shouldSkipDispatchAsMerged } from "./merge-verification-DN1Ov9bU.js";
|
|
5
|
+
import { r as init_test_verdict, t as clearTestVerdictArtifact } from "./test-verdict-diIWE6hz.js";
|
|
6
6
|
import { Data, Effect } from "effect";
|
|
7
7
|
//#region ../../lib/cloister/test-agent-queue.ts
|
|
8
8
|
/**
|
|
@@ -50,7 +50,8 @@ Required steps:
|
|
|
50
50
|
curl -s -X POST ${apiUrl}/api/review/${options.issueId}/status \\
|
|
51
51
|
-H "Content-Type: application/json" \\
|
|
52
52
|
-d '{"testStatus":"failed","testNotes":"<commands/UAT failures and exact unmet criteria>"}'
|
|
53
|
-
11.
|
|
53
|
+
11. Make exactly ONE POST attempt. If it fails, the .pan/test/result.json artifact from step 8 is the durable verdict and the deacon recovers from it — do NOT retry the POST in a loop. Report the failure in your summary and stop.
|
|
54
|
+
12. Report TESTS PASSED or TESTS FAILED with commands run, UAT paths exercised, and concise evidence.
|
|
54
55
|
|
|
55
56
|
Boundaries:
|
|
56
57
|
- Do NOT edit code, tests, fixtures, snapshots, or configuration.
|
|
@@ -164,4 +165,4 @@ const dispatchTestAgentAndNotify = (issueId, workspace, branch, notifyAgent) =>
|
|
|
164
165
|
//#endregion
|
|
165
166
|
export { buildTestRolePrompt, dispatchTestAgentAndNotify };
|
|
166
167
|
|
|
167
|
-
//# sourceMappingURL=test-agent-queue-
|
|
168
|
+
//# sourceMappingURL=test-agent-queue-CWMq7oyG.js.map
|
|
@@ -95,11 +95,23 @@ function decideUnsignaledTestAction(input) {
|
|
|
95
95
|
notes: artifact.notes
|
|
96
96
|
};
|
|
97
97
|
}
|
|
98
|
-
if (alreadyNudged) return { action: "
|
|
98
|
+
if (alreadyNudged) return { action: "escalate" };
|
|
99
99
|
return { action: "nudge-write" };
|
|
100
100
|
}
|
|
101
|
+
/**
|
|
102
|
+
* PAN-3092: surface an `escalate` decision to the operator, once per test
|
|
103
|
+
* dispatch generation. Returns the needs-you line to log, or undefined when this
|
|
104
|
+
* generation already tripped. Never touches the verdict itself (D6) — a
|
|
105
|
+
* pane-only verdict is a human's call to read and apply.
|
|
106
|
+
*/
|
|
107
|
+
async function recordUnsignaledTestEscalation(workspacePath, issueId, testSession, generation) {
|
|
108
|
+
const { recordRecoveryFailure } = await import("./recovery-trip-_16hFKv4.js");
|
|
109
|
+
const { emitNeedsYou } = await recordRecoveryFailure(workspacePath, issueId, "unsignaled-test-verdict", generation, 1);
|
|
110
|
+
if (!emitNeedsYou) return void 0;
|
|
111
|
+
return `needs-you ${issueId}: the test agent (${testSession}) is alive but has not responded to a verdict nudge, and it wrote no .pan/test/result.json — its verdict may exist only in the agent's pane, where nothing can recover it automatically. Read the pane (tmux -L overdeck capture-pane -t ${testSession} -p -S -200), then either apply the verdict yourself (pan admin specialists done test ${issueId} --status passed|failed) or run pan kill ${issueId} and re-dispatch the test.`;
|
|
112
|
+
}
|
|
101
113
|
var init_test_verdict = __esmMin((() => {}));
|
|
102
114
|
//#endregion
|
|
103
|
-
export {
|
|
115
|
+
export { recordUnsignaledTestEscalation as a, readTestVerdictArtifact as i, decideUnsignaledTestAction as n, testVerdictArtifactPath as o, init_test_verdict as r, clearTestVerdictArtifact as t };
|
|
104
116
|
|
|
105
|
-
//# sourceMappingURL=test-verdict-
|
|
117
|
+
//# sourceMappingURL=test-verdict-diIWE6hz.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
2
|
+
import { Vr as init_errors } from "./config-yaml-BSCqwmX0.js";
|
|
3
3
|
import "effect";
|
|
4
4
|
import { existsSync, readFileSync, statSync } from "fs";
|
|
5
5
|
import { join } from "path";
|
|
@@ -221,4 +221,4 @@ var init_tldr_daemon = __esmMin((() => {
|
|
|
221
221
|
//#endregion
|
|
222
222
|
export { getTldrDaemonServiceSync as n, init_tldr_daemon as r, TldrDaemonService as t };
|
|
223
223
|
|
|
224
|
-
//# sourceMappingURL=tldr-daemon-
|
|
224
|
+
//# sourceMappingURL=tldr-daemon-Bpls1CJB.js.map
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
2
|
+
import { Ir as MessageDeliveryFailed, Rr as TmuxError, Vr as init_errors, f as loadConfigSync, hi as init_paths, mi as getOverdeckHome, t as init_config_yaml } from "./config-yaml-BSCqwmX0.js";
|
|
3
3
|
import { Effect } from "effect";
|
|
4
4
|
import { appendFileSync, chmodSync, existsSync, mkdirSync, readFileSync, unlinkSync, writeFileSync } from "fs";
|
|
5
5
|
import { join } from "path";
|
|
6
6
|
import { tmpdir } from "os";
|
|
7
7
|
import { mkdir, readFile, unlink, writeFile } from "fs/promises";
|
|
8
|
+
import { randomUUID } from "node:crypto";
|
|
8
9
|
import { execFile, execFileSync, execSync } from "child_process";
|
|
9
10
|
import { promisify } from "util";
|
|
10
|
-
import { randomUUID } from "node:crypto";
|
|
11
11
|
//#region ../../lib/child-env.ts
|
|
12
12
|
/**
|
|
13
13
|
* Build a sanitized child environment.
|
|
@@ -63,7 +63,8 @@ var init_child_env = __esmMin((() => {
|
|
|
63
63
|
"MIMO_API_KEY",
|
|
64
64
|
"OPENROUTER_API_KEY",
|
|
65
65
|
"NOUS_API_KEY",
|
|
66
|
-
"DASHSCOPE_API_KEY"
|
|
66
|
+
"DASHSCOPE_API_KEY",
|
|
67
|
+
"QUANTUMLLAMA_API_KEY"
|
|
67
68
|
]);
|
|
68
69
|
STRIPPED_KEYS = new Set([...LEAKED_ENV_KEYS, ...PROVIDER_ENV_KEYS]);
|
|
69
70
|
BLANKED_PROVIDER_ENV = Object.fromEntries([...PROVIDER_ENV_KEYS].map((k) => [k, ""]));
|
|
@@ -1041,7 +1042,7 @@ function deliveryVerifyLine(content) {
|
|
|
1041
1042
|
const lines = content.split("\n");
|
|
1042
1043
|
return ([...lines].reverse().find((line) => line.trim().length >= 3) ?? lines[lines.length - 1])?.trim() ?? "";
|
|
1043
1044
|
}
|
|
1044
|
-
var execFileAsync, VALID_SESSION_NAME_RE, DEFAULT_TMUX_WINDOW_COLS, DEFAULT_TMUX_WINDOW_ROWS, MANAGED_TMUX_SERVER_UNIT, SERVER_ALIVE_POLL_MS, SERVER_ALIVE_TIMEOUT_MS, MANAGED_TMUX_CONFIG_CONTENT, tmuxContextPrepared, warnedManagedServerTmuxSpawnScope, warnedManagedServerDirtyCmdline,
|
|
1045
|
+
var execFileAsync, VALID_SESSION_NAME_RE, DEFAULT_TMUX_WINDOW_COLS, DEFAULT_TMUX_WINDOW_ROWS, MANAGED_TMUX_SERVER_UNIT, SERVER_ALIVE_POLL_MS, SERVER_ALIVE_TIMEOUT_MS, MANAGED_TMUX_CONFIG_CONTENT, tmuxContextPrepared, warnedManagedServerTmuxSpawnScope, warnedManagedServerDirtyCmdline, TERMINAL_API_ERROR_PATTERNS, toTmuxError, ensureManagedTmuxContextOnce, listSessions, listSessionNames, listAllPaneRecords, getWindowDimensions, sessionExists, createSession, killSession, setOption, resizeWindow, sendRawKeystroke, sendKeys, capturePane, listPaneValues, isPaneDead, getAgentSessions;
|
|
1045
1046
|
var init_tmux = __esmMin((() => {
|
|
1046
1047
|
init_paths();
|
|
1047
1048
|
init_config_yaml();
|
|
@@ -1075,14 +1076,6 @@ var init_tmux = __esmMin((() => {
|
|
|
1075
1076
|
tmuxContextPrepared = false;
|
|
1076
1077
|
warnedManagedServerTmuxSpawnScope = false;
|
|
1077
1078
|
warnedManagedServerDirtyCmdline = false;
|
|
1078
|
-
MessageDeliveryFailed = class extends Error {
|
|
1079
|
-
constructor(message, sessionName, paneSnapshot) {
|
|
1080
|
-
super(message);
|
|
1081
|
-
this.sessionName = sessionName;
|
|
1082
|
-
this.paneSnapshot = paneSnapshot;
|
|
1083
|
-
this.name = "MessageDeliveryFailed";
|
|
1084
|
-
}
|
|
1085
|
-
};
|
|
1086
1079
|
TERMINAL_API_ERROR_PATTERNS = [
|
|
1087
1080
|
{
|
|
1088
1081
|
re: /usage limit for this billing cycle/i,
|
|
@@ -1314,6 +1307,8 @@ var init_tmux = __esmMin((() => {
|
|
|
1314
1307
|
bufferName,
|
|
1315
1308
|
tmpFile
|
|
1316
1309
|
], { encoding: "utf-8" });
|
|
1310
|
+
const verifyLine = deliveryVerifyLine(keys);
|
|
1311
|
+
const menuBeforePaste = verifyLine.length >= 3 && paneHasBlockingChoiceMenu(await capturePaneText(sessionName, 90).catch(() => ""));
|
|
1317
1312
|
await tmuxExecAsync([
|
|
1318
1313
|
"paste-buffer",
|
|
1319
1314
|
"-b",
|
|
@@ -1322,7 +1317,6 @@ var init_tmux = __esmMin((() => {
|
|
|
1322
1317
|
"-t",
|
|
1323
1318
|
sessionName
|
|
1324
1319
|
], { encoding: "utf-8" });
|
|
1325
|
-
const verifyLine = deliveryVerifyLine(keys);
|
|
1326
1320
|
const VERIFY_TIMEOUT_MS = 1500;
|
|
1327
1321
|
const VERIFY_INTERVAL_MS = 50;
|
|
1328
1322
|
const PASTE_MAX_ATTEMPTS = 2;
|
|
@@ -1368,7 +1362,7 @@ var init_tmux = __esmMin((() => {
|
|
|
1368
1362
|
], { encoding: "utf-8" }).catch(() => {});
|
|
1369
1363
|
if (!pasteVerified) {
|
|
1370
1364
|
const snapshot = await capturePaneText(sessionName, 90);
|
|
1371
|
-
if (paneHasBlockingChoiceMenu(snapshot)) throw new MessageDeliveryFailed(`Delivery to ${sessionName} aborted: the pane is blocked on a choice menu, so the paste never reached the composer and Enter would answer that menu`, sessionName, snapshot);
|
|
1365
|
+
if (menuBeforePaste || paneHasBlockingChoiceMenu(snapshot)) throw new MessageDeliveryFailed(`Delivery to ${sessionName} aborted: the pane is blocked on a choice menu, so the paste never reached the composer and Enter would answer that menu`, sessionName, snapshot);
|
|
1372
1366
|
console.warn(`[tmux] Paste verification failed for ${sessionName} after ${PASTE_MAX_ATTEMPTS} attempts × ${VERIFY_TIMEOUT_MS}ms. Sending Enter anyway to avoid orphaned input. Snapshot:\n${snapshot.slice(0, 500)}`);
|
|
1373
1367
|
}
|
|
1374
1368
|
await tmuxExecAsync([
|
|
@@ -1420,6 +1414,6 @@ var init_tmux = __esmMin((() => {
|
|
|
1420
1414
|
getAgentSessions = () => listSessions().pipe(Effect.map((sessions) => sessions.filter((s) => s.name.startsWith("agent-"))));
|
|
1421
1415
|
}));
|
|
1422
1416
|
//#endregion
|
|
1423
|
-
export {
|
|
1417
|
+
export { getUiThemeSync as $, listPaneValuesSync as A, sendRawKeystroke as B, init_tmux as C, killSessionSync as D, killSession as E, querySessionSync as F, validateSessionName as G, sessionExistsSync as H, resizeWindow as I, paneChoiceMenuSignature as J, buildChoiceKeystrokes as K, sendEscapeKeyAsync as L, listSessions as M, listSessionsSync as N, listAllPaneRecords as O, parseTmuxPaneRecords as P, colorFgBgForTheme as Q, sendKeys as R, getWindowDimensions as S, isPaneDead as T, setOption as U, sessionExists as V, tmuxExecAsync as W, parsePaneChoiceMenu as X, paneHasBlockingChoiceMenu as Y, paneTreeHasHarnessProcess as Z, getManagedTmuxConfigPath as _, capturePaneText as a, init_child_env as at, getTmuxCommand as b, deliveryVerifyLine as c, ensureOverdeckTmuxServerAsync as d, init_ui_theme as et, ensureOverdeckTmuxServerSync as f, getAgentSessions as g, findManagedServerPidSync as h, capturePaneSync as i, buildChildEnvWithoutTmuxSync as it, listSessionNames as j, listPaneValues as k, detectTerminalApiErrorSync as l, exactSession as m, buildTmuxCommandString as n, BLANKED_PROVIDER_ENV as nt, createSession as o, exactPaneTarget as p, init_pane_choice_menu as q, capturePane as r, buildChildEnvSync as rt, createSessionSync as s, buildTmuxArgs as t, setUiTheme as tt, ensureManagedTmuxContextOnce as u, getManagedTmuxSocketName as v, isHarnessProcessAlive as w, getTmuxConfigMode as x, getTmuxBaseArgs as y, sendKeysAsync as z };
|
|
1424
1418
|
|
|
1425
|
-
//# sourceMappingURL=tmux-
|
|
1419
|
+
//# sourceMappingURL=tmux-CImZaX4q.js.map
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import "./config-yaml-BSCqwmX0.js";
|
|
2
|
+
import { C as init_tmux, E as killSession, O as listAllPaneRecords, T as isPaneDead, V as sessionExists, j as listSessionNames } from "./tmux-CImZaX4q.js";
|
|
3
|
+
init_tmux();
|
|
4
|
+
export { isPaneDead, killSession, listAllPaneRecords, listSessionNames, sessionExists };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as __commonJSMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import { r as require_token_error, t as require_token_util } from "./token-util-
|
|
2
|
+
import { r as require_token_error, t as require_token_util } from "./token-util-BymbpkJp.js";
|
|
3
3
|
//#region ../../../node_modules/.bun/@vercel+oidc@3.2.0/node_modules/@vercel/oidc/dist/token.js
|
|
4
4
|
var require_token = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
5
5
|
var __defProp = Object.defineProperty;
|
|
@@ -54,4 +54,4 @@ var require_token = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
54
54
|
export default require_token();
|
|
55
55
|
export {};
|
|
56
56
|
|
|
57
|
-
//# sourceMappingURL=token-
|
|
57
|
+
//# sourceMappingURL=token-Bgpjo3tE.js.map
|
|
@@ -432,4 +432,4 @@ var require_token_util = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
432
432
|
//#endregion
|
|
433
433
|
export { require_auth_errors as n, require_token_error as r, require_token_util as t };
|
|
434
434
|
|
|
435
|
-
//# sourceMappingURL=token-util-
|
|
435
|
+
//# sourceMappingURL=token-util-BymbpkJp.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
2
|
+
import { $t as getIssuePrefix, cn as init_projects, f as loadConfigSync, mn as loadProjectsConfigSync, t as init_config_yaml } from "./config-yaml-BSCqwmX0.js";
|
|
3
3
|
import { existsSync } from "fs";
|
|
4
4
|
import { join } from "path";
|
|
5
5
|
import { homedir } from "os";
|
|
@@ -142,4 +142,4 @@ var init_tracker_config = __esmMin((() => {
|
|
|
142
142
|
//#endregion
|
|
143
143
|
export { init_tracker_config as a, initTrackerConfigCache as i, getLinearApiKey as n, validateRallyConfig as o, getRallyConfig as r, getGitHubConfig as t };
|
|
144
144
|
|
|
145
|
-
//# sourceMappingURL=tracker-config-
|
|
145
|
+
//# sourceMappingURL=tracker-config-4DaKVTfc.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
2
|
+
import { $t as getIssuePrefix, Fn as parseIssueIdSync, Mn as extractPrefixSync, Nn as init_issue_id, Vr as init_errors, cn as init_projects, jn as extractNumberSync, mn as loadProjectsConfigSync } from "./config-yaml-BSCqwmX0.js";
|
|
3
3
|
import "effect";
|
|
4
4
|
import { existsSync, readFileSync } from "fs";
|
|
5
5
|
import { join } from "path";
|
|
@@ -120,4 +120,4 @@ var init_tracker_utils = __esmMin((() => {
|
|
|
120
120
|
//#endregion
|
|
121
121
|
export { resolveGitHubIssueSync as n, resolveTrackerTypeSync as r, init_tracker_utils as t };
|
|
122
122
|
|
|
123
|
-
//# sourceMappingURL=tracker-utils-
|
|
123
|
+
//# sourceMappingURL=tracker-utils-BDeAXC-q.js.map
|