@overdeck/desktop 0.45.24 → 0.47.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 +36 -1
- package/package.json +1 -1
- package/server/{acceptance-criteria-DDCnXF58.js → acceptance-criteria-10Ur5Dne.js} +2 -2
- package/server/activity-logger-CMthG6Vd.js +3 -0
- package/server/{activity-logger-DDlOIAML.js → activity-logger-CyteR4JO.js} +24 -13
- package/server/{advancing-selfheal-BVwW4qRn.js → advancing-selfheal-BNwqxseD.js} +6 -6
- package/server/{agent-gc-CHcnvonI.js → agent-gc-C3h9Or3a.js} +5 -5
- package/server/agent-state-CYXJVG72.js +3 -0
- package/server/agent-state-service-C63p_ftq.js +2 -0
- package/server/{agent-state-service-BsgWxZuB.js → agent-state-service-Ds6OeFvo.js} +15 -9
- package/server/{agents-EbI0zCJl.js → agents-J5mEnekq.js} +23 -16
- package/server/agents-ePFVoZbu.js +3 -0
- package/server/archive-planning-B2XplFzT.js +2 -0
- package/server/{archive-planning-Du25Jtst.js → archive-planning-BwhxeP7C.js} +22 -26
- package/server/{artifact-index-jobs-CbEDfCDu.js → artifact-index-jobs-D1q_vR3V.js} +2 -2
- package/server/{assemble-J2ZZ2C15.js → assemble-Bgwqv-Ro.js} +2 -2
- package/server/auto-spawn-consent-CQ9Bi9q6.js +1141 -0
- package/server/{backlog-auto-trigger-2R2jog7n.js → backlog-auto-trigger-n1lzPgN4.js} +3 -3
- package/server/{behavior-B3exJ42O.js → behavior-td6-xhQk.js} +2 -2
- package/server/boot-reconciled-stop-events-C7gGe3oB.js +44 -0
- package/server/bridge-pool-patrol-CYH2OLb5.js +136 -0
- package/server/{briefing-freshness-D1wzUIWv.js → briefing-freshness-DRqZ8lAz.js} +2 -2
- package/server/{build-info-Ie_D0_BT.js → build-info-7yiEpl6u.js} +5 -3
- package/server/{build-info-CZk_TITh.js → build-info-CpG__c63.js} +1 -1
- package/server/{checkpoint-manager-DwbQoqrC.js → checkpoint-manager-CkKmB0wZ.js} +1 -1
- package/server/{checkpoint-manager-BI1Wxoku.js → checkpoint-manager-DBcyNR8w.js} +2 -2
- package/server/checkpoint-worker.js +1 -1
- package/server/{checkpoints-CQB1h765.js → checkpoints-D95apurL.js} +2 -2
- package/server/{checkpoints-BJIs5QIA.js → checkpoints-Wm963lm8.js} +1 -1
- package/server/{claude-hooks-provision-8Ngo8TpT.js → claude-hooks-provision-4RPxNkE8.js} +1 -1
- package/server/{claude-hooks-provision-D8GXF3_s.js → claude-hooks-provision-Bjitl9aI.js} +13 -2
- package/server/{claude-permissions-DNWEVV6z.js → claude-permissions-CpbpvUQ2.js} +2 -2
- package/server/{claude-settings-overlay-DWy-Bb4Y.js → claude-settings-overlay-BzkHYDwR.js} +1 -1
- package/server/{claude-settings-overlay-CEdaqpWI.js → claude-settings-overlay-_H9Yrzab.js} +2 -2
- package/server/cli-CjOCSnfj.js +3 -0
- package/server/{cli-RoOx5DUf.js → cli-Cte9ZFGn.js} +9 -9
- package/server/{cliproxy-C8a1vtTU.js → cliproxy-C5fMJ7rY.js} +2 -2
- package/server/{cliproxy-fHfIeiGd.js → cliproxy-DaAbWMjC.js} +1 -1
- package/server/{close-issue-DoOifFIK.js → close-issue-BPh1ARCF.js} +5 -5
- package/server/{closed-issue-reaper-CktPXo8m.js → closed-issue-reaper-DHRfRMrp.js} +1 -1
- package/server/{closed-issue-reaper-Bk3SU4RC.js → closed-issue-reaper-DoOZqGFK.js} +88 -17
- package/server/{codex-BZXGhUVB.js → codex-BzGDW_d3.js} +36 -7
- package/server/{codex-GcHuUF-k.js → codex-o8FJwzmy.js} +1 -1
- package/server/{codex-parser-CFZ1_1Jl.js → codex-parser-Dt-ycU8L.js} +2 -2
- package/server/compaction-continuation-CvXpbZ4w.js +200 -0
- package/server/{config-CKxYiCmX.js → config-Bi3u1VK7.js} +4 -3
- package/server/{config-BZ0sHTju.js → config-BvLe652W.js} +2 -2
- package/server/{config-DzV30TOm.js → config-CL3Gyvja.js} +1 -1
- package/server/{config-yaml-DySPNmKN.js → config-yaml-CxdwhAIA.js} +276 -14
- package/server/conflict-gate-CX80JYYS.js +3 -0
- package/server/{conflict-gate-BaCVrH-N.js → conflict-gate-E4nt7ZeS.js} +60 -14
- package/server/{context-layers-igZ4FI4_.js → context-layers-C_IIysnm.js} +3 -3
- package/server/{context-layers-BrPmE__h.js → context-layers-DAG83UZt.js} +2 -2
- package/server/{control-settings-BQp7_4uD.js → control-settings-CiqGxXnc.js} +56 -19
- package/server/{conversation-compaction-eQB5CkOe.js → conversation-compaction-BE3CNtHF.js} +1 -1
- package/server/{conversation-compaction-CgrR8YYp.js → conversation-compaction-D6-yLtqt.js} +8 -8
- package/server/{conversation-service-DPJ71F33.js → conversation-service-DBxoYMDl.js} +10 -8
- package/server/conversation-service-D_TS2b1r.js +3 -0
- package/server/{conversations-CAsJF9kh.js → conversations-BKDVpB-3.js} +1 -1
- package/server/{conversations-6AfUfbwc.js → conversations-D0UEdLtk.js} +4 -4
- package/server/{cost-R-m6Yi-W.js → cost-DS1s0DbG.js} +3 -3
- package/server/{cost-B2ddP6wq.js → cost-DpgYmYqR.js} +12 -2
- package/server/{cost-sync-BsN6ER0n.js → cost-sync-tOCCGnEt.js} +3 -3
- package/server/{dag-B1ucnjDU.js → dag-BtkgLeqY.js} +2 -2
- package/server/{dangerous-git-ops-BXqeWVSf.js → dangerous-git-ops-CFLykHWt.js} +1 -1
- package/server/dashboard-db-worker.js +7 -7
- package/server/deacon-BIblC-WX.js +4 -0
- package/server/{deacon-nudge-log-6wVqAaqz.js → deacon-nudge-log-B08gF0mh.js} +3 -3
- package/server/{deacon-CU_cAYSR.js → deacon-pLRLbPvR.js} +3308 -2707
- package/server/deacon-pending-lifecycle-B-Io84AP.js +33 -0
- package/server/deacon-swarm-B1XkIvfr.js +2 -0
- package/server/{deacon-swarm-BXZZ1Z2-.js → deacon-swarm-v5PMun-m.js} +15 -14
- package/server/deacon.js +14 -19
- package/server/dead-end-trip-D8A3msX9.js +13 -0
- package/server/delivery-BX9HR4wQ.js +3 -0
- package/server/{deploy-patrol-AiFoP8dw.js → deploy-patrol-sYgOxLeb.js} +69 -18
- package/server/deploy-queue-VfohaPN_.js +169 -0
- package/server/deploy-queue-gHJBycaF.js +3 -0
- package/server/deploy-window-CFRZ0-kt.js +3 -0
- package/server/{deploy-window-C3F-tihF.js → deploy-window-D4DQb8VP.js} +40 -16
- package/server/{dev-supervisor-bcOWqdQE.js → dev-supervisor-DiOBDM1c.js} +2 -2
- package/server/{devcontainer-renderer-_d6XhyND.js → devcontainer-renderer-BUOIlfgD.js} +3 -3
- package/server/dist-B3YPQa5A.js +3 -0
- package/server/{dist-Cb_0uvpS.js → dist-C3A8B8wM.js} +1 -1
- package/server/{dist-src-BSoS7mkd.js → dist-src-C0adpegX.js} +1 -1
- package/server/{docker-DcMTFTUC.js → docker-BJzlkqYB.js} +2 -2
- package/server/docker-Y3PElJb0.js +3 -0
- package/server/dod-DlNtcH6n.js +91 -0
- package/server/durable-review-pipeline-Cibps-Rg.js +20 -0
- package/server/durable-review-pipeline-DP6bIcOY.js +3 -0
- package/server/{ensure-devcontainer-DNi-ono3.js → ensure-devcontainer-BAofzBPv.js} +4 -4
- package/server/{ensure-devcontainer-BZgOhRo7.js → ensure-devcontainer-DMAbWqtQ.js} +1 -1
- package/server/{esm-shims-OSHAYaS1.js → esm-shims-BeObUkaw.js} +1 -1
- package/server/{event-store-EV2cMiXj.js → event-store-5UKzh9Jf.js} +1 -1
- package/server/{event-store-CQL6NeqB.js → event-store-CrHcVC5_.js} +23 -4
- package/server/{events-DTfAe4My.js → events-BNrvchBg.js} +3 -3
- package/server/{events-BTdrdEq8.js → events-CF8QDbuV.js} +1 -1
- package/server/{factory-CFibJuaw.js → factory-Cmm9Hsho.js} +5 -5
- package/server/{feature-registry-population-DKZFMbFt.js → feature-registry-population-B6HpNWRy.js} +4 -4
- package/server/{feature-registry-storage-BdPuLcBX.js → feature-registry-storage-DJEFx1Pf.js} +2 -2
- package/server/{features-ez2271oH.js → features-D5km80UI.js} +2 -2
- package/server/{feedback-target-CoFDHiM8.js → feedback-target-BJ5ZADsu.js} +1 -1
- package/server/{feedback-target-7mqqwrX6.js → feedback-target-DSxEL6lP.js} +8 -8
- package/server/{feedback-writer-CY5L1lB7.js → feedback-writer-C27Hak8a.js} +5 -5
- package/server/{feedback-writer-D3a22RCd.js → feedback-writer-CoB9Z6aU.js} +1 -1
- package/server/{flywheel-DHrgCphM.js → flywheel-BHx8XuMr.js} +47 -20
- package/server/{flywheel-SVF02Jpq.js → flywheel-DZZdtiOL.js} +1 -1
- package/server/{flywheel-DzGtWnJ1.js → flywheel-f662Q-y2.js} +16 -15
- package/server/flywheel-merge-order-D_xLMbJU.js +462 -0
- package/server/flywheel-merge-order-Dil0LmdN.js +2 -0
- package/server/forge-B5o319qI.js +3 -0
- package/server/forge-BaKGCya6.js +383 -0
- package/server/{from-kNxT0bZC.js → from-B3tZbB55.js} +1 -1
- package/server/fs-lock-Bre3sGoz.js +130 -0
- package/server/{fts-db-CE46vDkZ.js → fts-db-IVc4_M3f.js} +2 -2
- package/server/{fts-operations-CqY6zl-i.js → fts-operations-B9jG8wa3.js} +2 -2
- package/server/{git-utils-CRw2zLPC.js → git-utils-CsvYfJU3.js} +30 -5
- package/server/git-utils-Xg4PFN45.js +3 -0
- package/server/{github-app-ClZ2lk8D.js → github-app-Bmg4R9mv.js} +1 -1
- package/server/{github-app-C3QrAUd0.js → github-app-CmNk0zLU.js} +3 -3
- package/server/{github-client-DfQYVUaw.js → github-client-B6KM9_wA.js} +1 -1
- package/server/{github-client-BnIsSrEN.js → github-client-qazkPrg0.js} +3 -3
- package/server/github-pr-lookup-DAcVeRLK.js +58 -0
- package/server/{harness-binary-DPUi-Pv8.js → harness-binary-BSpiXaLw.js} +2 -2
- package/server/{harness-resolve-3lNZkyT4.js → harness-resolve-BAJu5MX8.js} +4 -4
- package/server/{health-events-BDOHby5Q.js → health-events-2Z6Wa9SM.js} +1 -1
- package/server/{health-events-BBcTYQKU.js → health-events-BwX32k8d.js} +2 -2
- package/server/{hooks-DPVX1rwQ.js → hooks-D1g1jKLI.js} +1 -1
- package/server/{hooks-CKZgXlJb.js → hooks-DbtbimEf.js} +2 -2
- package/server/{hume-Cz8igP9E.js → hume-DXNiu6nQ.js} +2 -2
- package/server/hume-VUCNbTgn.js +3 -0
- package/server/{idle-stack-reaper-CuLF0j2H.js → idle-stack-reaper-CRA1e0jr.js} +1 -1
- package/server/{idle-stack-reaper-DDIRwxUY.js → idle-stack-reaper-Cy-dQzW4.js} +99 -6
- package/server/in-flight-guard-D-sSkADM.js +45 -0
- package/server/{infra-BEqFxlJc.js → infra-BDQDRopn.js} +81 -5
- package/server/{injection-C8aiVJrF.js → injection-6AGnXxlj.js} +7 -7
- package/server/{injection-CPUIqNhI.js → injection-Bl8d_jHZ.js} +1 -1
- package/server/inspect-agent-CUwVmr2h.js +2 -0
- package/server/{inspect-agent-BLuJ1AkT.js → inspect-agent-nXdIptyh.js} +26 -25
- package/server/{internal-token-s0-oKybJ.js → internal-token-DzK385vD.js} +2 -2
- package/server/{internal-token-BrcU6qfe.js → internal-token-Ias7N8Kg.js} +1 -1
- package/server/{io-C9kF1wtJ.js → io-B00PBNku.js} +44 -27
- package/server/{issue-closed-CDJk4pIp.js → issue-closed-BehTG1be.js} +8 -8
- package/server/{issue-lifecycle-ojZAzDBP.js → issue-lifecycle-Birk-ifu.js} +42 -30
- package/server/{issue-lifecycle-B8sZHVHh.js → issue-lifecycle-BqSuQvbn.js} +1 -1
- package/server/{issue-service-singleton-BvJ09SaR.js → issue-service-singleton-B2wXiIlw.js} +1 -1
- package/server/{issue-service-singleton-Yx5DdmVJ.js → issue-service-singleton-C6ZduvuY.js} +10 -10
- package/server/{issues-BMmP_77e.js → issues-DQ5-LatB.js} +2 -2
- package/server/{jsonl-parser-BXSlHwEh.js → jsonl-parser-BDpnGFCl.js} +5 -4
- package/server/{label-cleanup-B0UJwnv5.js → label-cleanup-Dwnky8FG.js} +3 -3
- package/server/{lifecycle-xmBfK2GJ.js → lifecycle-B3s4sM1G.js} +6 -7
- package/server/{lifecycle-yPd___5E.js → lifecycle-B4Xdb4cY.js} +2 -2
- package/server/{lifecycle-io-DPo7x11I.js → lifecycle-io-CzTHEooc.js} +1 -1
- package/server/{lifecycle-io-BREGpnLk.js → lifecycle-io-DCo6s6ks.js} +5 -5
- package/server/{linear-client-BsuUvkdA.js → linear-client-9uq7fhiV.js} +3 -3
- package/server/{linear-client-CTskEeT_.js → linear-client-CnbtHiic.js} +1 -1
- package/server/linear-mcp-auth-BxUOzswy.js +280 -0
- package/server/linear-mcp-auth-D46fBCLf.js +2 -0
- package/server/memory-fts-worker.js +1 -1
- package/server/{merge-CefQNAnq.js → merge-DiW9RdSB.js} +13 -11
- package/server/{merge-agent-4WOWlSYA.js → merge-agent-BLUgRsz3.js} +234 -84
- package/server/{merge-agent-CKkgIBPB.js → merge-agent-DQTXZk8z.js} +1 -1
- package/server/{merge-batch-ClFn2T-y.js → merge-batch-Cp_j9BGk.js} +1 -1
- package/server/merge-completeness-B46KqhtY.js +277 -0
- package/server/merge-completeness-BLbB5-6n.js +3 -0
- package/server/merge-ops-1abz6O_P.js +2 -0
- package/server/merge-rebase-CJJVAJuz.js +2 -0
- package/server/{merge-rebase-BfaTyXsw.js → merge-rebase-DIkBjgwq.js} +3 -3
- package/server/{merge-set-DJ8-UErs.js → merge-set-CBgHfwM0.js} +11 -5
- package/server/merge-set-DeUxFsC3.js +3 -0
- package/server/{merge-B1DiziGU.js → merge-sr8Nrnmi.js} +1 -1
- package/server/merge-sync-CpGmk6Ch.js +3 -0
- package/server/{merge-sync-VPV28g0g.js → merge-sync-kr4vqyjM.js} +409 -153
- package/server/{merge-train-CHopycP0.js → merge-train-Dmrcus12.js} +18 -8
- package/server/{merge-train-deps-D1cOZzy2.js → merge-train-deps-D_uGX91G.js} +21 -15
- package/server/merge-verification-NvaAd8CZ.js +220 -0
- package/server/merged-docker-cleanup-worker-DH_hrGPI.js +3 -0
- package/server/merged-docker-cleanup-worker-Y1R06TEl.js +107 -0
- package/server/{multipart-parser-duPAfSBw.js → multipart-parser-R-oC8dQg.js} +2 -2
- package/server/{no-resume-mode-Nw29vaFb.js → no-resume-mode-BgD0JUmM.js} +1 -1
- package/server/node_modules/.package-lock.json +30 -30
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/package.json +3 -3
- package/server/node_modules/@google-cloud/common/package.json +2 -2
- package/server/node_modules/@types/node/README.md +1 -1
- package/server/node_modules/@types/node/crypto.d.ts +1 -1
- package/server/node_modules/@types/node/package.json +2 -2
- 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 +1 -1
- package/server/node_modules/google-auth-library/build/src/auth/googleauth.js +24 -19
- package/server/node_modules/google-auth-library/package.json +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/auth.proto +2 -1
- package/server/node_modules/google-gax/build/protos/google/api/backend.proto +12 -1
- package/server/node_modules/google-gax/build/protos/google/api/billing.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/client.proto +165 -53
- package/server/node_modules/google-gax/build/protos/google/api/cloudquotas/v1/resources.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/cloudquotas/v1beta/quota_adjuster_settings.proto +7 -3
- package/server/node_modules/google-gax/build/protos/google/api/cloudquotas/v1beta/resources.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/config_change.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/context.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/control.proto +3 -3
- package/server/node_modules/google-gax/build/protos/google/api/distribution.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/documentation.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/endpoint.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/error_reason.proto +186 -1
- package/server/node_modules/google-gax/build/protos/google/api/expr/v1alpha1/checked.proto +31 -3
- package/server/node_modules/google-gax/build/protos/google/api/expr/v1alpha1/eval.proto +8 -9
- package/server/node_modules/google-gax/build/protos/google/api/expr/v1alpha1/explain.proto +1 -2
- package/server/node_modules/google-gax/build/protos/google/api/expr/v1alpha1/syntax.proto +20 -22
- package/server/node_modules/google-gax/build/protos/google/api/expr/v1alpha1/value.proto +2 -3
- package/server/node_modules/google-gax/build/protos/google/api/field_behavior.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/field_info.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/http.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/httpbody.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/label.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/launch_stage.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/log.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/logging.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/metric.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/monitored_resource.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/monitoring.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/policy.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/quota.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/resource.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/routing.proto +8 -4
- package/server/node_modules/google-gax/build/protos/google/api/service.proto +2 -3
- package/server/node_modules/google-gax/build/protos/google/api/source_info.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/system_parameter.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/api/usage.proto +7 -27
- package/server/node_modules/google-gax/build/protos/google/api/visibility.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/longrunning/operations.proto +20 -1
- package/server/node_modules/google-gax/build/protos/google/protobuf/any.proto +52 -108
- package/server/node_modules/google-gax/build/protos/google/protobuf/compiler/ruby/ruby_generated_code.proto +2 -0
- package/server/node_modules/google-gax/build/protos/google/protobuf/cpp_features.proto +21 -1
- package/server/node_modules/google-gax/build/protos/google/protobuf/cpp_file_options.proto +24 -0
- package/server/node_modules/google-gax/build/protos/google/protobuf/cpp_options.proto +15 -0
- package/server/node_modules/google-gax/build/protos/google/protobuf/descriptor.proto +118 -30
- package/server/node_modules/google-gax/build/protos/google/protobuf/field_mask.proto +16 -18
- package/server/node_modules/google-gax/build/protos/google/protobuf/internal_options.proto +8 -1
- package/server/node_modules/google-gax/build/protos/google/protobuf/json/json_enumval_custom_string.proto +26 -0
- package/server/node_modules/google-gax/build/protos/google/protobuf/json_enumvalue_options.proto +29 -0
- package/server/node_modules/google-gax/build/protos/google/protobuf/json_options.proto +14 -0
- package/server/node_modules/google-gax/build/protos/google/protobuf/struct.proto +38 -22
- package/server/node_modules/google-gax/build/protos/google/protobuf/test_protos/forced_micro_string.proto +3 -0
- package/server/node_modules/google-gax/build/protos/google/protobuf/test_protos/repeated_field_proxy_import_message.proto +14 -0
- package/server/node_modules/google-gax/build/protos/google/protobuf/timestamp.proto +9 -8
- package/server/node_modules/google-gax/build/protos/google/protobuf/util/json_format_proto3.proto +18 -0
- package/server/node_modules/google-gax/build/protos/google/rpc/code.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/rpc/context/attribute_context.proto +7 -2
- package/server/node_modules/google-gax/build/protos/google/rpc/context/audit_context.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/rpc/error_details.proto +5 -5
- package/server/node_modules/google-gax/build/protos/google/rpc/http.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/rpc/status.proto +1 -2
- package/server/node_modules/google-gax/build/protos/google/type/calendar_period.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/type/color.proto +9 -10
- package/server/node_modules/google-gax/build/protos/google/type/date.proto +11 -9
- package/server/node_modules/google-gax/build/protos/google/type/datetime.proto +17 -17
- package/server/node_modules/google-gax/build/protos/google/type/dayofweek.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/type/decimal.proto +11 -13
- package/server/node_modules/google-gax/build/protos/google/type/expr.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/type/fraction.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/type/interval.proto +1 -2
- package/server/node_modules/google-gax/build/protos/google/type/latlng.proto +4 -5
- package/server/node_modules/google-gax/build/protos/google/type/localized_text.proto +3 -3
- package/server/node_modules/google-gax/build/protos/google/type/money.proto +1 -2
- package/server/node_modules/google-gax/build/protos/google/type/month.proto +1 -1
- package/server/node_modules/google-gax/build/protos/google/type/phone_number.proto +20 -15
- package/server/node_modules/google-gax/build/protos/google/type/postal_address.proto +39 -39
- package/server/node_modules/google-gax/build/protos/google/type/quaternion.proto +4 -4
- package/server/node_modules/google-gax/build/protos/google/type/timeofday.proto +11 -8
- package/server/node_modules/google-gax/package.json +5 -5
- package/server/node_modules/retry-request/package.json +4 -4
- package/server/node_modules/teeny-request/package.json +5 -5
- package/server/node_modules/undici/lib/cache/memory-cache-store.js +54 -9
- package/server/node_modules/undici/lib/cache/sqlite-cache-store.js +7 -1
- package/server/node_modules/undici/lib/core/request.js +12 -1
- package/server/node_modules/undici/lib/dispatcher/client-h1.js +11 -2
- package/server/node_modules/undici/lib/global.js +36 -16
- package/server/node_modules/undici/lib/handler/cache-handler.js +236 -116
- package/server/node_modules/undici/lib/handler/cache-revalidation-handler.js +3 -3
- package/server/node_modules/undici/lib/handler/retry-handler.js +24 -0
- package/server/node_modules/undici/lib/interceptor/cache.js +152 -62
- package/server/node_modules/undici/lib/interceptor/decompress.js +5 -2
- package/server/node_modules/undici/lib/util/cache.js +328 -66
- package/server/node_modules/undici/lib/util/date.js +23 -6
- package/server/node_modules/undici/lib/web/cookies/util.js +78 -8
- package/server/node_modules/undici/package.json +1 -1
- package/server/{orphan-proposed-reconciler-BvKkWMJQ.js → orphan-proposed-reconciler-B6vJHxtX.js} +242 -34
- package/server/{orphan-proposed-reconciler-CTSGcK8p.js → orphan-proposed-reconciler-DcgTPPFY.js} +1 -1
- package/server/package-lock.json +31 -31
- package/server/package.json +1 -1
- package/server/{pan-dir-B0c3w0Ya.js → pan-dir-DMzF5wne.js} +25 -11
- package/server/{paths-D-xWGHdh.js → paths-sJBSb7Ul.js} +2 -2
- package/server/pending-lifecycle-claim-DilzGfgk.js +110 -0
- package/server/persistent-logger-H_VjuOu7.js +57 -0
- package/server/{pickup-DUCLWrJY.js → pickup-DWhqzliO.js} +4 -3
- package/server/pipeline-membership-C88VBnhJ.js +3 -0
- package/server/pipeline-membership-D9SBvItj.js +57 -0
- package/server/pipeline-membership-gather-4eR-7Tqy.js +3 -0
- package/server/pipeline-membership-gather-CeVGnNJ2.js +593 -0
- package/server/{pipeline-notifier-BXkJzDC4.js → pipeline-notifier-D0ALV6Nw.js} +2 -2
- package/server/{pipeline-notifier-BJr8gQX6.js → pipeline-notifier-DT6xLFao.js} +1 -1
- package/server/post-merge-lifecycle-worker-8HIeS_J6.js +50 -0
- package/server/{project-pipelines-C0MWUeCU.js → project-pipelines-9SKt2bEc.js} +2 -2
- package/server/{project-repos-B6GycDh9.js → project-repos-B5pIphKg.js} +7 -3
- package/server/project-repos-DPjOdfPa.js +3 -0
- package/server/projects-_n3Zui6K.js +3 -0
- package/server/{prompts-DxzFXuLl.js → prompts-CgzMBvQF.js} +2 -2
- package/server/{providers-u4Ga0jOr.js → providers-BI1mOBQ4.js} +1 -1
- package/server/{providers-qQAwGQDW.js → providers-BJQSnAAp.js} +7 -7
- package/server/public/assets/{chunk-BO2N2NFS-BamJdinX.js → chunk-BO2N2NFS-D_pGACYN.js} +4 -4
- package/server/public/assets/{diagram-OG6HWLK6-DfOB8-w4.js → diagram-OG6HWLK6-BO6fe3hH.js} +1 -1
- package/server/public/assets/{dist-ByIuzMQW.js → dist-5zingMiA.js} +3 -3
- package/server/public/assets/{dist-D7zYSEA6.js → dist-CVxhbI2E.js} +1 -1
- package/server/public/assets/{ganttDiagram-6RSMTGT7-EdmRyXL3.js → ganttDiagram-6RSMTGT7-Bgj4A7kp.js} +1 -1
- package/server/public/assets/{highlighted-body-OFNGDK62-MerOfTX8.js → highlighted-body-OFNGDK62-DNPK7_cm.js} +1 -1
- package/server/public/assets/index-DEpY-D1O.js +807 -0
- package/server/public/assets/index-Ddkcz3WT.css +1 -0
- package/server/public/assets/{linear-BBbArIcK.js → linear-BB0jQT16.js} +1 -1
- package/server/public/assets/mermaid-GHXKKRXX-BzPfaQJ1.js +1 -0
- package/server/public/assets/{pieDiagram-4H26LBE5-BKIddiJN.js → pieDiagram-4H26LBE5-DeGIzzpZ.js} +1 -1
- package/server/public/assets/{prod-B8vYiu52.js → prod-XBLvikex.js} +4 -4
- package/server/public/assets/{quadrantDiagram-W4KKPZXB-D6RtoULk.js → quadrantDiagram-W4KKPZXB-BV9SLeWz.js} +1 -1
- package/server/public/assets/{sankeyDiagram-5OEKKPKP-CLrCedZX.js → sankeyDiagram-5OEKKPKP-Dwja0gj8.js} +1 -1
- package/server/public/assets/{xychartDiagram-2RQKCTM6-hznR8DYl.js → xychartDiagram-2RQKCTM6-DCB4qvfw.js} +1 -1
- package/server/public/index.html +2 -2
- package/server/{pull-requests-_lHueOHW.js → pull-requests-7BgLDsIo.js} +19 -10
- package/server/{pull-requests-7N8WKseP.js → pull-requests-Dq0y6IxE.js} +1 -1
- package/server/{queries-CjNIf-Ub.js → queries-C-MUZaIy.js} +824 -192
- package/server/{rally-CyWT_lNO.js → rally-CPysR4T_.js} +3 -3
- package/server/rally-D_VW4bJv.js +3 -0
- package/server/{rally-api-C8e_1JRi.js → rally-api-8Ptlp2os.js} +2 -2
- package/server/{rally-api-ClOSd-Tt.js → rally-api-CgosKdKL.js} +1 -1
- package/server/{rally-client-sgtVqzNU.js → rally-client-CCX0hADj.js} +1 -1
- package/server/{rally-client-lc-nokqr.js → rally-client-iYMHWQD7.js} +5 -5
- package/server/{reap-terminal-sessions-7KeHv1R1.js → reap-terminal-sessions-4Xg9NGA8.js} +2 -2
- package/server/{reap-terminal-sessions-BtHPo6Xc.js → reap-terminal-sessions-Qf-9LVQc.js} +2 -2
- package/server/{rebuild-stack-lwtsW0GO.js → rebuild-stack-CMdgaylx.js} +16 -7
- package/server/{rebuild-stack-CFvcBHsS.js → rebuild-stack-DqcOVmJO.js} +2 -2
- package/server/{reconstruct-cache-C3Ui7ojV.js → reconstruct-cache-CMZJ_Vjq.js} +9 -7
- package/server/record-BTwWhtBb.js +3 -0
- package/server/{record-update-dE1Aw83j.js → record-update-DaOKS7Wb.js} +124 -157
- package/server/record-update-DhI7eySG.js +3 -0
- package/server/{recovery-trip-BvRWfUXM.js → recovery-trip-DDH-02ng.js} +2 -2
- package/server/{release-engine-Cx48W7z8.js → release-engine-B2X9AfFC.js} +5 -5
- package/server/{release-set-CQfuN9-v.js → release-set-G4XKyQ8K.js} +3 -3
- package/server/{remote-C_2hasl7.js → remote-BXarMvqf.js} +3 -3
- package/server/{remote-ChgimyYa.js → remote-CUhyqjXk.js} +3 -3
- package/server/{remote-agents-By1ige5O.js → remote-agents-Bba-MgSA.js} +311 -48
- package/server/{remote-agents-CA3Ihlxj.js → remote-agents-CLZB3Coc.js} +2 -2
- package/server/{remote-completion-fVe9e_3u.js → remote-completion-CwAp79EC.js} +13 -13
- package/server/resume-mOREjlYu.js +3 -0
- package/server/{review-agent-CIGOQYBD.js → review-agent--pOptAEV.js} +65 -50
- package/server/{review-agent-DNboMyW4.js → review-agent-BTCNkq2h.js} +1 -1
- package/server/{review-artifacts-nRDPuMxd.js → review-artifacts-BNmw8dWE.js} +7 -6
- package/server/{review-context-2uj-YQ8J.js → review-context-DFxYOOJW.js} +9 -9
- package/server/{in-flight-guard-CAAkqPLu.js → review-convoy-liveness-BgU_1jJf.js} +3 -44
- package/server/review-status-CGvlA4o_.js +7737 -0
- package/server/review-status-Dma9SFaN.js +3 -0
- package/server/review-status-emit-DURrmGYX.js +50 -0
- package/server/{review-status-enrichment-Dci-ZwEt.js → review-status-enrichment-8NiNXi5W.js} +4 -4
- package/server/review-status-source-BLx_1siH.js +3 -0
- package/server/{review-status-source-CxuEjLGg.js → review-status-source-DIk1JSow.js} +24 -3
- package/server/{review-status-sync-BTOpxtTC.js → review-status-sync-0GxOqeqF.js} +11 -6
- package/server/{review-status-sync-DSDK3OMy.js → review-status-sync-muT-EBp2.js} +1 -1
- package/server/{review-verdict-feedback-CTd4QMBu.js → review-verdict-feedback-HwF6ODFy.js} +1 -1
- package/server/{review-verdict-feedback-CCjVA7Uk.js → review-verdict-feedback-xJNdqBnX.js} +65 -11
- package/server/{rollup-FGsKki9R.js → rollup-BQaol5TX.js} +8 -8
- package/server/{rollup-BKQC7jp4.js → rollup-BR4t_wck.js} +1 -1
- package/server/{scanner-CnqEZeDy.js → scanner-C-D2cFdX.js} +8 -7
- package/server/{sequence-io-D909zgeH.js → sequence-io-Bmf1EZM5.js} +4 -4
- package/server/{sequencer-agent-CzkcK6P5.js → sequencer-agent-CigMyKh2.js} +7 -6
- package/server/server.js +2005 -614
- package/server/{service-CLeAoU6G.js → service-CD0DvFvD.js} +114 -68
- package/server/{session-fork-CHI1XvL9.js → session-fork-B6cQ5eya.js} +2 -2
- package/server/{session-history-BT3IvqhC.js → session-history-3ON_IJjm.js} +7 -55
- package/server/settings-CVmWiJ-r.js +2 -0
- package/server/{settings-C0zgxOGf.js → settings-PilbFZAM.js} +3 -2
- package/server/{settings-BTMvpNFU.js → settings-VN0qOh4U.js} +3 -3
- package/server/{shadow-engineering-BJfgm-hX.js → shadow-engineering-DXvx77oE.js} +3 -3
- package/server/{shadow-state-7a-524T8.js → shadow-state-BBk_zacw.js} +2 -2
- package/server/{shadow-state-DnDyjujH.js → shadow-state-CZBp7pwq.js} +1 -1
- package/server/{shadow-utils-Db3oroFG.js → shadow-utils-DdZ05AJS.js} +2 -2
- package/server/{ship-log-D9MlVzYU.js → ship-log-7kJfjUX2.js} +1 -1
- package/server/{smart-compaction-CV2ukKND.js → smart-compaction-8fA5k5XN.js} +1 -1
- package/server/{smart-compaction-KCYScAU1.js → smart-compaction-ByhL9cRS.js} +8 -7
- package/server/{spawn-planning-session-DKpdFyOC.js → spawn-planning-session-pcF-YeFE.js} +38 -50
- package/server/spawn-planning-session-vLUJoFjy.js +3 -0
- package/server/{specialist-completion-Ky9wCDpb.js → specialist-completion-B07XjWD2.js} +1 -1
- package/server/{specialist-context-Bn3dCGS2.js → specialist-context-DJ-zFyL3.js} +5 -5
- package/server/{specialist-handoff-logger-CMEwYxa2.js → specialist-handoff-logger-aKSxbIgD.js} +2 -2
- package/server/{specialist-logs-C5p8G7tx.js → specialist-logs-Dae-n52_.js} +3 -3
- package/server/{specialists-CC4r-c2s.js → specialists-6PWdtWcg.js} +1177 -311
- package/server/{specialists-DM6bWjsi.js → specialists-Bz-wFT7R.js} +1 -1
- package/server/{specialists-jiuuyVkp.js → specialists-DUiExaxb.js} +18 -18
- package/server/{specialists-CShuVGWT.js → specialists-KR3pKulN.js} +1 -1
- package/server/specs--enInima.js +3 -0
- package/server/src-B948bGVR.js +11452 -0
- package/server/{src-CXmtj0im.js → src-rac0Mepv.js} +6 -6
- package/server/{src-CdmnTM2m.js → src-vHy2-oCv.js} +3 -3
- package/server/{stack-health-Bn3o8FBX.js → stack-health-BikqHSjn.js} +1 -1
- package/server/{stack-health-DxSdG9cW.js → stack-health-DqLTiEu4.js} +7 -5
- package/server/{stale-task-claims-KJKxxiiQ.js → stale-task-claims-Cab_Fo_Z.js} +5 -4
- package/server/{staleness-DPm7ClwA.js → staleness-C-a5rBxF.js} +1 -1
- package/server/{staleness-CT34nwr9.js → staleness-CGTZyp6V.js} +1 -1
- package/server/{state-home-Cn_Qu8IX.js → state-home-722Dkx92.js} +2 -2
- package/server/{state-mapping-BL_-3Yt8.js → state-mapping-CybR81Uf.js} +1 -1
- package/server/{state-migrate-BGg2ZaOt.js → state-migrate-2u8wIpoL.js} +4 -4
- package/server/{stuck-remediation-DYuPRYYw.js → stuck-remediation-CC6q3eqQ.js} +84 -26
- package/server/{stuck-remediation-s9_2qfi6.js → stuck-remediation-r1TJu68G.js} +1 -1
- package/server/{substrate-bug-weights-service-B-FwCs5V.js → substrate-bug-weights-service-CzIyyWFT.js} +3 -3
- package/server/{summary-fork-DpcxN9tf.js → summary-fork-BqgmgPDt.js} +2 -2
- package/server/{summary-fork-D1RAk9rJ.js → summary-fork-Df2WFijM.js} +8 -8
- package/server/supervisor/{injection-budget-Csw5tqfJ.js → injection-budget-Cg_KIb3o.js} +1 -1
- package/server/supervisor/{paths-DehGY2Fj.js → paths-BBOnCYlO.js} +10 -2
- package/server/supervisor/pty-supervisor.js +50 -4
- package/server/supervisor/{pty-token-x-ea28Us.js → pty-token-BbjwEUUM.js} +3 -3
- package/server/supervisor-B4anCCSm.js +2 -0
- package/server/{supervisor-wM4ooB5O.js → supervisor-BxqSpjcN.js} +3 -3
- package/server/{swarm-readiness-DlP_UjHq.js → swarm-readiness-DfFxa9-n.js} +3 -3
- package/server/{system-prerequisites-DUDj1YHf.js → system-prerequisites-ICLSkhhZ.js} +2 -2
- package/server/{teardown-workspace-DeTTImn-.js → teardown-workspace-DRdi_CPa.js} +15 -16
- package/server/{test-agent-queue-MbxX5vqq.js → test-agent-queue-A_-p-i0I.js} +8 -7
- package/server/{test-verdict-gscuksPv.js → test-verdict-BHgTAwIG.js} +1 -1
- package/server/{test-verdict-bWYBtqBg.js → test-verdict-C4i9aqEP.js} +1 -1
- package/server/{tldr-daemon-BYFkts95.js → tldr-daemon-CvWXBhX1.js} +1 -1
- package/server/{tldr-daemon-C-69c3OI.js → tldr-daemon-wvsU6bKv.js} +2 -2
- package/server/{tmux-R7N7y-Mh.js → tmux-CfDHob9M.js} +174 -4
- package/server/{tmux-B6z7h_vZ.js → tmux-Ctk6RV5l.js} +1 -1
- package/server/{token-BK6t8BIT.js → token-DrxwytsZ.js} +2 -2
- package/server/{token-util-DxXu-vd1.js → token-util-B48BlCba.js} +1 -1
- package/server/token-util-D411CAq9.js +3 -0
- package/server/{tracker-config-G6latr8C.js → tracker-config-BcPMElRB.js} +2 -2
- package/server/{tracker-utils-DHv5pSDT.js → tracker-utils-CJ6BHjcD.js} +3 -3
- package/server/{traefik-connect-Df2uXPsQ.js → traefik-connect-DZ6nMYMj.js} +1 -1
- package/server/{tunnel-DGdUkGoZ.js → tunnel-Bp-dRHZz.js} +1 -1
- package/server/{tunnel-CDVKJpRv.js → tunnel-DUbUPElU.js} +3 -3
- package/server/{typed-errors-BHhE85Ul.js → typed-errors-CKeoDdU3.js} +1 -1
- package/server/{typed-errors-2BTMxkZq.js → typed-errors-DyjseiB6.js} +1 -1
- package/server/{types-hraoaQIp.js → types-Cm5ASJbq.js} +1 -1
- package/server/{types-5M0lupud.js → types-Di8wdakq.js} +1 -1
- package/server/uat-promote-verification-CoJuh7XO.js +92 -0
- package/server/uat-train-4Q0k06CQ.js +0 -0
- package/server/uat-train-Dewoatps.js +2 -0
- package/server/{validate-IfDGkaVR.js → validate-B0C8p66t.js} +8 -6
- package/server/{validation-Dw1pzDzr.js → validation-B_kIRfNe.js} +4 -4
- package/server/{validation-CC9OPqJZ.js → validation-hVOwQk8T.js} +1 -1
- package/server/{verification-artifact-B3itKTxu.js → verification-artifact-BxlxTiYK.js} +1 -1
- package/server/{verification-artifact-TVFSz_q1.js → verification-artifact-D70AtckY.js} +1 -1
- package/server/{verification-runner-BW4HOKAz.js → verification-runner-Bc3cJvpC.js} +1 -1
- package/server/{verification-runner-CkgX6EtI.js → verification-runner-KZTz6u72.js} +40 -18
- package/server/{vtt-parser-DYPbKcIJ.js → vtt-parser-CE_i3Bcw.js} +1 -1
- package/server/{work-agent-prompt-Du8Vh2aJ.js → work-agent-prompt-ByrPAzOy.js} +20 -9
- package/server/{workflows-mbQzh6mQ.js → workflows-D0vP1WrK.js} +252 -99
- package/server/workflows-DtDX08ed.js +2 -0
- package/server/{workspace--8tnhDI0.js → workspace-COWvdibH.js} +1 -1
- package/server/{workspace-BPUws1-_.js → workspace-DQkRPLlQ.js} +3 -3
- package/server/workspace-anchor-drift-DXYIAHzr.js +224 -0
- package/server/workspace-anchor-drift-pwz23TI1.js +3 -0
- package/server/{workspace-config-CIVWZOQr.js → workspace-config-BdZM4PvZ.js} +1 -1
- package/server/{workspace-manager-CBhNdzE4.js → workspace-manager-BPgTrG66.js} +157 -118
- package/server/workspace-manager-C1F3XsnS.js +3 -0
- package/server/{workspace-metadata-BzHnwwX4.js → workspace-metadata-CdjzAP8x.js} +1 -1
- package/server/{workspace-metadata-_WygnyoX.js → workspace-metadata-DkO_iTLo.js} +2 -2
- package/server/{workspaces-Do_9J0LQ.js → workspaces-CRBJikLp.js} +749 -299
- package/sync-sources/dev-skills/pan-dashboard-restart/SKILL.md +34 -10
- package/sync-sources/hooks/linear-mcp-auth-hook +97 -0
- package/sync-sources/rules/ask-user-question-self-contained.md +9 -0
- package/sync-sources/skills/pan-close/SKILL.md +5 -3
- package/sync-sources/skills/pan-merge/SKILL.md +7 -5
- package/sync-sources/skills/pan-peer-review/SKILL.md +195 -0
- package/sync-sources/skills/pan-release/SKILL.md +57 -0
- package/sync-sources/skills/pan-reload/SKILL.md +3 -3
- package/sync-sources/skills/pan-restart/SKILL.md +5 -4
- package/sync-sources/skills/pan-review/SKILL.md +7 -1
- package/sync-sources/skills/pan-sync-main/SKILL.md +9 -8
- package/sync-sources/skills/pipeline-status/SKILL.md +10 -1
- package/sync-sources/skills/workspace-add-repo/SKILL.md +16 -1
- package/server/activity-logger-OEUBdfZ8.js +0 -3
- package/server/agent-state-Bc3tzUC8.js +0 -3
- package/server/agent-state-service-D5UGKIJL.js +0 -2
- package/server/agents-wi9NWzs2.js +0 -3
- package/server/archive-planning-BZDgzoEj.js +0 -3
- package/server/cli-B86rejVV.js +0 -3
- package/server/conflict-gate-BhAY7TUd.js +0 -3
- package/server/conversation-service-BLd3MYsG.js +0 -3
- package/server/deacon-kiQrb4ZT.js +0 -4
- package/server/deacon-swarm-C-GwfjJy.js +0 -2
- package/server/deploy-window-DkZraDyj.js +0 -3
- package/server/dist-Bzy0y69j.js +0 -3
- package/server/dod-C6n9RV3G.js +0 -66
- package/server/flywheel-merge-order-UU0tiUld.js +0 -245
- package/server/flywheel-merge-order-UUcsCDb6.js +0 -2
- package/server/forge-CNFnyqps.js +0 -270
- package/server/forge-DXnS_YFH.js +0 -2
- package/server/git-utils-D0_yhCgF.js +0 -3
- package/server/github-pr-lookup-D16NGsSO.js +0 -44
- package/server/hume-ccTf4wTX.js +0 -3
- package/server/inspect-agent-Brtz0URj.js +0 -2
- package/server/label-reconciler-B4iOAjlC.js +0 -113
- package/server/launcher-generator-BBWG_SiS.js +0 -473
- package/server/merge-ops-CR44oU9-.js +0 -2
- package/server/merge-set-bUqbm3yc.js +0 -3
- package/server/merge-sync-BJYeOODr.js +0 -3
- package/server/merge-verification-BkaOqPsw.js +0 -124
- package/server/pipeline-membership-mY3GprlK.js +0 -420
- package/server/project-repos-DXKQsc_m.js +0 -3
- package/server/projects-vjjcmiN8.js +0 -3
- package/server/public/assets/index-CWeMerGO.js +0 -804
- package/server/public/assets/index-CenuJ3Cw.css +0 -1
- package/server/public/assets/mermaid-GHXKKRXX-CpPWAFwE.js +0 -1
- package/server/rally-zhhtXuDP.js +0 -3
- package/server/record-CN0pj4_5.js +0 -3
- package/server/record-update-bLJxAXH4.js +0 -3
- package/server/resume-BFv1PGpA.js +0 -3
- package/server/review-status-btEYlaxA.js +0 -3
- package/server/review-status-kZj_KyCk.js +0 -1470
- package/server/settings-66A6uvIA.js +0 -2
- package/server/spawn-planning-session-qUC2VWu3.js +0 -2
- package/server/specs-C8Wsn2XO.js +0 -3
- package/server/src-DtcUOZCq.js +0 -4826
- package/server/supervisor-FTJAIsAK.js +0 -2
- package/server/token-util-DuPuNriz.js +0 -3
- package/server/tracker-utils-B4ylXZQK.js +0 -3
- package/server/uat-train-B05BWkp-.js +0 -2
- package/server/uat-train-DDSrSoV1.js +0 -2152
- package/server/workflows-BQu4RFQ-.js +0 -2
- package/server/workspace-manager-CWT55qeI.js +0 -3
|
@@ -1,31 +1,33 @@
|
|
|
1
1
|
import { a as __toCommonJS } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import { $ as derefWorkhorse,
|
|
3
|
-
import {
|
|
4
|
-
import { D as sql, E as like, S as gte, _ as integer, a as EventBus, b as and, f as init_infra, g as real, h as text, i as DbLive, m as sqliteTable, n as CostArchiveLive, o as EventBusLive, p as init_sqlite_core, r as Db, t as CostArchive, v as init_drizzle_orm, x as eq, y as desc } from "./infra-
|
|
5
|
-
import { D as killSession, H as sessionExists, U as sessionExistsSync, m as exactPaneTarget, w as init_tmux } from "./tmux-
|
|
6
|
-
import {
|
|
7
|
-
import { n as init_issues, t as IssueId } from "./issues-
|
|
8
|
-
import { a as getAllBudgetsSync, i as deleteBudgetSync, n as checkBudgetSync, r as createBudgetSync, s as init_cost } from "./cost-
|
|
9
|
-
import {
|
|
10
|
-
import { n as parseCodexSessionCostEventsSync, r as parseCodexSessionSync, t as init_codex_parser } from "./codex-parser-
|
|
11
|
-
import { _ as init_tier_metrics, c as getDailyTrendsSync, d as init_cost_sync, h as deriveTieredAgentCostRole, t as getAgentDailyCostSync } from "./cost-sync-
|
|
12
|
-
import { n as init_issue_service_singleton, r as issue_service_singleton_exports } from "./issue-service-singleton-
|
|
13
|
-
import { r as isRoleTerminal } from "./review-status-source-
|
|
14
|
-
import { m as readWorkspacePlanSync, o as init_io } from "./io-
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import { n as checkHookSync, p as init_hooks } from "./hooks-
|
|
18
|
-
import { a as loadCloisterConfigSync, n as getHealthThresholdsMs, r as init_config } from "./config-
|
|
19
|
-
import { t as init_reap_terminal_sessions } from "./reap-terminal-sessions-
|
|
20
|
-
import { o as getRuntimeForAgent } from "./stuck-remediation-
|
|
21
|
-
import {
|
|
22
|
-
import "./flywheel-
|
|
23
|
-
import {
|
|
24
|
-
import { n as renderPrompt, t as init_prompts } from "./prompts-
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
27
|
-
import { n as
|
|
28
|
-
import {
|
|
2
|
+
import { $ as derefWorkhorse, Bt as readRecordContinueViewSync, Fr as init_errors, Gn as init_projects, Gr as OVERDECK_HOME, Ir as AGENTS_DIR, Nt as getProjectConfigFromWorkspacePath, Pt as init_record, Vt as resolveProjectForIssue, ar as resolveProjectFromIssueSync, ci as getOverdeckHome, f as loadConfigSync, li as init_paths, t as init_config_yaml } from "./config-yaml-CxdwhAIA.js";
|
|
3
|
+
import { o as init_activity_logger, r as emitActivityEntrySync } from "./activity-logger-CyteR4JO.js";
|
|
4
|
+
import { D as sql, E as like, S as gte, _ as integer, a as EventBus, b as and, f as init_infra, g as real, h as text, i as DbLive, m as sqliteTable, n as CostArchiveLive, o as EventBusLive, p as init_sqlite_core, r as Db, t as CostArchive, v as init_drizzle_orm, x as eq, y as desc } from "./infra-BDQDRopn.js";
|
|
5
|
+
import { D as killSession, H as sessionExists, U as sessionExistsSync, m as exactPaneTarget, w as init_tmux } from "./tmux-CfDHob9M.js";
|
|
6
|
+
import { C as setReviewStatusSync, h as loadReviewStatuses, p as init_review_status } from "./review-status-CGvlA4o_.js";
|
|
7
|
+
import { n as init_issues, t as IssueId } from "./issues-DQ5-LatB.js";
|
|
8
|
+
import { a as getAllBudgetsSync, i as deleteBudgetSync, n as checkBudgetSync, r as createBudgetSync, s as init_cost } from "./cost-DpgYmYqR.js";
|
|
9
|
+
import { $n as getAgentDir, Br as saveAgentRuntimeState, J as isContextOverflowTail, Jr as parseOhmypiSessionCostResultSync, K as init_context_overflow, Rr as getAgentRuntimeStateSync, _r as saveAgentStateSync, a as listRunningAgentsSync, b as init_agents, mt as stopAgentSync, qr as init_ohmypi_parser, rr as getAgentStateSync, tr as getAgentState, ut as spawnAgent } from "./queries-C-MUZaIy.js";
|
|
10
|
+
import { n as parseCodexSessionCostEventsSync, r as parseCodexSessionSync, t as init_codex_parser } from "./codex-parser-Dt-ycU8L.js";
|
|
11
|
+
import { _ as init_tier_metrics, c as getDailyTrendsSync, d as init_cost_sync, h as deriveTieredAgentCostRole, t as getAgentDailyCostSync } from "./cost-sync-tOCCGnEt.js";
|
|
12
|
+
import { n as init_issue_service_singleton, r as issue_service_singleton_exports } from "./issue-service-singleton-C6ZduvuY.js";
|
|
13
|
+
import { r as isRoleTerminal } from "./review-status-source-DIk1JSow.js";
|
|
14
|
+
import { m as readWorkspacePlanSync, o as init_io } from "./io-B00PBNku.js";
|
|
15
|
+
import { D as requireModelOverrideSync, T as init_model_validation } from "./auto-spawn-consent-CQ9Bi9q6.js";
|
|
16
|
+
import { C as setFlywheelGloballyPaused, c as init_control_settings, f as isFlywheelAutoPickupBacklog, l as isCloisterSpawnsPausedSync, v as setCloisterSpawnsPausedSync, y as setDeaconGloballyPaused } from "./control-settings-CiqGxXnc.js";
|
|
17
|
+
import { n as checkHookSync, p as init_hooks } from "./hooks-DbtbimEf.js";
|
|
18
|
+
import { a as loadCloisterConfigSync, n as getHealthThresholdsMs, r as init_config } from "./config-Bi3u1VK7.js";
|
|
19
|
+
import { t as init_reap_terminal_sessions } from "./reap-terminal-sessions-Qf-9LVQc.js";
|
|
20
|
+
import { o as getRuntimeForAgent } from "./stuck-remediation-CC6q3eqQ.js";
|
|
21
|
+
import { h as init_pickup, r as LEGACY_PARKED_LABELS } from "./pickup-DWhqzliO.js";
|
|
22
|
+
import "./flywheel-BHx8XuMr.js";
|
|
23
|
+
import { E as isDeaconRunning, L as startDeacon, M as runPatrol, R as stopDeacon, S as getLastPatrolResult, Tt as deliverOrchestratedCompact, b as getDeaconLogs, n as assessDeaconPatrolFreshness, x as getDeaconStatus } from "./deacon-pLRLbPvR.js";
|
|
24
|
+
import { n as renderPrompt, t as init_prompts } from "./prompts-CgzMBvQF.js";
|
|
25
|
+
import { n as init_issue_closed, r as isIssueClosed } from "./issue-closed-BehTG1be.js";
|
|
26
|
+
import { U as getTmuxSessionName, t as init_specialists } from "./specialists-DUiExaxb.js";
|
|
27
|
+
import { n as init_merge_verification, r as shouldSkipDispatchAsMerged } from "./merge-verification-NvaAd8CZ.js";
|
|
28
|
+
import { t as recordDeadEndNeedsYou } from "./dead-end-trip-D8A3msX9.js";
|
|
29
|
+
import { c as gatherAutonomousWorkDispatchInput, s as decideAutonomousWorkDispatch } from "./orphan-proposed-reconciler-B6vJHxtX.js";
|
|
30
|
+
import { r as writeHealthEvent } from "./health-events-BwX32k8d.js";
|
|
29
31
|
import { join } from "node:path";
|
|
30
32
|
import { Context, Data, Effect, Layer, Schema } from "effect";
|
|
31
33
|
import { appendFileSync, existsSync, mkdirSync, readFileSync, readdirSync, renameSync, statSync, unlinkSync, writeFileSync } from "fs";
|
|
@@ -850,7 +852,7 @@ function getAgentsNeedingAttention(agentHealths) {
|
|
|
850
852
|
* Captures and serializes agent context for handoffs between models.
|
|
851
853
|
*/
|
|
852
854
|
init_prompts();
|
|
853
|
-
const execAsync$
|
|
855
|
+
const execAsync$2 = promisify$1(exec$1);
|
|
854
856
|
async function captureHandoffContextPromise(agentState, targetModel, reason) {
|
|
855
857
|
const context = {
|
|
856
858
|
issueId: agentState.issueId,
|
|
@@ -889,17 +891,17 @@ async function captureFiles(context, workspace, issueId) {
|
|
|
889
891
|
*/
|
|
890
892
|
async function captureGitState(context, workspace) {
|
|
891
893
|
try {
|
|
892
|
-
const { stdout: branch } = await execAsync$
|
|
894
|
+
const { stdout: branch } = await execAsync$2("git branch --show-current", {
|
|
893
895
|
cwd: workspace,
|
|
894
896
|
encoding: "utf-8"
|
|
895
897
|
});
|
|
896
898
|
context.gitBranch = branch.trim();
|
|
897
|
-
const { stdout: status } = await execAsync$
|
|
899
|
+
const { stdout: status } = await execAsync$2("git status --porcelain", {
|
|
898
900
|
cwd: workspace,
|
|
899
901
|
encoding: "utf-8"
|
|
900
902
|
});
|
|
901
903
|
context.uncommittedFiles = status.split("\n").filter((line) => line.trim()).map((line) => line.substring(3));
|
|
902
|
-
const { stdout: lastCommit } = await execAsync$
|
|
904
|
+
const { stdout: lastCommit } = await execAsync$2("git log -1 --oneline", {
|
|
903
905
|
cwd: workspace,
|
|
904
906
|
encoding: "utf-8"
|
|
905
907
|
});
|
|
@@ -1125,7 +1127,8 @@ async function performKillAndSpawn(state, options) {
|
|
|
1125
1127
|
model: options.targetModel,
|
|
1126
1128
|
role: "work",
|
|
1127
1129
|
prompt,
|
|
1128
|
-
allowHost: state.hostOverride === true
|
|
1130
|
+
allowHost: state.hostOverride === true,
|
|
1131
|
+
startedBy: "handoff"
|
|
1129
1132
|
});
|
|
1130
1133
|
newState.costSoFar = state.costSoFar || 0;
|
|
1131
1134
|
saveAgentStateSync(newState);
|
|
@@ -1455,7 +1458,6 @@ init_agents();
|
|
|
1455
1458
|
init_tmux();
|
|
1456
1459
|
init_issue_closed();
|
|
1457
1460
|
init_merge_verification();
|
|
1458
|
-
const execAsync$2 = promisify(exec);
|
|
1459
1461
|
/** Return issues orphaned in reviewStatus='reviewing' with no active reviewer. */
|
|
1460
1462
|
function identifyOrphanedReviewingIssues(statuses, activeReviewIssues) {
|
|
1461
1463
|
const orphaned = [];
|
|
@@ -1543,10 +1545,10 @@ async function activeRoleRunExists(issueId, role, workspacePath) {
|
|
|
1543
1545
|
if (stateRole === role && state.status === "starting" && !await Effect.runPromise(sessionExists(candidateId))) return isFreshStarting(state);
|
|
1544
1546
|
if (!(stateRole === role && state.status !== "stopped" && state.status !== "error")) return false;
|
|
1545
1547
|
if (workspacePath && state.roleRunHead) try {
|
|
1546
|
-
const {
|
|
1547
|
-
const currentHead =
|
|
1548
|
+
const { formatAnchorShort, snapshotWorkspaceHeadsPromise } = await import("./git-utils-Xg4PFN45.js");
|
|
1549
|
+
const currentHead = await snapshotWorkspaceHeadsPromise(issueId, workspacePath);
|
|
1548
1550
|
if (currentHead && currentHead !== state.roleRunHead) {
|
|
1549
|
-
console.log(`[cloister] ${issueId}: ${role} session ${candidateId} is stale (ran against ${state.roleRunHead}, HEAD is now ${currentHead}) — not active`);
|
|
1551
|
+
console.log(`[cloister] ${issueId}: ${role} session ${candidateId} is stale (ran against ${formatAnchorShort(state.roleRunHead)}, HEAD is now ${formatAnchorShort(currentHead)}) — not active`);
|
|
1550
1552
|
return false;
|
|
1551
1553
|
}
|
|
1552
1554
|
} catch {}
|
|
@@ -1596,7 +1598,7 @@ async function onIssueStateChangePromise(issueId, newState) {
|
|
|
1596
1598
|
});
|
|
1597
1599
|
return;
|
|
1598
1600
|
}
|
|
1599
|
-
const { getReviewStatusSync } = await import("./review-status-
|
|
1601
|
+
const { getReviewStatusSync } = await import("./review-status-Dma9SFaN.js");
|
|
1600
1602
|
if (getReviewStatusSync(normalizedIssueId)?.mergeStatus === "merged") {
|
|
1601
1603
|
const message = `${normalizedIssueId}: skipping ${role} dispatch — merge already landed (merge_status='merged' is terminal)`;
|
|
1602
1604
|
console.log(`[cloister] ${message}`);
|
|
@@ -1663,7 +1665,7 @@ async function onIssueStateChangePromise(issueId, newState) {
|
|
|
1663
1665
|
return;
|
|
1664
1666
|
}
|
|
1665
1667
|
const branch = `feature/${normalizedIssueId.toLowerCase()}`;
|
|
1666
|
-
const { spawnReviewRoleForIssue } = await import("./review-agent-
|
|
1668
|
+
const { spawnReviewRoleForIssue } = await import("./review-agent-BTCNkq2h.js");
|
|
1667
1669
|
const result = await Effect.runPromise(spawnReviewRoleForIssue({
|
|
1668
1670
|
issueId: normalizedIssueId,
|
|
1669
1671
|
workspace,
|
|
@@ -1681,7 +1683,7 @@ async function onIssueStateChangePromise(issueId, newState) {
|
|
|
1681
1683
|
}
|
|
1682
1684
|
if (role === "test") {
|
|
1683
1685
|
const branch = `feature/${normalizedIssueId.toLowerCase()}`;
|
|
1684
|
-
const { dispatchTestAgentAndNotify } = await import("./test-agent-queue-
|
|
1686
|
+
const { dispatchTestAgentAndNotify } = await import("./test-agent-queue-A_-p-i0I.js");
|
|
1685
1687
|
await Effect.runPromise(dispatchTestAgentAndNotify(normalizedIssueId, workspace ?? void 0, branch));
|
|
1686
1688
|
const message = `${normalizedIssueId}: test role dispatched from lifecycle state '${newState}'`;
|
|
1687
1689
|
console.log(`[cloister] ${message}`);
|
|
@@ -1693,7 +1695,7 @@ async function onIssueStateChangePromise(issueId, newState) {
|
|
|
1693
1695
|
});
|
|
1694
1696
|
return;
|
|
1695
1697
|
}
|
|
1696
|
-
const { spawnRun } = await import("./agents-
|
|
1698
|
+
const { spawnRun } = await import("./agents-ePFVoZbu.js");
|
|
1697
1699
|
if (role === "plan") {
|
|
1698
1700
|
const decision = decideAutonomousPlanDispatch(await gatherAutonomousPlanDispatchInput(normalizedIssueId));
|
|
1699
1701
|
if (!decision.allow) {
|
|
@@ -1710,7 +1712,8 @@ async function onIssueStateChangePromise(issueId, newState) {
|
|
|
1710
1712
|
}
|
|
1711
1713
|
const message = `${normalizedIssueId}: ${role} role started from lifecycle state '${newState}' as ${(await spawnRun(normalizedIssueId, "plan", {
|
|
1712
1714
|
prompt: buildReactiveRolePrompt(normalizedIssueId, newState, "plan"),
|
|
1713
|
-
model: decision.model
|
|
1715
|
+
model: decision.model,
|
|
1716
|
+
startedBy: "reactive-lifecycle"
|
|
1714
1717
|
})).id}`;
|
|
1715
1718
|
console.log(`[cloister] ${message}`);
|
|
1716
1719
|
emitActivityEntrySync({
|
|
@@ -1721,7 +1724,28 @@ async function onIssueStateChangePromise(issueId, newState) {
|
|
|
1721
1724
|
});
|
|
1722
1725
|
return;
|
|
1723
1726
|
}
|
|
1724
|
-
|
|
1727
|
+
let autoSpawnConsentRequired = false;
|
|
1728
|
+
if (role === "work") {
|
|
1729
|
+
const decision = decideAutonomousWorkDispatch(await gatherAutonomousWorkDispatchInput(normalizedIssueId));
|
|
1730
|
+
if (!decision.allow) {
|
|
1731
|
+
const message = `${normalizedIssueId}: ${decision.reason}`;
|
|
1732
|
+
console.log(`[cloister] ${message}`);
|
|
1733
|
+
emitActivityEntrySync({
|
|
1734
|
+
source: "cloister",
|
|
1735
|
+
level: "warn",
|
|
1736
|
+
message,
|
|
1737
|
+
issueId: normalizedIssueId
|
|
1738
|
+
});
|
|
1739
|
+
await recordDeadEndNeedsYou(normalizedIssueId, "reactive-work-dispatch-pickup-gate", newState, message);
|
|
1740
|
+
return;
|
|
1741
|
+
}
|
|
1742
|
+
autoSpawnConsentRequired = decision.releaseSource === "planning-consent";
|
|
1743
|
+
}
|
|
1744
|
+
const message = `${normalizedIssueId}: ${role} role started from lifecycle state '${newState}' as ${(await spawnRun(normalizedIssueId, role, {
|
|
1745
|
+
prompt: buildReactiveRolePrompt(normalizedIssueId, newState, role),
|
|
1746
|
+
startedBy: "reactive-lifecycle",
|
|
1747
|
+
...role === "work" ? { autoSpawnConsentRequired } : {}
|
|
1748
|
+
})).id}`;
|
|
1725
1749
|
console.log(`[cloister] ${message}`);
|
|
1726
1750
|
emitActivityEntrySync({
|
|
1727
1751
|
source: "cloister",
|
|
@@ -1795,30 +1819,35 @@ function issueStateChangeFromDomainEvent(event) {
|
|
|
1795
1819
|
}
|
|
1796
1820
|
}
|
|
1797
1821
|
async function handleCloisterDomainEventPromise(event) {
|
|
1822
|
+
if (event.type === "linear_mcp_auth.healthy") {
|
|
1823
|
+
const { processLinearMcpAuthWake } = await import("./linear-mcp-auth-D46fBCLf.js");
|
|
1824
|
+
await processLinearMcpAuthWake();
|
|
1825
|
+
return;
|
|
1826
|
+
}
|
|
1798
1827
|
if (event.type === "agent.stopped") {
|
|
1799
1828
|
const agentId = event.payload?.agentId;
|
|
1800
1829
|
if (agentId) {
|
|
1801
|
-
const { handleAgentStoppedEvent, handleAgentStoppedForOrphanReviewerSessions } = await import("./deacon-
|
|
1802
|
-
const { handleAgentLifecycleEventForIdleStack } = await import("./idle-stack-reaper-
|
|
1830
|
+
const { handleAgentStoppedEvent, handleAgentStoppedForOrphanReviewerSessions } = await import("./deacon-BIblC-WX.js");
|
|
1831
|
+
const { handleAgentLifecycleEventForIdleStack } = await import("./idle-stack-reaper-CRA1e0jr.js");
|
|
1803
1832
|
handleAgentLifecycleEventForIdleStack(agentId);
|
|
1804
1833
|
const slotMatch = /^agent-(.+)-slot-\d+$/.exec(agentId);
|
|
1805
1834
|
await Promise.all([
|
|
1806
1835
|
handleAgentStoppedEvent(agentId),
|
|
1807
1836
|
handleAgentStoppedForOrphanReviewerSessions(agentId),
|
|
1808
|
-
slotMatch ? (await import("./deacon-swarm-
|
|
1837
|
+
slotMatch ? (await import("./deacon-swarm-B1XkIvfr.js")).coordinateSwarmSlots({ issueId: slotMatch[1].toUpperCase() }) : Promise.resolve([])
|
|
1809
1838
|
]);
|
|
1810
1839
|
}
|
|
1811
1840
|
return;
|
|
1812
1841
|
}
|
|
1813
1842
|
if (event.type === "agent.started") {
|
|
1814
1843
|
const agentId = event.payload?.agentId;
|
|
1815
|
-
if (agentId) (await import("./idle-stack-reaper-
|
|
1844
|
+
if (agentId) (await import("./idle-stack-reaper-CRA1e0jr.js")).handleAgentLifecycleEventForIdleStack(agentId);
|
|
1816
1845
|
return;
|
|
1817
1846
|
}
|
|
1818
1847
|
if (event.type === "agent.heartbeat_dead") {
|
|
1819
1848
|
const agentId = event.payload?.agentId;
|
|
1820
1849
|
if (agentId) {
|
|
1821
|
-
const { handleAgentHeartbeatDeadEvent } = await import("./deacon-
|
|
1850
|
+
const { handleAgentHeartbeatDeadEvent } = await import("./deacon-BIblC-WX.js");
|
|
1822
1851
|
await handleAgentHeartbeatDeadEvent(agentId, "event");
|
|
1823
1852
|
}
|
|
1824
1853
|
return;
|
|
@@ -1827,7 +1856,7 @@ async function handleCloisterDomainEventPromise(event) {
|
|
|
1827
1856
|
const payload = event.payload;
|
|
1828
1857
|
const issueId = payload?.issueId;
|
|
1829
1858
|
if (issueId) {
|
|
1830
|
-
const { handleReviewCoordinatorDied } = await import("./deacon-
|
|
1859
|
+
const { handleReviewCoordinatorDied } = await import("./deacon-BIblC-WX.js");
|
|
1831
1860
|
await handleReviewCoordinatorDied(issueId, payload?.sessionName ?? "", payload?.reason ?? "");
|
|
1832
1861
|
}
|
|
1833
1862
|
return;
|
|
@@ -1835,7 +1864,7 @@ async function handleCloisterDomainEventPromise(event) {
|
|
|
1835
1864
|
if (event.type === "work.completed") {
|
|
1836
1865
|
const issueId = event.payload?.issueId;
|
|
1837
1866
|
if (issueId) {
|
|
1838
|
-
const { handleWorkCompleted } = await import("./deacon-
|
|
1867
|
+
const { handleWorkCompleted } = await import("./deacon-BIblC-WX.js");
|
|
1839
1868
|
await handleWorkCompleted(issueId);
|
|
1840
1869
|
}
|
|
1841
1870
|
}
|
|
@@ -1846,12 +1875,12 @@ async function handleCloisterDomainEventPromise(event) {
|
|
|
1846
1875
|
const status = payload?.status?.toLowerCase();
|
|
1847
1876
|
if (issueId) {
|
|
1848
1877
|
if (canonicalStatus === "closed" || status === "closed") {
|
|
1849
|
-
const { handleIssueStatusChangedClosed } = await import("./closed-issue-reaper-
|
|
1878
|
+
const { handleIssueStatusChangedClosed } = await import("./closed-issue-reaper-DHRfRMrp.js");
|
|
1850
1879
|
await handleIssueStatusChangedClosed(issueId);
|
|
1851
1880
|
return;
|
|
1852
1881
|
}
|
|
1853
1882
|
if (canonicalStatus === "todo" || status === "planned" || status === "todo") {
|
|
1854
|
-
const { handleOrphanProposedSpec } = await import("./orphan-proposed-reconciler-
|
|
1883
|
+
const { handleOrphanProposedSpec } = await import("./orphan-proposed-reconciler-DcgTPPFY.js");
|
|
1855
1884
|
await handleOrphanProposedSpec(issueId);
|
|
1856
1885
|
}
|
|
1857
1886
|
}
|
|
@@ -2549,7 +2578,7 @@ async function performHealthCheck(host) {
|
|
|
2549
2578
|
for (const health of needsAttention) {
|
|
2550
2579
|
const idleAgentState = getAgentStateSync(health.agentId);
|
|
2551
2580
|
if (idleAgentState?.role === "sequencer") continue;
|
|
2552
|
-
const { shouldSkipIdlePokeForAgent } = await import("./stuck-remediation-
|
|
2581
|
+
const { shouldSkipIdlePokeForAgent } = await import("./stuck-remediation-r1TJu68G.js");
|
|
2553
2582
|
if (shouldSkipIdlePokeForAgent(idleAgentState)) {
|
|
2554
2583
|
host.pokeProgress.delete(health.agentId);
|
|
2555
2584
|
continue;
|
|
@@ -2796,7 +2825,7 @@ async function checkCompletionMarkers(host) {
|
|
|
2796
2825
|
if (retryCount === Infinity) host.processedCompletions.delete(dir.name);
|
|
2797
2826
|
else if (retryCount >= 3) continue;
|
|
2798
2827
|
const issueId = dir.name.replace("agent-", "").toUpperCase();
|
|
2799
|
-
const { getReviewStatusSync } = await import("./review-status-
|
|
2828
|
+
const { getReviewStatusSync } = await import("./review-status-Dma9SFaN.js");
|
|
2800
2829
|
const existingReview = getReviewStatusSync(issueId);
|
|
2801
2830
|
if (existingReview && ["reviewing", "passed"].includes(existingReview.reviewStatus || "")) {
|
|
2802
2831
|
console.log(`🔔 Cloister: Completion marker for ${issueId} — review already ${existingReview.reviewStatus}, marking processed`);
|
|
@@ -2917,11 +2946,16 @@ async function progressFingerprint(_host, agentId) {
|
|
|
2917
2946
|
const state = getAgentStateSync(agentId);
|
|
2918
2947
|
let head = "";
|
|
2919
2948
|
if (state?.workspace) try {
|
|
2920
|
-
|
|
2921
|
-
|
|
2922
|
-
|
|
2923
|
-
}
|
|
2924
|
-
|
|
2949
|
+
if (state.issueId) {
|
|
2950
|
+
const { snapshotWorkspaceHeadsPromise } = await import("./git-utils-Xg4PFN45.js");
|
|
2951
|
+
head = await snapshotWorkspaceHeadsPromise(state.issueId, state.workspace) ?? "";
|
|
2952
|
+
} else {
|
|
2953
|
+
const { stdout } = await execAsync("git rev-parse HEAD", {
|
|
2954
|
+
cwd: state.workspace,
|
|
2955
|
+
encoding: "utf-8"
|
|
2956
|
+
});
|
|
2957
|
+
head = stdout.trim();
|
|
2958
|
+
}
|
|
2925
2959
|
} catch {}
|
|
2926
2960
|
let pane = "";
|
|
2927
2961
|
try {
|
|
@@ -2951,7 +2985,7 @@ async function pokeAgentWithEscalation(host, agentId) {
|
|
|
2951
2985
|
ineffective
|
|
2952
2986
|
});
|
|
2953
2987
|
if (ineffective >= 4) {
|
|
2954
|
-
const { setAgentPausedSync } = await import("./agent-state-
|
|
2988
|
+
const { setAgentPausedSync } = await import("./agent-state-CYXJVG72.js");
|
|
2955
2989
|
try {
|
|
2956
2990
|
setAgentPausedSync(agentId, `needs-you: idle-alive — no observable progress across ${ineffective + 1} pokes (idle-alive escalation)`);
|
|
2957
2991
|
host.emit({
|
|
@@ -3042,7 +3076,7 @@ async function handleAgentCrash(host, agentId) {
|
|
|
3042
3076
|
if (skipReason) {
|
|
3043
3077
|
let recoverUnfinishedOneShot = false;
|
|
3044
3078
|
if (ONE_SHOT_ROLES.has(agentState.role) && agentState.sessionId && agentState.issueId) try {
|
|
3045
|
-
const { getReviewStatusSync } = await import("./review-status-
|
|
3079
|
+
const { getReviewStatusSync } = await import("./review-status-Dma9SFaN.js");
|
|
3046
3080
|
const status = getReviewStatusSync(agentState.issueId);
|
|
3047
3081
|
recoverUnfinishedOneShot = !(status ? isRoleTerminal(agentState.role, {
|
|
3048
3082
|
reviewStatus: status.reviewStatus,
|
|
@@ -3126,11 +3160,16 @@ async function restartAgent(_host, agentId) {
|
|
|
3126
3160
|
if (!agentState?.sessionId) throw new Error(`No session ID found for agent ${agentId}`);
|
|
3127
3161
|
if (!agentState.workspace) throw new Error(`No workspace found for agent ${agentId}`);
|
|
3128
3162
|
console.log(`🔔 Restarting ${agentId} with session ${agentState.sessionId.substring(0, 8)}...`);
|
|
3163
|
+
saveAgentStateSync({
|
|
3164
|
+
...agentState,
|
|
3165
|
+
startedBy: "deacon:crash-respawn"
|
|
3166
|
+
});
|
|
3129
3167
|
runtime.spawnAgent({
|
|
3130
3168
|
agentId,
|
|
3131
3169
|
workspace: agentState.workspace,
|
|
3132
3170
|
sessionId: agentState.sessionId,
|
|
3133
|
-
runtime: runtime.name
|
|
3171
|
+
runtime: runtime.name,
|
|
3172
|
+
env: { OVERDECK_AGENT_STARTED_BY: "deacon:crash-respawn" }
|
|
3134
3173
|
});
|
|
3135
3174
|
console.log(`🔔 Successfully restarted ${agentId}`);
|
|
3136
3175
|
}
|
|
@@ -3478,7 +3517,7 @@ var CloisterService = class {
|
|
|
3478
3517
|
let clearedSpecialistCount = 0;
|
|
3479
3518
|
try {
|
|
3480
3519
|
if (existsSync(AGENTS_DIR)) {
|
|
3481
|
-
const { isRunning: isSpecialistRunning } = await import("./specialists-
|
|
3520
|
+
const { isRunning: isSpecialistRunning } = await import("./specialists-Bz-wFT7R.js");
|
|
3482
3521
|
const entries = readdirSync(AGENTS_DIR, { withFileTypes: true });
|
|
3483
3522
|
for (const entry of entries) {
|
|
3484
3523
|
if (!entry.isDirectory()) continue;
|
|
@@ -3513,8 +3552,8 @@ var CloisterService = class {
|
|
|
3513
3552
|
}
|
|
3514
3553
|
try {
|
|
3515
3554
|
const reviewStatuses = loadReviewStatuses();
|
|
3516
|
-
const { resolveProjectFromIssueSync } = await import("./projects-
|
|
3517
|
-
const { getTmuxSessionName, getAllProjectSpecialistStatuses } = await import("./specialists-
|
|
3555
|
+
const { resolveProjectFromIssueSync } = await import("./projects-_n3Zui6K.js");
|
|
3556
|
+
const { getTmuxSessionName, getAllProjectSpecialistStatuses } = await import("./specialists-Bz-wFT7R.js");
|
|
3518
3557
|
const activeReviewIssues = /* @__PURE__ */ new Set();
|
|
3519
3558
|
try {
|
|
3520
3559
|
const projSpecs = await getAllProjectSpecialistStatuses();
|
|
@@ -3525,7 +3564,7 @@ var CloisterService = class {
|
|
|
3525
3564
|
}
|
|
3526
3565
|
const globalRs = getAgentRuntimeStateSync(getTmuxSessionName("review-agent"));
|
|
3527
3566
|
if (globalRs?.state === "active" && globalRs.currentIssue) activeReviewIssues.add(globalRs.currentIssue.toUpperCase());
|
|
3528
|
-
const { listRunningAgents } = await import("./agents-
|
|
3567
|
+
const { listRunningAgents } = await import("./agents-ePFVoZbu.js");
|
|
3529
3568
|
const agents = await Effect.runPromise(listRunningAgents());
|
|
3530
3569
|
for (const agent of agents) {
|
|
3531
3570
|
if (agent.status === "stopped" || agent.status === "error") continue;
|
|
@@ -3568,7 +3607,7 @@ var CloisterService = class {
|
|
|
3568
3607
|
continue;
|
|
3569
3608
|
}
|
|
3570
3609
|
const branch = `feature/${issueId.toLowerCase()}`;
|
|
3571
|
-
const { spawnReviewRoleForIssue } = await import("./review-agent-
|
|
3610
|
+
const { spawnReviewRoleForIssue } = await import("./review-agent-BTCNkq2h.js");
|
|
3572
3611
|
const dispatchResult = await Effect.runPromise(spawnReviewRoleForIssue({
|
|
3573
3612
|
issueId,
|
|
3574
3613
|
workspace,
|
|
@@ -3635,6 +3674,13 @@ var CloisterService = class {
|
|
|
3635
3674
|
message: "Cloister agent watchdog started"
|
|
3636
3675
|
});
|
|
3637
3676
|
await this.subscribeToDomainEvents();
|
|
3677
|
+
try {
|
|
3678
|
+
const { processLinearMcpAuthWake } = await import("./linear-mcp-auth-D46fBCLf.js");
|
|
3679
|
+
await processLinearMcpAuthWake();
|
|
3680
|
+
console.log(" ✓ Reconciled pending Linear MCP auth wakes");
|
|
3681
|
+
} catch (error) {
|
|
3682
|
+
console.error(" ✗ Failed to recover pending Linear MCP auth wakes:", error);
|
|
3683
|
+
}
|
|
3638
3684
|
this.startMonitoringLoop();
|
|
3639
3685
|
}
|
|
3640
3686
|
async subscribeToDomainEvents() {
|
|
@@ -3656,7 +3702,7 @@ var CloisterService = class {
|
|
|
3656
3702
|
console.log(" ✓ Cloister event store provider installed");
|
|
3657
3703
|
return;
|
|
3658
3704
|
}
|
|
3659
|
-
const { initEventStore } = await import("./event-store-
|
|
3705
|
+
const { initEventStore } = await import("./event-store-5UKzh9Jf.js");
|
|
3660
3706
|
const store = await initEventStore();
|
|
3661
3707
|
this.eventStore = store;
|
|
3662
3708
|
this.domainEventUnsubscribe = store.subscribe((event) => {
|
|
@@ -4006,4 +4052,4 @@ function getCloisterService() {
|
|
|
4006
4052
|
//#endregion
|
|
4007
4053
|
export { performHandoff as a, getAgentsNeedingAttention as c, CostResolverLive as d, CostWriter as f, checkAllTriggers as i, CostDoorLive as l, readCloisterStateFile as n, generateHealthSummary as o, setCloisterEventStoreProvider as r, getAgentHealth as s, getCloisterService as t, CostResolver as u };
|
|
4008
4054
|
|
|
4009
|
-
//# sourceMappingURL=service-
|
|
4055
|
+
//# sourceMappingURL=service-CD0DvFvD.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
2
|
+
import { li as init_paths, ti as encodeClaudeProjectDir } from "./config-yaml-CxdwhAIA.js";
|
|
3
3
|
import { join } from "node:path";
|
|
4
4
|
import { mkdir, readFile, writeFile } from "node:fs/promises";
|
|
5
5
|
import { randomUUID } from "node:crypto";
|
|
@@ -96,4 +96,4 @@ __esmMin((() => {
|
|
|
96
96
|
}))();
|
|
97
97
|
export { copySessionForFork, reserveForkSession };
|
|
98
98
|
|
|
99
|
-
//# sourceMappingURL=session-fork-
|
|
99
|
+
//# sourceMappingURL=session-fork-B6cQ5eya.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { t as
|
|
2
|
+
import { ci as getOverdeckHome, li as init_paths } from "./config-yaml-CxdwhAIA.js";
|
|
3
|
+
import { s as getHarnessBehavior } from "./src-B948bGVR.js";
|
|
4
|
+
import { n as logAgentLifecycleSync, t as init_persistent_logger } from "./persistent-logger-H_VjuOu7.js";
|
|
5
|
+
import { t as init_behavior } from "./behavior-td6-xhQk.js";
|
|
5
6
|
import { Effect } from "effect";
|
|
6
|
-
import {
|
|
7
|
+
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
|
|
7
8
|
import { join } from "path";
|
|
8
9
|
import { randomUUID } from "crypto";
|
|
9
|
-
import "fs/promises";
|
|
10
10
|
//#region ../../lib/agent-runtime-mirror.ts
|
|
11
11
|
/**
|
|
12
12
|
* PAN-800 — in-process mirror of AgentStateService's canonical ref.
|
|
@@ -39,54 +39,6 @@ var init_agent_runtime_mirror = __esmMin((() => {
|
|
|
39
39
|
inProcessService = false;
|
|
40
40
|
}));
|
|
41
41
|
//#endregion
|
|
42
|
-
//#region ../../lib/persistent-logger.ts
|
|
43
|
-
/**
|
|
44
|
-
* Append-only persistent logger for forensic audit trails.
|
|
45
|
-
*
|
|
46
|
-
* Complements the SQLite event store (activity-logger.ts) with flat-file logs
|
|
47
|
-
* that survive event-store resets and are greppable from the shell.
|
|
48
|
-
*
|
|
49
|
-
* Files:
|
|
50
|
-
* ~/.overdeck/logs/deacon.log — deacon startup recovery actions
|
|
51
|
-
* ~/.overdeck/agents/<id>/lifecycle.log — per-agent state transitions
|
|
52
|
-
*/
|
|
53
|
-
function logsDir() {
|
|
54
|
-
return join(getOverdeckHome(), "logs");
|
|
55
|
-
}
|
|
56
|
-
function agentDir(agentId) {
|
|
57
|
-
return join(getOverdeckHome(), "agents", agentId);
|
|
58
|
-
}
|
|
59
|
-
function ensureLogsDir() {
|
|
60
|
-
try {
|
|
61
|
-
mkdirSync(logsDir(), { recursive: true });
|
|
62
|
-
} catch {}
|
|
63
|
-
}
|
|
64
|
-
function ensureAgentDir(agentId) {
|
|
65
|
-
try {
|
|
66
|
-
mkdirSync(agentDir(agentId), { recursive: true });
|
|
67
|
-
} catch {}
|
|
68
|
-
}
|
|
69
|
-
function timestamp() {
|
|
70
|
-
return (/* @__PURE__ */ new Date()).toISOString();
|
|
71
|
-
}
|
|
72
|
-
/** Append a line to ~/.overdeck/logs/deacon.log */
|
|
73
|
-
function logDeaconEventSync(message) {
|
|
74
|
-
ensureLogsDir();
|
|
75
|
-
try {
|
|
76
|
-
appendFileSync(join(logsDir(), "deacon.log"), `[${timestamp()}] ${message}\n`);
|
|
77
|
-
} catch {}
|
|
78
|
-
}
|
|
79
|
-
/** Append a line to ~/.overdeck/agents/<agentId>/lifecycle.log */
|
|
80
|
-
function logAgentLifecycleSync(agentId, message) {
|
|
81
|
-
ensureAgentDir(agentId);
|
|
82
|
-
try {
|
|
83
|
-
appendFileSync(join(agentDir(agentId), "lifecycle.log"), `[${timestamp()}] ${message}\n`);
|
|
84
|
-
} catch {}
|
|
85
|
-
}
|
|
86
|
-
var init_persistent_logger = __esmMin((() => {
|
|
87
|
-
init_paths();
|
|
88
|
-
}));
|
|
89
|
-
//#endregion
|
|
90
42
|
//#region ../../lib/session-history.ts
|
|
91
43
|
/**
|
|
92
44
|
* PAN-1989: durably record a Claude session id in the agent's append-only
|
|
@@ -163,6 +115,6 @@ var init_session_history = __esmMin((() => {
|
|
|
163
115
|
init_persistent_logger();
|
|
164
116
|
}));
|
|
165
117
|
//#endregion
|
|
166
|
-
export { persistCurrentSessionId as a,
|
|
118
|
+
export { persistCurrentSessionId as a, isAgentStateServiceInProcess as c, logLauncherSessionPinned as i, markAgentStateServiceInProcess as l, createFreshSessionIdentity as n, getRuntimeSnapshot as o, init_session_history as r, init_agent_runtime_mirror as s, appendSessionIdToHistory as t, setAgentRuntimeMirror as u };
|
|
167
119
|
|
|
168
|
-
//# sourceMappingURL=session-history-
|
|
120
|
+
//# sourceMappingURL=session-history-3ON_IJjm.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Fr as init_errors, li as init_paths } from "./config-yaml-CxdwhAIA.js";
|
|
2
2
|
import "effect";
|
|
3
3
|
import "fs";
|
|
4
4
|
//#region ../../lib/settings.ts
|
|
@@ -18,6 +18,7 @@ function isAnthropicModelSync(modelId) {
|
|
|
18
18
|
function getClaudeModelFlagSync(modelId) {
|
|
19
19
|
return {
|
|
20
20
|
"claude-fable-5": "claude-fable-5",
|
|
21
|
+
"claude-opus-5": "claude-opus-5",
|
|
21
22
|
"claude-opus-4-8": "opus",
|
|
22
23
|
"claude-opus-4-7": "opus",
|
|
23
24
|
"claude-opus-4-6": "opus",
|
|
@@ -45,4 +46,4 @@ function getAgentCommandSync(modelId) {
|
|
|
45
46
|
//#endregion
|
|
46
47
|
export { getClaudeModelFlagSync as n, isAnthropicModelSync as r, getAgentCommandSync as t };
|
|
47
48
|
|
|
48
|
-
//# sourceMappingURL=settings-
|
|
49
|
+
//# sourceMappingURL=settings-PilbFZAM.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import { h as jsYaml, m as init_js_yaml, o as getGlobalConfigPath, t as init_config_yaml } from "./config-yaml-
|
|
3
|
-
import { n as isBackgroundFeatureEnabled, t as init_features } from "./features-
|
|
2
|
+
import { h as jsYaml, m as init_js_yaml, o as getGlobalConfigPath, t as init_config_yaml } from "./config-yaml-CxdwhAIA.js";
|
|
3
|
+
import { n as isBackgroundFeatureEnabled, t as init_features } from "./features-D5km80UI.js";
|
|
4
4
|
import { readFile } from "fs/promises";
|
|
5
5
|
//#region ../../lib/memory/settings.ts
|
|
6
6
|
async function loadMemorySettings(configPath = getGlobalConfigPath()) {
|
|
@@ -101,4 +101,4 @@ var init_settings = __esmMin((() => {
|
|
|
101
101
|
//#endregion
|
|
102
102
|
export { isMemoryKnowledgeIndexEnabled as a, init_settings as i, getMemoryRollupPendingThreshold as n, isMemoryPromptTimeInjectionEnabled as o, getMemoryWorkerConcurrency as r, loadMemorySettings as s, areMemoryObservationsEnabled as t };
|
|
103
103
|
|
|
104
|
-
//# sourceMappingURL=settings-
|
|
104
|
+
//# sourceMappingURL=settings-VN0qOh4U.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { a as PAN_DIRNAME } from "./types-
|
|
2
|
-
import { t as init_pan_dir } from "./pan-dir-
|
|
1
|
+
import { a as PAN_DIRNAME } from "./types-Cm5ASJbq.js";
|
|
2
|
+
import { t as init_pan_dir } from "./pan-dir-DMzF5wne.js";
|
|
3
3
|
import { Data, Effect } from "effect";
|
|
4
4
|
import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from "fs";
|
|
5
5
|
import { join } from "path";
|
|
@@ -221,4 +221,4 @@ init_pan_dir();
|
|
|
221
221
|
//#endregion
|
|
222
222
|
export { gatherArtifacts, generateBasicInference, runObserverCycle, updateInferenceDocumentSync };
|
|
223
223
|
|
|
224
|
-
//# sourceMappingURL=shadow-engineering-
|
|
224
|
+
//# sourceMappingURL=shadow-engineering-DXvx77oE.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
2
|
+
import { ci as getOverdeckHome, li as init_paths } from "./config-yaml-CxdwhAIA.js";
|
|
3
3
|
import { Data, Effect } from "effect";
|
|
4
4
|
import { existsSync, mkdirSync, unlinkSync } from "fs";
|
|
5
5
|
import { join } from "path";
|
|
@@ -287,4 +287,4 @@ var init_shadow_state = __esmMin((() => {
|
|
|
287
287
|
//#endregion
|
|
288
288
|
export { getShadowState as a, isShadowed as c, needsSync as d, removeShadowState as f, getPendingSyncCount as i, listShadowedIssues as l, updateTrackerStatusCache as m, createShadowState as n, getUnsyncedHistory as o, updateShadowState as p, getDisplayStatus as r, init_shadow_state as s, ShadowStateError as t, markAsSynced as u };
|
|
289
289
|
|
|
290
|
-
//# sourceMappingURL=shadow-state-
|
|
290
|
+
//# sourceMappingURL=shadow-state-BBk_zacw.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as getShadowState, c as isShadowed, d as needsSync, f as removeShadowState, i as getPendingSyncCount, l as listShadowedIssues, m as updateTrackerStatusCache, n as createShadowState, o as getUnsyncedHistory, p as updateShadowState, r as getDisplayStatus, s as init_shadow_state, t as ShadowStateError, u as markAsSynced } from "./shadow-state-
|
|
1
|
+
import { a as getShadowState, c as isShadowed, d as needsSync, f as removeShadowState, i as getPendingSyncCount, l as listShadowedIssues, m as updateTrackerStatusCache, n as createShadowState, o as getUnsyncedHistory, p as updateShadowState, r as getDisplayStatus, s as init_shadow_state, t as ShadowStateError, u as markAsSynced } from "./shadow-state-BBk_zacw.js";
|
|
2
2
|
init_shadow_state();
|
|
3
3
|
export { ShadowStateError, createShadowState, getDisplayStatus, getPendingSyncCount, getShadowState, getUnsyncedHistory, isShadowed, listShadowedIssues, markAsSynced, needsSync, removeShadowState, updateShadowState, updateTrackerStatusCache };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
2
|
+
import { Fr as init_errors, Tr as FsError } from "./config-yaml-CxdwhAIA.js";
|
|
3
3
|
import { Effect } from "effect";
|
|
4
4
|
import { existsSync, readFileSync } from "fs";
|
|
5
5
|
import { join } from "path";
|
|
@@ -36,4 +36,4 @@ var init_shadow_utils = __esmMin((() => {
|
|
|
36
36
|
//#endregion
|
|
37
37
|
export { init_shadow_utils as n, getLinearApiKey as t };
|
|
38
38
|
|
|
39
|
-
//# sourceMappingURL=shadow-utils-
|
|
39
|
+
//# sourceMappingURL=shadow-utils-DdZ05AJS.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as runModelSummary, c as truncateHeadTail, i as parseEntries, n as generateSummaryFromPrompt, o as serializeConversation, r as init_smart_compaction, s as summarizeSerializedText, t as generateSmartSummary } from "./smart-compaction-
|
|
1
|
+
import { a as runModelSummary, c as truncateHeadTail, i as parseEntries, n as generateSummaryFromPrompt, o as serializeConversation, r as init_smart_compaction, s as summarizeSerializedText, t as generateSmartSummary } from "./smart-compaction-ByhL9cRS.js";
|
|
2
2
|
init_smart_compaction();
|
|
3
3
|
export { generateSmartSummary, generateSummaryFromPrompt, parseEntries, runModelSummary, serializeConversation, summarizeSerializedText, truncateHeadTail };
|