@overdeck/desktop 0.45.24 → 0.46.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 +32 -0
- package/package.json +1 -1
- package/server/{acceptance-criteria-DDCnXF58.js → acceptance-criteria-CCwFGICj.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-De1L-Sb4.js} +6 -6
- package/server/{agent-gc-CHcnvonI.js → agent-gc-CBULruzm.js} +5 -5
- package/server/agent-state-VQk8fY9F.js +3 -0
- package/server/{agent-state-service-BsgWxZuB.js → agent-state-service-BlnSkRFA.js} +5 -5
- package/server/{agent-state-service-D5UGKIJL.js → agent-state-service-hZpxIw1E.js} +1 -1
- package/server/agents-BKKkxKgK.js +3 -0
- package/server/{agents-EbI0zCJl.js → agents-C5rWYhb6.js} +4 -4
- package/server/archive-planning-0FJ6Xd3b.js +2 -0
- package/server/{archive-planning-Du25Jtst.js → archive-planning-C0lAbNB_.js} +16 -24
- package/server/{artifact-index-jobs-CbEDfCDu.js → artifact-index-jobs-ug6ZxIP5.js} +2 -2
- package/server/{assemble-J2ZZ2C15.js → assemble-DnffNpOo.js} +2 -2
- package/server/{backlog-auto-trigger-2R2jog7n.js → backlog-auto-trigger-Dh-i9PQf.js} +3 -3
- package/server/{behavior-B3exJ42O.js → behavior-CfIg6pKp.js} +2 -2
- package/server/bridge-pool-patrol-CUFmjVDN.js +136 -0
- package/server/{briefing-freshness-D1wzUIWv.js → briefing-freshness-DHmCSLar.js} +2 -2
- package/server/{build-info-CZk_TITh.js → build-info-BP160gU7.js} +1 -1
- package/server/{build-info-Ie_D0_BT.js → build-info-CuFfxZxp.js} +5 -3
- package/server/{checkpoint-manager-BI1Wxoku.js → checkpoint-manager-DEWD82qK.js} +2 -2
- package/server/{checkpoint-manager-DwbQoqrC.js → checkpoint-manager-Dxh0FYsv.js} +1 -1
- package/server/checkpoint-worker.js +1 -1
- package/server/{checkpoints-CQB1h765.js → checkpoints-CZvbtLnr.js} +2 -2
- package/server/{checkpoints-BJIs5QIA.js → checkpoints-DMTgXuLG.js} +1 -1
- package/server/{claude-hooks-provision-8Ngo8TpT.js → claude-hooks-provision-CN-xo-do.js} +1 -1
- package/server/{claude-hooks-provision-D8GXF3_s.js → claude-hooks-provision-fvy4RD2b.js} +13 -2
- package/server/{claude-permissions-DNWEVV6z.js → claude-permissions-CN0cSCPp.js} +2 -2
- package/server/{claude-settings-overlay-CEdaqpWI.js → claude-settings-overlay-CJn35FHQ.js} +2 -2
- package/server/{claude-settings-overlay-DWy-Bb4Y.js → claude-settings-overlay-Dabi9slj.js} +1 -1
- package/server/cli-DmXETsw-.js +3 -0
- package/server/{cli-RoOx5DUf.js → cli-oCWYA1pE.js} +9 -9
- package/server/{cliproxy-C8a1vtTU.js → cliproxy-C8mB3KuB.js} +2 -2
- package/server/{cliproxy-fHfIeiGd.js → cliproxy-PGwTX_o8.js} +1 -1
- package/server/{close-issue-DoOifFIK.js → close-issue-D5MF5GqF.js} +5 -5
- package/server/{closed-issue-reaper-CktPXo8m.js → closed-issue-reaper-CJ24u0Zt.js} +1 -1
- package/server/{closed-issue-reaper-Bk3SU4RC.js → closed-issue-reaper-Cltx86x5.js} +37 -16
- package/server/{codex-GcHuUF-k.js → codex-BdEsUFWh.js} +1 -1
- package/server/{codex-BZXGhUVB.js → codex-Drlf5Xhf.js} +36 -7
- package/server/{codex-parser-CFZ1_1Jl.js → codex-parser-DpB89Vqa.js} +2 -2
- package/server/compaction-continuation-K2AxQX4H.js +200 -0
- package/server/{config-CKxYiCmX.js → config-B2IMcBxx.js} +4 -3
- package/server/{config-DzV30TOm.js → config-DV-grfQc.js} +1 -1
- package/server/{config-BZ0sHTju.js → config-Dr3pW6w6.js} +2 -2
- package/server/{config-yaml-DySPNmKN.js → config-yaml-CmOPzmBb.js} +268 -14
- package/server/{conflict-gate-BaCVrH-N.js → conflict-gate-B9cN3SBi.js} +4 -4
- package/server/{conflict-gate-BhAY7TUd.js → conflict-gate-Dh754uyA.js} +1 -1
- package/server/{context-layers-BrPmE__h.js → context-layers-D6LZo3l1.js} +2 -2
- package/server/{context-layers-igZ4FI4_.js → context-layers-dR5YxHYB.js} +3 -3
- package/server/{control-settings-BQp7_4uD.js → control-settings-C7DUehE1.js} +49 -19
- package/server/{conversation-compaction-CgrR8YYp.js → conversation-compaction-BoqdDXWF.js} +8 -8
- package/server/{conversation-compaction-eQB5CkOe.js → conversation-compaction-Dj4FAKoZ.js} +1 -1
- package/server/{conversation-service-DPJ71F33.js → conversation-service-5aCnq1zR.js} +8 -7
- package/server/conversation-service-BCxl4f8Z.js +3 -0
- package/server/{conversations-6AfUfbwc.js → conversations-BUpYsOZg.js} +4 -4
- package/server/{conversations-CAsJF9kh.js → conversations-C34dyIb9.js} +1 -1
- package/server/{cost-B2ddP6wq.js → cost-Bgcub5kW.js} +12 -2
- package/server/{cost-R-m6Yi-W.js → cost-CvxRrucd.js} +3 -3
- package/server/{cost-sync-BsN6ER0n.js → cost-sync-Dv3LUaNW.js} +3 -3
- package/server/{dag-B1ucnjDU.js → dag-ombYYt4s.js} +2 -2
- package/server/{dangerous-git-ops-BXqeWVSf.js → dangerous-git-ops-BcJPC5Rr.js} +1 -1
- package/server/dashboard-db-worker.js +7 -7
- package/server/deacon-DrXqT9LQ.js +4 -0
- package/server/{deacon-CU_cAYSR.js → deacon-hi9KLPLT.js} +2933 -2704
- package/server/{deacon-nudge-log-6wVqAaqz.js → deacon-nudge-log-BNBebzeL.js} +3 -3
- package/server/deacon-pending-lifecycle-Cpk0k7Hi.js +33 -0
- package/server/{deacon-swarm-BXZZ1Z2-.js → deacon-swarm-DBxUaO-A.js} +13 -13
- package/server/deacon-swarm-I2JfX5Tg.js +2 -0
- package/server/deacon.js +14 -19
- package/server/dead-end-trip-CQcP70ND.js +13 -0
- package/server/delivery-Da0zEMY4.js +3 -0
- package/server/{deploy-patrol-AiFoP8dw.js → deploy-patrol-Df-Tmaq0.js} +69 -18
- package/server/deploy-queue-9SrhZR63.js +3 -0
- package/server/deploy-queue-UjKGYsDe.js +169 -0
- package/server/deploy-window-jOiPRHL0.js +3 -0
- package/server/{deploy-window-C3F-tihF.js → deploy-window-rpqpWqHA.js} +40 -16
- package/server/{dev-supervisor-bcOWqdQE.js → dev-supervisor-CC46Ig8q.js} +2 -2
- package/server/{devcontainer-renderer-_d6XhyND.js → devcontainer-renderer-68CSCRnu.js} +3 -3
- package/server/{dist-Cb_0uvpS.js → dist-CJy72uEg.js} +1 -1
- package/server/dist-DSlxIU1H.js +3 -0
- package/server/{dist-src-BSoS7mkd.js → dist-src-Bik83hFi.js} +1 -1
- package/server/docker-BMVTSFL5.js +3 -0
- package/server/{docker-DcMTFTUC.js → docker-Dam7mbIB.js} +2 -2
- package/server/{dod-C6n9RV3G.js → dod-Dar-yheg.js} +8 -4
- package/server/durable-review-pipeline-CGZ5QBxh.js +17 -0
- package/server/durable-review-pipeline-jpgCJZFp.js +3 -0
- package/server/{ensure-devcontainer-DNi-ono3.js → ensure-devcontainer-B057YA81.js} +4 -4
- package/server/{ensure-devcontainer-BZgOhRo7.js → ensure-devcontainer-C98V8yW-.js} +1 -1
- package/server/{esm-shims-OSHAYaS1.js → esm-shims-Br9BPdkR.js} +1 -1
- package/server/{event-store-EV2cMiXj.js → event-store-ELqkVOn0.js} +1 -1
- package/server/{event-store-CQL6NeqB.js → event-store-zY5MJHgF.js} +23 -4
- package/server/{events-BTdrdEq8.js → events-D6pyqhzM.js} +1 -1
- package/server/{events-DTfAe4My.js → events-D9PR1IC0.js} +3 -3
- package/server/{factory-CFibJuaw.js → factory-CRoOpGsF.js} +5 -5
- package/server/{feature-registry-population-DKZFMbFt.js → feature-registry-population--YUXU999.js} +4 -4
- package/server/{feature-registry-storage-BdPuLcBX.js → feature-registry-storage-BORBTo0y.js} +2 -2
- package/server/{features-ez2271oH.js → features--nFkJY8v.js} +2 -2
- package/server/{feedback-target-CoFDHiM8.js → feedback-target-C0ZzyHvU.js} +1 -1
- package/server/{feedback-target-7mqqwrX6.js → feedback-target-Dt9BsapX.js} +8 -8
- package/server/{feedback-writer-CY5L1lB7.js → feedback-writer-BG0RUZiu.js} +5 -5
- package/server/{feedback-writer-D3a22RCd.js → feedback-writer-D1fm-5Z8.js} +1 -1
- package/server/{flywheel-SVF02Jpq.js → flywheel-BekukH4i.js} +1 -1
- package/server/{flywheel-DHrgCphM.js → flywheel-BiT3odRb.js} +23 -15
- package/server/{flywheel-DzGtWnJ1.js → flywheel-CLVB55Be.js} +16 -15
- package/server/flywheel-merge-order-BJv1DZz1.js +462 -0
- package/server/flywheel-merge-order-BKw9o6ku.js +2 -0
- package/server/forge-CZbSg6Ds.js +383 -0
- package/server/forge-DK3blQb_.js +3 -0
- package/server/{from-kNxT0bZC.js → from-D_4_dk7i.js} +1 -1
- package/server/{fts-db-CE46vDkZ.js → fts-db-BeOomFa-.js} +2 -2
- package/server/{fts-operations-CqY6zl-i.js → fts-operations-BdewJ_g9.js} +2 -2
- package/server/git-utils-CI6cwyyC.js +3 -0
- package/server/{git-utils-CRw2zLPC.js → git-utils-ameCgDdy.js} +30 -5
- package/server/{github-app-C3QrAUd0.js → github-app-CQ1Lo6LA.js} +3 -3
- package/server/{github-app-ClZ2lk8D.js → github-app-DtAsvwzK.js} +1 -1
- package/server/{github-client-BnIsSrEN.js → github-client-BfyDxuRN.js} +2 -2
- package/server/{github-client-DfQYVUaw.js → github-client-Cj0yl_07.js} +1 -1
- package/server/github-pr-lookup-BDq6Wznz.js +58 -0
- package/server/{harness-binary-DPUi-Pv8.js → harness-binary-DqkftwTb.js} +2 -2
- package/server/{harness-resolve-3lNZkyT4.js → harness-resolve-CqMqM1Mb.js} +4 -4
- package/server/{health-events-BBcTYQKU.js → health-events-CazRxJUS.js} +2 -2
- package/server/{health-events-BDOHby5Q.js → health-events-_xfTaOUs.js} +1 -1
- package/server/{hooks-CKZgXlJb.js → hooks-BO3QT1sn.js} +2 -2
- package/server/{hooks-DPVX1rwQ.js → hooks-BnJsxlSq.js} +1 -1
- package/server/{hume-Cz8igP9E.js → hume-CDYJxqx-.js} +2 -2
- package/server/hume-Dq--7rOQ.js +3 -0
- package/server/{idle-stack-reaper-CuLF0j2H.js → idle-stack-reaper-BYqERdkE.js} +1 -1
- package/server/{idle-stack-reaper-DDIRwxUY.js → idle-stack-reaper-CnGx_PO_.js} +99 -6
- package/server/in-flight-guard-Bq3epG58.js +45 -0
- package/server/{infra-BEqFxlJc.js → infra-BjuxvjdS.js} +70 -5
- package/server/{injection-CPUIqNhI.js → injection-DZxlV2al.js} +1 -1
- package/server/{injection-C8aiVJrF.js → injection-UCf8EsjX.js} +7 -7
- package/server/{inspect-agent-BLuJ1AkT.js → inspect-agent-6kylZnrm.js} +26 -25
- package/server/inspect-agent-BVwDrVrz.js +2 -0
- package/server/{internal-token-s0-oKybJ.js → internal-token-DvMTQSOS.js} +2 -2
- package/server/{internal-token-BrcU6qfe.js → internal-token-M9omeXM1.js} +1 -1
- package/server/{io-C9kF1wtJ.js → io-VHvc0Ssp.js} +43 -26
- package/server/{issue-closed-CDJk4pIp.js → issue-closed-B6KJkmHZ.js} +7 -7
- package/server/{issue-lifecycle-B8sZHVHh.js → issue-lifecycle-9gk3fnXN.js} +1 -1
- package/server/{issue-lifecycle-ojZAzDBP.js → issue-lifecycle-C4Zj0WmE.js} +34 -28
- package/server/{issue-service-singleton-Yx5DdmVJ.js → issue-service-singleton-DmCh7EHj.js} +10 -10
- package/server/{issue-service-singleton-BvJ09SaR.js → issue-service-singleton-PMx8F1jr.js} +1 -1
- package/server/{issues-BMmP_77e.js → issues-CgnQ1OGQ.js} +2 -2
- package/server/{jsonl-parser-BXSlHwEh.js → jsonl-parser-DJOH_O-w.js} +5 -4
- package/server/{label-cleanup-B0UJwnv5.js → label-cleanup-Dv7AV_R1.js} +3 -3
- package/server/{label-reconciler-B4iOAjlC.js → label-reconciler--F85rufp.js} +4 -4
- package/server/{lifecycle-yPd___5E.js → lifecycle-CTdOWYMi.js} +2 -2
- package/server/{lifecycle-xmBfK2GJ.js → lifecycle-DDN8ApVY.js} +6 -7
- package/server/{lifecycle-io-BREGpnLk.js → lifecycle-io-D-lGdzK3.js} +5 -5
- package/server/{lifecycle-io-DPo7x11I.js → lifecycle-io-D_zTLvP1.js} +1 -1
- package/server/{linear-client-BsuUvkdA.js → linear-client-BQU36QqE.js} +2 -2
- package/server/{linear-client-CTskEeT_.js → linear-client-CY4O_Tu3.js} +1 -1
- package/server/linear-mcp-auth-BnU4TYfY.js +280 -0
- package/server/linear-mcp-auth-NYBq_oHZ.js +2 -0
- package/server/memory-fts-worker.js +1 -1
- package/server/{merge-CefQNAnq.js → merge-Bpx4jjht.js} +13 -11
- package/server/{merge-agent-4WOWlSYA.js → merge-agent-DdMVSV2Y.js} +233 -83
- package/server/{merge-agent-CKkgIBPB.js → merge-agent-DrXa1CpW.js} +1 -1
- package/server/{merge-batch-ClFn2T-y.js → merge-batch-C5q1c1GX.js} +1 -1
- package/server/merge-completeness-BMm8tMyZ.js +277 -0
- package/server/merge-completeness-D0ljXbk3.js +3 -0
- package/server/{merge-B1DiziGU.js → merge-idOG--29.js} +1 -1
- package/server/merge-ops-DdpTiEMt.js +2 -0
- package/server/merge-rebase-DGQpYJU3.js +2 -0
- package/server/{merge-rebase-BfaTyXsw.js → merge-rebase-xLnMlw5h.js} +3 -3
- package/server/{merge-set-DJ8-UErs.js → merge-set-DH7ot3yz.js} +11 -5
- package/server/merge-set-DzsOTBg5.js +3 -0
- package/server/{merge-sync-VPV28g0g.js → merge-sync-CQ-LgZ1_.js} +406 -153
- package/server/merge-sync-Ca7F5JnQ.js +3 -0
- package/server/{merge-train-CHopycP0.js → merge-train-DTEMyIu4.js} +18 -8
- package/server/{merge-train-deps-D1cOZzy2.js → merge-train-deps-CNPJzepw.js} +4 -4
- package/server/merge-verification-x3JO8Dtz.js +220 -0
- package/server/merged-docker-cleanup-worker-CTpC27Bs.js +107 -0
- package/server/merged-docker-cleanup-worker-Cdi9apm-.js +3 -0
- package/server/{multipart-parser-duPAfSBw.js → multipart-parser-IMSBfePV.js} +2 -2
- package/server/{no-resume-mode-Nw29vaFb.js → no-resume-mode-C5ULAXwO.js} +1 -1
- package/server/node_modules/.package-lock.json +27 -27
- 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/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-CTSGcK8p.js → orphan-proposed-reconciler-CWmOdM9-.js} +1 -1
- package/server/{orphan-proposed-reconciler-BvKkWMJQ.js → orphan-proposed-reconciler-Dg6U4ADZ.js} +24 -15
- package/server/package-lock.json +28 -28
- package/server/package.json +1 -1
- package/server/{pan-dir-B0c3w0Ya.js → pan-dir-ubraCiUg.js} +24 -10
- package/server/{paths-D-xWGHdh.js → paths-cXmOwSbh.js} +2 -2
- package/server/pending-lifecycle-claim-DEteYdS9.js +110 -0
- package/server/{pickup-DUCLWrJY.js → pickup-D8xtG1J2.js} +1 -1
- package/server/pipeline-membership-BGSvkT2M.js +3 -0
- package/server/pipeline-membership-CrAPLYtf.js +57 -0
- package/server/{pipeline-membership-mY3GprlK.js → pipeline-membership-gather-CET40frr.js} +177 -109
- package/server/pipeline-membership-gather-DTfcgxLl.js +3 -0
- package/server/{pipeline-notifier-BXkJzDC4.js → pipeline-notifier-BuQ0e4hF.js} +2 -2
- package/server/{pipeline-notifier-BJr8gQX6.js → pipeline-notifier-ImNXknf0.js} +1 -1
- package/server/post-merge-lifecycle-worker-DbO10pum.js +50 -0
- package/server/{project-pipelines-C0MWUeCU.js → project-pipelines-Bim6bThI.js} +2 -2
- package/server/{project-repos-B6GycDh9.js → project-repos-C0nuoBGv.js} +7 -3
- package/server/project-repos-CRE6Ykow.js +3 -0
- package/server/projects-B03Wr-xc.js +3 -0
- package/server/{prompts-DxzFXuLl.js → prompts-BEx08AIu.js} +2 -2
- package/server/{providers-u4Ga0jOr.js → providers-D7IluJe0.js} +1 -1
- package/server/{providers-qQAwGQDW.js → providers-evXhiQeg.js} +7 -7
- package/server/public/assets/{chunk-BO2N2NFS-BamJdinX.js → chunk-BO2N2NFS-D1s4-Sqp.js} +4 -4
- package/server/public/assets/{diagram-OG6HWLK6-DfOB8-w4.js → diagram-OG6HWLK6-1gdMoSF7.js} +1 -1
- package/server/public/assets/{dist-D7zYSEA6.js → dist-CxAOHbil.js} +1 -1
- package/server/public/assets/{dist-ByIuzMQW.js → dist-DqDRYW6P.js} +3 -3
- package/server/public/assets/{ganttDiagram-6RSMTGT7-EdmRyXL3.js → ganttDiagram-6RSMTGT7-BYex-Ec7.js} +1 -1
- package/server/public/assets/{highlighted-body-OFNGDK62-MerOfTX8.js → highlighted-body-OFNGDK62-DlVkiG0S.js} +1 -1
- package/server/public/assets/index-Cc7cnFC4.css +1 -0
- package/server/public/assets/index-K0hAYCgV.js +807 -0
- package/server/public/assets/{linear-BBbArIcK.js → linear-B4cuEFmO.js} +1 -1
- package/server/public/assets/mermaid-GHXKKRXX-DyDHFXHV.js +1 -0
- package/server/public/assets/{pieDiagram-4H26LBE5-BKIddiJN.js → pieDiagram-4H26LBE5-CBHNBIJQ.js} +1 -1
- package/server/public/assets/{prod-B8vYiu52.js → prod-CN2nHBvX.js} +4 -4
- package/server/public/assets/{quadrantDiagram-W4KKPZXB-D6RtoULk.js → quadrantDiagram-W4KKPZXB-Bom87VOQ.js} +1 -1
- package/server/public/assets/{sankeyDiagram-5OEKKPKP-CLrCedZX.js → sankeyDiagram-5OEKKPKP-UrBeyLxk.js} +1 -1
- package/server/public/assets/{xychartDiagram-2RQKCTM6-hznR8DYl.js → xychartDiagram-2RQKCTM6-DhkbrIxR.js} +1 -1
- package/server/public/index.html +2 -2
- package/server/{pull-requests-7N8WKseP.js → pull-requests-Cv7LxzUN.js} +1 -1
- package/server/{pull-requests-_lHueOHW.js → pull-requests-DHWiKxo7.js} +19 -10
- package/server/{queries-CjNIf-Ub.js → queries-DHJm7bTd.js} +631 -110
- package/server/{rally-CyWT_lNO.js → rally-B71M9f4o.js} +3 -3
- package/server/rally-YDjU513q.js +3 -0
- package/server/{rally-api-ClOSd-Tt.js → rally-api-D5uXN08-.js} +1 -1
- package/server/{rally-api-C8e_1JRi.js → rally-api-Dkqmok65.js} +2 -2
- package/server/{rally-client-lc-nokqr.js → rally-client-Bfqm6XI4.js} +4 -4
- package/server/{rally-client-sgtVqzNU.js → rally-client-CxsA6ExK.js} +1 -1
- package/server/{reap-terminal-sessions-7KeHv1R1.js → reap-terminal-sessions-BQ23nriz.js} +2 -2
- package/server/{reap-terminal-sessions-BtHPo6Xc.js → reap-terminal-sessions-CvmwaqKv.js} +2 -2
- package/server/{rebuild-stack-lwtsW0GO.js → rebuild-stack-0EEYReVZ.js} +16 -7
- package/server/{rebuild-stack-CFvcBHsS.js → rebuild-stack-qeRqHZxH.js} +2 -2
- package/server/{reconstruct-cache-C3Ui7ojV.js → reconstruct-cache-BbYFsqLa.js} +7 -6
- package/server/record-CtroO946.js +3 -0
- package/server/record-update-DH6dLJID.js +3 -0
- package/server/{record-update-dE1Aw83j.js → record-update-Z0QCxmMp.js} +124 -34
- package/server/{recovery-trip-BvRWfUXM.js → recovery-trip-eJe26h-f.js} +2 -2
- package/server/{release-engine-Cx48W7z8.js → release-engine-lPUp-MTd.js} +5 -5
- package/server/{release-set-CQfuN9-v.js → release-set-BwGeyZKX.js} +3 -3
- package/server/{remote-C_2hasl7.js → remote-BCd02Es1.js} +3 -3
- package/server/{remote-ChgimyYa.js → remote-CVGUhXMV.js} +3 -3
- package/server/{remote-agents-CA3Ihlxj.js → remote-agents-C1bssi41.js} +2 -2
- package/server/{remote-agents-By1ige5O.js → remote-agents-C_VxssLU.js} +300 -46
- package/server/{remote-completion-fVe9e_3u.js → remote-completion-DAB0P706.js} +12 -12
- package/server/resume-u9byntrq.js +3 -0
- package/server/{review-agent-DNboMyW4.js → review-agent-CD4RCI0Y.js} +1 -1
- package/server/{review-agent-CIGOQYBD.js → review-agent-CHhI66UP.js} +60 -47
- package/server/{review-artifacts-nRDPuMxd.js → review-artifacts-DSMRIfuJ.js} +7 -6
- package/server/{review-context-2uj-YQ8J.js → review-context-oFuBbiEE.js} +8 -8
- package/server/{in-flight-guard-CAAkqPLu.js → review-convoy-liveness-CpzrcJ5F.js} +3 -44
- package/server/review-status-BZH8h-6W.js +3 -0
- package/server/review-status-emit-CUExtHd5.js +50 -0
- package/server/{review-status-enrichment-Dci-ZwEt.js → review-status-enrichment-QV_hQkgS.js} +4 -4
- package/server/{review-status-source-CxuEjLGg.js → review-status-source-CpvJnvnQ.js} +24 -3
- package/server/review-status-source-ylw5QZUR.js +3 -0
- package/server/{review-status-sync-BTOpxtTC.js → review-status-sync-483sujRo.js} +2 -2
- package/server/{review-status-sync-DSDK3OMy.js → review-status-sync-NaWvI9Xf.js} +1 -1
- package/server/review-status-yljtTd-q.js +7521 -0
- package/server/{review-verdict-feedback-CTd4QMBu.js → review-verdict-feedback-BPDn4li_.js} +1 -1
- package/server/{review-verdict-feedback-CCjVA7Uk.js → review-verdict-feedback-CELeUinh.js} +48 -8
- package/server/{rollup-FGsKki9R.js → rollup-DTNvelz9.js} +8 -8
- package/server/{rollup-BKQC7jp4.js → rollup-DYZfq1c4.js} +1 -1
- package/server/{scanner-CnqEZeDy.js → scanner-CV35oSn4.js} +8 -7
- package/server/{sequence-io-D909zgeH.js → sequence-io-DF_8iuhV.js} +4 -4
- package/server/{sequencer-agent-CzkcK6P5.js → sequencer-agent-B2WeCtGi.js} +5 -5
- package/server/server.js +1952 -578
- package/server/{service-CLeAoU6G.js → service-Br9rpBNA.js} +81 -64
- package/server/{session-fork-CHI1XvL9.js → session-fork-D0LY152N.js} +2 -2
- package/server/{session-history-BT3IvqhC.js → session-history-BUyK29eq.js} +4 -4
- package/server/{settings-BTMvpNFU.js → settings-Bse1Pdcj.js} +3 -3
- package/server/settings-CdvIF84R.js +2 -0
- package/server/{settings-C0zgxOGf.js → settings-CvVGqNEs.js} +3 -2
- package/server/{shadow-engineering-BJfgm-hX.js → shadow-engineering-BWLa8ODz.js} +2 -2
- package/server/{shadow-state-7a-524T8.js → shadow-state-B4fpKxOO.js} +2 -2
- package/server/{shadow-state-DnDyjujH.js → shadow-state-FV6PHfEW.js} +1 -1
- package/server/{shadow-utils-Db3oroFG.js → shadow-utils-D7asqxOZ.js} +2 -2
- package/server/{ship-log-D9MlVzYU.js → ship-log-xplJ8t75.js} +1 -1
- package/server/{smart-compaction-CV2ukKND.js → smart-compaction-CPp2Ykf6.js} +1 -1
- package/server/{smart-compaction-KCYScAU1.js → smart-compaction-D3U_79f-.js} +8 -7
- package/server/{spawn-planning-session-qUC2VWu3.js → spawn-planning-session-1nFi3gfk.js} +1 -1
- package/server/{spawn-planning-session-DKpdFyOC.js → spawn-planning-session-DGfZ5B8D.js} +17 -17
- package/server/{specialist-completion-Ky9wCDpb.js → specialist-completion-Br48eiDP.js} +1 -1
- package/server/{specialist-context-Bn3dCGS2.js → specialist-context-cVbGnTa3.js} +5 -5
- package/server/{specialist-handoff-logger-CMEwYxa2.js → specialist-handoff-logger-DK-GTz4s.js} +2 -2
- package/server/{specialist-logs-C5p8G7tx.js → specialist-logs-Cl5-hqT8.js} +3 -3
- package/server/{specialists-CC4r-c2s.js → specialists-CNfYO3G2.js} +975 -227
- package/server/{specialists-jiuuyVkp.js → specialists-Cicieuzu.js} +18 -18
- package/server/{specialists-CShuVGWT.js → specialists-JHsdU3pA.js} +1 -1
- package/server/{specialists-DM6bWjsi.js → specialists-Tdezg_6N.js} +1 -1
- package/server/specs-Bt7WJDoC.js +3 -0
- package/server/src-CRmCHlma.js +11408 -0
- package/server/{src-CXmtj0im.js → src-Ck028hjO.js} +6 -6
- package/server/{src-CdmnTM2m.js → src-UWcGe0Ix.js} +3 -3
- package/server/{stack-health-Bn3o8FBX.js → stack-health-CJLMrLBl.js} +1 -1
- package/server/{stack-health-DxSdG9cW.js → stack-health-DqSqx0zv.js} +7 -5
- package/server/{stale-task-claims-KJKxxiiQ.js → stale-task-claims-CYFOUNlT.js} +4 -4
- package/server/{staleness-CT34nwr9.js → staleness-BQ-0gMYK.js} +1 -1
- package/server/{staleness-DPm7ClwA.js → staleness-D47CUJok.js} +1 -1
- package/server/{state-home-Cn_Qu8IX.js → state-home-BYV7qZTW.js} +2 -2
- package/server/{state-mapping-BL_-3Yt8.js → state-mapping-BVldLhBf.js} +1 -1
- package/server/{state-migrate-BGg2ZaOt.js → state-migrate-CvvBtS0Y.js} +4 -4
- package/server/{stuck-remediation-s9_2qfi6.js → stuck-remediation-Wt0UVvu1.js} +1 -1
- package/server/{stuck-remediation-DYuPRYYw.js → stuck-remediation-mkLC6G_t.js} +79 -22
- package/server/{substrate-bug-weights-service-B-FwCs5V.js → substrate-bug-weights-service-XfLAKnmK.js} +3 -3
- package/server/{summary-fork-DpcxN9tf.js → summary-fork-CD7GOts0.js} +2 -2
- package/server/{summary-fork-D1RAk9rJ.js → summary-fork-xiXBnWG9.js} +8 -8
- package/server/supervisor/{injection-budget-Csw5tqfJ.js → injection-budget-B5SbvDx2.js} +1 -1
- package/server/supervisor/{paths-DehGY2Fj.js → paths-K3noE4N_.js} +1 -1
- package/server/supervisor/pty-supervisor.js +49 -3
- package/server/supervisor/{pty-token-x-ea28Us.js → pty-token-B7lp0ElT.js} +2 -2
- package/server/{supervisor-wM4ooB5O.js → supervisor-DL788vos.js} +3 -3
- package/server/supervisor-UWiQNK-y.js +2 -0
- package/server/{swarm-readiness-DlP_UjHq.js → swarm-readiness-BV14DF5N.js} +3 -3
- package/server/{system-prerequisites-DUDj1YHf.js → system-prerequisites-pdWG6ZQs.js} +2 -2
- package/server/{teardown-workspace-DeTTImn-.js → teardown-workspace-l2F4_zim.js} +15 -16
- package/server/{test-agent-queue-MbxX5vqq.js → test-agent-queue-qakFIIGz.js} +6 -6
- package/server/{test-verdict-bWYBtqBg.js → test-verdict-BJYDggMm.js} +1 -1
- package/server/{test-verdict-gscuksPv.js → test-verdict-Gw-btEfb.js} +1 -1
- package/server/{tldr-daemon-BYFkts95.js → tldr-daemon-BKOYB616.js} +1 -1
- package/server/{tldr-daemon-C-69c3OI.js → tldr-daemon-CBaWkV9k.js} +2 -2
- package/server/{tmux-R7N7y-Mh.js → tmux-B1Wbxz5o.js} +3 -3
- package/server/{tmux-B6z7h_vZ.js → tmux-DQ6jB76i.js} +1 -1
- package/server/{launcher-generator-BBWG_SiS.js → tmux-dedup-DbN6MGzM.js} +428 -9
- package/server/{token-BK6t8BIT.js → token-Cxbk023d.js} +2 -2
- package/server/{token-util-DxXu-vd1.js → token-util-CLq2MmQt.js} +1 -1
- package/server/token-util-zlz9U0ki.js +3 -0
- package/server/{tracker-config-G6latr8C.js → tracker-config-DZ8Zn2nQ.js} +2 -2
- package/server/{tracker-utils-DHv5pSDT.js → tracker-utils-L0FKtjq2.js} +3 -3
- package/server/{traefik-connect-Df2uXPsQ.js → traefik-connect-bNX6jKkb.js} +1 -1
- package/server/{tunnel-CDVKJpRv.js → tunnel-BAm1XgjG.js} +3 -3
- package/server/{tunnel-DGdUkGoZ.js → tunnel-CjSnHdTc.js} +1 -1
- package/server/{types-5M0lupud.js → types-q67TYYg5.js} +1 -1
- package/server/uat-promote-verification-CKB9ZrKC.js +92 -0
- package/server/uat-train-Cu-4nvbf.js +2 -0
- package/server/uat-train-D5UjcyAa.js +0 -0
- package/server/{validate-IfDGkaVR.js → validate-Cxsx5Uz1.js} +8 -6
- package/server/{validation-CC9OPqJZ.js → validation-DEaTZafj.js} +1 -1
- package/server/{validation-Dw1pzDzr.js → validation-VZgJxmqc.js} +4 -4
- package/server/{verification-artifact-B3itKTxu.js → verification-artifact-C85cRTc_.js} +1 -1
- package/server/{verification-artifact-TVFSz_q1.js → verification-artifact-g3yuxQDL.js} +1 -1
- package/server/{verification-runner-BW4HOKAz.js → verification-runner-DlZI8yhw.js} +1 -1
- package/server/{verification-runner-CkgX6EtI.js → verification-runner-KDZIsBj4.js} +40 -18
- package/server/{vtt-parser-DYPbKcIJ.js → vtt-parser-Jr94BF3Y.js} +1 -1
- package/server/{work-agent-prompt-Du8Vh2aJ.js → work-agent-prompt-C-vuP3_J.js} +20 -9
- package/server/workflows-CHrx_hcW.js +2 -0
- package/server/{workflows-mbQzh6mQ.js → workflows-D0oip4eV.js} +161 -78
- package/server/{workspace--8tnhDI0.js → workspace-BqFg__wH.js} +1 -1
- package/server/{workspace-BPUws1-_.js → workspace-C0fH3aek.js} +3 -3
- package/server/workspace-anchor-drift-B4gMRHl4.js +3 -0
- package/server/workspace-anchor-drift-CZKofakh.js +224 -0
- package/server/{workspace-config-CIVWZOQr.js → workspace-config-B123aZl-.js} +1 -1
- package/server/workspace-manager-CDTKjjdU.js +3 -0
- package/server/{workspace-manager-CBhNdzE4.js → workspace-manager-CwO-Hek7.js} +156 -117
- package/server/{workspace-metadata-_WygnyoX.js → workspace-metadata-CQv00QwK.js} +2 -2
- package/server/{workspace-metadata-BzHnwwX4.js → workspace-metadata-D4M8BM4W.js} +1 -1
- package/server/{workspaces-Do_9J0LQ.js → workspaces-j1e_6aAT.js} +719 -292
- 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-peer-review/SKILL.md +195 -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/agents-wi9NWzs2.js +0 -3
- package/server/archive-planning-BZDgzoEj.js +0 -3
- package/server/cli-B86rejVV.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/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/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/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/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,5 +1,5 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
2
|
+
import { Fr as init_errors, Ir as AGENTS_DIR, Tr as FsError, ci as init_paths } from "./config-yaml-CmOPzmBb.js";
|
|
3
3
|
import { Effect } from "effect";
|
|
4
4
|
import { existsSync, mkdirSync, readFileSync, readdirSync, unlinkSync, writeFileSync } from "fs";
|
|
5
5
|
import { join } from "path";
|
|
@@ -294,4 +294,4 @@ var init_hooks = __esmMin((() => {
|
|
|
294
294
|
//#endregion
|
|
295
295
|
export { pushToHookSync as _, collectMail as a, sendMail as b, generateFixedPointPromptSync as c, initHook as d, initHookSync as f, pushToHook as g, popFromHookSync as h, clearHookSync as i, getHook as l, popFromHook as m, checkHookSync as n, collectMailSync as o, init_hooks as p, clearHook as r, generateFixedPointPrompt as s, checkHook as t, getHookSync as u, reorderHookItems as v, sendMailSync as x, reorderHookItemsSync as y };
|
|
296
296
|
|
|
297
|
-
//# sourceMappingURL=hooks-
|
|
297
|
+
//# sourceMappingURL=hooks-BO3QT1sn.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { _ as pushToHookSync, a as collectMail, b as sendMail, c as generateFixedPointPromptSync, d as initHook, f as initHookSync, g as pushToHook, h as popFromHookSync, i as clearHookSync, l as getHook, m as popFromHook, n as checkHookSync, o as collectMailSync, p as init_hooks, r as clearHook, s as generateFixedPointPrompt, t as checkHook, u as getHookSync, v as reorderHookItems, x as sendMailSync, y as reorderHookItemsSync } from "./hooks-
|
|
1
|
+
import { _ as pushToHookSync, a as collectMail, b as sendMail, c as generateFixedPointPromptSync, d as initHook, f as initHookSync, g as pushToHook, h as popFromHookSync, i as clearHookSync, l as getHook, m as popFromHook, n as checkHookSync, o as collectMailSync, p as init_hooks, r as clearHook, s as generateFixedPointPrompt, t as checkHook, u as getHookSync, v as reorderHookItems, x as sendMailSync, y as reorderHookItemsSync } from "./hooks-BO3QT1sn.js";
|
|
2
2
|
init_hooks();
|
|
3
3
|
export { checkHook, checkHookSync, clearHook, clearHookSync, collectMail, collectMailSync, generateFixedPointPrompt, generateFixedPointPromptSync, getHook, getHookSync, initHook, initHookSync, popFromHook, popFromHookSync, pushToHook, pushToHookSync, reorderHookItems, reorderHookItemsSync, sendMail, sendMailSync };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import { n as init_workspace_config, r as replacePlaceholdersSync } from "./workspace-config-
|
|
2
|
+
import { n as init_workspace_config, r as replacePlaceholdersSync } from "./workspace-config-B123aZl-.js";
|
|
3
3
|
import { Data, Effect } from "effect";
|
|
4
4
|
//#region ../../lib/hume.ts
|
|
5
5
|
/**
|
|
@@ -189,4 +189,4 @@ var init_hume = __esmMin((() => {
|
|
|
189
189
|
//#endregion
|
|
190
190
|
export { init_hume as i, createHumeConfig as n, deleteHumeConfig as r, HumeApiError as t };
|
|
191
191
|
|
|
192
|
-
//# sourceMappingURL=hume-
|
|
192
|
+
//# sourceMappingURL=hume-CDYJxqx-.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as handleAgentLifecycleEventForIdleStack } from "./idle-stack-reaper-
|
|
1
|
+
import { t as handleAgentLifecycleEventForIdleStack } from "./idle-stack-reaper-CnGx_PO_.js";
|
|
2
2
|
export { handleAgentLifecycleEventForIdleStack };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { M as listSessionNames, w as init_tmux } from "./tmux-
|
|
1
|
+
import { o as init_activity_logger, r as emitActivityEntrySync } from "./activity-logger-CyteR4JO.js";
|
|
2
|
+
import { M as listSessionNames, w as init_tmux } from "./tmux-B1Wbxz5o.js";
|
|
3
3
|
import { Effect } from "effect";
|
|
4
4
|
import { exec } from "child_process";
|
|
5
5
|
import { promisify } from "util";
|
|
@@ -36,8 +36,21 @@ const execAsync = promisify(exec);
|
|
|
36
36
|
*/
|
|
37
37
|
/** Idle duration before a workspace's UI stack is reaped. */
|
|
38
38
|
const GRACE_MS = 600 * 1e3;
|
|
39
|
+
/**
|
|
40
|
+
* Idle duration before a workspace's FULL stack is reaped (all services except
|
|
41
|
+
* the dev attach target). The 10-minute UI tier only matches the overdeck
|
|
42
|
+
* project's own server/frontend naming, so other projects' stacks (postgres,
|
|
43
|
+
* redis, api/JVM, vite) lived forever — 35 myn-feature containers were resident
|
|
44
|
+
* for agents stopped 17h+, and that idle RSS feeds the memory-governor pressure
|
|
45
|
+
* that forces scheduler yields (MIN-858/MIN-891 yielded under it, 2026-07-25).
|
|
46
|
+
*/
|
|
47
|
+
const FULL_STACK_GRACE_MS = 7200 * 1e3;
|
|
39
48
|
/** `overdeck-feature-<issue>-server-1` / `-frontend-1`. */
|
|
40
49
|
const UI_CONTAINER_RE = /^overdeck-feature-([a-z0-9]+-\d+)-(server|frontend)-1$/i;
|
|
50
|
+
/** Compose project names end in `feature-<issue>` by construction (stack-health). */
|
|
51
|
+
const FEATURE_PROJECT_RE = /(?:^|[-_])feature-([a-z0-9]+-\d+)$/i;
|
|
52
|
+
/** Never stop the `dev` container — it is the operator's VS Code attach target. */
|
|
53
|
+
const DEV_CONTAINER_RE = /-dev-1$/i;
|
|
41
54
|
/**
|
|
42
55
|
* issueLower -> epoch ms first observed idle. Module-level so the grace clock
|
|
43
56
|
* survives across patrol cycles within the deacon process. Tolerates transient
|
|
@@ -63,13 +76,34 @@ function defaultDeps() {
|
|
|
63
76
|
const { stdout } = await execAsync(`docker ps --format '{{.Names}}'`, { timeout: 15e3 });
|
|
64
77
|
return stdout.split("\n").map((s) => s.trim()).filter(Boolean);
|
|
65
78
|
},
|
|
79
|
+
listComposeContainers: async () => {
|
|
80
|
+
const { stdout } = await execAsync(`docker ps --format '{{.Names}}\t{{json .Labels}}'`, { timeout: 15e3 });
|
|
81
|
+
const out = [];
|
|
82
|
+
for (const line of stdout.split("\n")) {
|
|
83
|
+
const tab = line.indexOf(" ");
|
|
84
|
+
if (tab <= 0) continue;
|
|
85
|
+
const name = line.slice(0, tab).trim();
|
|
86
|
+
if (!name) continue;
|
|
87
|
+
try {
|
|
88
|
+
const labels = JSON.parse(line.slice(tab + 1));
|
|
89
|
+
out.push({
|
|
90
|
+
name,
|
|
91
|
+
composeProject: labels["com.docker.compose.project"]
|
|
92
|
+
});
|
|
93
|
+
} catch {
|
|
94
|
+
out.push({ name });
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
return out;
|
|
98
|
+
},
|
|
66
99
|
listSessions: () => Effect.runPromise(listSessionNames()),
|
|
67
100
|
stopContainers: async (names) => {
|
|
68
101
|
if (names.length === 0) return;
|
|
69
102
|
await execAsync(`docker stop ${names.map((n) => `"${n}"`).join(" ")}`, { timeout: 6e4 });
|
|
70
103
|
},
|
|
71
104
|
now: () => Date.now(),
|
|
72
|
-
graceMs: GRACE_MS
|
|
105
|
+
graceMs: GRACE_MS,
|
|
106
|
+
fullStackGraceMs: FULL_STACK_GRACE_MS
|
|
73
107
|
};
|
|
74
108
|
}
|
|
75
109
|
async function reconcileIdleWorkspaceStacks(deps = {}) {
|
|
@@ -94,8 +128,10 @@ async function reconcileIdleWorkspaceStacks(deps = {}) {
|
|
|
94
128
|
arr.push(name);
|
|
95
129
|
byIssue.set(issueLower, arr);
|
|
96
130
|
}
|
|
97
|
-
for (const issue of [...firstIdleAt.keys()])
|
|
98
|
-
|
|
131
|
+
for (const issue of [...firstIdleAt.keys()]) {
|
|
132
|
+
if (issue.startsWith("full:")) continue;
|
|
133
|
+
if (!byIssue.has(issue)) firstIdleAt.delete(issue);
|
|
134
|
+
}
|
|
99
135
|
const sessionBlob = (await d.listSessions().catch(() => [])).join("\n").toLowerCase();
|
|
100
136
|
const nowMs = d.now();
|
|
101
137
|
for (const [issueLower, names] of byIssue) {
|
|
@@ -127,9 +163,66 @@ async function reconcileIdleWorkspaceStacks(deps = {}) {
|
|
|
127
163
|
console.warn(`[deacon] idle-stack reaper: failed to stop ${issueLower} UI containers: ${err?.message ?? err}`);
|
|
128
164
|
}
|
|
129
165
|
}
|
|
166
|
+
let composeContainers = [];
|
|
167
|
+
try {
|
|
168
|
+
composeContainers = await d.listComposeContainers();
|
|
169
|
+
} catch {
|
|
170
|
+
composeContainers = [];
|
|
171
|
+
}
|
|
172
|
+
const byProject = /* @__PURE__ */ new Map();
|
|
173
|
+
for (const c of composeContainers) {
|
|
174
|
+
if (!c.composeProject) continue;
|
|
175
|
+
const m = c.composeProject.match(FEATURE_PROJECT_RE);
|
|
176
|
+
if (!m) continue;
|
|
177
|
+
const entry = byProject.get(c.composeProject) ?? {
|
|
178
|
+
issueLower: m[1].toLowerCase(),
|
|
179
|
+
names: []
|
|
180
|
+
};
|
|
181
|
+
entry.names.push(c.name);
|
|
182
|
+
byProject.set(c.composeProject, entry);
|
|
183
|
+
}
|
|
184
|
+
for (const key of [...firstIdleAt.keys()]) {
|
|
185
|
+
if (!key.startsWith("full:")) continue;
|
|
186
|
+
if (!byProject.has(key.slice(5))) firstIdleAt.delete(key);
|
|
187
|
+
}
|
|
188
|
+
for (const [project, { issueLower, names }] of byProject) {
|
|
189
|
+
const clockKey = `full:${project}`;
|
|
190
|
+
if (sessionBlob.includes(issueLower)) {
|
|
191
|
+
firstIdleAt.delete(clockKey);
|
|
192
|
+
continue;
|
|
193
|
+
}
|
|
194
|
+
const since = firstIdleAt.get(clockKey);
|
|
195
|
+
if (since === void 0) {
|
|
196
|
+
firstIdleAt.set(clockKey, nowMs);
|
|
197
|
+
continue;
|
|
198
|
+
}
|
|
199
|
+
if (nowMs - since < d.fullStackGraceMs) continue;
|
|
200
|
+
const targets = names.filter((n) => !DEV_CONTAINER_RE.test(n));
|
|
201
|
+
if (targets.length === 0) {
|
|
202
|
+
firstIdleAt.delete(clockKey);
|
|
203
|
+
continue;
|
|
204
|
+
}
|
|
205
|
+
try {
|
|
206
|
+
await d.stopContainers(targets);
|
|
207
|
+
firstIdleAt.delete(clockKey);
|
|
208
|
+
const issueId = issueLower.toUpperCase();
|
|
209
|
+
const idleMin = Math.round((nowMs - since) / 6e4);
|
|
210
|
+
const action = `Reaped idle workspace stack for ${issueId} — stopped ${targets.length}/${names.length} container(s) in ${project} after ${idleMin}m idle (no agent, no tmux)`;
|
|
211
|
+
actions.push(action);
|
|
212
|
+
console.log(`[deacon] ${action}`);
|
|
213
|
+
emitActivityEntrySync({
|
|
214
|
+
source: "cloister",
|
|
215
|
+
level: "info",
|
|
216
|
+
issueId,
|
|
217
|
+
message: `[deacon] reaped idle workspace stack for ${issueId} — ${targets.length} container(s) stopped, dev attach target preserved`
|
|
218
|
+
});
|
|
219
|
+
} catch (err) {
|
|
220
|
+
console.warn(`[deacon] idle-stack reaper: failed to stop ${project} containers: ${err?.message ?? err}`);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
130
223
|
return actions;
|
|
131
224
|
}
|
|
132
225
|
//#endregion
|
|
133
226
|
export { reconcileIdleWorkspaceStacks as n, handleAgentLifecycleEventForIdleStack as t };
|
|
134
227
|
|
|
135
|
-
//# sourceMappingURL=idle-stack-reaper-
|
|
228
|
+
//# sourceMappingURL=idle-stack-reaper-CnGx_PO_.js.map
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
+
//#region ../../lib/cloister/in-flight-guard.ts
|
|
3
|
+
function createPromiseCoalescer() {
|
|
4
|
+
const inFlight = /* @__PURE__ */ new Map();
|
|
5
|
+
return {
|
|
6
|
+
run(key, task) {
|
|
7
|
+
const existing = inFlight.get(key);
|
|
8
|
+
if (existing) return existing;
|
|
9
|
+
const p = task();
|
|
10
|
+
inFlight.set(key, p);
|
|
11
|
+
p.catch(() => {}).finally(() => inFlight.delete(key));
|
|
12
|
+
return p;
|
|
13
|
+
},
|
|
14
|
+
isInFlight(key) {
|
|
15
|
+
return inFlight.has(key);
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
function createInFlightGuard() {
|
|
20
|
+
const inFlight = /* @__PURE__ */ new Set();
|
|
21
|
+
return {
|
|
22
|
+
run(key, task, onError) {
|
|
23
|
+
if (inFlight.has(key)) return false;
|
|
24
|
+
inFlight.add(key);
|
|
25
|
+
(async () => {
|
|
26
|
+
try {
|
|
27
|
+
await task();
|
|
28
|
+
} catch (err) {
|
|
29
|
+
onError?.(err);
|
|
30
|
+
} finally {
|
|
31
|
+
inFlight.delete(key);
|
|
32
|
+
}
|
|
33
|
+
})();
|
|
34
|
+
return true;
|
|
35
|
+
},
|
|
36
|
+
isInFlight(key) {
|
|
37
|
+
return inFlight.has(key);
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
var init_in_flight_guard = __esmMin((() => {}));
|
|
42
|
+
//#endregion
|
|
43
|
+
export { createPromiseCoalescer as n, init_in_flight_guard as r, createInFlightGuard as t };
|
|
44
|
+
|
|
45
|
+
//# sourceMappingURL=in-flight-guard-Bq3epG58.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
2
|
+
import { At as getIssueRecordPath, Pt as init_record, ci as init_paths$1, si as getOverdeckHome, ui as packageRoot, zt as readIssueRecordSync } from "./config-yaml-CmOPzmBb.js";
|
|
3
3
|
import { n as openDatabase, t as init_driver$1 } from "./driver-CKVGi51s.js";
|
|
4
|
-
import {
|
|
5
|
-
import { D as killSession, H as sessionExists, _ as getAgentSessions, w as init_tmux } from "./tmux-
|
|
4
|
+
import { i as updateIssueRecord, r as init_record_update } from "./record-update-Z0QCxmMp.js";
|
|
5
|
+
import { D as killSession, H as sessionExists, _ as getAgentSessions, w as init_tmux } from "./tmux-B1Wbxz5o.js";
|
|
6
6
|
import { dirname, isAbsolute, join } from "node:path";
|
|
7
7
|
import { Context, Effect, Layer, Queue, Stream } from "effect";
|
|
8
8
|
import { appendFileSync, existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
@@ -4724,6 +4724,7 @@ function ensureRuntimeIndexesSync(db) {
|
|
|
4724
4724
|
runSchemaTopUp(db, "ALTER TABLE `review_status` ADD COLUMN `strike_next_attempt_at` integer");
|
|
4725
4725
|
runSchemaTopUp(db, "ALTER TABLE `review_status` ADD COLUMN `strike_landing_attempts` text");
|
|
4726
4726
|
ensureReleaseSetTablesSync(db);
|
|
4727
|
+
ensureUatGenerationRepoTablesSync(db);
|
|
4727
4728
|
runSchemaTopUp(db, "ALTER TABLE `flywheel_substrate_bugs` ADD COLUMN `affected_criteria` text");
|
|
4728
4729
|
runSchemaTopUp(db, "CREATE INDEX IF NOT EXISTS `cost_session_id_idx` ON `cost_events` (`session_id`)");
|
|
4729
4730
|
runSchemaTopUp(db, "CREATE INDEX IF NOT EXISTS `idx_cost_agent_id` ON `cost_events` (`agent_id`, `ts`)");
|
|
@@ -4778,6 +4779,51 @@ function ensureReleaseSetTablesSync(db) {
|
|
|
4778
4779
|
db.exec("CREATE UNIQUE INDEX IF NOT EXISTS `release_set_components_issue_component_idx` ON `release_set_components` (`issue_id`,`component_key`)");
|
|
4779
4780
|
db.exec("CREATE INDEX IF NOT EXISTS `release_set_components_issue_order_idx` ON `release_set_components` (`issue_id`,`release_order`,`component_key`)");
|
|
4780
4781
|
}
|
|
4782
|
+
/**
|
|
4783
|
+
* Idempotent schema top-up for per-repo UAT generation tables (PAN-3093).
|
|
4784
|
+
* A polyrepo generation spans N member repos, so its per-repo branch, base SHA,
|
|
4785
|
+
* worktree, and publish state cannot live in the single-valued `uat_generations`
|
|
4786
|
+
* columns. Existing overdeck.db files predate these tables and need them added
|
|
4787
|
+
* without a migration reset — same shape as ensureReleaseSetTablesSync above.
|
|
4788
|
+
*/
|
|
4789
|
+
function ensureUatGenerationRepoTablesSync(db) {
|
|
4790
|
+
db.exec(`
|
|
4791
|
+
CREATE TABLE IF NOT EXISTS \`uat_generation_repos\` (
|
|
4792
|
+
\`uat_name\` text NOT NULL,
|
|
4793
|
+
\`repo_key\` text NOT NULL,
|
|
4794
|
+
\`repo_path\` text NOT NULL,
|
|
4795
|
+
\`branch\` text NOT NULL,
|
|
4796
|
+
\`base_sha\` text NOT NULL,
|
|
4797
|
+
\`target_branch\` text DEFAULT 'main' NOT NULL,
|
|
4798
|
+
\`worktree_path\` text NOT NULL,
|
|
4799
|
+
\`merge_order\` integer DEFAULT 0 NOT NULL,
|
|
4800
|
+
\`promoted_at\` integer,
|
|
4801
|
+
\`merge_sha\` text,
|
|
4802
|
+
PRIMARY KEY(\`uat_name\`, \`repo_key\`),
|
|
4803
|
+
FOREIGN KEY (\`uat_name\`) REFERENCES \`uat_generations\`(\`name\`) ON UPDATE no action ON DELETE no action
|
|
4804
|
+
)
|
|
4805
|
+
`);
|
|
4806
|
+
db.exec("CREATE INDEX IF NOT EXISTS `uat_generation_repos_uat_order_idx` ON `uat_generation_repos` (`uat_name`,`merge_order`)");
|
|
4807
|
+
db.exec(`
|
|
4808
|
+
CREATE TABLE IF NOT EXISTS \`uat_generation_member_repos\` (
|
|
4809
|
+
\`uat_name\` text NOT NULL,
|
|
4810
|
+
\`issue_id\` text NOT NULL,
|
|
4811
|
+
\`repo_key\` text NOT NULL,
|
|
4812
|
+
\`branch\` text NOT NULL,
|
|
4813
|
+
\`head_sha\` text NOT NULL,
|
|
4814
|
+
\`merge_order_in_repo\` integer DEFAULT 0 NOT NULL,
|
|
4815
|
+
PRIMARY KEY(\`uat_name\`, \`issue_id\`, \`repo_key\`),
|
|
4816
|
+
FOREIGN KEY (\`uat_name\`) REFERENCES \`uat_generations\`(\`name\`) ON UPDATE no action ON DELETE no action,
|
|
4817
|
+
FOREIGN KEY (\`issue_id\`) REFERENCES \`issues\`(\`id\`) ON UPDATE no action ON DELETE no action
|
|
4818
|
+
)
|
|
4819
|
+
`);
|
|
4820
|
+
db.exec("CREATE INDEX IF NOT EXISTS `uat_generation_member_repos_uat_idx` ON `uat_generation_member_repos` (`uat_name`,`issue_id`)");
|
|
4821
|
+
runSchemaTopUp(db, "CREATE INDEX IF NOT EXISTS `uat_generations_uncleaned_terminal_idx` ON `uat_generations` (`project_root`,`status`) WHERE `cleaned_at` IS NULL");
|
|
4822
|
+
runSchemaTopUp(db, "ALTER TABLE `uat_generation_repos` ADD COLUMN `target_branch` text DEFAULT 'main' NOT NULL");
|
|
4823
|
+
runSchemaTopUp(db, "ALTER TABLE `uat_generation_repos` ADD COLUMN `merge_sha` text");
|
|
4824
|
+
runSchemaTopUp(db, "ALTER TABLE `uat_generation_resolutions` ADD COLUMN `kind` text");
|
|
4825
|
+
runSchemaTopUp(db, "ALTER TABLE `uat_generation_resolutions` ADD COLUMN `note` text");
|
|
4826
|
+
}
|
|
4781
4827
|
function warnSchemaDriftSync(db) {
|
|
4782
4828
|
try {
|
|
4783
4829
|
const report = auditOverdeckSchemaSync(db, OVERDECK_SCHEMA_TOP_UP_EXPECTATIONS);
|
|
@@ -4976,6 +5022,22 @@ var init_infra = __esmMin((() => {
|
|
|
4976
5022
|
{
|
|
4977
5023
|
table: "agents",
|
|
4978
5024
|
column: "last_yield_resume_at"
|
|
5025
|
+
},
|
|
5026
|
+
{
|
|
5027
|
+
table: "uat_generation_repos",
|
|
5028
|
+
column: "target_branch"
|
|
5029
|
+
},
|
|
5030
|
+
{
|
|
5031
|
+
table: "uat_generation_repos",
|
|
5032
|
+
column: "merge_sha"
|
|
5033
|
+
},
|
|
5034
|
+
{
|
|
5035
|
+
table: "uat_generation_resolutions",
|
|
5036
|
+
column: "kind"
|
|
5037
|
+
},
|
|
5038
|
+
{
|
|
5039
|
+
table: "uat_generation_resolutions",
|
|
5040
|
+
column: "note"
|
|
4979
5041
|
}
|
|
4980
5042
|
],
|
|
4981
5043
|
indexes: [
|
|
@@ -4984,7 +5046,10 @@ var init_infra = __esmMin((() => {
|
|
|
4984
5046
|
"idx_cost_issue_upper",
|
|
4985
5047
|
"release_sets_project_idx",
|
|
4986
5048
|
"release_set_components_issue_component_idx",
|
|
4987
|
-
"release_set_components_issue_order_idx"
|
|
5049
|
+
"release_set_components_issue_order_idx",
|
|
5050
|
+
"uat_generation_repos_uat_order_idx",
|
|
5051
|
+
"uat_generation_member_repos_uat_idx",
|
|
5052
|
+
"uat_generations_uncleaned_terminal_idx"
|
|
4988
5053
|
]
|
|
4989
5054
|
};
|
|
4990
5055
|
overdeckEvents = sqliteTable("events", {
|
|
@@ -5103,4 +5168,4 @@ var init_infra = __esmMin((() => {
|
|
|
5103
5168
|
//#endregion
|
|
5104
5169
|
export { init_paths as A, inArray as C, sql as D, like as E, OVERDECK_MIGRATION_PATH as O, gte as S, isNull as T, integer as _, EventBus as a, and as b, Records as c, getOverdeckDatabaseSync as d, init_infra as f, real as g, text as h, DbLive as i, getOverdeckDatabasePath as k, Tmux as l, sqliteTable as m, CostArchiveLive as n, EventBusLive as o, init_sqlite_core as p, Db as r, Forge as s, CostArchive as t, TmuxLive as u, init_drizzle_orm as v, isNotNull as w, eq as x, desc as y };
|
|
5105
5170
|
|
|
5106
|
-
//# sourceMappingURL=infra-
|
|
5171
|
+
//# sourceMappingURL=infra-BjuxvjdS.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { n as __esmMin, o as __toESM } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
3
|
-
import { d as resolveRagRunsFile, f as resolveStatusFile, i as init_paths, r as ensureParentDir } from "./paths-
|
|
4
|
-
import { n as isBackgroundFeatureEnabled, t as init_features } from "./features
|
|
5
|
-
import { a as isMemoryKnowledgeIndexEnabled, i as init_settings, o as isMemoryPromptTimeInjectionEnabled } from "./settings-
|
|
6
|
-
import { n as extractWithProviderPolicy, t as init_providers } from "./providers-
|
|
7
|
-
import { n as init_fts_db, r as runMemoryFtsStatement } from "./fts-db-
|
|
2
|
+
import { Gn as init_projects, Mn as findProjectByPathSync, Zn as loadProjectsConfigSync, ar as resolveProjectFromIssueSync, xr as require_dist } from "./config-yaml-CmOPzmBb.js";
|
|
3
|
+
import { d as resolveRagRunsFile, f as resolveStatusFile, i as init_paths, r as ensureParentDir } from "./paths-cXmOwSbh.js";
|
|
4
|
+
import { n as isBackgroundFeatureEnabled, t as init_features } from "./features--nFkJY8v.js";
|
|
5
|
+
import { a as isMemoryKnowledgeIndexEnabled, i as init_settings, o as isMemoryPromptTimeInjectionEnabled } from "./settings-Bse1Pdcj.js";
|
|
6
|
+
import { n as extractWithProviderPolicy, t as init_providers } from "./providers-evXhiQeg.js";
|
|
7
|
+
import { n as init_fts_db, r as runMemoryFtsStatement } from "./fts-db-BeOomFa-.js";
|
|
8
8
|
import { Result, Schema } from "effect";
|
|
9
9
|
import { extname, isAbsolute, join, relative, resolve } from "path";
|
|
10
10
|
import { createHash, randomUUID } from "crypto";
|
|
@@ -823,4 +823,4 @@ var init_injection = __esmMin((() => {
|
|
|
823
823
|
//#endregion
|
|
824
824
|
export { buildMatchQuery as a, init_query_expansion as c, resolveKnowledgeBundleRoot as i, init_injection as n, init_search as o, injectPromptTimeMemory as r, clearQueryExpansionCache as s, PROMPT_TIME_MEMORY_BUDGETS as t };
|
|
825
825
|
|
|
826
|
-
//# sourceMappingURL=injection-
|
|
826
|
+
//# sourceMappingURL=injection-UCf8EsjX.js.map
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { D as resolveTieredExecutionEnabled, G as setupCredentialFileAuthSync, H as init_providers, L as clearCredentialFileAuthSync, T as init_tier_table, V as getProviderForModelSync, f as loadConfigSync,
|
|
2
|
-
import { D as killSession, H as sessionExists, s as createSession, w as init_tmux } from "./tmux-
|
|
3
|
-
import {
|
|
4
|
-
import { A as spawnTierSupervisor,
|
|
5
|
-
import {
|
|
6
|
-
import { m as readWorkspacePlanSync, o as init_io } from "./io-
|
|
7
|
-
import {
|
|
8
|
-
import { a as init_claude_permissions, i as getClaudePermissionFlagsSync } from "./claude-permissions-
|
|
9
|
-
import { i as prepareHarnessLaunch, r as init_harness_binary } from "./harness-binary-
|
|
10
|
-
import {
|
|
11
|
-
import { n as init_issue_closed, r as isIssueClosed } from "./issue-closed-
|
|
1
|
+
import { D as resolveTieredExecutionEnabled, Fr as init_errors, G as setupCredentialFileAuthSync, H as init_providers, L as clearCredentialFileAuthSync, T as init_tier_table, V as getProviderForModelSync, f as loadConfigSync, jr as ProcessSpawnError, t as init_config_yaml, tt as resolveModel } from "./config-yaml-CmOPzmBb.js";
|
|
2
|
+
import { D as killSession, H as sessionExists, s as createSession, w as init_tmux } from "./tmux-B1Wbxz5o.js";
|
|
3
|
+
import { S as setReviewStatusSync, f as init_review_status } from "./review-status-yljtTd-q.js";
|
|
4
|
+
import { A as spawnTierSupervisor, D as init_tier_supervisor, E as deliverCommitForReview, It as init_delivery, Mt as deliverAgentMessage, O as loadPrdDraft, Rr as saveAgentRuntimeState, b as init_agents, gr as saveAgentState, j as supervisorAgentId, kn as getProviderEnvForModel } from "./queries-DHJm7bTd.js";
|
|
5
|
+
import { l as resolveWorkspaceRepoRootsSync, r as init_project_repos } from "./project-repos-C0nuoBGv.js";
|
|
6
|
+
import { m as readWorkspacePlanSync, o as init_io } from "./io-VHvc0Ssp.js";
|
|
7
|
+
import { d as generateLauncherScriptSync, f as init_launcher_generator } from "./tmux-dedup-DbN6MGzM.js";
|
|
8
|
+
import { a as init_claude_permissions, i as getClaudePermissionFlagsSync } from "./claude-permissions-CN0cSCPp.js";
|
|
9
|
+
import { i as prepareHarnessLaunch, r as init_harness_binary } from "./harness-binary-DqkftwTb.js";
|
|
10
|
+
import { a as init_git_utils, o as parseCompositeSnapshot, u as snapshotWorkspaceHeadsPromise } from "./git-utils-ameCgDdy.js";
|
|
11
|
+
import { n as init_issue_closed, r as isIssueClosed } from "./issue-closed-B6KJkmHZ.js";
|
|
12
12
|
import { Effect } from "effect";
|
|
13
13
|
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
|
|
14
14
|
import { dirname, join } from "path";
|
|
@@ -84,16 +84,6 @@ function saveCheckpoint(projectKey, issueId, itemId, commitSha) {
|
|
|
84
84
|
function shellQuote(value) {
|
|
85
85
|
return `'${value.replace(/'/g, `'"'"'`)}'`;
|
|
86
86
|
}
|
|
87
|
-
function parseCompositeSnapshot(snapshot) {
|
|
88
|
-
const heads = /* @__PURE__ */ new Map();
|
|
89
|
-
if (!snapshot) return heads;
|
|
90
|
-
for (const token of snapshot.split(/\s+/)) {
|
|
91
|
-
const separator = token.lastIndexOf("@");
|
|
92
|
-
if (separator <= 0 || separator === token.length - 1) continue;
|
|
93
|
-
heads.set(token.slice(0, separator), token.slice(separator + 1));
|
|
94
|
-
}
|
|
95
|
-
return heads;
|
|
96
|
-
}
|
|
97
87
|
async function readHead(root) {
|
|
98
88
|
try {
|
|
99
89
|
const { stdout } = await execAsync("git rev-parse HEAD", {
|
|
@@ -215,6 +205,7 @@ init_issue_closed();
|
|
|
215
205
|
init_io();
|
|
216
206
|
init_tier_table();
|
|
217
207
|
init_tier_supervisor();
|
|
208
|
+
init_delivery();
|
|
218
209
|
promisify(exec);
|
|
219
210
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
220
211
|
async function buildInspectPromptPromise(context) {
|
|
@@ -290,6 +281,7 @@ async function spawnInspectAgentPromise(context, opts = {}) {
|
|
|
290
281
|
});
|
|
291
282
|
const { config } = loadConfigSync();
|
|
292
283
|
const model = resolveModel("work", subRole, config);
|
|
284
|
+
const effort = config.roles?.work?.effort ?? "high";
|
|
293
285
|
const providerEnv = await getProviderEnvForModel(model);
|
|
294
286
|
const provider = getProviderForModelSync(model);
|
|
295
287
|
if (provider.authType === "credential-file") setupCredentialFileAuthSync(provider, context.workspace);
|
|
@@ -316,6 +308,7 @@ async function spawnInspectAgentPromise(context, opts = {}) {
|
|
|
316
308
|
baseCommand: "claude",
|
|
317
309
|
sessionId,
|
|
318
310
|
model,
|
|
311
|
+
extraArgs: `--effort ${effort}`,
|
|
319
312
|
permissionFlags: getClaudePermissionFlagsSync()
|
|
320
313
|
}), { mode: 493 });
|
|
321
314
|
const envForTmux = {
|
|
@@ -357,12 +350,20 @@ async function spawnInspectAgentPromise(context, opts = {}) {
|
|
|
357
350
|
};
|
|
358
351
|
}
|
|
359
352
|
}
|
|
360
|
-
async function onInspectCompletePromise(projectKey, issueId, itemId, status, workspacePath) {
|
|
353
|
+
async function onInspectCompletePromise(projectKey, issueId, itemId, status, workspacePath, notes, deps = {}) {
|
|
361
354
|
if (status === "passed") {
|
|
362
355
|
const commitSha = await Effect.runPromise(getCurrentHead(issueId, workspacePath));
|
|
363
356
|
saveCheckpoint(projectKey, issueId, itemId, commitSha);
|
|
364
357
|
console.log(`[inspect] Checkpoint saved for ${issueId} item ${itemId} at ${commitSha.substring(0, 8)}`);
|
|
365
358
|
} else console.log(`[inspect] Item ${itemId} blocked for ${issueId} — no checkpoint saved`);
|
|
359
|
+
const workAgentId = `agent-${issueId.toLowerCase()}`;
|
|
360
|
+
const message = status === "passed" ? `Inspection verdict for xBRIEF item ${itemId}: PASSED. The checkpoint is saved — continue to your next item.` : `Inspection verdict for xBRIEF item ${itemId}: BLOCKED. Do not build on this item's changes until the finding is addressed.${notes ? ` Finding: ${notes}` : ""}`;
|
|
361
|
+
try {
|
|
362
|
+
const result = await (deps.deliver ?? deliverAgentMessage)(workAgentId, message, "inspect-verdict");
|
|
363
|
+
if (!result.ok) console.error(`[inspect] FAILED to deliver ${status} verdict for ${issueId} item ${itemId} to ${workAgentId}: ${result.failure ?? "unknown"}`);
|
|
364
|
+
} catch (err) {
|
|
365
|
+
console.error(`[inspect] FAILED to deliver ${status} verdict for ${issueId} item ${itemId} to ${workAgentId}: ${err instanceof Error ? err.message : String(err)}`);
|
|
366
|
+
}
|
|
366
367
|
}
|
|
367
368
|
/**
|
|
368
369
|
* Effect-typed variant of {@link buildInspectPrompt}.
|
|
@@ -391,10 +392,10 @@ function spawnInspectAgent(context, opts = {}) {
|
|
|
391
392
|
/**
|
|
392
393
|
* Effect-typed variant of {@link onInspectComplete}. Never fails.
|
|
393
394
|
*/
|
|
394
|
-
function onInspectComplete(projectKey, issueId, itemId, status, workspacePath) {
|
|
395
|
-
return Effect.promise(() => onInspectCompletePromise(projectKey, issueId, itemId, status, workspacePath));
|
|
395
|
+
function onInspectComplete(projectKey, issueId, itemId, status, workspacePath, notes, deps = {}) {
|
|
396
|
+
return Effect.promise(() => onInspectCompletePromise(projectKey, issueId, itemId, status, workspacePath, notes, deps));
|
|
396
397
|
}
|
|
397
398
|
//#endregion
|
|
398
399
|
export { onInspectComplete as n, spawnInspectAgent as r, buildInspectPrompt as t };
|
|
399
400
|
|
|
400
|
-
//# sourceMappingURL=inspect-agent-
|
|
401
|
+
//# sourceMappingURL=inspect-agent-6kylZnrm.js.map
|
|
@@ -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, ci as init_paths, si as getOverdeckHome } from "./config-yaml-CmOPzmBb.js";
|
|
3
3
|
import { join } from "node:path";
|
|
4
4
|
import { Effect } from "effect";
|
|
5
5
|
import { chmodSync, existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
@@ -101,4 +101,4 @@ var init_internal_token = __esmMin((() => {
|
|
|
101
101
|
//#endregion
|
|
102
102
|
export { getInternalToken as a, ensureInternalTokenSync as i, _resetInternalTokenCacheForTests as n, getInternalTokenSync as o, ensureInternalToken as r, init_internal_token as s, INTERNAL_TOKEN_HEADER as t };
|
|
103
103
|
|
|
104
|
-
//# sourceMappingURL=internal-token-
|
|
104
|
+
//# sourceMappingURL=internal-token-DvMTQSOS.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as getInternalToken, i as ensureInternalTokenSync, n as _resetInternalTokenCacheForTests, o as getInternalTokenSync, r as ensureInternalToken, s as init_internal_token, t as INTERNAL_TOKEN_HEADER } from "./internal-token-
|
|
1
|
+
import { a as getInternalToken, i as ensureInternalTokenSync, n as _resetInternalTokenCacheForTests, o as getInternalTokenSync, r as ensureInternalToken, s as init_internal_token, t as INTERNAL_TOKEN_HEADER } from "./internal-token-DvMTQSOS.js";
|
|
2
2
|
init_internal_token();
|
|
3
3
|
export { INTERNAL_TOKEN_HEADER, _resetInternalTokenCacheForTests, ensureInternalToken, ensureInternalTokenSync, getInternalToken, getInternalTokenSync };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
2
|
+
import { Cn as resolveStateReadHomeSync, Fr as init_errors, Gn as init_projects, Lt as readIssueRecord, Mn as findProjectByPathSync, Nt as getProjectConfigFromWorkspacePath, Pt as init_record, Sn as init_state_read_home, Tr as FsError, Vt as resolveProjectForIssue, cn as flushAutoCommits, ln as init_auto_commit, on as deriveProjectRoot, un as queueAutoCommit, zt as readIssueRecordSync } from "./config-yaml-CmOPzmBb.js";
|
|
3
3
|
import { a as PAN_DIRNAME, c as PAN_SESSIONS_FILENAME, d as WORKSPACE_RUNTIME_DIRNAME, f as asPanSpecDocument, i as PAN_CONTINUE_FILENAME, l as PAN_SPECS_DIRNAME, m as isPanSpecStatus, n as PAN_CONTEXT_FILENAME, o as PAN_DRAFTS_DIRNAME, p as init_types$1, r as PAN_CONTINUES_DIRNAME, s as PAN_FEEDBACK_DIRNAME, t as LEGACY_WORKSPACE_RUNTIME_DIRNAME, u as PAN_SPEC_FILENAME } from "./types-hraoaQIp.js";
|
|
4
|
-
import { a as generateXBriefFilename, c as parseXBriefFilename, l as resolveXBriefDir, n as LEGACY_VBRIEF_LIFECYCLE_DIRS, o as init_lifecycle, u as slugify } from "./lifecycle-
|
|
4
|
+
import { a as generateXBriefFilename, c as parseXBriefFilename, l as resolveXBriefDir, n as LEGACY_VBRIEF_LIFECYCLE_DIRS, o as init_lifecycle, u as slugify } from "./lifecycle-CTdOWYMi.js";
|
|
5
5
|
import { Data, Effect, FileSystem } from "effect";
|
|
6
6
|
import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from "fs";
|
|
7
7
|
import { basename, join, resolve } from "path";
|
|
@@ -61,16 +61,47 @@ var init_continue = __esmMin((() => {
|
|
|
61
61
|
init_types$1();
|
|
62
62
|
}));
|
|
63
63
|
//#endregion
|
|
64
|
+
//#region ../../lib/pan-dir/paths.ts
|
|
65
|
+
/**
|
|
66
|
+
* Project state-plane path authority.
|
|
67
|
+
*
|
|
68
|
+
* PAN-3165: the specs/drafts/continues directories had two derivations — this
|
|
69
|
+
* one (state-branch aware) and a hardcoded `<projectRoot>/.pan/specs` inside
|
|
70
|
+
* `xbrief/xbrief-index.ts`, which resolved to the pre-cutover in-repo location
|
|
71
|
+
* and returned null for every spec written since PAN-2541. The resolution lives
|
|
72
|
+
* here, in a leaf module, so both the sync and async spec resolvers can import
|
|
73
|
+
* it without a cycle through `pan-dir/specs.ts`.
|
|
74
|
+
*/
|
|
75
|
+
function getProjectPanPaths(projectRoot) {
|
|
76
|
+
const stateHome = resolveStateReadHomeSync(findProjectByPathSync(projectRoot) ?? {
|
|
77
|
+
name: projectRoot,
|
|
78
|
+
path: projectRoot
|
|
79
|
+
});
|
|
80
|
+
const panDir = stateHome.migrated ? stateHome.root : join(stateHome.root, PAN_DIRNAME);
|
|
81
|
+
return {
|
|
82
|
+
panDir,
|
|
83
|
+
specsDir: join(panDir, PAN_SPECS_DIRNAME),
|
|
84
|
+
draftsDir: join(panDir, PAN_DRAFTS_DIRNAME),
|
|
85
|
+
continuesDir: join(panDir, PAN_CONTINUES_DIRNAME)
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
var init_paths = __esmMin((() => {
|
|
89
|
+
init_projects();
|
|
90
|
+
init_state_read_home();
|
|
91
|
+
init_types$1();
|
|
92
|
+
}));
|
|
93
|
+
//#endregion
|
|
64
94
|
//#region ../../lib/xbrief/xbrief-index.ts
|
|
65
95
|
/**
|
|
66
96
|
* xBRIEF Index — async, cached issue→xBRIEF lookups for server hot paths.
|
|
67
97
|
*
|
|
68
|
-
*
|
|
69
|
-
*
|
|
70
|
-
*
|
|
98
|
+
* The canonical spec store is the `specs/` directory resolved by
|
|
99
|
+
* `getProjectPanPaths()` — `overdeck-state` for a migrated project, legacy
|
|
100
|
+
* `<projectRoot>/.pan/specs` otherwise. Legacy `vbrief/<lifecycle>/`
|
|
101
|
+
* directories remain as fallback reads when no spec entry exists for an issue.
|
|
71
102
|
*/
|
|
72
103
|
async function scanPanSpecs(projectRoot) {
|
|
73
|
-
const specsDir =
|
|
104
|
+
const { specsDir } = getProjectPanPaths(projectRoot);
|
|
74
105
|
if (!existsSync(specsDir)) return [];
|
|
75
106
|
let names;
|
|
76
107
|
try {
|
|
@@ -153,6 +184,7 @@ var init_xbrief_index = __esmMin((() => {
|
|
|
153
184
|
init_io();
|
|
154
185
|
init_errors();
|
|
155
186
|
init_types$1();
|
|
187
|
+
init_paths();
|
|
156
188
|
CACHE_TTL_MS = 5e3;
|
|
157
189
|
projectIndexCache = /* @__PURE__ */ new Map();
|
|
158
190
|
findXBriefByIssue = (projectRoot, issueId) => Effect.tryPromise({
|
|
@@ -195,22 +227,6 @@ var init_xbrief_index = __esmMin((() => {
|
|
|
195
227
|
}));
|
|
196
228
|
//#endregion
|
|
197
229
|
//#region ../../lib/pan-dir/specs.ts
|
|
198
|
-
function projectPanPaths(projectRoot) {
|
|
199
|
-
const stateHome = resolveStateReadHomeSync(findProjectByPathSync(projectRoot) ?? {
|
|
200
|
-
name: projectRoot,
|
|
201
|
-
path: projectRoot
|
|
202
|
-
});
|
|
203
|
-
const panDir = stateHome.migrated ? stateHome.root : join(stateHome.root, PAN_DIRNAME);
|
|
204
|
-
return {
|
|
205
|
-
panDir,
|
|
206
|
-
specsDir: join(panDir, PAN_SPECS_DIRNAME),
|
|
207
|
-
draftsDir: join(panDir, PAN_DRAFTS_DIRNAME),
|
|
208
|
-
continuesDir: join(panDir, PAN_CONTINUES_DIRNAME)
|
|
209
|
-
};
|
|
210
|
-
}
|
|
211
|
-
function getProjectPanPaths(projectRoot) {
|
|
212
|
-
return projectPanPaths(projectRoot);
|
|
213
|
-
}
|
|
214
230
|
function ensurePanDirs(projectRoot) {
|
|
215
231
|
return Effect.gen(function* () {
|
|
216
232
|
const fs = yield* FileSystem.FileSystem;
|
|
@@ -428,15 +444,16 @@ function writeSpecDocument(projectRoot, path, doc) {
|
|
|
428
444
|
invalidateXBriefIndex(projectRoot);
|
|
429
445
|
});
|
|
430
446
|
}
|
|
447
|
+
var projectPanPaths;
|
|
431
448
|
var init_specs = __esmMin((() => {
|
|
432
449
|
init_errors();
|
|
433
|
-
init_projects();
|
|
434
|
-
init_state_read_home();
|
|
435
450
|
init_io();
|
|
436
451
|
init_lifecycle();
|
|
437
452
|
init_xbrief_index();
|
|
438
453
|
init_auto_commit();
|
|
454
|
+
init_paths();
|
|
439
455
|
init_types$1();
|
|
456
|
+
projectPanPaths = getProjectPanPaths;
|
|
440
457
|
}));
|
|
441
458
|
//#endregion
|
|
442
459
|
//#region ../../lib/xbrief/types.ts
|
|
@@ -827,6 +844,6 @@ var init_io = __esmMin((() => {
|
|
|
827
844
|
});
|
|
828
845
|
}));
|
|
829
846
|
//#endregion
|
|
830
|
-
export {
|
|
847
|
+
export { invalidateXBriefIndex as A, listSpecs as C, writeSpecForIssue as D, writeSpecDocument as E, getReadableWorkspacePanPaths as F, getWorkspacePanPaths as I, init_continue as L, getProjectPanPaths as M, ensureWorkspacePanDir as N, findXBriefByIssue as O, getLegacyWorkspacePanPaths as P, init_specs as S, writeSpec as T, XBRIEF_INSPECTION_POLICIES as _, findWorkspaceDraftPlan as a, ensurePanDirs as b, mergeRecordStatusOverrides as c, readPlanSync as d, readTierOverrides as f, serializeXBriefDocument as g, recordTierPromotion as h, findPlanSync as i, readXBriefDocument as j, init_xbrief_index as k, normalizeXBriefEnvelope as l, readWorkspacePlanSync as m, applyStatusOverrides as n, init_io as o, readWorkspacePlan as p, findPlan as r, isPlanningComplete as s, XBriefMergeConflictError as t, readPlan as u, init_types as v, readSpec as w, findSpecByIssue as x, subItemsOf as y };
|
|
831
848
|
|
|
832
|
-
//# sourceMappingURL=io-
|
|
849
|
+
//# sourceMappingURL=io-VHvc0Ssp.js.map
|