@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
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
+
import { Fr as init_errors, ci as init_paths } from "./config-yaml-CmOPzmBb.js";
|
|
3
|
+
import { E as init_layers, c as init_render, f as init_rules, r as init_assemble } from "./assemble-DnffNpOo.js";
|
|
4
|
+
import "effect";
|
|
5
|
+
import "fs";
|
|
6
|
+
import "path";
|
|
7
|
+
import "os";
|
|
8
|
+
//#region ../../lib/backup.ts
|
|
9
|
+
var init_backup = __esmMin((() => {
|
|
10
|
+
init_paths();
|
|
11
|
+
init_errors();
|
|
12
|
+
}));
|
|
13
|
+
//#endregion
|
|
14
|
+
//#region ../../lib/context-layers/legacy-beads-cleanup.ts
|
|
15
|
+
var init_legacy_beads_cleanup = __esmMin((() => {
|
|
16
|
+
init_backup();
|
|
17
|
+
init_render();
|
|
18
|
+
}));
|
|
19
|
+
//#endregion
|
|
20
|
+
//#region ../../lib/context-layers/migrate.ts
|
|
21
|
+
var init_migrate = __esmMin((() => {
|
|
22
|
+
init_layers();
|
|
23
|
+
}));
|
|
24
|
+
//#endregion
|
|
25
|
+
//#region ../../lib/context-layers/index.ts
|
|
26
|
+
var init_context_layers = __esmMin((() => {
|
|
27
|
+
init_layers();
|
|
28
|
+
init_rules();
|
|
29
|
+
init_render();
|
|
30
|
+
init_assemble();
|
|
31
|
+
init_legacy_beads_cleanup();
|
|
32
|
+
init_migrate();
|
|
33
|
+
}));
|
|
34
|
+
//#endregion
|
|
35
|
+
export { init_context_layers as t };
|
|
36
|
+
|
|
37
|
+
//# sourceMappingURL=context-layers-dR5YxHYB.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
3
|
-
import { _ as integer, a as EventBus, d as getOverdeckDatabaseSync, f as init_infra, h as text, m as sqliteTable, p as init_sqlite_core, r as Db, v as init_drizzle_orm, x as eq } from "./infra-
|
|
4
|
-
import { n as init_issues, t as IssueId } from "./issues-
|
|
2
|
+
import { Gn as init_projects, Zn as loadProjectsConfigSync, zn as getProjectSync } from "./config-yaml-CmOPzmBb.js";
|
|
3
|
+
import { _ as integer, a as EventBus, d as getOverdeckDatabaseSync, f as init_infra, h as text, m as sqliteTable, p as init_sqlite_core, r as Db, v as init_drizzle_orm, x as eq } from "./infra-BjuxvjdS.js";
|
|
4
|
+
import { n as init_issues, t as IssueId } from "./issues-CgnQ1OGQ.js";
|
|
5
5
|
import { Context, Effect, Layer, Schema } from "effect";
|
|
6
6
|
import { HttpApiEndpoint, HttpApiGroup } from "effect/unstable/httpapi";
|
|
7
7
|
//#region ../../lib/overdeck/control-settings.ts
|
|
@@ -43,6 +43,10 @@ function parseBootReconciliationPerAgent(value) {
|
|
|
43
43
|
return {};
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
|
+
function parseBootReconciliationGraceExtensions(value) {
|
|
47
|
+
const parsed = value == null ? NaN : Number.parseInt(value, 10);
|
|
48
|
+
return Number.isFinite(parsed) && parsed > 0 ? parsed : 0;
|
|
49
|
+
}
|
|
46
50
|
function getBootReconciliationState() {
|
|
47
51
|
return {
|
|
48
52
|
decision: parseBootReconciliationDecision(getSetting(BOOT_RECONCILIATION_DECISION_KEY)),
|
|
@@ -50,7 +54,8 @@ function getBootReconciliationState() {
|
|
|
50
54
|
decidedAt: getSetting(BOOT_RECONCILIATION_DECIDED_AT_KEY),
|
|
51
55
|
bootId: getSetting(BOOT_RECONCILIATION_BOOT_ID_KEY),
|
|
52
56
|
bootStartedAt: getSetting(BOOT_RECONCILIATION_BOOT_STARTED_AT_KEY),
|
|
53
|
-
graceDeadline: getSetting(BOOT_RECONCILIATION_GRACE_DEADLINE_KEY)
|
|
57
|
+
graceDeadline: getSetting(BOOT_RECONCILIATION_GRACE_DEADLINE_KEY),
|
|
58
|
+
graceExtensions: parseBootReconciliationGraceExtensions(getSetting(BOOT_RECONCILIATION_GRACE_EXTENSIONS_KEY))
|
|
54
59
|
};
|
|
55
60
|
}
|
|
56
61
|
function setBootReconciliationDecision(decision, perAgent = {}) {
|
|
@@ -62,6 +67,15 @@ function stampBootReconciliation(bootId, graceDeadline, bootStartedAt) {
|
|
|
62
67
|
setSetting(BOOT_RECONCILIATION_BOOT_ID_KEY, bootId);
|
|
63
68
|
setSetting(BOOT_RECONCILIATION_BOOT_STARTED_AT_KEY, bootStartedAt);
|
|
64
69
|
setSetting(BOOT_RECONCILIATION_GRACE_DEADLINE_KEY, graceDeadline);
|
|
70
|
+
setSetting(BOOT_RECONCILIATION_GRACE_EXTENSIONS_KEY, "0");
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Push this boot's grace deadline out without touching the decision. Used only
|
|
74
|
+
* by the extend door, which owns the extension cap.
|
|
75
|
+
*/
|
|
76
|
+
function setBootReconciliationGrace(graceDeadline, graceExtensions) {
|
|
77
|
+
setSetting(BOOT_RECONCILIATION_GRACE_DEADLINE_KEY, graceDeadline);
|
|
78
|
+
setSetting(BOOT_RECONCILIATION_GRACE_EXTENSIONS_KEY, String(graceExtensions));
|
|
65
79
|
}
|
|
66
80
|
/** Synchronous check of the global Deacon pause flag. */
|
|
67
81
|
function isDeaconGloballyPausedSync() {
|
|
@@ -131,11 +145,13 @@ function setFlywheelRequireUatBeforeMerge(enabled) {
|
|
|
131
145
|
}
|
|
132
146
|
/** Drop-in for isMergeTrainEnabled() from app-settings.ts. */
|
|
133
147
|
function isMergeTrainEnabled() {
|
|
148
|
+
const newKey = getSetting(MERGE_TRAIN_ENABLED_KEY);
|
|
149
|
+
if (newKey !== null) return newKey === "true";
|
|
134
150
|
return getSetting(FLYWHEEL_MERGE_TRAIN_ENABLED_KEY) === "true";
|
|
135
151
|
}
|
|
136
152
|
/** Drop-in for setMergeTrainEnabled() from app-settings.ts. */
|
|
137
153
|
function setMergeTrainEnabled(enabled) {
|
|
138
|
-
setSetting(
|
|
154
|
+
setSetting(MERGE_TRAIN_ENABLED_KEY, enabled ? "true" : "false");
|
|
139
155
|
}
|
|
140
156
|
/**
|
|
141
157
|
* Returns the currently-active flywheel run ID from overdeck.db, or null.
|
|
@@ -144,7 +160,7 @@ function setMergeTrainEnabled(enabled) {
|
|
|
144
160
|
function getFlywheelActiveRunIdSync() {
|
|
145
161
|
return getOverdeckDatabaseSync().prepare(`SELECT value FROM app_settings WHERE key = 'flywheel.active_run_id'`).get()?.value ?? null;
|
|
146
162
|
}
|
|
147
|
-
var appSettings, issuePolicy, FlywheelConfig, FlywheelConfigPatch, FlywheelRuntime, IssuePolicy, ProjectKey, ProjectConfig, ProjectNotFound, SettingsResolver, SettingsWriter, ConfigResolver, DEACON_GLOBAL_PAUSE_KEY, CLOISTER_SPAWNS_PAUSED_KEY, FLYWHEEL_GLOBAL_PAUSE_KEY, FLYWHEEL_ACTIVE_RUN_ID_KEY, FLYWHEEL_AUTO_PICKUP_BACKLOG_KEY, FLYWHEEL_REQUIRE_UAT_BEFORE_MERGE_KEY, FLYWHEEL_MERGE_TRAIN_ENABLED_KEY, BOOT_RECONCILIATION_DECISION_KEY, BOOT_RECONCILIATION_PER_AGENT_KEY, BOOT_RECONCILIATION_DECIDED_AT_KEY, BOOT_RECONCILIATION_BOOT_ID_KEY, BOOT_RECONCILIATION_BOOT_STARTED_AT_KEY, BOOT_RECONCILIATION_GRACE_DEADLINE_KEY, BOOT_RECONCILIATION_DECISIONS;
|
|
163
|
+
var appSettings, issuePolicy, FlywheelConfig, FlywheelConfigPatch, FlywheelRuntime, IssuePolicy, ProjectKey, ProjectConfig, ProjectNotFound, SettingsResolver, SettingsWriter, ConfigResolver, DEACON_GLOBAL_PAUSE_KEY, CLOISTER_SPAWNS_PAUSED_KEY, FLYWHEEL_GLOBAL_PAUSE_KEY, FLYWHEEL_ACTIVE_RUN_ID_KEY, FLYWHEEL_AUTO_PICKUP_BACKLOG_KEY, FLYWHEEL_REQUIRE_UAT_BEFORE_MERGE_KEY, FLYWHEEL_MERGE_TRAIN_ENABLED_KEY, MERGE_TRAIN_ENABLED_KEY, BOOT_RECONCILIATION_DECISION_KEY, BOOT_RECONCILIATION_PER_AGENT_KEY, BOOT_RECONCILIATION_DECIDED_AT_KEY, BOOT_RECONCILIATION_BOOT_ID_KEY, BOOT_RECONCILIATION_BOOT_STARTED_AT_KEY, BOOT_RECONCILIATION_GRACE_DEADLINE_KEY, BOOT_RECONCILIATION_GRACE_EXTENSIONS_KEY, BOOT_RECONCILIATION_DECISIONS;
|
|
148
164
|
var init_control_settings = __esmMin((() => {
|
|
149
165
|
init_drizzle_orm();
|
|
150
166
|
init_sqlite_core();
|
|
@@ -198,11 +214,17 @@ var init_control_settings = __esmMin((() => {
|
|
|
198
214
|
return row?.value === void 0 || row.value === null ? dflt : Boolean(row.value);
|
|
199
215
|
};
|
|
200
216
|
const isDeaconPaused = () => Effect.promise(() => readFlag("deacon.globally_paused", false));
|
|
201
|
-
const getFlywheelConfig = () => Effect.promise(async () =>
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
mergeTrainEnabled
|
|
205
|
-
|
|
217
|
+
const getFlywheelConfig = () => Effect.promise(async () => {
|
|
218
|
+
const [newRow] = await q.select().from(appSettings).where(eq(appSettings.key, "merge_train.enabled"));
|
|
219
|
+
let mergeTrainEnabled;
|
|
220
|
+
if (newRow?.value !== void 0 && newRow.value !== null) mergeTrainEnabled = Boolean(newRow.value);
|
|
221
|
+
else mergeTrainEnabled = await readFlag("flywheel.merge_train_enabled", false);
|
|
222
|
+
return {
|
|
223
|
+
autoPickupBacklog: await readFlag("flywheel.auto_pickup_backlog", false),
|
|
224
|
+
requireUatBeforeMerge: await readFlag("flywheel.require_uat_before_merge", true),
|
|
225
|
+
mergeTrainEnabled
|
|
226
|
+
};
|
|
227
|
+
});
|
|
206
228
|
const getFlywheelRuntime = () => Effect.promise(async () => {
|
|
207
229
|
const paused = await readFlag("flywheel.globally_paused", false);
|
|
208
230
|
const [row] = await q.select().from(appSettings).where(eq(appSettings.key, "flywheel.active_run_id"));
|
|
@@ -249,11 +271,17 @@ var init_control_settings = __esmMin((() => {
|
|
|
249
271
|
const [row] = await q.select().from(appSettings).where(eq(appSettings.key, key));
|
|
250
272
|
return row?.value === void 0 || row.value === null ? dflt : Boolean(row.value);
|
|
251
273
|
};
|
|
252
|
-
const readFlywheelConfig = async () =>
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
mergeTrainEnabled
|
|
256
|
-
|
|
274
|
+
const readFlywheelConfig = async () => {
|
|
275
|
+
const [newRow] = await q.select().from(appSettings).where(eq(appSettings.key, "merge_train.enabled"));
|
|
276
|
+
let mergeTrainEnabled;
|
|
277
|
+
if (newRow?.value !== void 0 && newRow.value !== null) mergeTrainEnabled = Boolean(newRow.value);
|
|
278
|
+
else mergeTrainEnabled = await readFlag("flywheel.merge_train_enabled", false);
|
|
279
|
+
return {
|
|
280
|
+
autoPickupBacklog: await readFlag("flywheel.auto_pickup_backlog", false),
|
|
281
|
+
requireUatBeforeMerge: await readFlag("flywheel.require_uat_before_merge", true),
|
|
282
|
+
mergeTrainEnabled
|
|
283
|
+
};
|
|
284
|
+
};
|
|
257
285
|
const readPolicy = async (id) => {
|
|
258
286
|
const [row] = await q.select().from(issuePolicy).where(eq(issuePolicy.issueId, id));
|
|
259
287
|
return {
|
|
@@ -274,7 +302,7 @@ var init_control_settings = __esmMin((() => {
|
|
|
274
302
|
yield* Effect.promise(async () => {
|
|
275
303
|
if (patch.autoPickupBacklog !== void 0) await setFlag("flywheel.auto_pickup_backlog", patch.autoPickupBacklog);
|
|
276
304
|
if (patch.requireUatBeforeMerge !== void 0) await setFlag("flywheel.require_uat_before_merge", patch.requireUatBeforeMerge);
|
|
277
|
-
if (patch.mergeTrainEnabled !== void 0) await setFlag("
|
|
305
|
+
if (patch.mergeTrainEnabled !== void 0) await setFlag("merge_train.enabled", patch.mergeTrainEnabled);
|
|
278
306
|
});
|
|
279
307
|
const next = yield* Effect.promise(readFlywheelConfig);
|
|
280
308
|
yield* bus.emit({
|
|
@@ -382,12 +410,14 @@ var init_control_settings = __esmMin((() => {
|
|
|
382
410
|
FLYWHEEL_AUTO_PICKUP_BACKLOG_KEY = "flywheel.auto_pickup_backlog";
|
|
383
411
|
FLYWHEEL_REQUIRE_UAT_BEFORE_MERGE_KEY = "flywheel.require_uat_before_merge";
|
|
384
412
|
FLYWHEEL_MERGE_TRAIN_ENABLED_KEY = "flywheel.merge_train_enabled";
|
|
413
|
+
MERGE_TRAIN_ENABLED_KEY = "merge_train.enabled";
|
|
385
414
|
BOOT_RECONCILIATION_DECISION_KEY = "boot_reconciliation.decision";
|
|
386
415
|
BOOT_RECONCILIATION_PER_AGENT_KEY = "boot_reconciliation.per_agent";
|
|
387
416
|
BOOT_RECONCILIATION_DECIDED_AT_KEY = "boot_reconciliation.decided_at";
|
|
388
417
|
BOOT_RECONCILIATION_BOOT_ID_KEY = "boot_reconciliation.boot_id";
|
|
389
418
|
BOOT_RECONCILIATION_BOOT_STARTED_AT_KEY = "boot_reconciliation.boot_started_at";
|
|
390
419
|
BOOT_RECONCILIATION_GRACE_DEADLINE_KEY = "boot_reconciliation.grace_deadline";
|
|
420
|
+
BOOT_RECONCILIATION_GRACE_EXTENSIONS_KEY = "boot_reconciliation.grace_extensions";
|
|
391
421
|
BOOT_RECONCILIATION_DECISIONS = new Set([
|
|
392
422
|
"pending",
|
|
393
423
|
"resume_all",
|
|
@@ -401,6 +431,6 @@ var init_control_settings = __esmMin((() => {
|
|
|
401
431
|
})).add(HttpApiEndpoint.get("listProjects", "/projects", { success: Schema.Array(ProjectConfig) }));
|
|
402
432
|
}));
|
|
403
433
|
//#endregion
|
|
404
|
-
export {
|
|
434
|
+
export { setFlywheelRequireUatBeforeMerge as C, stampBootReconciliation as E, setFlywheelGloballyPaused as S, setSetting as T, setCloisterSpawnsPausedSync as _, getFlywheelActiveRunIdSync as a, setFlywheelActiveRunId as b, isCloisterSpawnsPausedSync as c, isFlywheelAutoPickupBacklog as d, isFlywheelGloballyPaused as f, setBootReconciliationGrace as g, setBootReconciliationDecision as h, getFlywheelActiveRunId as i, isDeaconGloballyPaused as l, isMergeTrainEnabled as m, FLYWHEEL_GLOBAL_PAUSE_KEY as n, getSetting as o, isFlywheelRequireUatBeforeMerge as p, getBootReconciliationState as r, init_control_settings as s, FLYWHEEL_ACTIVE_RUN_ID_KEY as t, isDeaconGloballyPausedSync as u, setDeaconGloballyPaused as v, setMergeTrainEnabled as w, setFlywheelAutoPickupBacklog as x, setDeaconGloballyPausedSync as y };
|
|
405
435
|
|
|
406
|
-
//# sourceMappingURL=control-settings-
|
|
436
|
+
//# sourceMappingURL=control-settings-C7DUehE1.js.map
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import { f as loadConfigSync, t as init_config_yaml } from "./config-yaml-
|
|
3
|
-
import { a as init_event_store, n as getEventStore } from "./event-store-
|
|
4
|
-
import {
|
|
5
|
-
import { n as isBackgroundFeatureEnabled, t as init_features } from "./features
|
|
6
|
-
import { t as init_conversation_service, u as findLastCompactBoundary } from "./conversation-service-
|
|
7
|
-
import { r as init_smart_compaction, t as generateSmartSummary } from "./smart-compaction-
|
|
8
|
-
import { a as generateFallbackSummary, l as init_summary_fork } from "./summary-fork-
|
|
2
|
+
import { f as loadConfigSync, t as init_config_yaml } from "./config-yaml-CmOPzmBb.js";
|
|
3
|
+
import { a as init_event_store, n as getEventStore } from "./event-store-zY5MJHgF.js";
|
|
4
|
+
import { An as getProviderExportsForModel, b as init_agents, cn as getAgentRuntimeBaseCommand } from "./queries-DHJm7bTd.js";
|
|
5
|
+
import { n as isBackgroundFeatureEnabled, t as init_features } from "./features--nFkJY8v.js";
|
|
6
|
+
import { t as init_conversation_service, u as findLastCompactBoundary } from "./conversation-service-5aCnq1zR.js";
|
|
7
|
+
import { r as init_smart_compaction, t as generateSmartSummary } from "./smart-compaction-D3U_79f-.js";
|
|
8
|
+
import { a as generateFallbackSummary, l as init_summary_fork } from "./summary-fork-xiXBnWG9.js";
|
|
9
9
|
import { dirname, join } from "node:path";
|
|
10
10
|
import { Effect } from "effect";
|
|
11
11
|
import { existsSync } from "node:fs";
|
|
@@ -179,4 +179,4 @@ var init_conversation_compaction = __esmMin((() => {
|
|
|
179
179
|
//#endregion
|
|
180
180
|
export { init_conversation_compaction as a, shouldInterceptManualCompact as c, getConversationCompactionSettings as i, compactConversationNative as n, isCompacting as o, estimateContextTokens as r, maybeCompactBeforeRespawn as s, buildCompactionRuntimeInfo as t };
|
|
181
181
|
|
|
182
|
-
//# sourceMappingURL=conversation-compaction-
|
|
182
|
+
//# sourceMappingURL=conversation-compaction-BoqdDXWF.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as init_conversation_compaction, c as shouldInterceptManualCompact, i as getConversationCompactionSettings, n as compactConversationNative, o as isCompacting, r as estimateContextTokens, s as maybeCompactBeforeRespawn, t as buildCompactionRuntimeInfo } from "./conversation-compaction-
|
|
1
|
+
import { a as init_conversation_compaction, c as shouldInterceptManualCompact, i as getConversationCompactionSettings, n as compactConversationNative, o as isCompacting, r as estimateContextTokens, s as maybeCompactBeforeRespawn, t as buildCompactionRuntimeInfo } from "./conversation-compaction-BoqdDXWF.js";
|
|
2
2
|
init_conversation_compaction();
|
|
3
3
|
export { buildCompactionRuntimeInfo, compactConversationNative, estimateContextTokens, getConversationCompactionSettings, isCompacting, maybeCompactBeforeRespawn, shouldInterceptManualCompact };
|
|
@@ -1,12 +1,304 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { o as getPricingSync, s as init_cost, t as calculateCostSync } from "./cost-
|
|
5
|
-
import { r as parseCodexSessionSync, t as init_codex_parser } from "./codex-parser-
|
|
6
|
-
import { t as init_behavior } from "./behavior-
|
|
2
|
+
import { ci as init_paths, lt as resolveModelIdSync, nt as MODEL_CAPABILITIES, st as init_model_capabilities } from "./config-yaml-CmOPzmBb.js";
|
|
3
|
+
import { s as getHarnessBehavior } from "./src-CRmCHlma.js";
|
|
4
|
+
import { o as getPricingSync, s as init_cost, t as calculateCostSync } from "./cost-Bgcub5kW.js";
|
|
5
|
+
import { r as parseCodexSessionSync, t as init_codex_parser } from "./codex-parser-DpB89Vqa.js";
|
|
6
|
+
import { t as init_behavior } from "./behavior-CfIg6pKp.js";
|
|
7
7
|
import "node:path";
|
|
8
8
|
import "node:os";
|
|
9
9
|
import { open, readFile, stat, watch } from "node:fs/promises";
|
|
10
|
+
//#region services/acp-conversation-parser.ts
|
|
11
|
+
function touchParserCache(sessionFile, cache) {
|
|
12
|
+
parserCache.delete(sessionFile);
|
|
13
|
+
parserCache.set(sessionFile, cache);
|
|
14
|
+
while (parserCache.size > 16) {
|
|
15
|
+
const oldest = parserCache.keys().next().value;
|
|
16
|
+
if (!oldest) break;
|
|
17
|
+
parserCache.delete(oldest);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
function truncateToolMetadata(value) {
|
|
21
|
+
if (!value) return void 0;
|
|
22
|
+
return value.length > TOOL_METADATA_MAX_CHARS ? `${value.slice(0, TOOL_METADATA_MAX_CHARS)}…` : value;
|
|
23
|
+
}
|
|
24
|
+
function isTranscriptEntry(value) {
|
|
25
|
+
if (!value || typeof value !== "object") return false;
|
|
26
|
+
const entry = value;
|
|
27
|
+
return typeof entry["timestamp"] === "string" && typeof entry["content"] === "string" && (entry["role"] === "user" || entry["role"] === "assistant" || entry["role"] === "tool" || entry["role"] === "system");
|
|
28
|
+
}
|
|
29
|
+
function isToolCall(value) {
|
|
30
|
+
return Boolean(value) && typeof value === "object" && typeof value["toolCallId"] === "string";
|
|
31
|
+
}
|
|
32
|
+
function toToolEntry(toolCall, content, createdAt, sequence) {
|
|
33
|
+
const label = truncateToolMetadata(toolCall.title) ?? truncateToolMetadata(toolCall.kind) ?? "Tool";
|
|
34
|
+
const detail = truncateToolMetadata(toolCall.detail) ?? truncateToolMetadata(content);
|
|
35
|
+
const command = truncateToolMetadata(toolCall.command);
|
|
36
|
+
const terminal = toolCall.status === "completed" || toolCall.status === "failed";
|
|
37
|
+
return {
|
|
38
|
+
id: toolCall.toolCallId,
|
|
39
|
+
createdAt,
|
|
40
|
+
label,
|
|
41
|
+
toolTitle: label,
|
|
42
|
+
tone: toolCall.status === "failed" ? "error" : "tool",
|
|
43
|
+
sequence,
|
|
44
|
+
...command ? { command } : {},
|
|
45
|
+
...detail && !terminal ? { detail } : {},
|
|
46
|
+
...detail && terminal ? { result: detail } : {}
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
function createParserState() {
|
|
50
|
+
return {
|
|
51
|
+
messages: [],
|
|
52
|
+
workLog: [],
|
|
53
|
+
toolIndex: /* @__PURE__ */ new Map(),
|
|
54
|
+
pendingToolUse: /* @__PURE__ */ new Map(),
|
|
55
|
+
sequence: 0,
|
|
56
|
+
lastRole: null,
|
|
57
|
+
currentTurnAssistantIndex: void 0,
|
|
58
|
+
lastTurnCompletedAt: void 0
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
function processTranscriptEntry(state, entry) {
|
|
62
|
+
const createdAt = entry.timestamp;
|
|
63
|
+
if (entry.event === "prompt_queued") return;
|
|
64
|
+
if (entry.event === "turn_completed" || entry.event === "prompt_failed") {
|
|
65
|
+
state.lastTurnCompletedAt = createdAt;
|
|
66
|
+
if (state.currentTurnAssistantIndex !== void 0) {
|
|
67
|
+
const assistant = state.messages[state.currentTurnAssistantIndex];
|
|
68
|
+
if (assistant?.role === "assistant") state.messages[state.currentTurnAssistantIndex] = {
|
|
69
|
+
...assistant,
|
|
70
|
+
completedAt: createdAt,
|
|
71
|
+
streaming: false
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
state.pendingToolUse.clear();
|
|
75
|
+
if (entry.event === "turn_completed") return;
|
|
76
|
+
}
|
|
77
|
+
if (entry.role === "assistant") {
|
|
78
|
+
if (!entry.content) return;
|
|
79
|
+
const previousIndex = state.messages.length - 1;
|
|
80
|
+
const previous = state.lastRole === "assistant" ? state.messages[previousIndex] : void 0;
|
|
81
|
+
if (previous?.role === "assistant") state.messages[previousIndex] = {
|
|
82
|
+
...previous,
|
|
83
|
+
text: previous.text + entry.content
|
|
84
|
+
};
|
|
85
|
+
else {
|
|
86
|
+
state.sequence += 1;
|
|
87
|
+
state.messages.push({
|
|
88
|
+
id: `acp-assistant-${state.sequence}`,
|
|
89
|
+
role: "assistant",
|
|
90
|
+
text: entry.content,
|
|
91
|
+
createdAt,
|
|
92
|
+
streaming: false,
|
|
93
|
+
sequence: state.sequence
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
state.currentTurnAssistantIndex = state.messages.length - 1;
|
|
97
|
+
state.lastRole = entry.role;
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
if (entry.role === "user" || entry.role === "system") {
|
|
101
|
+
if (entry.role === "user") {
|
|
102
|
+
state.currentTurnAssistantIndex = void 0;
|
|
103
|
+
state.lastTurnCompletedAt = void 0;
|
|
104
|
+
}
|
|
105
|
+
const text = entry.content.trim();
|
|
106
|
+
if (!text) return;
|
|
107
|
+
state.sequence += 1;
|
|
108
|
+
state.messages.push({
|
|
109
|
+
id: `acp-${entry.role}-${state.sequence}`,
|
|
110
|
+
role: entry.role,
|
|
111
|
+
text,
|
|
112
|
+
createdAt,
|
|
113
|
+
completedAt: createdAt,
|
|
114
|
+
streaming: false,
|
|
115
|
+
sequence: state.sequence
|
|
116
|
+
});
|
|
117
|
+
state.lastRole = entry.role;
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
const toolCalls = Array.isArray(entry.toolCalls) ? entry.toolCalls.filter(isToolCall) : [];
|
|
121
|
+
for (const toolCall of toolCalls) {
|
|
122
|
+
const existingIndex = state.toolIndex.get(toolCall.toolCallId);
|
|
123
|
+
if (existingIndex === void 0) {
|
|
124
|
+
state.sequence += 1;
|
|
125
|
+
const workEntry = toToolEntry(toolCall, entry.content, createdAt, state.sequence);
|
|
126
|
+
state.toolIndex.set(toolCall.toolCallId, state.workLog.length);
|
|
127
|
+
state.workLog.push(workEntry);
|
|
128
|
+
} else {
|
|
129
|
+
const existing = state.workLog[existingIndex];
|
|
130
|
+
state.workLog[existingIndex] = {
|
|
131
|
+
...toToolEntry(toolCall, entry.content, existing.createdAt, existing.sequence ?? 0),
|
|
132
|
+
id: existing.id
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
const current = state.workLog[state.toolIndex.get(toolCall.toolCallId)];
|
|
136
|
+
if (toolCall.status === "pending" || toolCall.status === "inProgress") state.pendingToolUse.set(toolCall.toolCallId, current);
|
|
137
|
+
else state.pendingToolUse.delete(toolCall.toolCallId);
|
|
138
|
+
}
|
|
139
|
+
state.lastRole = entry.role;
|
|
140
|
+
}
|
|
141
|
+
function processAppendedBytes(cache, appended) {
|
|
142
|
+
const combined = cache.pendingTail.length > 0 ? Buffer.concat([cache.pendingTail, appended]) : appended;
|
|
143
|
+
let lineStart = 0;
|
|
144
|
+
for (let index = 0; index < combined.length; index += 1) {
|
|
145
|
+
if (combined[index] !== 10) continue;
|
|
146
|
+
const line = combined.subarray(lineStart, index).toString("utf-8").trim();
|
|
147
|
+
lineStart = index + 1;
|
|
148
|
+
if (!line) continue;
|
|
149
|
+
try {
|
|
150
|
+
const parsed = JSON.parse(line);
|
|
151
|
+
if (isTranscriptEntry(parsed)) processTranscriptEntry(cache.state, parsed);
|
|
152
|
+
} catch {}
|
|
153
|
+
}
|
|
154
|
+
cache.pendingTail = Buffer.from(combined.subarray(lineStart));
|
|
155
|
+
}
|
|
156
|
+
async function readRange(path, start, length) {
|
|
157
|
+
if (length <= 0) return Buffer.alloc(0);
|
|
158
|
+
const handle = await open(path, "r");
|
|
159
|
+
try {
|
|
160
|
+
const buffer = Buffer.allocUnsafe(length);
|
|
161
|
+
let offset = 0;
|
|
162
|
+
while (offset < length) {
|
|
163
|
+
const result = await handle.read(buffer, offset, length - offset, start + offset);
|
|
164
|
+
if (result.bytesRead === 0) break;
|
|
165
|
+
offset += result.bytesRead;
|
|
166
|
+
}
|
|
167
|
+
return offset === length ? buffer : buffer.subarray(0, offset);
|
|
168
|
+
} finally {
|
|
169
|
+
await handle.close();
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
function stateIsStreaming(state, mtimeMs) {
|
|
173
|
+
const lastMessage = state.messages[state.messages.length - 1];
|
|
174
|
+
return state.lastTurnCompletedAt === void 0 && state.lastRole === "assistant" && lastMessage?.role === "assistant" && Date.now() - mtimeMs < STREAMING_RECENCY_MS;
|
|
175
|
+
}
|
|
176
|
+
function snapshotResult(cache, fileSize, mtimeMs) {
|
|
177
|
+
const { state } = cache;
|
|
178
|
+
const messages = state.messages.map((message) => ({ ...message }));
|
|
179
|
+
const workLog = state.workLog.map((entry) => ({ ...entry }));
|
|
180
|
+
cache.snapshotEntriesProjected += messages.length + workLog.length;
|
|
181
|
+
const workLogById = new Map(workLog.map((entry) => [entry.id, entry]));
|
|
182
|
+
const lastMessage = messages[messages.length - 1];
|
|
183
|
+
const streaming = stateIsStreaming(state, mtimeMs);
|
|
184
|
+
if (lastMessage?.role === "assistant" && state.lastTurnCompletedAt === void 0) messages[messages.length - 1] = streaming ? {
|
|
185
|
+
...lastMessage,
|
|
186
|
+
streaming: true
|
|
187
|
+
} : {
|
|
188
|
+
...lastMessage,
|
|
189
|
+
completedAt: lastMessage.createdAt
|
|
190
|
+
};
|
|
191
|
+
return {
|
|
192
|
+
messages,
|
|
193
|
+
workLog,
|
|
194
|
+
byteOffset: fileSize,
|
|
195
|
+
streaming,
|
|
196
|
+
...state.lastTurnCompletedAt ? { lastTurnCompletedAt: state.lastTurnCompletedAt } : {},
|
|
197
|
+
totalCost: 0,
|
|
198
|
+
totalTokens: 0,
|
|
199
|
+
latestAssistantUsage: null,
|
|
200
|
+
contextBoundaryOffset: 0,
|
|
201
|
+
contextActiveBytes: fileSize,
|
|
202
|
+
pendingToolUse: new Map([...state.pendingToolUse].map(([id, entry]) => [id, workLogById.get(id) ?? { ...entry }])),
|
|
203
|
+
unresolvedResults: /* @__PURE__ */ new Map(),
|
|
204
|
+
lastSequence: state.sequence,
|
|
205
|
+
mtimeMs,
|
|
206
|
+
planToolUseIds: /* @__PURE__ */ new Set(),
|
|
207
|
+
compactBoundaries: [],
|
|
208
|
+
fileEditsByAssistantId: /* @__PURE__ */ new Map()
|
|
209
|
+
};
|
|
210
|
+
}
|
|
211
|
+
async function updateAcpParserCache(sessionFile) {
|
|
212
|
+
const fileStats = await stat(sessionFile);
|
|
213
|
+
const identity = `${fileStats.dev}:${fileStats.ino}`;
|
|
214
|
+
let cache = parserCache.get(sessionFile);
|
|
215
|
+
const rewrittenAtSameSize = cache && fileStats.size === cache.byteOffset && fileStats.mtimeMs !== cache.mtimeMs;
|
|
216
|
+
if (!cache || cache.identity !== identity || fileStats.size < cache.byteOffset || rewrittenAtSameSize) {
|
|
217
|
+
cache = {
|
|
218
|
+
state: createParserState(),
|
|
219
|
+
identity,
|
|
220
|
+
byteOffset: 0,
|
|
221
|
+
pendingTail: Buffer.alloc(0),
|
|
222
|
+
mtimeMs: fileStats.mtimeMs,
|
|
223
|
+
bytesRead: 0,
|
|
224
|
+
snapshotEntriesProjected: 0,
|
|
225
|
+
activityProjections: 0
|
|
226
|
+
};
|
|
227
|
+
touchParserCache(sessionFile, cache);
|
|
228
|
+
}
|
|
229
|
+
if (fileStats.size > cache.byteOffset) {
|
|
230
|
+
const appended = await readRange(sessionFile, cache.byteOffset, fileStats.size - cache.byteOffset);
|
|
231
|
+
processAppendedBytes(cache, appended);
|
|
232
|
+
cache.byteOffset += appended.length;
|
|
233
|
+
cache.bytesRead += appended.length;
|
|
234
|
+
}
|
|
235
|
+
cache.mtimeMs = fileStats.mtimeMs;
|
|
236
|
+
touchParserCache(sessionFile, cache);
|
|
237
|
+
return {
|
|
238
|
+
cache,
|
|
239
|
+
fileSize: fileStats.size,
|
|
240
|
+
mtimeMs: fileStats.mtimeMs
|
|
241
|
+
};
|
|
242
|
+
}
|
|
243
|
+
async function withParserQueue(sessionFile, operation) {
|
|
244
|
+
const previous = parserQueue.get(sessionFile) ?? Promise.resolve();
|
|
245
|
+
let result;
|
|
246
|
+
const queued = previous.then(async () => {
|
|
247
|
+
result = await operation();
|
|
248
|
+
});
|
|
249
|
+
const settled = queued.then(() => void 0, () => void 0);
|
|
250
|
+
parserQueue.set(sessionFile, settled);
|
|
251
|
+
try {
|
|
252
|
+
await queued;
|
|
253
|
+
return result;
|
|
254
|
+
} finally {
|
|
255
|
+
if (parserQueue.get(sessionFile) === settled) parserQueue.delete(sessionFile);
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* Incrementally parse the append-only ACP transcript into the full snapshot
|
|
260
|
+
* requested by the stopped-agent conversation endpoint. Parser state is shared
|
|
261
|
+
* by file path, so callers read and decode each appended byte only once.
|
|
262
|
+
*/
|
|
263
|
+
async function parseAcpConversationMessages(sessionFile) {
|
|
264
|
+
return withParserQueue(sessionFile, async () => {
|
|
265
|
+
const { cache, fileSize, mtimeMs } = await updateAcpParserCache(sessionFile);
|
|
266
|
+
return snapshotResult(cache, fileSize, mtimeMs);
|
|
267
|
+
});
|
|
268
|
+
}
|
|
269
|
+
/**
|
|
270
|
+
* Project only the tail state needed by live activity enrichment. This avoids
|
|
271
|
+
* rebuilding a full message/work-log snapshot on every transcript append.
|
|
272
|
+
*/
|
|
273
|
+
async function projectAcpConversationActivity(sessionFile) {
|
|
274
|
+
return withParserQueue(sessionFile, async () => {
|
|
275
|
+
const { cache, mtimeMs } = await updateAcpParserCache(sessionFile);
|
|
276
|
+
const { state } = cache;
|
|
277
|
+
cache.activityProjections += 1;
|
|
278
|
+
let currentTool = null;
|
|
279
|
+
let maxSequence = -1;
|
|
280
|
+
for (const entry of state.pendingToolUse.values()) if (entry.toolTitle && (entry.sequence ?? -1) > maxSequence) {
|
|
281
|
+
maxSequence = entry.sequence ?? -1;
|
|
282
|
+
currentTool = entry.toolTitle;
|
|
283
|
+
}
|
|
284
|
+
return {
|
|
285
|
+
messages: state.messages,
|
|
286
|
+
streaming: stateIsStreaming(state, mtimeMs),
|
|
287
|
+
lastTurnCompletedAt: state.lastTurnCompletedAt,
|
|
288
|
+
pendingToolCount: state.pendingToolUse.size,
|
|
289
|
+
currentTool,
|
|
290
|
+
mtimeMs
|
|
291
|
+
};
|
|
292
|
+
});
|
|
293
|
+
}
|
|
294
|
+
var TOOL_METADATA_MAX_CHARS, STREAMING_RECENCY_MS, parserCache, parserQueue;
|
|
295
|
+
var init_acp_conversation_parser = __esmMin((() => {
|
|
296
|
+
TOOL_METADATA_MAX_CHARS = 500;
|
|
297
|
+
STREAMING_RECENCY_MS = 3e4;
|
|
298
|
+
parserCache = /* @__PURE__ */ new Map();
|
|
299
|
+
parserQueue = /* @__PURE__ */ new Map();
|
|
300
|
+
}));
|
|
301
|
+
//#endregion
|
|
10
302
|
//#region services/codex-conversation-parser.ts
|
|
11
303
|
/**
|
|
12
304
|
* OpenAI Codex → chat panel adapter (PAN-1520).
|
|
@@ -1439,19 +1731,45 @@ var init_parser = __esmMin((() => {
|
|
|
1439
1731
|
}));
|
|
1440
1732
|
//#endregion
|
|
1441
1733
|
//#region services/conversation/activity-summary.ts
|
|
1734
|
+
function cacheActivitySummary(cacheKey, mtimeMs, size, summary) {
|
|
1735
|
+
activitySummaryCache.set(cacheKey, {
|
|
1736
|
+
mtimeMs,
|
|
1737
|
+
size,
|
|
1738
|
+
summary
|
|
1739
|
+
});
|
|
1740
|
+
if (activitySummaryCache.size > ACTIVITY_SUMMARY_CACHE_MAX) {
|
|
1741
|
+
const firstKey = activitySummaryCache.keys().next().value;
|
|
1742
|
+
if (firstKey !== void 0) activitySummaryCache.delete(firstKey);
|
|
1743
|
+
}
|
|
1744
|
+
return summary;
|
|
1745
|
+
}
|
|
1442
1746
|
async function summarizeConversationActivity(sessionFile, options = {}) {
|
|
1443
1747
|
const fileStats = await stat(sessionFile);
|
|
1444
1748
|
const cacheKey = `${options.harness ?? "claude-code"}:${sessionFile}`;
|
|
1445
1749
|
const behavior = getHarnessBehavior(options.harness);
|
|
1446
1750
|
const cached = activitySummaryCache.get(cacheKey);
|
|
1447
1751
|
if (cached && cached.mtimeMs === fileStats.mtimeMs && cached.size === fileStats.size) return cached.summary;
|
|
1448
|
-
|
|
1752
|
+
if (behavior.transcriptKind === "acp-jsonl") {
|
|
1753
|
+
const projected = await projectAcpConversationActivity(sessionFile);
|
|
1754
|
+
const workingFileRecent = Date.now() - projected.mtimeMs < WORKING_STALENESS_MS;
|
|
1755
|
+
const lastMsg = projected.messages[projected.messages.length - 1];
|
|
1756
|
+
const isWorking = workingFileRecent && !projected.lastTurnCompletedAt && (projected.streaming || projected.pendingToolCount > 0 || projected.messages.length === 0 || lastMsg?.role === "user" || lastMsg?.role === "assistant" && !lastMsg.completedAt);
|
|
1757
|
+
const fileRecent = Date.now() - projected.mtimeMs < 3e4;
|
|
1758
|
+
const summary = {
|
|
1759
|
+
messages: projected.messages,
|
|
1760
|
+
streaming: projected.streaming,
|
|
1761
|
+
isWorking,
|
|
1762
|
+
currentTool: fileRecent ? projected.currentTool : null
|
|
1763
|
+
};
|
|
1764
|
+
return cacheActivitySummary(cacheKey, fileStats.mtimeMs, fileStats.size, summary);
|
|
1765
|
+
}
|
|
1766
|
+
const { messages, streaming, lastTurnCompletedAt, pendingToolUse, workLog, mtimeMs } = behavior.transcriptKind === "codex-rollout-jsonl" ? await parseCodexConversationMessages(sessionFile) : behavior.transcriptKind === "ohmypi-jsonl" || isOhmypiSessionFile(sessionFile) ? await parseOhmypiConversationMessages(sessionFile) : isPiSessionFile(sessionFile) ? await parsePiConversationMessages(sessionFile) : await parseFromLastCompactBoundary(sessionFile, {
|
|
1449
1767
|
pendingToolUse: /* @__PURE__ */ new Map(),
|
|
1450
1768
|
unresolvedResults: /* @__PURE__ */ new Map(),
|
|
1451
1769
|
lastSequence: 0
|
|
1452
1770
|
});
|
|
1453
1771
|
const lastMsg = messages[messages.length - 1];
|
|
1454
|
-
const isWorking = Date.now() - mtimeMs < WORKING_STALENESS_MS && (messages.length === 0 || lastMsg?.role === "user" || lastMsg?.role === "assistant" && !lastMsg.completedAt);
|
|
1772
|
+
const isWorking = Date.now() - mtimeMs < WORKING_STALENESS_MS && !lastTurnCompletedAt && (streaming || pendingToolUse.size > 0 || messages.length === 0 || lastMsg?.role === "user" || lastMsg?.role === "assistant" && !lastMsg.completedAt);
|
|
1455
1773
|
const fileRecent = Date.now() - mtimeMs < 3e4;
|
|
1456
1774
|
let currentTool = null;
|
|
1457
1775
|
if (fileRecent) {
|
|
@@ -1473,20 +1791,12 @@ async function summarizeConversationActivity(sessionFile, options = {}) {
|
|
|
1473
1791
|
isWorking,
|
|
1474
1792
|
currentTool
|
|
1475
1793
|
};
|
|
1476
|
-
|
|
1477
|
-
mtimeMs,
|
|
1478
|
-
size: fileStats.size,
|
|
1479
|
-
summary
|
|
1480
|
-
});
|
|
1481
|
-
if (activitySummaryCache.size > ACTIVITY_SUMMARY_CACHE_MAX) {
|
|
1482
|
-
const firstKey = activitySummaryCache.keys().next().value;
|
|
1483
|
-
if (firstKey !== void 0) activitySummaryCache.delete(firstKey);
|
|
1484
|
-
}
|
|
1485
|
-
return summary;
|
|
1794
|
+
return cacheActivitySummary(cacheKey, mtimeMs, fileStats.size, summary);
|
|
1486
1795
|
}
|
|
1487
1796
|
var WORKING_STALENESS_MS, ACTIVITY_SUMMARY_CACHE_MAX, activitySummaryCache;
|
|
1488
1797
|
var init_activity_summary = __esmMin((() => {
|
|
1489
1798
|
init_behavior();
|
|
1799
|
+
init_acp_conversation_parser();
|
|
1490
1800
|
init_codex_conversation_parser();
|
|
1491
1801
|
init_ohmypi_conversation_parser();
|
|
1492
1802
|
init_pi_conversation_parser();
|
|
@@ -1534,7 +1844,8 @@ function buildContextUsage(capability, activeBytes, usageSummary) {
|
|
|
1534
1844
|
percentUsed: 0
|
|
1535
1845
|
};
|
|
1536
1846
|
const liveContextTokens = usageSummary.lastInputTokens + usageSummary.lastCacheReadTokens + usageSummary.lastCacheCreationTokens;
|
|
1537
|
-
const
|
|
1847
|
+
const observedCeiling = Math.max(usageSummary.maxObservedInputTokens, liveContextTokens);
|
|
1848
|
+
const effectiveContextWindow = capability.provider === "anthropic" && observedCeiling > capability.contextWindow ? Math.max(1e6, capability.contextWindow) : capability.contextWindow;
|
|
1538
1849
|
return {
|
|
1539
1850
|
activeBytes,
|
|
1540
1851
|
estimatedTokens: liveContextTokens,
|
|
@@ -1749,6 +2060,6 @@ var init_conversation_service = __esmMin((() => {
|
|
|
1749
2060
|
init_watch();
|
|
1750
2061
|
}));
|
|
1751
2062
|
//#endregion
|
|
1752
|
-
export { init_codex_conversation_parser as _, contextUsageFromParseResult as a, parseEntireConversation as c, init_pi_conversation_parser as d, isPiSessionFile as f, parseOhmypiConversationMessages as g, isOhmypiSessionFile as h, computeContextUsage as i, parseFromLastCompactBoundary as l, init_ohmypi_conversation_parser as m, gateSnapshotEmission as n, summarizeConversationActivity as o, parsePiConversationMessages as p, watchConversation as r, parseConversationMessages as s, init_conversation_service as t, findLastCompactBoundary as u, parseCodexConversationMessages as v };
|
|
2063
|
+
export { init_codex_conversation_parser as _, contextUsageFromParseResult as a, parseAcpConversationMessages as b, parseEntireConversation as c, init_pi_conversation_parser as d, isPiSessionFile as f, parseOhmypiConversationMessages as g, isOhmypiSessionFile as h, computeContextUsage as i, parseFromLastCompactBoundary as l, init_ohmypi_conversation_parser as m, gateSnapshotEmission as n, summarizeConversationActivity as o, parsePiConversationMessages as p, watchConversation as r, parseConversationMessages as s, init_conversation_service as t, findLastCompactBoundary as u, parseCodexConversationMessages as v, init_acp_conversation_parser as y };
|
|
1753
2064
|
|
|
1754
|
-
//# sourceMappingURL=conversation-service-
|
|
2065
|
+
//# sourceMappingURL=conversation-service-5aCnq1zR.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
3
|
-
import { T as isNull, _ as integer, a as EventBus, b as and, d as getOverdeckDatabaseSync, f as init_infra, g as real, h as text, m as sqliteTable, p as init_sqlite_core, r as Db, v as init_drizzle_orm, w as isNotNull, x as eq } from "./infra-
|
|
4
|
-
import { a as init_event_store, n as getEventStore } from "./event-store-
|
|
2
|
+
import { ci as init_paths, si as getOverdeckHome } from "./config-yaml-CmOPzmBb.js";
|
|
3
|
+
import { T as isNull, _ as integer, a as EventBus, b as and, d as getOverdeckDatabaseSync, f as init_infra, g as real, h as text, m as sqliteTable, p as init_sqlite_core, r as Db, v as init_drizzle_orm, w as isNotNull, x as eq } from "./infra-BjuxvjdS.js";
|
|
4
|
+
import { a as init_event_store, n as getEventStore } from "./event-store-zY5MJHgF.js";
|
|
5
5
|
import { join } from "node:path";
|
|
6
6
|
import { Context, Effect, Layer, Schema, Stream } from "effect";
|
|
7
7
|
import { readFileSync } from "node:fs";
|
|
@@ -672,7 +672,7 @@ function toMillis(value = /* @__PURE__ */ new Date()) {
|
|
|
672
672
|
/** Map a raw DB harness string to a canonical RuntimeName, normalizing legacy 'pi' to 'ohmypi' on read. */
|
|
673
673
|
function normalizeHarness(harness) {
|
|
674
674
|
if (harness === "pi" || harness === "ohmypi") return "ohmypi";
|
|
675
|
-
if (harness === "claude-code" || harness === "codex") return harness;
|
|
675
|
+
if (harness === "claude-code" || harness === "codex" || harness === "acp") return harness;
|
|
676
676
|
return null;
|
|
677
677
|
}
|
|
678
678
|
function legacyRowIdForConversationId(id) {
|
|
@@ -1585,4 +1585,4 @@ var init_conversations = __esmMin((() => {
|
|
|
1585
1585
|
//#endregion
|
|
1586
1586
|
export { updateConversationForkFallbackReason as $, isAgentConversationName as A, removeFavorite as B, getConversationByTmuxSession as C, searchFtsSessions as Ct, importLegacyConversation as D, hasOtherActiveConversationOnTmuxSession as E, upsertDiscoveredSession as Et, markConversationEnded as F, setConversationHarness as G, setClearedToConvId as H, markConversationRunning as I, setForkRequest as J, setConversationModel as K, normalizeHarness as L, listConversations as M, listFavoritedIds as N, incrementForkRetryCount as O, markConversationActive as P, updateConversationDeliveryMethod as Q, reactivateConversationForSpawn as R, getConversationByName as S, markEnrichmentFailed as St, getStuckForks as T, updateEnrichment as Tt, setConversationClaudeSessionId as U, resolveLiveSessionId as V, setConversationEffort as W, unarchiveConversation as X, setImportedConversationLinks as Y, updateConversationCost as Z, canRefineTitle as _, getDiscoveredStats as _t, ConversationName as a, aggregateDiscoveredSessionCost as at, getConversationByClaudeSessionId as b, insertEmbedding as bt, ConversationsResolver as c, countDiscoveredSessions as ct, TitleSource as d, findDiscoveredSessionIds as dt, updateConversationTitle as et, Transcript as f, findDiscoveredSessions as ft, backfillConversationModel as g, getDiscoveredSessionBySessionId as gt, archiveConversation as h, getDiscoveredSessionByJsonlPath as ht, ConversationId as i, findConversationForCostSessionSync as it, listArchivedConversationsWithEnrichment as j, init_conversations as k, Harness as l, countFtsSessions as lt, TranscriptsWriter as m, getDiscoveredSessionById as mt, BackingFile as n, updateLastAttached as nt, ConversationNotFound as o, aggregateDiscoveredSessionCostBy as ot, TranscriptsResolver as p, findEnrichedSessionIdsMissingEmbedding as pt, setFavorite as q, Conversation as r, updateSpawnError as rt, ConversationWriter as s, buildFilterSql as st, AlreadyArchived as t, updateForkStatus as tt, NotArchived as u, ensureDiscoveredSessionsSchema as ut, canReplaceTitle as v, getEmbedding as vt, getConversationLedgerCosts as w, topKCosine as wt, getConversationById as x, loadEmbeddings as xt, createConversation as y, init_discovered_sessions as yt, recordConversationHandoff as z };
|
|
1587
1587
|
|
|
1588
|
-
//# sourceMappingURL=conversations-
|
|
1588
|
+
//# sourceMappingURL=conversations-BUpYsOZg.js.map
|