@overdeck/desktop 0.45.23 → 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 +34 -0
- package/package.json +1 -1
- package/server/{acceptance-criteria-DOA0KgXx.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-BBu6DSNm.js → advancing-selfheal-De1L-Sb4.js} +6 -6
- package/server/{agent-gc-BV1q_2EV.js → agent-gc-CBULruzm.js} +5 -5
- package/server/agent-state-VQk8fY9F.js +3 -0
- package/server/{agent-state-service-HoK8U4jW.js → agent-state-service-BlnSkRFA.js} +5 -5
- package/server/{agent-state-service-CnzFKSAQ.js → agent-state-service-hZpxIw1E.js} +1 -1
- package/server/agents-BKKkxKgK.js +3 -0
- package/server/{agents-B4Bjbkfv.js → agents-C5rWYhb6.js} +4 -4
- package/server/archive-planning-0FJ6Xd3b.js +2 -0
- package/server/{archive-planning-DYrYojxl.js → archive-planning-C0lAbNB_.js} +16 -24
- package/server/{artifact-index-jobs-C-xy7Z5v.js → artifact-index-jobs-ug6ZxIP5.js} +2 -2
- package/server/assemble-DnffNpOo.js +339 -0
- package/server/{backlog-auto-trigger-GtG71X8H.js → backlog-auto-trigger-Dh-i9PQf.js} +3 -3
- package/server/{behavior-B_-4EKF3.js → behavior-CfIg6pKp.js} +2 -2
- package/server/bridge-pool-patrol-CUFmjVDN.js +136 -0
- package/server/{briefing-freshness-DWdW7vUm.js → briefing-freshness-DHmCSLar.js} +2 -2
- package/server/{build-info-DgTqZkL5.js → build-info-BP160gU7.js} +1 -1
- package/server/{build-info-BT096lEl.js → build-info-CuFfxZxp.js} +5 -3
- package/server/{checkpoint-manager-DDqcGyu8.js → checkpoint-manager-DEWD82qK.js} +2 -2
- package/server/{checkpoint-manager-B7Bt29J0.js → checkpoint-manager-Dxh0FYsv.js} +1 -1
- package/server/checkpoint-worker.js +1 -1
- package/server/{checkpoints-C-AXLfYT.js → checkpoints-CZvbtLnr.js} +2 -2
- package/server/{checkpoints-CpgCjAlN.js → checkpoints-DMTgXuLG.js} +1 -1
- package/server/{claude-hooks-provision-C8wdRnN1.js → claude-hooks-provision-CN-xo-do.js} +1 -1
- package/server/{claude-hooks-provision-but-_qGY.js → claude-hooks-provision-fvy4RD2b.js} +13 -2
- package/server/{claude-permissions-H_5wHQZQ.js → claude-permissions-CN0cSCPp.js} +2 -2
- package/server/{claude-settings-overlay-CbSz0Dvb.js → claude-settings-overlay-CJn35FHQ.js} +2 -2
- package/server/{claude-settings-overlay-BTENVmYf.js → claude-settings-overlay-Dabi9slj.js} +1 -1
- package/server/cli-DmXETsw-.js +3 -0
- package/server/{cli-vBeXbPrq.js → cli-oCWYA1pE.js} +9 -9
- package/server/{cliproxy-Bgb2XCqi.js → cliproxy-C8mB3KuB.js} +2 -2
- package/server/{cliproxy-DW0V86F8.js → cliproxy-PGwTX_o8.js} +1 -1
- package/server/{close-issue-Dn_4c4G8.js → close-issue-D5MF5GqF.js} +5 -5
- package/server/{closed-issue-reaper-CWpY2uBw.js → closed-issue-reaper-CJ24u0Zt.js} +1 -1
- package/server/{closed-issue-reaper-hANY_ehE.js → closed-issue-reaper-Cltx86x5.js} +37 -16
- package/server/{codex-Dg7Is5yb.js → codex-BdEsUFWh.js} +1 -1
- package/server/{codex-TmSi-yTv.js → codex-Drlf5Xhf.js} +37 -8
- package/server/{codex-parser-C4gSH-IR.js → codex-parser-DpB89Vqa.js} +2 -2
- package/server/compaction-continuation-K2AxQX4H.js +200 -0
- package/server/{config-DjLOdbgT.js → config-B2IMcBxx.js} +4 -3
- package/server/{config-DUIhMN_T.js → config-DV-grfQc.js} +1 -1
- package/server/{config-CCvjQf27.js → config-Dr3pW6w6.js} +2 -2
- package/server/{config-yaml-DvyMuOle.js → config-yaml-CmOPzmBb.js} +290 -22
- package/server/{conflict-gate-CmrYpa47.js → conflict-gate-B9cN3SBi.js} +4 -4
- package/server/{conflict-gate-BSJkNTdp.js → conflict-gate-Dh754uyA.js} +1 -1
- package/server/context-layers-D6LZo3l1.js +4 -0
- package/server/context-layers-dR5YxHYB.js +37 -0
- package/server/{control-settings-aP1ANIlI.js → control-settings-C7DUehE1.js} +49 -19
- package/server/{conversation-compaction-CNbTLB86.js → conversation-compaction-BoqdDXWF.js} +8 -8
- package/server/{conversation-compaction-DiG5zWQq.js → conversation-compaction-Dj4FAKoZ.js} +1 -1
- package/server/{conversation-service-Du-MTNpJ.js → conversation-service-5aCnq1zR.js} +331 -20
- package/server/conversation-service-BCxl4f8Z.js +3 -0
- package/server/{conversations-DbOs1e9Q.js → conversations-BUpYsOZg.js} +5 -5
- package/server/{conversations-6mPANqvL.js → conversations-C34dyIb9.js} +1 -1
- package/server/{cost-Ca0YTWDw.js → cost-Bgcub5kW.js} +12 -2
- package/server/{cost-CW4WSe72.js → cost-CvxRrucd.js} +3 -3
- package/server/{cost-sync-C0VdGme1.js → cost-sync-Dv3LUaNW.js} +3 -3
- package/server/{dag-CdOjJVDT.js → dag-ombYYt4s.js} +2 -2
- package/server/{dangerous-git-ops-CT-IypG3.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-pRnyD5w9.js → deacon-hi9KLPLT.js} +2998 -2659
- package/server/{deacon-nudge-log-Bjg8U4Y9.js → deacon-nudge-log-BNBebzeL.js} +3 -3
- package/server/deacon-pending-lifecycle-Cpk0k7Hi.js +33 -0
- package/server/{deacon-swarm-DftYRDo8.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-Bjsho_ha.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-DeP_OIRk.js → deploy-window-rpqpWqHA.js} +40 -16
- package/server/{dev-supervisor-BpMoHlkR.js → dev-supervisor-CC46Ig8q.js} +2 -2
- package/server/{devcontainer-renderer-CtUgrVKW.js → devcontainer-renderer-68CSCRnu.js} +3 -3
- package/server/{dist-DyRx4cI7.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-BK7HIcBj.js → docker-Dam7mbIB.js} +2 -2
- package/server/{dod-BrSfUHm0.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-DseivYEy.js → ensure-devcontainer-B057YA81.js} +4 -4
- package/server/{ensure-devcontainer-DRqaAkBR.js → ensure-devcontainer-C98V8yW-.js} +1 -1
- package/server/{esm-shims-CbI3BVkl.js → esm-shims-Br9BPdkR.js} +1 -1
- package/server/{event-store-Cr5PQwFC.js → event-store-ELqkVOn0.js} +1 -1
- package/server/{event-store-tdiY5eDZ.js → event-store-zY5MJHgF.js} +23 -4
- package/server/{events-CvvGK6LT.js → events-D6pyqhzM.js} +1 -1
- package/server/{events-CC1dgUpx.js → events-D9PR1IC0.js} +3 -3
- package/server/{factory-CynerjXO.js → factory-CRoOpGsF.js} +5 -5
- package/server/{feature-registry-population-B0pmAz0a.js → feature-registry-population--YUXU999.js} +4 -4
- package/server/{feature-registry-storage-_wUBRD3J.js → feature-registry-storage-BORBTo0y.js} +2 -2
- package/server/{features-Dhxz-wLc.js → features--nFkJY8v.js} +2 -2
- package/server/{feedback-target-iygZwmMc.js → feedback-target-C0ZzyHvU.js} +1 -1
- package/server/{feedback-target-CPS15Vte.js → feedback-target-Dt9BsapX.js} +8 -8
- package/server/{feedback-writer-C9b6ccN1.js → feedback-writer-BG0RUZiu.js} +5 -5
- package/server/{feedback-writer-qmiMbqTZ.js → feedback-writer-D1fm-5Z8.js} +1 -1
- package/server/flywheel-BekukH4i.js +2 -0
- package/server/flywheel-BiT3odRb.js +1092 -0
- package/server/flywheel-CLVB55Be.js +478 -0
- 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-CJ_aH5jD.js → from-D_4_dk7i.js} +1 -1
- package/server/{fts-db-CKgg0VKg.js → fts-db-BeOomFa-.js} +2 -2
- package/server/{fts-operations-BrL_VTRr.js → fts-operations-BdewJ_g9.js} +2 -2
- package/server/git-utils-CI6cwyyC.js +3 -0
- package/server/{git-utils-BVa07a4a.js → git-utils-ameCgDdy.js} +93 -3
- package/server/{github-app-CMBdIFBQ.js → github-app-CQ1Lo6LA.js} +19 -8
- package/server/{github-app-CPfoFAdV.js → github-app-DtAsvwzK.js} +1 -1
- package/server/{github-client--XVlDpwM.js → github-client-BfyDxuRN.js} +2 -2
- package/server/{github-client-B4QsdE-X.js → github-client-Cj0yl_07.js} +1 -1
- package/server/github-pr-lookup-BDq6Wznz.js +58 -0
- package/server/{harness-binary-CVio2m-u.js → harness-binary-DqkftwTb.js} +32 -6
- package/server/{harness-resolve-qHJBhy3Z.js → harness-resolve-CqMqM1Mb.js} +18 -9
- package/server/{health-events-C9B8y1Hm.js → health-events-CazRxJUS.js} +2 -2
- package/server/{health-events-CpfvuVmm.js → health-events-_xfTaOUs.js} +1 -1
- package/server/{hooks-DUXw8A0-.js → hooks-BO3QT1sn.js} +2 -2
- package/server/{hooks-ltecuFqZ.js → hooks-BnJsxlSq.js} +1 -1
- package/server/{hume-BEq0bUDg.js → hume-CDYJxqx-.js} +2 -2
- package/server/hume-Dq--7rOQ.js +3 -0
- package/server/{idle-stack-reaper-D7w9t3fE.js → idle-stack-reaper-BYqERdkE.js} +1 -1
- package/server/{idle-stack-reaper-w1ISSlhs.js → idle-stack-reaper-CnGx_PO_.js} +99 -6
- package/server/in-flight-guard-Bq3epG58.js +45 -0
- package/server/{infra-CzaSOgul.js → infra-BjuxvjdS.js} +80 -5
- package/server/{injection-oNZeoDhL.js → injection-DZxlV2al.js} +1 -1
- package/server/{injection-DZ0PfYa4.js → injection-UCf8EsjX.js} +191 -183
- package/server/{inspect-agent-DJKLWcVT.js → inspect-agent-6kylZnrm.js} +139 -82
- package/server/inspect-agent-BVwDrVrz.js +2 -0
- package/server/{internal-token-Bb4XeV2x.js → internal-token-DvMTQSOS.js} +2 -2
- package/server/{internal-token-DXdfprGr.js → internal-token-M9omeXM1.js} +1 -1
- package/server/{io-B3_AHDfr.js → io-VHvc0Ssp.js} +43 -26
- package/server/{issue-closed-zhdvQicO.js → issue-closed-B6KJkmHZ.js} +7 -7
- package/server/{issue-lifecycle-Dy4vd0Oa.js → issue-lifecycle-9gk3fnXN.js} +1 -1
- package/server/{issue-lifecycle-CreaCkjW.js → issue-lifecycle-C4Zj0WmE.js} +34 -28
- package/server/{issue-service-singleton-B5ushCvE.js → issue-service-singleton-DmCh7EHj.js} +10 -10
- package/server/{issue-service-singleton-DabvBWUp.js → issue-service-singleton-PMx8F1jr.js} +1 -1
- package/server/{issues-B6ToV6x1.js → issues-CgnQ1OGQ.js} +2 -2
- package/server/{jsonl-parser-Dhflo1SH.js → jsonl-parser-DJOH_O-w.js} +5 -4
- package/server/{label-cleanup-BKPJm4Hv.js → label-cleanup-Dv7AV_R1.js} +3 -3
- package/server/{label-reconciler-DdWbHEBu.js → label-reconciler--F85rufp.js} +4 -4
- package/server/{lifecycle-DfeyBDwA.js → lifecycle-CTdOWYMi.js} +2 -2
- package/server/{lifecycle-sycO16hj.js → lifecycle-DDN8ApVY.js} +6 -7
- package/server/{lifecycle-io-D8iNBcux.js → lifecycle-io-D-lGdzK3.js} +5 -5
- package/server/{lifecycle-io-Bsnr2K4F.js → lifecycle-io-D_zTLvP1.js} +1 -1
- package/server/{linear-client-D4zqMnX7.js → linear-client-BQU36QqE.js} +2 -2
- package/server/{linear-client-DqhDQO9k.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-C_ZEhbqI.js → merge-Bpx4jjht.js} +13 -11
- package/server/{merge-agent-XrB80vfT.js → merge-agent-DdMVSV2Y.js} +233 -83
- package/server/{merge-agent-BQM3a8z5.js → merge-agent-DrXa1CpW.js} +1 -1
- package/server/{merge-batch-Bwoyr8Je.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-DK23JEdS.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-C1KIVr0s.js → merge-rebase-xLnMlw5h.js} +3 -3
- package/server/merge-set-DH7ot3yz.js +89 -0
- package/server/merge-set-DzsOTBg5.js +3 -0
- package/server/{merge-sync-DZ9dojJn.js → merge-sync-CQ-LgZ1_.js} +406 -153
- package/server/merge-sync-Ca7F5JnQ.js +3 -0
- package/server/{merge-train-DxDfBTjr.js → merge-train-DTEMyIu4.js} +18 -8
- package/server/{merge-train-deps-CyYQUksx.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-Dt8YPN5S.js → multipart-parser-IMSBfePV.js} +2 -2
- package/server/{no-resume-mode-Cx3K0hHi.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/README.md +5 -0
- package/server/node_modules/undici/docs/docs/api/Client.md +4 -0
- package/server/node_modules/undici/docs/docs/api/Dispatcher.md +6 -0
- package/server/node_modules/undici/docs/docs/api/Interceptors.md +59 -0
- package/server/node_modules/undici/docs/docs/api/MockAgent.md +27 -0
- package/server/node_modules/undici/docs/docs/api/MockPool.md +28 -1
- package/server/node_modules/undici/docs/docs/index.md +5 -0
- package/server/node_modules/undici/lib/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 +13 -2
- package/server/node_modules/undici/lib/core/util.js +6 -1
- package/server/node_modules/undici/lib/dispatcher/agent.js +3 -3
- package/server/node_modules/undici/lib/dispatcher/client-h1.js +42 -8
- package/server/node_modules/undici/lib/dispatcher/client-h2.js +34 -43
- package/server/node_modules/undici/lib/global.js +36 -16
- package/server/node_modules/undici/lib/handler/cache-handler.js +269 -61
- package/server/node_modules/undici/lib/handler/cache-revalidation-handler.js +13 -3
- package/server/node_modules/undici/lib/handler/redirect-handler.js +5 -2
- package/server/node_modules/undici/lib/handler/retry-handler.js +30 -4
- package/server/node_modules/undici/lib/interceptor/cache.js +159 -52
- package/server/node_modules/undici/lib/interceptor/decompress.js +9 -2
- package/server/node_modules/undici/lib/mock/mock-interceptor.js +25 -7
- package/server/node_modules/undici/lib/mock/mock-utils.js +39 -10
- package/server/node_modules/undici/lib/util/cache.js +372 -68
- 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/lib/web/fetch/body.js +2 -1
- package/server/node_modules/undici/lib/web/fetch/response.js +1 -3
- package/server/node_modules/undici/package.json +2 -2
- package/server/node_modules/undici/types/client.d.ts +2 -2
- package/server/node_modules/undici/types/dispatcher.d.ts +3 -3
- package/server/node_modules/undici/types/mock-interceptor.d.ts +5 -1
- package/server/{orphan-proposed-reconciler-BTkDrl4R.js → orphan-proposed-reconciler-CWmOdM9-.js} +1 -1
- package/server/{orphan-proposed-reconciler-neK8dHQk.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-DeVUgwA7.js → pan-dir-ubraCiUg.js} +24 -10
- package/server/{paths-_zEts6wc.js → paths-cXmOwSbh.js} +2 -2
- package/server/pending-lifecycle-claim-DEteYdS9.js +110 -0
- package/server/{pickup-Dd0Znxxy.js → pickup-D8xtG1J2.js} +17 -16
- package/server/pipeline-membership-BGSvkT2M.js +3 -0
- package/server/pipeline-membership-CrAPLYtf.js +57 -0
- package/server/{pipeline-membership-0HaEGDlH.js → pipeline-membership-gather-CET40frr.js} +177 -109
- package/server/pipeline-membership-gather-DTfcgxLl.js +3 -0
- package/server/{pipeline-notifier-D0ykk59O.js → pipeline-notifier-BuQ0e4hF.js} +2 -2
- package/server/{pipeline-notifier-6iCJplFZ.js → pipeline-notifier-ImNXknf0.js} +1 -1
- package/server/post-merge-lifecycle-worker-DbO10pum.js +50 -0
- package/server/{project-pipelines-2sK1apsO.js → project-pipelines-Bim6bThI.js} +2 -2
- package/server/project-repos-C0nuoBGv.js +98 -0
- package/server/project-repos-CRE6Ykow.js +3 -0
- package/server/projects-B03Wr-xc.js +3 -0
- package/server/{prompts-Dp4Tpk39.js → prompts-BEx08AIu.js} +2 -2
- package/server/{providers-DKkBXhxU.js → providers-D7IluJe0.js} +1 -1
- package/server/{providers-DV7ec8l7.js → providers-evXhiQeg.js} +7 -7
- package/server/public/assets/{chunk-BO2N2NFS-CltymLRg.js → chunk-BO2N2NFS-D1s4-Sqp.js} +4 -4
- package/server/public/assets/{diagram-OG6HWLK6-D2f6pjgA.js → diagram-OG6HWLK6-1gdMoSF7.js} +1 -1
- package/server/public/assets/{dist-BWR4qFiV.js → dist-CxAOHbil.js} +1 -1
- package/server/public/assets/{dist-DEmlBBNQ.js → dist-DqDRYW6P.js} +3 -3
- package/server/public/assets/{ganttDiagram-6RSMTGT7-DnfiViPK.js → ganttDiagram-6RSMTGT7-BYex-Ec7.js} +1 -1
- package/server/public/assets/{highlighted-body-OFNGDK62-B8Wrmj9H.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-C9zFQpkX.js → linear-B4cuEFmO.js} +1 -1
- package/server/public/assets/mermaid-GHXKKRXX-DyDHFXHV.js +1 -0
- package/server/public/assets/{pieDiagram-4H26LBE5-lR8H7Yjd.js → pieDiagram-4H26LBE5-CBHNBIJQ.js} +1 -1
- package/server/public/assets/{prod-B1jCQihw.js → prod-CN2nHBvX.js} +4 -4
- package/server/public/assets/{quadrantDiagram-W4KKPZXB-CVQ2guem.js → quadrantDiagram-W4KKPZXB-Bom87VOQ.js} +1 -1
- package/server/public/assets/{sankeyDiagram-5OEKKPKP-eD1RB4gm.js → sankeyDiagram-5OEKKPKP-UrBeyLxk.js} +1 -1
- package/server/public/assets/{xychartDiagram-2RQKCTM6-ChEC6dQn.js → xychartDiagram-2RQKCTM6-DhkbrIxR.js} +1 -1
- package/server/public/index.html +2 -2
- package/server/{pull-requests--Ib2jTgy.js → pull-requests-Cv7LxzUN.js} +1 -1
- package/server/{pull-requests-CXIhdCYD.js → pull-requests-DHWiKxo7.js} +19 -10
- package/server/{queries-6d7Cdtm7.js → queries-DHJm7bTd.js} +1134 -203
- package/server/{rally-B708-nZn.js → rally-B71M9f4o.js} +3 -3
- package/server/rally-YDjU513q.js +3 -0
- package/server/{rally-api-yjQ0TfHd.js → rally-api-D5uXN08-.js} +1 -1
- package/server/{rally-api-nY0ZANw3.js → rally-api-Dkqmok65.js} +2 -2
- package/server/{rally-client-B1EJhfV0.js → rally-client-Bfqm6XI4.js} +4 -4
- package/server/{rally-client-CULK2XAY.js → rally-client-CxsA6ExK.js} +1 -1
- package/server/{reap-terminal-sessions-MWnqdLCJ.js → reap-terminal-sessions-BQ23nriz.js} +2 -2
- package/server/{reap-terminal-sessions-N3BTkmX_.js → reap-terminal-sessions-CvmwaqKv.js} +2 -2
- package/server/{rebuild-stack-Dp4eLkt4.js → rebuild-stack-0EEYReVZ.js} +36 -36
- package/server/rebuild-stack-qeRqHZxH.js +4 -0
- package/server/{reconstruct-cache-uWbZfjms.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-Dq0t2uBG.js → record-update-Z0QCxmMp.js} +124 -34
- package/server/{recovery-trip-BJtIQuag.js → recovery-trip-eJe26h-f.js} +2 -2
- package/server/{release-engine-DZpmGGzb.js → release-engine-lPUp-MTd.js} +5 -5
- package/server/{release-set-hnXd_kga.js → release-set-BwGeyZKX.js} +3 -3
- package/server/{remote-Br-ZWVIP.js → remote-BCd02Es1.js} +3 -3
- package/server/{remote-4tiENDaI.js → remote-CVGUhXMV.js} +3 -3
- package/server/{remote-agents-CRCg1L4H.js → remote-agents-C1bssi41.js} +2 -2
- package/server/{remote-agents-nmty1mLu.js → remote-agents-C_VxssLU.js} +300 -46
- package/server/{remote-completion-BbWNd10K.js → remote-completion-DAB0P706.js} +12 -12
- package/server/resume-u9byntrq.js +3 -0
- package/server/{review-agent-DJRO8EG8.js → review-agent-CD4RCI0Y.js} +1 -1
- package/server/{review-agent-sKkE1FEL.js → review-agent-CHhI66UP.js} +61 -44
- package/server/{review-artifacts-BLbSC4ke.js → review-artifacts-DSMRIfuJ.js} +7 -6
- package/server/{review-context-BgX3lcCx.js → review-context-oFuBbiEE.js} +69 -25
- package/server/{in-flight-guard-aQ1IxeI3.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-tbOn_A_u.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-BhSQ0d0l.js → review-status-sync-483sujRo.js} +10 -5
- package/server/{review-status-sync-To3-iS-N.js → review-status-sync-NaWvI9Xf.js} +1 -1
- package/server/review-status-yljtTd-q.js +7521 -0
- package/server/{review-verdict-feedback-C1Kg8n7t.js → review-verdict-feedback-BPDn4li_.js} +1 -1
- package/server/{review-verdict-feedback-CTRNtzXO.js → review-verdict-feedback-CELeUinh.js} +48 -8
- package/server/{rollup-WA0VD-Rr.js → rollup-DTNvelz9.js} +8 -8
- package/server/{rollup-B53Y81xK.js → rollup-DYZfq1c4.js} +1 -1
- package/server/{scanner-D2743cp8.js → scanner-CV35oSn4.js} +42 -14
- package/server/{sequence-io-Cg0zYj_E.js → sequence-io-DF_8iuhV.js} +4 -4
- package/server/{sequencer-agent-BGY8gjg-.js → sequencer-agent-B2WeCtGi.js} +5 -5
- package/server/server.js +3899 -672
- package/server/{service-DCpB_SGd.js → service-Br9rpBNA.js} +83 -65
- package/server/{session-fork-BQ8_6H32.js → session-fork-D0LY152N.js} +2 -2
- package/server/{session-history-CVZDpS3c.js → session-history-BUyK29eq.js} +4 -4
- package/server/{settings-BZ5m1UCl.js → settings-Bse1Pdcj.js} +3 -3
- package/server/settings-CdvIF84R.js +2 -0
- package/server/{settings-ylxwqwQG.js → settings-CvVGqNEs.js} +3 -2
- package/server/{shadow-engineering-BlxG6Xye.js → shadow-engineering-BWLa8ODz.js} +2 -2
- package/server/{shadow-state-Dh-HzF2J.js → shadow-state-B4fpKxOO.js} +2 -2
- package/server/{shadow-state-C2_epgx2.js → shadow-state-FV6PHfEW.js} +1 -1
- package/server/{shadow-utils-4bvjn9b3.js → shadow-utils-D7asqxOZ.js} +2 -2
- package/server/{ship-log-ClSMIzZX.js → ship-log-xplJ8t75.js} +1 -1
- package/server/{smart-compaction-CHIxLr_d.js → smart-compaction-CPp2Ykf6.js} +1 -1
- package/server/{smart-compaction-r4pHQBIr.js → smart-compaction-D3U_79f-.js} +8 -7
- package/server/{spawn-planning-session-KC_UduxD.js → spawn-planning-session-1nFi3gfk.js} +1 -1
- package/server/{spawn-planning-session-DWAorh2B.js → spawn-planning-session-DGfZ5B8D.js} +30 -23
- package/server/{specialist-completion-BXhav38U.js → specialist-completion-Br48eiDP.js} +1 -1
- package/server/{specialist-context-DtrYvGJ-.js → specialist-context-cVbGnTa3.js} +5 -5
- package/server/{specialist-handoff-logger-C45ouoZ6.js → specialist-handoff-logger-DK-GTz4s.js} +2 -2
- package/server/{specialist-logs-DJ3RzKxW.js → specialist-logs-Cl5-hqT8.js} +3 -3
- package/server/{specialists-JVO00bs7.js → specialists-CNfYO3G2.js} +1634 -457
- package/server/{specialists-DyFeedjn.js → specialists-Cicieuzu.js} +21 -19
- package/server/{specialists-D5fRZXmN.js → specialists-JHsdU3pA.js} +1 -1
- package/server/{specialists-DVj0hvaL.js → specialists-Tdezg_6N.js} +1 -1
- package/server/specs-Bt7WJDoC.js +3 -0
- package/server/src-CRmCHlma.js +11408 -0
- package/server/{src-CG9mCkP6.js → src-Ck028hjO.js} +6 -6
- package/server/{src-CMTQGyCK.js → src-UWcGe0Ix.js} +5 -5
- package/server/stack-health-CJLMrLBl.js +3 -0
- package/server/{stack-health-puygdaMd.js → stack-health-DqSqx0zv.js} +68 -12
- package/server/{stale-task-claims-BbFwCTb0.js → stale-task-claims-CYFOUNlT.js} +4 -4
- package/server/{staleness-Cbl_w4Bw.js → staleness-BQ-0gMYK.js} +1 -1
- package/server/{staleness-Bpy41ngS.js → staleness-D47CUJok.js} +1 -1
- package/server/{state-home-CIGjwNfJ.js → state-home-BYV7qZTW.js} +2 -2
- package/server/{state-mapping-BL_-3Yt8.js → state-mapping-BVldLhBf.js} +1 -1
- package/server/{state-migrate-Dkzaxvny.js → state-migrate-CvvBtS0Y.js} +4 -4
- package/server/{stuck-remediation-sY_MHHgQ.js → stuck-remediation-Wt0UVvu1.js} +1 -1
- package/server/{stuck-remediation-CzEov_fq.js → stuck-remediation-mkLC6G_t.js} +360 -26
- package/server/{substrate-bug-weights-service-BH66lhm7.js → substrate-bug-weights-service-XfLAKnmK.js} +3 -3
- package/server/{summary-fork-D8bXjCr7.js → summary-fork-CD7GOts0.js} +2 -2
- package/server/{summary-fork-DHhJIsAL.js → summary-fork-xiXBnWG9.js} +78 -12
- package/server/supervisor/{injection-budget-C1iPirFS.js → injection-budget-B5SbvDx2.js} +2 -41
- package/server/supervisor/{paths-DehGY2Fj.js → paths-K3noE4N_.js} +1 -1
- package/server/supervisor/pty-supervisor.js +49 -2
- package/server/supervisor/pty-token-B7lp0ElT.js +43 -0
- package/server/{supervisor-BO-Zk_h-.js → supervisor-DL788vos.js} +3 -3
- package/server/supervisor-UWiQNK-y.js +2 -0
- package/server/{swarm-readiness-CQ_fwUWF.js → swarm-readiness-BV14DF5N.js} +3 -3
- package/server/{system-prerequisites-Bza0ffAh.js → system-prerequisites-pdWG6ZQs.js} +56 -29
- package/server/{teardown-workspace-CEgauF4U.js → teardown-workspace-l2F4_zim.js} +15 -16
- package/server/{test-agent-queue-DXDt0Xa-.js → test-agent-queue-qakFIIGz.js} +6 -6
- package/server/{test-verdict-CmUBK5cT.js → test-verdict-BJYDggMm.js} +1 -1
- package/server/{test-verdict-DFjjIHR5.js → test-verdict-Gw-btEfb.js} +1 -1
- package/server/{tldr-daemon-DL566HbH.js → tldr-daemon-BKOYB616.js} +1 -1
- package/server/{tldr-daemon-BDtLOIlO.js → tldr-daemon-CBaWkV9k.js} +2 -2
- package/server/{tmux-ftABRAmc.js → tmux-B1Wbxz5o.js} +3 -3
- package/server/{tmux-DoThH6aj.js → tmux-DQ6jB76i.js} +1 -1
- package/server/tmux-dedup-DbN6MGzM.js +892 -0
- package/server/{token-CsOhvw42.js → token-Cxbk023d.js} +2 -2
- package/server/{token-util-CTmczIfW.js → token-util-CLq2MmQt.js} +1 -1
- package/server/token-util-zlz9U0ki.js +3 -0
- package/server/{tracker-config-B4itFzDo.js → tracker-config-DZ8Zn2nQ.js} +2 -2
- package/server/{tracker-utils-tnxxqROg.js → tracker-utils-L0FKtjq2.js} +3 -3
- package/server/{traefik-connect-m73vGebA.js → traefik-connect-bNX6jKkb.js} +1 -1
- package/server/{tunnel-B2vxjx_b.js → tunnel-BAm1XgjG.js} +3 -3
- package/server/{tunnel-Cgj-IGIl.js → tunnel-CjSnHdTc.js} +1 -1
- package/server/{types-BBNjPcqU.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-Cxsx5Uz1.js +179 -0
- package/server/{validation-CIi6pnI2.js → validation-DEaTZafj.js} +1 -1
- package/server/{validation-B5JxoPUS.js → validation-VZgJxmqc.js} +4 -4
- package/server/{verification-artifact-C-lIHfUa.js → verification-artifact-C85cRTc_.js} +1 -1
- package/server/{verification-artifact-BcnIbigL.js → verification-artifact-g3yuxQDL.js} +1 -1
- package/server/{verification-runner-CDj4lD4t.js → verification-runner-DlZI8yhw.js} +1 -1
- package/server/{verification-runner-Br0S_Ous.js → verification-runner-KDZIsBj4.js} +114 -107
- package/server/{vtt-parser-DKpNNW5i.js → vtt-parser-Jr94BF3Y.js} +1 -1
- package/server/{work-agent-prompt-Yb2bd3Fq.js → work-agent-prompt-C-vuP3_J.js} +20 -9
- package/server/workflows-CHrx_hcW.js +2 -0
- package/server/{workflows-C9WmILql.js → workflows-D0oip4eV.js} +161 -78
- package/server/{workspace-DuUdndHe.js → workspace-BqFg__wH.js} +1 -1
- package/server/{workspace-BVl4rihN.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-cEGcO6UT.js → workspace-config-B123aZl-.js} +1 -1
- package/server/workspace-manager-CDTKjjdU.js +3 -0
- package/server/{workspace-manager-hLUv3ADC.js → workspace-manager-CwO-Hek7.js} +206 -116
- package/server/{workspace-metadata-CskwzzhL.js → workspace-metadata-CQv00QwK.js} +2 -2
- package/server/{workspace-metadata-DNpMixRq.js → workspace-metadata-D4M8BM4W.js} +1 -1
- package/server/{workspaces-hWvy9eKs.js → workspaces-j1e_6aAT.js} +736 -290
- 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/hooks/record-cost-event.js +6 -4
- package/sync-sources/rules/ask-user-question-self-contained.md +9 -0
- package/sync-sources/skills/okf/README.md +11 -3
- package/sync-sources/skills/okf/SKILL.md +12 -1
- package/sync-sources/skills/okf/docs/USAGE.md +15 -0
- package/sync-sources/skills/okf/references/overdeck.md +28 -0
- package/sync-sources/skills/pan-close/SKILL.md +5 -3
- package/sync-sources/skills/pan-flywheel/SKILL.md +18 -1
- package/sync-sources/skills/pan-knowledge/SKILL.md +10 -0
- package/sync-sources/skills/pan-orders/SKILL.md +33 -0
- package/sync-sources/skills/pan-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-start/SKILL.md +4 -0
- 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/sync-sources/templates/traefik/dynamic/overdeck.yml.template +10 -0
- package/server/activity-logger-OEUBdfZ8.js +0 -3
- package/server/agent-state-Bg0lhqwj.js +0 -3
- package/server/agents-FlIgQ3ql.js +0 -3
- package/server/archive-planning-zkJb3BeM.js +0 -3
- package/server/cli-BsVIHwzC.js +0 -3
- package/server/context-layers-B3Nt58jl.js +0 -4
- package/server/context-layers-ZYFcWiyc.js +0 -165
- package/server/conversation-service-Up7FEzIC.js +0 -3
- package/server/deacon-DYSEJb48.js +0 -4
- package/server/deacon-swarm-9jRLS5Ke.js +0 -2
- package/server/deploy-window-CM6W1-c6.js +0 -3
- package/server/dist-Bd3vn0Hw.js +0 -3
- package/server/flywheel-DMCUzDWg.js +0 -2
- package/server/flywheel-DSSpWmqF.js +0 -522
- package/server/flywheel-DcBkQvgE.js +0 -207
- package/server/flywheel-merge-order-C-6zRLvM.js +0 -2
- package/server/flywheel-merge-order-DxbQKE1d.js +0 -244
- package/server/forge-B-ZWyTRm.js +0 -2
- package/server/forge-Ch9gCFod.js +0 -270
- package/server/git-utils-Dry_Ka_D.js +0 -3
- package/server/github-pr-lookup-BRbDW-qk.js +0 -44
- package/server/hume-B_DbflNM.js +0 -3
- package/server/inspect-agent-ch-F-5Ci.js +0 -2
- package/server/launcher-generator-CHVm7bGT.js +0 -379
- package/server/layers-DzxSTGNA.js +0 -93
- package/server/merge-blockers-BsFjGrQ8.js +0 -41
- package/server/merge-ops-DlB1IM0Y.js +0 -2
- package/server/merge-set-DLz0MkGT.js +0 -139
- package/server/merge-set-DnSYdBEp.js +0 -3
- package/server/merge-sync-SSv3E-pl.js +0 -3
- package/server/merge-verification-CSizH3HY.js +0 -124
- package/server/projects-9SkRpES9.js +0 -3
- package/server/public/assets/index-CUr1xv8w.css +0 -1
- package/server/public/assets/index-CsSuZQBI.js +0 -802
- package/server/public/assets/mermaid-GHXKKRXX-BUAB8hqt.js +0 -1
- package/server/rally-njs_mJrt.js +0 -3
- package/server/rebuild-stack-kA7XngID.js +0 -3
- package/server/record-t6V-3Dcj.js +0 -3
- package/server/record-update-DACtKh6_.js +0 -3
- package/server/resume-CcKqnTvE.js +0 -3
- package/server/review-status-A7quS5KJ.js +0 -1454
- package/server/review-status-C6n6-9f_.js +0 -3
- package/server/settings-D0OSwos5.js +0 -2
- package/server/specs-nN45DG2X.js +0 -3
- package/server/src-U7_kTPEE.js +0 -4733
- package/server/stack-health-Df0YEZKa.js +0 -3
- package/server/supervisor-BPy-o1A8.js +0 -2
- package/server/token-util-DrHg8abn.js +0 -3
- package/server/tracker-utils-BePq_oj-.js +0 -3
- package/server/uat-train-CuEn0t9M.js +0 -2152
- package/server/uat-train-cKfM-_WW.js +0 -2
- package/server/workflows-D90rMOya.js +0 -2
- package/server/workspace-manager-ZTdJAy9M.js +0 -3
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { X as messageAgent,
|
|
4
|
-
import {
|
|
5
|
-
import { i as readReviewStatusMap, n as init_review_status_source } from "./review-status-source-
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import { n as
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
1
|
+
import { Fr as init_errors, Gn as init_projects, Mn as findProjectByPathSync, ar as resolveProjectFromIssueSync, ci as init_paths, gr as init_issue_id, hn as init_state_plane, si as getOverdeckHome, ui as packageRoot } from "./config-yaml-CmOPzmBb.js";
|
|
2
|
+
import { S as setReviewStatusSync, T as init_pipeline, f as init_review_status, g as markWorkspaceStuck, u as getReviewStatusSync, w as capturePipelineStageForIssue } from "./review-status-yljtTd-q.js";
|
|
3
|
+
import { X as messageAgent, b as init_agents, pt as stopAgent, vr as setAgentPaused } from "./queries-DHJm7bTd.js";
|
|
4
|
+
import { t as init_tracker_utils } from "./tracker-utils-L0FKtjq2.js";
|
|
5
|
+
import { i as readReviewStatusMap, n as init_review_status_source } from "./review-status-source-CpvJnvnQ.js";
|
|
6
|
+
import { l as resolveWorkspaceRepoRootsSync, r as init_project_repos } from "./project-repos-C0nuoBGv.js";
|
|
7
|
+
import { o as init_lifecycle, s as isXBriefFilename } from "./lifecycle-CTdOWYMi.js";
|
|
8
|
+
import { m as readWorkspacePlanSync, o as init_io, t as XBriefMergeConflictError, v as init_types, y as subItemsOf } from "./io-VHvc0Ssp.js";
|
|
9
|
+
import { n as init_shadow_utils } from "./shadow-utils-D7asqxOZ.js";
|
|
10
|
+
import { a as writeFeedbackFile, i as init_feedback_writer } from "./feedback-writer-BG0RUZiu.js";
|
|
11
|
+
import { n as resolveIssueFeedbackTarget, r as surfaceIssueFeedbackNeedsYou, t as init_feedback_target } from "./feedback-target-Dt9BsapX.js";
|
|
12
|
+
import { i as runQualityGates, n as init_validation, t as DEFAULT_GATES } from "./validation-VZgJxmqc.js";
|
|
13
|
+
import { r as writeVerificationArtifact, t as readVerificationArtifact } from "./verification-artifact-g3yuxQDL.js";
|
|
14
|
+
import { i as readPendingDeploy, n as init_deploy_queue } from "./deploy-queue-UjKGYsDe.js";
|
|
15
|
+
import { n as getXBriefACStatusSync } from "./acceptance-criteria-CCwFGICj.js";
|
|
14
16
|
import { join } from "node:path";
|
|
15
17
|
import { Data, Effect } from "effect";
|
|
16
|
-
import { existsSync } from "fs";
|
|
17
18
|
import { basename as basename$1, dirname as dirname$1, join as join$1 } from "path";
|
|
18
19
|
import { homedir } from "os";
|
|
19
|
-
import { closeSync
|
|
20
|
-
import { readdir } from "fs/promises";
|
|
20
|
+
import { closeSync, existsSync, mkdirSync, openSync, readFileSync, renameSync, writeFileSync } from "node:fs";
|
|
21
21
|
import { exec, spawn } from "node:child_process";
|
|
22
22
|
import { promisify } from "node:util";
|
|
23
23
|
import { exec as exec$1 } from "child_process";
|
|
@@ -25,6 +25,7 @@ import { promisify as promisify$1 } from "util";
|
|
|
25
25
|
//#region ../../lib/cloister/verification-feedback.ts
|
|
26
26
|
init_errors();
|
|
27
27
|
init_review_status_source();
|
|
28
|
+
init_pipeline();
|
|
28
29
|
init_review_status();
|
|
29
30
|
init_validation();
|
|
30
31
|
function buildFinalFailureInstructions(issueId) {
|
|
@@ -36,6 +37,7 @@ Fix every reported failure, commit and push the corrections, then run \`pan done
|
|
|
36
37
|
}
|
|
37
38
|
//#endregion
|
|
38
39
|
//#region ../../lib/cloister/verification-worker-supervisor.ts
|
|
40
|
+
init_deploy_queue();
|
|
39
41
|
init_paths();
|
|
40
42
|
const POLL_MS = 250;
|
|
41
43
|
const MAX_RUN_MS = 3900 * 1e3;
|
|
@@ -58,7 +60,7 @@ function isProcessAlive(pid) {
|
|
|
58
60
|
}
|
|
59
61
|
function readVerificationWorkerState(issueId) {
|
|
60
62
|
try {
|
|
61
|
-
const parsed = JSON.parse(readFileSync
|
|
63
|
+
const parsed = JSON.parse(readFileSync(statePath(issueId), "utf8"));
|
|
62
64
|
if (parsed.issueId !== issueId || !Number.isInteger(parsed.pid) || typeof parsed.runId !== "string" || typeof parsed.workspacePath !== "string" || typeof parsed.startedAt !== "string" || typeof parsed.resultPath !== "string") return null;
|
|
63
65
|
return {
|
|
64
66
|
...parsed,
|
|
@@ -77,12 +79,12 @@ function readVerificationWorkerState(issueId) {
|
|
|
77
79
|
}
|
|
78
80
|
function isVerificationWorkerActive(issueId) {
|
|
79
81
|
const state = readVerificationWorkerState(issueId);
|
|
80
|
-
return !!state && isProcessAlive(state.pid) && !existsSync
|
|
82
|
+
return !!state && isProcessAlive(state.pid) && !existsSync(state.resultPath);
|
|
81
83
|
}
|
|
82
84
|
function writeJsonAtomic(path, value) {
|
|
83
85
|
const temp = `${path}.${process.pid}.tmp`;
|
|
84
|
-
writeFileSync
|
|
85
|
-
renameSync
|
|
86
|
+
writeFileSync(temp, `${JSON.stringify(value, null, 2)}\n`);
|
|
87
|
+
renameSync(temp, path);
|
|
86
88
|
}
|
|
87
89
|
function verificationWorkerDeadline(state) {
|
|
88
90
|
if (!state.admittedAt) return null;
|
|
@@ -102,7 +104,7 @@ function markVerificationWorkerAdmissionPhase(issueId, update) {
|
|
|
102
104
|
}
|
|
103
105
|
async function waitForResult(state) {
|
|
104
106
|
for (;;) {
|
|
105
|
-
if (existsSync
|
|
107
|
+
if (existsSync(state.resultPath)) return JSON.parse(readFileSync(state.resultPath, "utf8"));
|
|
106
108
|
if (!isProcessAlive(state.pid)) return {
|
|
107
109
|
outcome: "error",
|
|
108
110
|
message: `Verification worker ${state.pid} exited before writing a result`
|
|
@@ -117,21 +119,26 @@ async function waitForResult(state) {
|
|
|
117
119
|
}
|
|
118
120
|
async function runSupervisedVerification(issueId, workspacePath, workspaceInfo, logPrefix, options = {}) {
|
|
119
121
|
const existing = readVerificationWorkerState(issueId);
|
|
120
|
-
if (existing && existing.workspacePath === workspacePath && isProcessAlive(existing.pid) && !existsSync
|
|
122
|
+
if (existing && existing.workspacePath === workspacePath && isProcessAlive(existing.pid) && !existsSync(existing.resultPath)) {
|
|
121
123
|
console.log(`[${logPrefix}] Joining live verification worker ${existing.pid} for ${issueId}`);
|
|
122
124
|
return waitForResult(existing);
|
|
123
125
|
}
|
|
126
|
+
const pendingDeploy = await readPendingDeploy();
|
|
127
|
+
if (pendingDeploy) return {
|
|
128
|
+
outcome: "deferred",
|
|
129
|
+
reason: `Verification deferred: a dashboard deploy is queued (requested ${pendingDeploy.requestedAt} by ${pendingDeploy.requestedBy.join(", ")}). It re-runs automatically after the deploy.`
|
|
130
|
+
};
|
|
124
131
|
const dir = workerDir(issueId);
|
|
125
|
-
mkdirSync
|
|
132
|
+
mkdirSync(dir, { recursive: true });
|
|
126
133
|
const runId = `${Date.now()}-${process.pid}`;
|
|
127
134
|
const resultPath = join(dir, `result-${runId}.json`);
|
|
128
135
|
const logPath = join(dir, `worker-${runId}.log`);
|
|
129
136
|
const workerPath = process.env.OVERDECK_VERIFICATION_WORKER_PATH || join(packageRoot, "dist", "verification-worker.js");
|
|
130
|
-
if (!existsSync
|
|
137
|
+
if (!existsSync(workerPath)) return {
|
|
131
138
|
outcome: "error",
|
|
132
139
|
message: `Verification worker bundle missing at ${workerPath}; run npm run build`
|
|
133
140
|
};
|
|
134
|
-
const logFd = openSync
|
|
141
|
+
const logFd = openSync(logPath, "a");
|
|
135
142
|
const child = spawn(process.execPath, [workerPath, JSON.stringify({
|
|
136
143
|
issueId,
|
|
137
144
|
workspacePath,
|
|
@@ -152,7 +159,7 @@ async function runSupervisedVerification(issueId, workspacePath, workspaceInfo,
|
|
|
152
159
|
OVERDECK_VERIFICATION_WORKER: "1"
|
|
153
160
|
}
|
|
154
161
|
});
|
|
155
|
-
closeSync
|
|
162
|
+
closeSync(logFd);
|
|
156
163
|
if (!child.pid) return {
|
|
157
164
|
outcome: "error",
|
|
158
165
|
message: "Failed to spawn verification worker"
|
|
@@ -176,6 +183,7 @@ async function runSupervisedVerification(issueId, workspacePath, workspaceInfo,
|
|
|
176
183
|
//#region ../../lib/work/test-requirement-gate.ts
|
|
177
184
|
init_projects();
|
|
178
185
|
init_state_plane();
|
|
186
|
+
init_project_repos();
|
|
179
187
|
init_lifecycle();
|
|
180
188
|
init_types();
|
|
181
189
|
init_io();
|
|
@@ -225,6 +233,7 @@ async function checkIncompletePlanItemsPromise(workspacePath, _issueId) {
|
|
|
225
233
|
* Extracted from dashboard/server to be independently testable.
|
|
226
234
|
*/
|
|
227
235
|
init_io();
|
|
236
|
+
init_deploy_queue();
|
|
228
237
|
const execAsync = promisify$1(exec$1);
|
|
229
238
|
const NO_PROGRESS_REPEAT_THRESHOLD = 2;
|
|
230
239
|
const MERGED_VERIFICATION_REASON = "Merge already landed; verify-on-main owns post-merge validation.";
|
|
@@ -345,29 +354,6 @@ async function deliverVerificationFeedback(issueId, message, details, logPrefix)
|
|
|
345
354
|
...details
|
|
346
355
|
});
|
|
347
356
|
}
|
|
348
|
-
async function resolveGitDirs(workspacePath, projectConfig) {
|
|
349
|
-
if (!(projectConfig?.workspace?.type === "polyrepo") && existsSync(join$1(workspacePath, ".git"))) return {
|
|
350
|
-
gitDirs: [workspacePath],
|
|
351
|
-
isPolyrepo: false
|
|
352
|
-
};
|
|
353
|
-
const gitDirs = [];
|
|
354
|
-
try {
|
|
355
|
-
const entries = await readdir(workspacePath, { withFileTypes: true });
|
|
356
|
-
for (const entry of entries) if (entry.isDirectory() && !entry.name.startsWith(".") && existsSync(join$1(workspacePath, entry.name, ".git"))) gitDirs.push(join$1(workspacePath, entry.name));
|
|
357
|
-
} catch {}
|
|
358
|
-
if (gitDirs.length > 0) return {
|
|
359
|
-
gitDirs,
|
|
360
|
-
isPolyrepo: true
|
|
361
|
-
};
|
|
362
|
-
if (existsSync(join$1(workspacePath, ".git"))) return {
|
|
363
|
-
gitDirs: [workspacePath],
|
|
364
|
-
isPolyrepo: false
|
|
365
|
-
};
|
|
366
|
-
return {
|
|
367
|
-
gitDirs: [],
|
|
368
|
-
isPolyrepo: false
|
|
369
|
-
};
|
|
370
|
-
}
|
|
371
357
|
async function syncSingleRepo(gitDir, targetBranch) {
|
|
372
358
|
const repoName = basename$1(gitDir);
|
|
373
359
|
try {
|
|
@@ -455,8 +441,40 @@ function getSyncTargetBranch(workspacePath, projectConfig, repoName) {
|
|
|
455
441
|
function changesetHasNoContent(changedFiles) {
|
|
456
442
|
return changedFiles.map((f) => f.trim()).filter(Boolean).filter((f) => !f.startsWith(".pan/") && !isXBriefFilename(f)).length === 0;
|
|
457
443
|
}
|
|
444
|
+
/**
|
|
445
|
+
* Return whether any actual workspace repository contains implementation
|
|
446
|
+
* changes. `undefined` means at least one repo diff failed and no positive
|
|
447
|
+
* evidence was found, so callers must conservatively skip the empty guard.
|
|
448
|
+
*/
|
|
449
|
+
async function workspaceChangesetHasContent(issueId, workspacePath) {
|
|
450
|
+
const roots = resolveWorkspaceRepoRootsSync(issueId, workspacePath);
|
|
451
|
+
let diffFailed = false;
|
|
452
|
+
for (const root of roots) try {
|
|
453
|
+
const { stdout } = await execAsync(`git diff --name-only origin/${root.targetBranch}...HEAD`, {
|
|
454
|
+
cwd: root.dir,
|
|
455
|
+
encoding: "utf-8",
|
|
456
|
+
timeout: 15e3
|
|
457
|
+
});
|
|
458
|
+
if (!changesetHasNoContent(stdout.split("\n"))) return true;
|
|
459
|
+
} catch {
|
|
460
|
+
diffFailed = true;
|
|
461
|
+
}
|
|
462
|
+
return diffFailed ? void 0 : false;
|
|
463
|
+
}
|
|
458
464
|
async function runVerificationForIssuePromise(issueId, workspacePath, workspaceInfo, logPrefix, options = {}) {
|
|
459
465
|
const currentStatus = getReviewStatusSync(issueId);
|
|
466
|
+
const pendingDeploy = await readPendingDeploy();
|
|
467
|
+
if (pendingDeploy && currentStatus?.verificationStatus !== "running") {
|
|
468
|
+
const reason = `Verification deferred: a dashboard deploy is queued (requested ${pendingDeploy.requestedAt} by ${pendingDeploy.requestedBy.join(", ")}). It re-runs automatically after the deploy.`;
|
|
469
|
+
setReviewStatusSync(issueId, {
|
|
470
|
+
verificationStatus: "pending",
|
|
471
|
+
verificationNotes: reason
|
|
472
|
+
});
|
|
473
|
+
return {
|
|
474
|
+
outcome: "deferred",
|
|
475
|
+
reason
|
|
476
|
+
};
|
|
477
|
+
}
|
|
460
478
|
const mergedOutcome = skipMergedVerification(issueId, logPrefix, currentStatus);
|
|
461
479
|
if (mergedOutcome) return mergedOutcome;
|
|
462
480
|
const currentCycles = currentStatus?.verificationCycleCount ?? 0;
|
|
@@ -473,16 +491,15 @@ async function runVerificationForIssuePromise(issueId, workspacePath, workspaceI
|
|
|
473
491
|
console.log(`[${logPrefix}] Running verification gate for ${issueId} (attempt ${currentCycles + 1}/3)`);
|
|
474
492
|
try {
|
|
475
493
|
const projectConfig = findProjectByPathSync(workspacePath);
|
|
476
|
-
const
|
|
477
|
-
|
|
494
|
+
const repoRoots = resolveWorkspaceRepoRootsSync(issueId, workspacePath);
|
|
495
|
+
const isPolyrepo = repoRoots.some((root) => root.isPolyrepo);
|
|
496
|
+
if (options.syncTargetBranch !== false) if (repoRoots.length === 0) console.log(`[${logPrefix}] No git directories found in workspace ${workspacePath} — skipping sync`);
|
|
478
497
|
else {
|
|
479
498
|
const syncResults = [];
|
|
480
|
-
for (const
|
|
481
|
-
const
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
console.log(`[${logPrefix}] Syncing ${targetBranch} into ${displayName} for ${issueId}...`);
|
|
485
|
-
syncResults.push(await syncSingleRepo(gitDir, targetBranch));
|
|
499
|
+
for (const root of repoRoots) {
|
|
500
|
+
const displayName = (isPolyrepo ? root.repoKey : void 0) || basename$1(workspacePath);
|
|
501
|
+
console.log(`[${logPrefix}] Syncing ${root.targetBranch} into ${displayName} for ${issueId}...`);
|
|
502
|
+
syncResults.push(await syncSingleRepo(root.dir, root.targetBranch));
|
|
486
503
|
}
|
|
487
504
|
const postSyncMergedOutcome = skipMergedVerification(issueId, logPrefix);
|
|
488
505
|
if (postSyncMergedOutcome) return postSyncMergedOutcome;
|
|
@@ -541,7 +558,7 @@ async function runVerificationForIssuePromise(issueId, workspacePath, workspaceI
|
|
|
541
558
|
const featureName = featureFolder.replace(/^feature-/, "");
|
|
542
559
|
const projectPath = projectConfig?.path || dirname$1(dirname$1(workspacePath));
|
|
543
560
|
const domain = projectConfig?.workspace?.dns?.domain || "localhost";
|
|
544
|
-
const changedBase = `origin/${getSyncTargetBranch(workspacePath, projectConfig, void 0)}`;
|
|
561
|
+
const changedBase = `origin/${repoRoots[0]?.targetBranch ?? getSyncTargetBranch(workspacePath, projectConfig, void 0)}`;
|
|
545
562
|
const placeholders = {
|
|
546
563
|
FEATURE_NAME: featureName,
|
|
547
564
|
FEATURE_FOLDER: featureFolder,
|
|
@@ -637,12 +654,11 @@ async function runVerificationForIssuePromise(issueId, workspacePath, workspaceI
|
|
|
637
654
|
verificationNotes: `Verification deferred: ${failedGate.error}. Workspace stack rebuild triggered; verification re-runs on the next cycle.`
|
|
638
655
|
});
|
|
639
656
|
try {
|
|
640
|
-
const { rebuildWorkspaceStack } = await import("./rebuild-stack-
|
|
641
|
-
Effect.runPromise(rebuildWorkspaceStack(issueId, { onProgress: (m) => console.log(`[${logPrefix}] ${issueId} stack rebuild: ${m}`) }))
|
|
642
|
-
|
|
643
|
-
});
|
|
657
|
+
const { rebuildWorkspaceStack } = await import("./rebuild-stack-qeRqHZxH.js");
|
|
658
|
+
const rebuildResult = await Effect.runPromise(rebuildWorkspaceStack(issueId, { onProgress: (m) => console.log(`[${logPrefix}] ${issueId} stack rebuild: ${m}`) }));
|
|
659
|
+
if (!rebuildResult.success) console.warn(`[${logPrefix}] Stack rebuild for ${issueId} failed: ${rebuildResult.error}`);
|
|
644
660
|
} catch (err) {
|
|
645
|
-
console.warn(`[${logPrefix}] Could not
|
|
661
|
+
console.warn(`[${logPrefix}] Could not settle stack rebuild for ${issueId}: ${err instanceof Error ? err.message : String(err)}`);
|
|
646
662
|
}
|
|
647
663
|
return {
|
|
648
664
|
outcome: "failed",
|
|
@@ -799,53 +815,43 @@ async function runVerificationForIssuePromise(issueId, workspacePath, workspaceI
|
|
|
799
815
|
maxCycles: 3
|
|
800
816
|
};
|
|
801
817
|
}
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
818
|
+
const changesetHasContent = await workspaceChangesetHasContent(issueId, workspacePath);
|
|
819
|
+
const postDiffMergedOutcome = skipMergedVerification(issueId, logPrefix);
|
|
820
|
+
if (postDiffMergedOutcome) return postDiffMergedOutcome;
|
|
821
|
+
if (changesetHasContent === false) {
|
|
822
|
+
const newCycleCount = currentCycles + 1;
|
|
823
|
+
const failedCheck = "empty-changeset";
|
|
824
|
+
const comparedTargets = repoRoots.map((root) => `${root.repoKey}:origin/${root.targetBranch}`).join(", ");
|
|
825
|
+
const summary = `Branch has no implementation — only pipeline artifacts (.pan/xBRIEF task state) changed across workspace repos vs ${comparedTargets}. The work agent produced no code (likely a kickoff-delivery zombie — PAN-2179).`;
|
|
826
|
+
setReviewStatusSync(issueId, {
|
|
827
|
+
reviewStatus: "pending",
|
|
828
|
+
verificationStatus: "failed",
|
|
829
|
+
verificationNotes: summary,
|
|
830
|
+
verificationCycleCount: newCycleCount,
|
|
831
|
+
verificationMaxCycles: 3
|
|
807
832
|
});
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
const newCycleCount = currentCycles + 1;
|
|
812
|
-
const failedCheck = "empty-changeset";
|
|
813
|
-
const summary = `Branch has no implementation — only pipeline artifacts (.pan/xBRIEF task state) changed vs ${changedBase}. The work agent produced no code (likely a kickoff-delivery zombie — PAN-2179).`;
|
|
814
|
-
setReviewStatusSync(issueId, {
|
|
815
|
-
reviewStatus: "pending",
|
|
816
|
-
verificationStatus: "failed",
|
|
817
|
-
verificationNotes: summary,
|
|
818
|
-
verificationCycleCount: newCycleCount,
|
|
819
|
-
verificationMaxCycles: 3
|
|
820
|
-
});
|
|
821
|
-
if (shouldEscalateVerificationFailure(currentStatus, failedCheck, newCycleCount)) await escalateVerificationStuck(issueId, failedCheck, newCycleCount, summary, logPrefix);
|
|
822
|
-
try {
|
|
823
|
-
await deliverVerificationFeedback(issueId, shouldEscalateVerificationFailure(currentStatus, failedCheck, newCycleCount) ? `VERIFICATION STUCK for ${issueId}.\nFailed check: ${failedCheck} after ${newCycleCount}/3 attempts — branch still has no implementation.\n\n${buildFinalFailureInstructions(issueId)}` : `VERIFICATION FAILED for ${issueId}.\nFailed check: ${failedCheck} — your branch contains NO code (only .pan/xBRIEF task state changed vs ${changedBase}).\n\nYou must actually implement the issue: read the plan (.pan/spec.vbrief.json + the issue body), write and commit the code, push, then run pan review request. Do NOT stop at the prompt — keep working until pan review request completes.`, {
|
|
824
|
-
failedCheck,
|
|
825
|
-
changedBase
|
|
826
|
-
}, logPrefix);
|
|
827
|
-
console.error(`[${logPrefix}] VERIFICATION FAILED for ${issueId}: empty-changeset (no content files vs ${changedBase})`);
|
|
828
|
-
} catch (feedbackErr) {
|
|
829
|
-
console.error(`[${logPrefix}] Failed to send empty-changeset feedback for ${issueId}:`, feedbackErr);
|
|
830
|
-
}
|
|
831
|
-
return {
|
|
832
|
-
outcome: "failed",
|
|
833
|
+
if (shouldEscalateVerificationFailure(currentStatus, failedCheck, newCycleCount)) await escalateVerificationStuck(issueId, failedCheck, newCycleCount, summary, logPrefix);
|
|
834
|
+
try {
|
|
835
|
+
await deliverVerificationFeedback(issueId, shouldEscalateVerificationFailure(currentStatus, failedCheck, newCycleCount) ? `VERIFICATION STUCK for ${issueId}.\nFailed check: ${failedCheck} after ${newCycleCount}/3 attempts — branch still has no implementation.\n\n${buildFinalFailureInstructions(issueId)}` : `VERIFICATION FAILED for ${issueId}.\nFailed check: ${failedCheck} — your branch contains NO code (only .pan/xBRIEF task state changed across ${comparedTargets}).\n\nYou must actually implement the issue: read the plan (.pan/spec.vbrief.json + the issue body), write and commit the code, push, then run pan review request. Do NOT stop at the prompt — keep working until pan review request completes.`, {
|
|
833
836
|
failedCheck,
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
};
|
|
837
|
+
changedBase: comparedTargets
|
|
838
|
+
}, logPrefix);
|
|
839
|
+
console.error(`[${logPrefix}] VERIFICATION FAILED for ${issueId}: empty-changeset (no content files across ${comparedTargets})`);
|
|
840
|
+
} catch (feedbackErr) {
|
|
841
|
+
console.error(`[${logPrefix}] Failed to send empty-changeset feedback for ${issueId}:`, feedbackErr);
|
|
837
842
|
}
|
|
838
|
-
|
|
839
|
-
|
|
843
|
+
return {
|
|
844
|
+
outcome: "failed",
|
|
845
|
+
failedCheck,
|
|
846
|
+
cycleCount: newCycleCount,
|
|
847
|
+
maxCycles: 3
|
|
848
|
+
};
|
|
840
849
|
}
|
|
850
|
+
if (changesetHasContent === void 0) console.warn(`[${logPrefix}] empty-changeset guard skipped (one or more repo diffs failed)`);
|
|
841
851
|
let lastVerifiedCommit;
|
|
842
852
|
try {
|
|
843
|
-
const {
|
|
844
|
-
|
|
845
|
-
encoding: "utf-8",
|
|
846
|
-
timeout: 5e3
|
|
847
|
-
});
|
|
848
|
-
lastVerifiedCommit = stdout.trim();
|
|
853
|
+
const { snapshotWorkspaceHeadsPromise } = await import("./git-utils-CI6cwyyC.js");
|
|
854
|
+
lastVerifiedCommit = await snapshotWorkspaceHeadsPromise(issueId, workspacePath);
|
|
849
855
|
} catch {}
|
|
850
856
|
const prePassMergedOutcome = skipMergedVerification(issueId, logPrefix);
|
|
851
857
|
if (prePassMergedOutcome) return prePassMergedOutcome;
|
|
@@ -854,13 +860,14 @@ async function runVerificationForIssuePromise(issueId, workspacePath, workspaceI
|
|
|
854
860
|
verificationNotes: void 0,
|
|
855
861
|
...lastVerifiedCommit ? { lastVerifiedCommit } : {}
|
|
856
862
|
});
|
|
863
|
+
capturePipelineStageForIssue(issueId, "verification_passed");
|
|
857
864
|
console.log(`[${logPrefix}] Verification passed for ${issueId}${lastVerifiedCommit ? ` (HEAD=${lastVerifiedCommit.slice(0, 8)})` : ""} — proceeding to review-agent`);
|
|
858
865
|
(async () => {
|
|
859
866
|
try {
|
|
860
867
|
const repo = findProjectByPathSync(workspacePath)?.github_repo;
|
|
861
868
|
if (!repo || !repo.includes("/")) return;
|
|
862
869
|
const [owner, name] = repo.split("/");
|
|
863
|
-
const { postOverdeckTestsStatus } = await import("./github-app-
|
|
870
|
+
const { postOverdeckTestsStatus } = await import("./github-app-DtAsvwzK.js");
|
|
864
871
|
await postOverdeckTestsStatus(workspacePath, owner, name, "success", "Verification gate passed");
|
|
865
872
|
} catch (err) {
|
|
866
873
|
console.warn(`[${logPrefix}] Failed to post overdeck/tests status: ${err.message}`);
|
|
@@ -896,6 +903,6 @@ function runVerificationForIssueInProcess(issueId, workspacePath, workspaceInfo,
|
|
|
896
903
|
return Effect.promise(() => runVerificationForIssuePromise(issueId, workspacePath, workspaceInfo, logPrefix, options));
|
|
897
904
|
}
|
|
898
905
|
//#endregion
|
|
899
|
-
export { runVerificationForIssueInProcess as i, reconcileInterruptedVerifications as n, runVerificationForIssue as r, changesetHasNoContent as t };
|
|
906
|
+
export { workspaceChangesetHasContent as a, runVerificationForIssueInProcess as i, reconcileInterruptedVerifications as n, runVerificationForIssue as r, changesetHasNoContent as t };
|
|
900
907
|
|
|
901
|
-
//# sourceMappingURL=verification-runner-
|
|
908
|
+
//# sourceMappingURL=verification-runner-KDZIsBj4.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
3
|
-
import { F as getReadableWorkspacePanPaths, d as readPlanSync, i as findPlanSync, o as init_io, p as readWorkspacePlan } from "./io-
|
|
4
|
-
import { f as init_config, m as loadConfigSync } from "./config-
|
|
5
|
-
import { i as NotImplementedError, o as init_interface } from "./rally-api-
|
|
6
|
-
import { n as createTrackerFromConfig, r as init_factory } from "./factory-
|
|
7
|
-
import { i as createActiveSlice, l as init_dag, o as getDispatchableItems } from "./dag-
|
|
8
|
-
import { l as readFeedback, n as readWorkspaceContext, r as writeWorkspaceContext, t as init_pan_dir } from "./pan-dir-
|
|
9
|
-
import { n as renderPrompt, t as init_prompts } from "./prompts-
|
|
2
|
+
import { An as extractTeamPrefix, Bt as readRecordContinueViewSync, Gn as init_projects, Nt as getProjectConfigFromWorkspacePath, Pn as findProjectByTeamSync, Pt as init_record, Vt as resolveProjectForIssue, t as init_config_yaml, u as isTldrEnabledSync } from "./config-yaml-CmOPzmBb.js";
|
|
3
|
+
import { F as getReadableWorkspacePanPaths, d as readPlanSync, i as findPlanSync, o as init_io, p as readWorkspacePlan } from "./io-VHvc0Ssp.js";
|
|
4
|
+
import { f as init_config, m as loadConfigSync } from "./config-Dr3pW6w6.js";
|
|
5
|
+
import { i as NotImplementedError, o as init_interface } from "./rally-api-Dkqmok65.js";
|
|
6
|
+
import { n as createTrackerFromConfig, r as init_factory } from "./factory-CRoOpGsF.js";
|
|
7
|
+
import { i as createActiveSlice, l as init_dag, o as getDispatchableItems } from "./dag-ombYYt4s.js";
|
|
8
|
+
import { l as readFeedback, n as readWorkspaceContext, r as writeWorkspaceContext, t as init_pan_dir } from "./pan-dir-ubraCiUg.js";
|
|
9
|
+
import { n as renderPrompt, t as init_prompts } from "./prompts-BEx08AIu.js";
|
|
10
10
|
import { Effect } from "effect";
|
|
11
11
|
import { existsSync, readdirSync, statSync } from "fs";
|
|
12
12
|
import { dirname, join } from "path";
|
|
@@ -385,6 +385,17 @@ function buildPolyrepoContext(issueId, workspacePath) {
|
|
|
385
385
|
lines.push("");
|
|
386
386
|
lines.push(`**PR target branch:** \`${[...prTargets].join("` or `")}\` (NOT main/master)`);
|
|
387
387
|
}
|
|
388
|
+
lines.push("");
|
|
389
|
+
lines.push("## Creating a New Deliverable Repository");
|
|
390
|
+
lines.push("");
|
|
391
|
+
lines.push("If this issue requires a repository that is not listed above, register it before writing or committing code:");
|
|
392
|
+
lines.push("");
|
|
393
|
+
lines.push("```bash");
|
|
394
|
+
lines.push(`pan workspace add-repo ${issueId.toLowerCase()} --new <git-url>`);
|
|
395
|
+
lines.push("```");
|
|
396
|
+
lines.push("");
|
|
397
|
+
lines.push("This creates the issue feature branch and adds the repo to review, inspection, and merge.");
|
|
398
|
+
lines.push("Do not clone an unregistered repo into the workspace or push deliverable code to its main branch.");
|
|
388
399
|
if (isProgressive) {
|
|
389
400
|
lines.push("");
|
|
390
401
|
lines.push("## Adding Repositories");
|
|
@@ -436,4 +447,4 @@ __esmMin((() => {
|
|
|
436
447
|
}))();
|
|
437
448
|
export { buildPolyrepoContext, buildWorkAgentPrompt, extractStitchDesigns, getTrackerContext, readFeatureContext, readPlanningContext, writeStoryFeatureContext };
|
|
438
449
|
|
|
439
|
-
//# sourceMappingURL=work-agent-prompt-
|
|
450
|
+
//# sourceMappingURL=work-agent-prompt-C-vuP3_J.js.map
|