@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.
Files changed (549) hide show
  1. package/drizzle/overdeck/0000_overdeck_init.sql +34 -0
  2. package/package.json +1 -1
  3. package/server/{acceptance-criteria-DOA0KgXx.js → acceptance-criteria-CCwFGICj.js} +2 -2
  4. package/server/activity-logger-CMthG6Vd.js +3 -0
  5. package/server/{activity-logger-DDlOIAML.js → activity-logger-CyteR4JO.js} +24 -13
  6. package/server/{advancing-selfheal-BBu6DSNm.js → advancing-selfheal-De1L-Sb4.js} +6 -6
  7. package/server/{agent-gc-BV1q_2EV.js → agent-gc-CBULruzm.js} +5 -5
  8. package/server/agent-state-VQk8fY9F.js +3 -0
  9. package/server/{agent-state-service-HoK8U4jW.js → agent-state-service-BlnSkRFA.js} +5 -5
  10. package/server/{agent-state-service-CnzFKSAQ.js → agent-state-service-hZpxIw1E.js} +1 -1
  11. package/server/agents-BKKkxKgK.js +3 -0
  12. package/server/{agents-B4Bjbkfv.js → agents-C5rWYhb6.js} +4 -4
  13. package/server/archive-planning-0FJ6Xd3b.js +2 -0
  14. package/server/{archive-planning-DYrYojxl.js → archive-planning-C0lAbNB_.js} +16 -24
  15. package/server/{artifact-index-jobs-C-xy7Z5v.js → artifact-index-jobs-ug6ZxIP5.js} +2 -2
  16. package/server/assemble-DnffNpOo.js +339 -0
  17. package/server/{backlog-auto-trigger-GtG71X8H.js → backlog-auto-trigger-Dh-i9PQf.js} +3 -3
  18. package/server/{behavior-B_-4EKF3.js → behavior-CfIg6pKp.js} +2 -2
  19. package/server/bridge-pool-patrol-CUFmjVDN.js +136 -0
  20. package/server/{briefing-freshness-DWdW7vUm.js → briefing-freshness-DHmCSLar.js} +2 -2
  21. package/server/{build-info-DgTqZkL5.js → build-info-BP160gU7.js} +1 -1
  22. package/server/{build-info-BT096lEl.js → build-info-CuFfxZxp.js} +5 -3
  23. package/server/{checkpoint-manager-DDqcGyu8.js → checkpoint-manager-DEWD82qK.js} +2 -2
  24. package/server/{checkpoint-manager-B7Bt29J0.js → checkpoint-manager-Dxh0FYsv.js} +1 -1
  25. package/server/checkpoint-worker.js +1 -1
  26. package/server/{checkpoints-C-AXLfYT.js → checkpoints-CZvbtLnr.js} +2 -2
  27. package/server/{checkpoints-CpgCjAlN.js → checkpoints-DMTgXuLG.js} +1 -1
  28. package/server/{claude-hooks-provision-C8wdRnN1.js → claude-hooks-provision-CN-xo-do.js} +1 -1
  29. package/server/{claude-hooks-provision-but-_qGY.js → claude-hooks-provision-fvy4RD2b.js} +13 -2
  30. package/server/{claude-permissions-H_5wHQZQ.js → claude-permissions-CN0cSCPp.js} +2 -2
  31. package/server/{claude-settings-overlay-CbSz0Dvb.js → claude-settings-overlay-CJn35FHQ.js} +2 -2
  32. package/server/{claude-settings-overlay-BTENVmYf.js → claude-settings-overlay-Dabi9slj.js} +1 -1
  33. package/server/cli-DmXETsw-.js +3 -0
  34. package/server/{cli-vBeXbPrq.js → cli-oCWYA1pE.js} +9 -9
  35. package/server/{cliproxy-Bgb2XCqi.js → cliproxy-C8mB3KuB.js} +2 -2
  36. package/server/{cliproxy-DW0V86F8.js → cliproxy-PGwTX_o8.js} +1 -1
  37. package/server/{close-issue-Dn_4c4G8.js → close-issue-D5MF5GqF.js} +5 -5
  38. package/server/{closed-issue-reaper-CWpY2uBw.js → closed-issue-reaper-CJ24u0Zt.js} +1 -1
  39. package/server/{closed-issue-reaper-hANY_ehE.js → closed-issue-reaper-Cltx86x5.js} +37 -16
  40. package/server/{codex-Dg7Is5yb.js → codex-BdEsUFWh.js} +1 -1
  41. package/server/{codex-TmSi-yTv.js → codex-Drlf5Xhf.js} +37 -8
  42. package/server/{codex-parser-C4gSH-IR.js → codex-parser-DpB89Vqa.js} +2 -2
  43. package/server/compaction-continuation-K2AxQX4H.js +200 -0
  44. package/server/{config-DjLOdbgT.js → config-B2IMcBxx.js} +4 -3
  45. package/server/{config-DUIhMN_T.js → config-DV-grfQc.js} +1 -1
  46. package/server/{config-CCvjQf27.js → config-Dr3pW6w6.js} +2 -2
  47. package/server/{config-yaml-DvyMuOle.js → config-yaml-CmOPzmBb.js} +290 -22
  48. package/server/{conflict-gate-CmrYpa47.js → conflict-gate-B9cN3SBi.js} +4 -4
  49. package/server/{conflict-gate-BSJkNTdp.js → conflict-gate-Dh754uyA.js} +1 -1
  50. package/server/context-layers-D6LZo3l1.js +4 -0
  51. package/server/context-layers-dR5YxHYB.js +37 -0
  52. package/server/{control-settings-aP1ANIlI.js → control-settings-C7DUehE1.js} +49 -19
  53. package/server/{conversation-compaction-CNbTLB86.js → conversation-compaction-BoqdDXWF.js} +8 -8
  54. package/server/{conversation-compaction-DiG5zWQq.js → conversation-compaction-Dj4FAKoZ.js} +1 -1
  55. package/server/{conversation-service-Du-MTNpJ.js → conversation-service-5aCnq1zR.js} +331 -20
  56. package/server/conversation-service-BCxl4f8Z.js +3 -0
  57. package/server/{conversations-DbOs1e9Q.js → conversations-BUpYsOZg.js} +5 -5
  58. package/server/{conversations-6mPANqvL.js → conversations-C34dyIb9.js} +1 -1
  59. package/server/{cost-Ca0YTWDw.js → cost-Bgcub5kW.js} +12 -2
  60. package/server/{cost-CW4WSe72.js → cost-CvxRrucd.js} +3 -3
  61. package/server/{cost-sync-C0VdGme1.js → cost-sync-Dv3LUaNW.js} +3 -3
  62. package/server/{dag-CdOjJVDT.js → dag-ombYYt4s.js} +2 -2
  63. package/server/{dangerous-git-ops-CT-IypG3.js → dangerous-git-ops-BcJPC5Rr.js} +1 -1
  64. package/server/dashboard-db-worker.js +7 -7
  65. package/server/deacon-DrXqT9LQ.js +4 -0
  66. package/server/{deacon-pRnyD5w9.js → deacon-hi9KLPLT.js} +2998 -2659
  67. package/server/{deacon-nudge-log-Bjg8U4Y9.js → deacon-nudge-log-BNBebzeL.js} +3 -3
  68. package/server/deacon-pending-lifecycle-Cpk0k7Hi.js +33 -0
  69. package/server/{deacon-swarm-DftYRDo8.js → deacon-swarm-DBxUaO-A.js} +13 -13
  70. package/server/deacon-swarm-I2JfX5Tg.js +2 -0
  71. package/server/deacon.js +14 -19
  72. package/server/dead-end-trip-CQcP70ND.js +13 -0
  73. package/server/delivery-Da0zEMY4.js +3 -0
  74. package/server/{deploy-patrol-Bjsho_ha.js → deploy-patrol-Df-Tmaq0.js} +69 -18
  75. package/server/deploy-queue-9SrhZR63.js +3 -0
  76. package/server/deploy-queue-UjKGYsDe.js +169 -0
  77. package/server/deploy-window-jOiPRHL0.js +3 -0
  78. package/server/{deploy-window-DeP_OIRk.js → deploy-window-rpqpWqHA.js} +40 -16
  79. package/server/{dev-supervisor-BpMoHlkR.js → dev-supervisor-CC46Ig8q.js} +2 -2
  80. package/server/{devcontainer-renderer-CtUgrVKW.js → devcontainer-renderer-68CSCRnu.js} +3 -3
  81. package/server/{dist-DyRx4cI7.js → dist-CJy72uEg.js} +1 -1
  82. package/server/dist-DSlxIU1H.js +3 -0
  83. package/server/{dist-src-BSoS7mkd.js → dist-src-Bik83hFi.js} +1 -1
  84. package/server/docker-BMVTSFL5.js +3 -0
  85. package/server/{docker-BK7HIcBj.js → docker-Dam7mbIB.js} +2 -2
  86. package/server/{dod-BrSfUHm0.js → dod-Dar-yheg.js} +8 -4
  87. package/server/durable-review-pipeline-CGZ5QBxh.js +17 -0
  88. package/server/durable-review-pipeline-jpgCJZFp.js +3 -0
  89. package/server/{ensure-devcontainer-DseivYEy.js → ensure-devcontainer-B057YA81.js} +4 -4
  90. package/server/{ensure-devcontainer-DRqaAkBR.js → ensure-devcontainer-C98V8yW-.js} +1 -1
  91. package/server/{esm-shims-CbI3BVkl.js → esm-shims-Br9BPdkR.js} +1 -1
  92. package/server/{event-store-Cr5PQwFC.js → event-store-ELqkVOn0.js} +1 -1
  93. package/server/{event-store-tdiY5eDZ.js → event-store-zY5MJHgF.js} +23 -4
  94. package/server/{events-CvvGK6LT.js → events-D6pyqhzM.js} +1 -1
  95. package/server/{events-CC1dgUpx.js → events-D9PR1IC0.js} +3 -3
  96. package/server/{factory-CynerjXO.js → factory-CRoOpGsF.js} +5 -5
  97. package/server/{feature-registry-population-B0pmAz0a.js → feature-registry-population--YUXU999.js} +4 -4
  98. package/server/{feature-registry-storage-_wUBRD3J.js → feature-registry-storage-BORBTo0y.js} +2 -2
  99. package/server/{features-Dhxz-wLc.js → features--nFkJY8v.js} +2 -2
  100. package/server/{feedback-target-iygZwmMc.js → feedback-target-C0ZzyHvU.js} +1 -1
  101. package/server/{feedback-target-CPS15Vte.js → feedback-target-Dt9BsapX.js} +8 -8
  102. package/server/{feedback-writer-C9b6ccN1.js → feedback-writer-BG0RUZiu.js} +5 -5
  103. package/server/{feedback-writer-qmiMbqTZ.js → feedback-writer-D1fm-5Z8.js} +1 -1
  104. package/server/flywheel-BekukH4i.js +2 -0
  105. package/server/flywheel-BiT3odRb.js +1092 -0
  106. package/server/flywheel-CLVB55Be.js +478 -0
  107. package/server/flywheel-merge-order-BJv1DZz1.js +462 -0
  108. package/server/flywheel-merge-order-BKw9o6ku.js +2 -0
  109. package/server/forge-CZbSg6Ds.js +383 -0
  110. package/server/forge-DK3blQb_.js +3 -0
  111. package/server/{from-CJ_aH5jD.js → from-D_4_dk7i.js} +1 -1
  112. package/server/{fts-db-CKgg0VKg.js → fts-db-BeOomFa-.js} +2 -2
  113. package/server/{fts-operations-BrL_VTRr.js → fts-operations-BdewJ_g9.js} +2 -2
  114. package/server/git-utils-CI6cwyyC.js +3 -0
  115. package/server/{git-utils-BVa07a4a.js → git-utils-ameCgDdy.js} +93 -3
  116. package/server/{github-app-CMBdIFBQ.js → github-app-CQ1Lo6LA.js} +19 -8
  117. package/server/{github-app-CPfoFAdV.js → github-app-DtAsvwzK.js} +1 -1
  118. package/server/{github-client--XVlDpwM.js → github-client-BfyDxuRN.js} +2 -2
  119. package/server/{github-client-B4QsdE-X.js → github-client-Cj0yl_07.js} +1 -1
  120. package/server/github-pr-lookup-BDq6Wznz.js +58 -0
  121. package/server/{harness-binary-CVio2m-u.js → harness-binary-DqkftwTb.js} +32 -6
  122. package/server/{harness-resolve-qHJBhy3Z.js → harness-resolve-CqMqM1Mb.js} +18 -9
  123. package/server/{health-events-C9B8y1Hm.js → health-events-CazRxJUS.js} +2 -2
  124. package/server/{health-events-CpfvuVmm.js → health-events-_xfTaOUs.js} +1 -1
  125. package/server/{hooks-DUXw8A0-.js → hooks-BO3QT1sn.js} +2 -2
  126. package/server/{hooks-ltecuFqZ.js → hooks-BnJsxlSq.js} +1 -1
  127. package/server/{hume-BEq0bUDg.js → hume-CDYJxqx-.js} +2 -2
  128. package/server/hume-Dq--7rOQ.js +3 -0
  129. package/server/{idle-stack-reaper-D7w9t3fE.js → idle-stack-reaper-BYqERdkE.js} +1 -1
  130. package/server/{idle-stack-reaper-w1ISSlhs.js → idle-stack-reaper-CnGx_PO_.js} +99 -6
  131. package/server/in-flight-guard-Bq3epG58.js +45 -0
  132. package/server/{infra-CzaSOgul.js → infra-BjuxvjdS.js} +80 -5
  133. package/server/{injection-oNZeoDhL.js → injection-DZxlV2al.js} +1 -1
  134. package/server/{injection-DZ0PfYa4.js → injection-UCf8EsjX.js} +191 -183
  135. package/server/{inspect-agent-DJKLWcVT.js → inspect-agent-6kylZnrm.js} +139 -82
  136. package/server/inspect-agent-BVwDrVrz.js +2 -0
  137. package/server/{internal-token-Bb4XeV2x.js → internal-token-DvMTQSOS.js} +2 -2
  138. package/server/{internal-token-DXdfprGr.js → internal-token-M9omeXM1.js} +1 -1
  139. package/server/{io-B3_AHDfr.js → io-VHvc0Ssp.js} +43 -26
  140. package/server/{issue-closed-zhdvQicO.js → issue-closed-B6KJkmHZ.js} +7 -7
  141. package/server/{issue-lifecycle-Dy4vd0Oa.js → issue-lifecycle-9gk3fnXN.js} +1 -1
  142. package/server/{issue-lifecycle-CreaCkjW.js → issue-lifecycle-C4Zj0WmE.js} +34 -28
  143. package/server/{issue-service-singleton-B5ushCvE.js → issue-service-singleton-DmCh7EHj.js} +10 -10
  144. package/server/{issue-service-singleton-DabvBWUp.js → issue-service-singleton-PMx8F1jr.js} +1 -1
  145. package/server/{issues-B6ToV6x1.js → issues-CgnQ1OGQ.js} +2 -2
  146. package/server/{jsonl-parser-Dhflo1SH.js → jsonl-parser-DJOH_O-w.js} +5 -4
  147. package/server/{label-cleanup-BKPJm4Hv.js → label-cleanup-Dv7AV_R1.js} +3 -3
  148. package/server/{label-reconciler-DdWbHEBu.js → label-reconciler--F85rufp.js} +4 -4
  149. package/server/{lifecycle-DfeyBDwA.js → lifecycle-CTdOWYMi.js} +2 -2
  150. package/server/{lifecycle-sycO16hj.js → lifecycle-DDN8ApVY.js} +6 -7
  151. package/server/{lifecycle-io-D8iNBcux.js → lifecycle-io-D-lGdzK3.js} +5 -5
  152. package/server/{lifecycle-io-Bsnr2K4F.js → lifecycle-io-D_zTLvP1.js} +1 -1
  153. package/server/{linear-client-D4zqMnX7.js → linear-client-BQU36QqE.js} +2 -2
  154. package/server/{linear-client-DqhDQO9k.js → linear-client-CY4O_Tu3.js} +1 -1
  155. package/server/linear-mcp-auth-BnU4TYfY.js +280 -0
  156. package/server/linear-mcp-auth-NYBq_oHZ.js +2 -0
  157. package/server/memory-fts-worker.js +1 -1
  158. package/server/{merge-C_ZEhbqI.js → merge-Bpx4jjht.js} +13 -11
  159. package/server/{merge-agent-XrB80vfT.js → merge-agent-DdMVSV2Y.js} +233 -83
  160. package/server/{merge-agent-BQM3a8z5.js → merge-agent-DrXa1CpW.js} +1 -1
  161. package/server/{merge-batch-Bwoyr8Je.js → merge-batch-C5q1c1GX.js} +1 -1
  162. package/server/merge-completeness-BMm8tMyZ.js +277 -0
  163. package/server/merge-completeness-D0ljXbk3.js +3 -0
  164. package/server/{merge-DK23JEdS.js → merge-idOG--29.js} +1 -1
  165. package/server/merge-ops-DdpTiEMt.js +2 -0
  166. package/server/merge-rebase-DGQpYJU3.js +2 -0
  167. package/server/{merge-rebase-C1KIVr0s.js → merge-rebase-xLnMlw5h.js} +3 -3
  168. package/server/merge-set-DH7ot3yz.js +89 -0
  169. package/server/merge-set-DzsOTBg5.js +3 -0
  170. package/server/{merge-sync-DZ9dojJn.js → merge-sync-CQ-LgZ1_.js} +406 -153
  171. package/server/merge-sync-Ca7F5JnQ.js +3 -0
  172. package/server/{merge-train-DxDfBTjr.js → merge-train-DTEMyIu4.js} +18 -8
  173. package/server/{merge-train-deps-CyYQUksx.js → merge-train-deps-CNPJzepw.js} +4 -4
  174. package/server/merge-verification-x3JO8Dtz.js +220 -0
  175. package/server/merged-docker-cleanup-worker-CTpC27Bs.js +107 -0
  176. package/server/merged-docker-cleanup-worker-Cdi9apm-.js +3 -0
  177. package/server/{multipart-parser-Dt8YPN5S.js → multipart-parser-IMSBfePV.js} +2 -2
  178. package/server/{no-resume-mode-Cx3K0hHi.js → no-resume-mode-C5ULAXwO.js} +1 -1
  179. package/server/node_modules/.package-lock.json +27 -27
  180. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/package.json +3 -3
  181. package/server/node_modules/@google-cloud/common/package.json +2 -2
  182. package/server/node_modules/gaxios/build/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  183. package/server/node_modules/gaxios/build/esm/tsconfig.tsbuildinfo +1 -1
  184. package/server/node_modules/gaxios/package.json +1 -1
  185. package/server/node_modules/google-auth-library/build/src/auth/googleauth.js +24 -19
  186. package/server/node_modules/google-auth-library/package.json +1 -1
  187. package/server/node_modules/google-gax/build/protos/google/api/auth.proto +2 -1
  188. package/server/node_modules/google-gax/build/protos/google/api/backend.proto +12 -1
  189. package/server/node_modules/google-gax/build/protos/google/api/billing.proto +1 -1
  190. package/server/node_modules/google-gax/build/protos/google/api/client.proto +165 -53
  191. package/server/node_modules/google-gax/build/protos/google/api/cloudquotas/v1/resources.proto +1 -1
  192. package/server/node_modules/google-gax/build/protos/google/api/cloudquotas/v1beta/quota_adjuster_settings.proto +7 -3
  193. package/server/node_modules/google-gax/build/protos/google/api/cloudquotas/v1beta/resources.proto +1 -1
  194. package/server/node_modules/google-gax/build/protos/google/api/config_change.proto +1 -1
  195. package/server/node_modules/google-gax/build/protos/google/api/context.proto +1 -1
  196. package/server/node_modules/google-gax/build/protos/google/api/control.proto +3 -3
  197. package/server/node_modules/google-gax/build/protos/google/api/distribution.proto +1 -1
  198. package/server/node_modules/google-gax/build/protos/google/api/documentation.proto +1 -1
  199. package/server/node_modules/google-gax/build/protos/google/api/endpoint.proto +1 -1
  200. package/server/node_modules/google-gax/build/protos/google/api/error_reason.proto +186 -1
  201. package/server/node_modules/google-gax/build/protos/google/api/expr/v1alpha1/checked.proto +31 -3
  202. package/server/node_modules/google-gax/build/protos/google/api/expr/v1alpha1/eval.proto +8 -9
  203. package/server/node_modules/google-gax/build/protos/google/api/expr/v1alpha1/explain.proto +1 -2
  204. package/server/node_modules/google-gax/build/protos/google/api/expr/v1alpha1/syntax.proto +20 -22
  205. package/server/node_modules/google-gax/build/protos/google/api/expr/v1alpha1/value.proto +2 -3
  206. package/server/node_modules/google-gax/build/protos/google/api/field_behavior.proto +1 -1
  207. package/server/node_modules/google-gax/build/protos/google/api/field_info.proto +1 -1
  208. package/server/node_modules/google-gax/build/protos/google/api/http.proto +1 -1
  209. package/server/node_modules/google-gax/build/protos/google/api/httpbody.proto +1 -1
  210. package/server/node_modules/google-gax/build/protos/google/api/label.proto +1 -1
  211. package/server/node_modules/google-gax/build/protos/google/api/launch_stage.proto +1 -1
  212. package/server/node_modules/google-gax/build/protos/google/api/log.proto +1 -1
  213. package/server/node_modules/google-gax/build/protos/google/api/logging.proto +1 -1
  214. package/server/node_modules/google-gax/build/protos/google/api/metric.proto +1 -1
  215. package/server/node_modules/google-gax/build/protos/google/api/monitored_resource.proto +1 -1
  216. package/server/node_modules/google-gax/build/protos/google/api/monitoring.proto +1 -1
  217. package/server/node_modules/google-gax/build/protos/google/api/policy.proto +1 -1
  218. package/server/node_modules/google-gax/build/protos/google/api/quota.proto +1 -1
  219. package/server/node_modules/google-gax/build/protos/google/api/resource.proto +1 -1
  220. package/server/node_modules/google-gax/build/protos/google/api/routing.proto +8 -4
  221. package/server/node_modules/google-gax/build/protos/google/api/service.proto +2 -3
  222. package/server/node_modules/google-gax/build/protos/google/api/source_info.proto +1 -1
  223. package/server/node_modules/google-gax/build/protos/google/api/system_parameter.proto +1 -1
  224. package/server/node_modules/google-gax/build/protos/google/api/usage.proto +7 -27
  225. package/server/node_modules/google-gax/build/protos/google/api/visibility.proto +1 -1
  226. package/server/node_modules/google-gax/build/protos/google/longrunning/operations.proto +20 -1
  227. package/server/node_modules/google-gax/build/protos/google/protobuf/any.proto +52 -108
  228. package/server/node_modules/google-gax/build/protos/google/protobuf/compiler/ruby/ruby_generated_code.proto +2 -0
  229. package/server/node_modules/google-gax/build/protos/google/protobuf/cpp_features.proto +21 -1
  230. package/server/node_modules/google-gax/build/protos/google/protobuf/cpp_file_options.proto +24 -0
  231. package/server/node_modules/google-gax/build/protos/google/protobuf/cpp_options.proto +15 -0
  232. package/server/node_modules/google-gax/build/protos/google/protobuf/descriptor.proto +118 -30
  233. package/server/node_modules/google-gax/build/protos/google/protobuf/field_mask.proto +16 -18
  234. package/server/node_modules/google-gax/build/protos/google/protobuf/internal_options.proto +8 -1
  235. package/server/node_modules/google-gax/build/protos/google/protobuf/json/json_enumval_custom_string.proto +26 -0
  236. package/server/node_modules/google-gax/build/protos/google/protobuf/json_enumvalue_options.proto +29 -0
  237. package/server/node_modules/google-gax/build/protos/google/protobuf/json_options.proto +14 -0
  238. package/server/node_modules/google-gax/build/protos/google/protobuf/struct.proto +38 -22
  239. package/server/node_modules/google-gax/build/protos/google/protobuf/test_protos/forced_micro_string.proto +3 -0
  240. package/server/node_modules/google-gax/build/protos/google/protobuf/test_protos/repeated_field_proxy_import_message.proto +14 -0
  241. package/server/node_modules/google-gax/build/protos/google/protobuf/timestamp.proto +9 -8
  242. package/server/node_modules/google-gax/build/protos/google/protobuf/util/json_format_proto3.proto +18 -0
  243. package/server/node_modules/google-gax/build/protos/google/rpc/code.proto +1 -1
  244. package/server/node_modules/google-gax/build/protos/google/rpc/context/attribute_context.proto +7 -2
  245. package/server/node_modules/google-gax/build/protos/google/rpc/context/audit_context.proto +1 -1
  246. package/server/node_modules/google-gax/build/protos/google/rpc/error_details.proto +5 -5
  247. package/server/node_modules/google-gax/build/protos/google/rpc/http.proto +1 -1
  248. package/server/node_modules/google-gax/build/protos/google/rpc/status.proto +1 -2
  249. package/server/node_modules/google-gax/build/protos/google/type/calendar_period.proto +1 -1
  250. package/server/node_modules/google-gax/build/protos/google/type/color.proto +9 -10
  251. package/server/node_modules/google-gax/build/protos/google/type/date.proto +11 -9
  252. package/server/node_modules/google-gax/build/protos/google/type/datetime.proto +17 -17
  253. package/server/node_modules/google-gax/build/protos/google/type/dayofweek.proto +1 -1
  254. package/server/node_modules/google-gax/build/protos/google/type/decimal.proto +11 -13
  255. package/server/node_modules/google-gax/build/protos/google/type/expr.proto +1 -1
  256. package/server/node_modules/google-gax/build/protos/google/type/fraction.proto +1 -1
  257. package/server/node_modules/google-gax/build/protos/google/type/interval.proto +1 -2
  258. package/server/node_modules/google-gax/build/protos/google/type/latlng.proto +4 -5
  259. package/server/node_modules/google-gax/build/protos/google/type/localized_text.proto +3 -3
  260. package/server/node_modules/google-gax/build/protos/google/type/money.proto +1 -2
  261. package/server/node_modules/google-gax/build/protos/google/type/month.proto +1 -1
  262. package/server/node_modules/google-gax/build/protos/google/type/phone_number.proto +20 -15
  263. package/server/node_modules/google-gax/build/protos/google/type/postal_address.proto +39 -39
  264. package/server/node_modules/google-gax/build/protos/google/type/quaternion.proto +4 -4
  265. package/server/node_modules/google-gax/build/protos/google/type/timeofday.proto +11 -8
  266. package/server/node_modules/google-gax/package.json +5 -5
  267. package/server/node_modules/retry-request/package.json +4 -4
  268. package/server/node_modules/teeny-request/package.json +5 -5
  269. package/server/node_modules/undici/README.md +5 -0
  270. package/server/node_modules/undici/docs/docs/api/Client.md +4 -0
  271. package/server/node_modules/undici/docs/docs/api/Dispatcher.md +6 -0
  272. package/server/node_modules/undici/docs/docs/api/Interceptors.md +59 -0
  273. package/server/node_modules/undici/docs/docs/api/MockAgent.md +27 -0
  274. package/server/node_modules/undici/docs/docs/api/MockPool.md +28 -1
  275. package/server/node_modules/undici/docs/docs/index.md +5 -0
  276. package/server/node_modules/undici/lib/cache/memory-cache-store.js +54 -9
  277. package/server/node_modules/undici/lib/cache/sqlite-cache-store.js +7 -1
  278. package/server/node_modules/undici/lib/core/request.js +13 -2
  279. package/server/node_modules/undici/lib/core/util.js +6 -1
  280. package/server/node_modules/undici/lib/dispatcher/agent.js +3 -3
  281. package/server/node_modules/undici/lib/dispatcher/client-h1.js +42 -8
  282. package/server/node_modules/undici/lib/dispatcher/client-h2.js +34 -43
  283. package/server/node_modules/undici/lib/global.js +36 -16
  284. package/server/node_modules/undici/lib/handler/cache-handler.js +269 -61
  285. package/server/node_modules/undici/lib/handler/cache-revalidation-handler.js +13 -3
  286. package/server/node_modules/undici/lib/handler/redirect-handler.js +5 -2
  287. package/server/node_modules/undici/lib/handler/retry-handler.js +30 -4
  288. package/server/node_modules/undici/lib/interceptor/cache.js +159 -52
  289. package/server/node_modules/undici/lib/interceptor/decompress.js +9 -2
  290. package/server/node_modules/undici/lib/mock/mock-interceptor.js +25 -7
  291. package/server/node_modules/undici/lib/mock/mock-utils.js +39 -10
  292. package/server/node_modules/undici/lib/util/cache.js +372 -68
  293. package/server/node_modules/undici/lib/util/date.js +23 -6
  294. package/server/node_modules/undici/lib/web/cookies/util.js +78 -8
  295. package/server/node_modules/undici/lib/web/fetch/body.js +2 -1
  296. package/server/node_modules/undici/lib/web/fetch/response.js +1 -3
  297. package/server/node_modules/undici/package.json +2 -2
  298. package/server/node_modules/undici/types/client.d.ts +2 -2
  299. package/server/node_modules/undici/types/dispatcher.d.ts +3 -3
  300. package/server/node_modules/undici/types/mock-interceptor.d.ts +5 -1
  301. package/server/{orphan-proposed-reconciler-BTkDrl4R.js → orphan-proposed-reconciler-CWmOdM9-.js} +1 -1
  302. package/server/{orphan-proposed-reconciler-neK8dHQk.js → orphan-proposed-reconciler-Dg6U4ADZ.js} +24 -15
  303. package/server/package-lock.json +28 -28
  304. package/server/package.json +1 -1
  305. package/server/{pan-dir-DeVUgwA7.js → pan-dir-ubraCiUg.js} +24 -10
  306. package/server/{paths-_zEts6wc.js → paths-cXmOwSbh.js} +2 -2
  307. package/server/pending-lifecycle-claim-DEteYdS9.js +110 -0
  308. package/server/{pickup-Dd0Znxxy.js → pickup-D8xtG1J2.js} +17 -16
  309. package/server/pipeline-membership-BGSvkT2M.js +3 -0
  310. package/server/pipeline-membership-CrAPLYtf.js +57 -0
  311. package/server/{pipeline-membership-0HaEGDlH.js → pipeline-membership-gather-CET40frr.js} +177 -109
  312. package/server/pipeline-membership-gather-DTfcgxLl.js +3 -0
  313. package/server/{pipeline-notifier-D0ykk59O.js → pipeline-notifier-BuQ0e4hF.js} +2 -2
  314. package/server/{pipeline-notifier-6iCJplFZ.js → pipeline-notifier-ImNXknf0.js} +1 -1
  315. package/server/post-merge-lifecycle-worker-DbO10pum.js +50 -0
  316. package/server/{project-pipelines-2sK1apsO.js → project-pipelines-Bim6bThI.js} +2 -2
  317. package/server/project-repos-C0nuoBGv.js +98 -0
  318. package/server/project-repos-CRE6Ykow.js +3 -0
  319. package/server/projects-B03Wr-xc.js +3 -0
  320. package/server/{prompts-Dp4Tpk39.js → prompts-BEx08AIu.js} +2 -2
  321. package/server/{providers-DKkBXhxU.js → providers-D7IluJe0.js} +1 -1
  322. package/server/{providers-DV7ec8l7.js → providers-evXhiQeg.js} +7 -7
  323. package/server/public/assets/{chunk-BO2N2NFS-CltymLRg.js → chunk-BO2N2NFS-D1s4-Sqp.js} +4 -4
  324. package/server/public/assets/{diagram-OG6HWLK6-D2f6pjgA.js → diagram-OG6HWLK6-1gdMoSF7.js} +1 -1
  325. package/server/public/assets/{dist-BWR4qFiV.js → dist-CxAOHbil.js} +1 -1
  326. package/server/public/assets/{dist-DEmlBBNQ.js → dist-DqDRYW6P.js} +3 -3
  327. package/server/public/assets/{ganttDiagram-6RSMTGT7-DnfiViPK.js → ganttDiagram-6RSMTGT7-BYex-Ec7.js} +1 -1
  328. package/server/public/assets/{highlighted-body-OFNGDK62-B8Wrmj9H.js → highlighted-body-OFNGDK62-DlVkiG0S.js} +1 -1
  329. package/server/public/assets/index-Cc7cnFC4.css +1 -0
  330. package/server/public/assets/index-K0hAYCgV.js +807 -0
  331. package/server/public/assets/{linear-C9zFQpkX.js → linear-B4cuEFmO.js} +1 -1
  332. package/server/public/assets/mermaid-GHXKKRXX-DyDHFXHV.js +1 -0
  333. package/server/public/assets/{pieDiagram-4H26LBE5-lR8H7Yjd.js → pieDiagram-4H26LBE5-CBHNBIJQ.js} +1 -1
  334. package/server/public/assets/{prod-B1jCQihw.js → prod-CN2nHBvX.js} +4 -4
  335. package/server/public/assets/{quadrantDiagram-W4KKPZXB-CVQ2guem.js → quadrantDiagram-W4KKPZXB-Bom87VOQ.js} +1 -1
  336. package/server/public/assets/{sankeyDiagram-5OEKKPKP-eD1RB4gm.js → sankeyDiagram-5OEKKPKP-UrBeyLxk.js} +1 -1
  337. package/server/public/assets/{xychartDiagram-2RQKCTM6-ChEC6dQn.js → xychartDiagram-2RQKCTM6-DhkbrIxR.js} +1 -1
  338. package/server/public/index.html +2 -2
  339. package/server/{pull-requests--Ib2jTgy.js → pull-requests-Cv7LxzUN.js} +1 -1
  340. package/server/{pull-requests-CXIhdCYD.js → pull-requests-DHWiKxo7.js} +19 -10
  341. package/server/{queries-6d7Cdtm7.js → queries-DHJm7bTd.js} +1134 -203
  342. package/server/{rally-B708-nZn.js → rally-B71M9f4o.js} +3 -3
  343. package/server/rally-YDjU513q.js +3 -0
  344. package/server/{rally-api-yjQ0TfHd.js → rally-api-D5uXN08-.js} +1 -1
  345. package/server/{rally-api-nY0ZANw3.js → rally-api-Dkqmok65.js} +2 -2
  346. package/server/{rally-client-B1EJhfV0.js → rally-client-Bfqm6XI4.js} +4 -4
  347. package/server/{rally-client-CULK2XAY.js → rally-client-CxsA6ExK.js} +1 -1
  348. package/server/{reap-terminal-sessions-MWnqdLCJ.js → reap-terminal-sessions-BQ23nriz.js} +2 -2
  349. package/server/{reap-terminal-sessions-N3BTkmX_.js → reap-terminal-sessions-CvmwaqKv.js} +2 -2
  350. package/server/{rebuild-stack-Dp4eLkt4.js → rebuild-stack-0EEYReVZ.js} +36 -36
  351. package/server/rebuild-stack-qeRqHZxH.js +4 -0
  352. package/server/{reconstruct-cache-uWbZfjms.js → reconstruct-cache-BbYFsqLa.js} +7 -6
  353. package/server/record-CtroO946.js +3 -0
  354. package/server/record-update-DH6dLJID.js +3 -0
  355. package/server/{record-update-Dq0t2uBG.js → record-update-Z0QCxmMp.js} +124 -34
  356. package/server/{recovery-trip-BJtIQuag.js → recovery-trip-eJe26h-f.js} +2 -2
  357. package/server/{release-engine-DZpmGGzb.js → release-engine-lPUp-MTd.js} +5 -5
  358. package/server/{release-set-hnXd_kga.js → release-set-BwGeyZKX.js} +3 -3
  359. package/server/{remote-Br-ZWVIP.js → remote-BCd02Es1.js} +3 -3
  360. package/server/{remote-4tiENDaI.js → remote-CVGUhXMV.js} +3 -3
  361. package/server/{remote-agents-CRCg1L4H.js → remote-agents-C1bssi41.js} +2 -2
  362. package/server/{remote-agents-nmty1mLu.js → remote-agents-C_VxssLU.js} +300 -46
  363. package/server/{remote-completion-BbWNd10K.js → remote-completion-DAB0P706.js} +12 -12
  364. package/server/resume-u9byntrq.js +3 -0
  365. package/server/{review-agent-DJRO8EG8.js → review-agent-CD4RCI0Y.js} +1 -1
  366. package/server/{review-agent-sKkE1FEL.js → review-agent-CHhI66UP.js} +61 -44
  367. package/server/{review-artifacts-BLbSC4ke.js → review-artifacts-DSMRIfuJ.js} +7 -6
  368. package/server/{review-context-BgX3lcCx.js → review-context-oFuBbiEE.js} +69 -25
  369. package/server/{in-flight-guard-aQ1IxeI3.js → review-convoy-liveness-CpzrcJ5F.js} +3 -44
  370. package/server/review-status-BZH8h-6W.js +3 -0
  371. package/server/review-status-emit-CUExtHd5.js +50 -0
  372. package/server/{review-status-enrichment-tbOn_A_u.js → review-status-enrichment-QV_hQkgS.js} +4 -4
  373. package/server/{review-status-source-CxuEjLGg.js → review-status-source-CpvJnvnQ.js} +24 -3
  374. package/server/review-status-source-ylw5QZUR.js +3 -0
  375. package/server/{review-status-sync-BhSQ0d0l.js → review-status-sync-483sujRo.js} +10 -5
  376. package/server/{review-status-sync-To3-iS-N.js → review-status-sync-NaWvI9Xf.js} +1 -1
  377. package/server/review-status-yljtTd-q.js +7521 -0
  378. package/server/{review-verdict-feedback-C1Kg8n7t.js → review-verdict-feedback-BPDn4li_.js} +1 -1
  379. package/server/{review-verdict-feedback-CTRNtzXO.js → review-verdict-feedback-CELeUinh.js} +48 -8
  380. package/server/{rollup-WA0VD-Rr.js → rollup-DTNvelz9.js} +8 -8
  381. package/server/{rollup-B53Y81xK.js → rollup-DYZfq1c4.js} +1 -1
  382. package/server/{scanner-D2743cp8.js → scanner-CV35oSn4.js} +42 -14
  383. package/server/{sequence-io-Cg0zYj_E.js → sequence-io-DF_8iuhV.js} +4 -4
  384. package/server/{sequencer-agent-BGY8gjg-.js → sequencer-agent-B2WeCtGi.js} +5 -5
  385. package/server/server.js +3899 -672
  386. package/server/{service-DCpB_SGd.js → service-Br9rpBNA.js} +83 -65
  387. package/server/{session-fork-BQ8_6H32.js → session-fork-D0LY152N.js} +2 -2
  388. package/server/{session-history-CVZDpS3c.js → session-history-BUyK29eq.js} +4 -4
  389. package/server/{settings-BZ5m1UCl.js → settings-Bse1Pdcj.js} +3 -3
  390. package/server/settings-CdvIF84R.js +2 -0
  391. package/server/{settings-ylxwqwQG.js → settings-CvVGqNEs.js} +3 -2
  392. package/server/{shadow-engineering-BlxG6Xye.js → shadow-engineering-BWLa8ODz.js} +2 -2
  393. package/server/{shadow-state-Dh-HzF2J.js → shadow-state-B4fpKxOO.js} +2 -2
  394. package/server/{shadow-state-C2_epgx2.js → shadow-state-FV6PHfEW.js} +1 -1
  395. package/server/{shadow-utils-4bvjn9b3.js → shadow-utils-D7asqxOZ.js} +2 -2
  396. package/server/{ship-log-ClSMIzZX.js → ship-log-xplJ8t75.js} +1 -1
  397. package/server/{smart-compaction-CHIxLr_d.js → smart-compaction-CPp2Ykf6.js} +1 -1
  398. package/server/{smart-compaction-r4pHQBIr.js → smart-compaction-D3U_79f-.js} +8 -7
  399. package/server/{spawn-planning-session-KC_UduxD.js → spawn-planning-session-1nFi3gfk.js} +1 -1
  400. package/server/{spawn-planning-session-DWAorh2B.js → spawn-planning-session-DGfZ5B8D.js} +30 -23
  401. package/server/{specialist-completion-BXhav38U.js → specialist-completion-Br48eiDP.js} +1 -1
  402. package/server/{specialist-context-DtrYvGJ-.js → specialist-context-cVbGnTa3.js} +5 -5
  403. package/server/{specialist-handoff-logger-C45ouoZ6.js → specialist-handoff-logger-DK-GTz4s.js} +2 -2
  404. package/server/{specialist-logs-DJ3RzKxW.js → specialist-logs-Cl5-hqT8.js} +3 -3
  405. package/server/{specialists-JVO00bs7.js → specialists-CNfYO3G2.js} +1634 -457
  406. package/server/{specialists-DyFeedjn.js → specialists-Cicieuzu.js} +21 -19
  407. package/server/{specialists-D5fRZXmN.js → specialists-JHsdU3pA.js} +1 -1
  408. package/server/{specialists-DVj0hvaL.js → specialists-Tdezg_6N.js} +1 -1
  409. package/server/specs-Bt7WJDoC.js +3 -0
  410. package/server/src-CRmCHlma.js +11408 -0
  411. package/server/{src-CG9mCkP6.js → src-Ck028hjO.js} +6 -6
  412. package/server/{src-CMTQGyCK.js → src-UWcGe0Ix.js} +5 -5
  413. package/server/stack-health-CJLMrLBl.js +3 -0
  414. package/server/{stack-health-puygdaMd.js → stack-health-DqSqx0zv.js} +68 -12
  415. package/server/{stale-task-claims-BbFwCTb0.js → stale-task-claims-CYFOUNlT.js} +4 -4
  416. package/server/{staleness-Cbl_w4Bw.js → staleness-BQ-0gMYK.js} +1 -1
  417. package/server/{staleness-Bpy41ngS.js → staleness-D47CUJok.js} +1 -1
  418. package/server/{state-home-CIGjwNfJ.js → state-home-BYV7qZTW.js} +2 -2
  419. package/server/{state-mapping-BL_-3Yt8.js → state-mapping-BVldLhBf.js} +1 -1
  420. package/server/{state-migrate-Dkzaxvny.js → state-migrate-CvvBtS0Y.js} +4 -4
  421. package/server/{stuck-remediation-sY_MHHgQ.js → stuck-remediation-Wt0UVvu1.js} +1 -1
  422. package/server/{stuck-remediation-CzEov_fq.js → stuck-remediation-mkLC6G_t.js} +360 -26
  423. package/server/{substrate-bug-weights-service-BH66lhm7.js → substrate-bug-weights-service-XfLAKnmK.js} +3 -3
  424. package/server/{summary-fork-D8bXjCr7.js → summary-fork-CD7GOts0.js} +2 -2
  425. package/server/{summary-fork-DHhJIsAL.js → summary-fork-xiXBnWG9.js} +78 -12
  426. package/server/supervisor/{injection-budget-C1iPirFS.js → injection-budget-B5SbvDx2.js} +2 -41
  427. package/server/supervisor/{paths-DehGY2Fj.js → paths-K3noE4N_.js} +1 -1
  428. package/server/supervisor/pty-supervisor.js +49 -2
  429. package/server/supervisor/pty-token-B7lp0ElT.js +43 -0
  430. package/server/{supervisor-BO-Zk_h-.js → supervisor-DL788vos.js} +3 -3
  431. package/server/supervisor-UWiQNK-y.js +2 -0
  432. package/server/{swarm-readiness-CQ_fwUWF.js → swarm-readiness-BV14DF5N.js} +3 -3
  433. package/server/{system-prerequisites-Bza0ffAh.js → system-prerequisites-pdWG6ZQs.js} +56 -29
  434. package/server/{teardown-workspace-CEgauF4U.js → teardown-workspace-l2F4_zim.js} +15 -16
  435. package/server/{test-agent-queue-DXDt0Xa-.js → test-agent-queue-qakFIIGz.js} +6 -6
  436. package/server/{test-verdict-CmUBK5cT.js → test-verdict-BJYDggMm.js} +1 -1
  437. package/server/{test-verdict-DFjjIHR5.js → test-verdict-Gw-btEfb.js} +1 -1
  438. package/server/{tldr-daemon-DL566HbH.js → tldr-daemon-BKOYB616.js} +1 -1
  439. package/server/{tldr-daemon-BDtLOIlO.js → tldr-daemon-CBaWkV9k.js} +2 -2
  440. package/server/{tmux-ftABRAmc.js → tmux-B1Wbxz5o.js} +3 -3
  441. package/server/{tmux-DoThH6aj.js → tmux-DQ6jB76i.js} +1 -1
  442. package/server/tmux-dedup-DbN6MGzM.js +892 -0
  443. package/server/{token-CsOhvw42.js → token-Cxbk023d.js} +2 -2
  444. package/server/{token-util-CTmczIfW.js → token-util-CLq2MmQt.js} +1 -1
  445. package/server/token-util-zlz9U0ki.js +3 -0
  446. package/server/{tracker-config-B4itFzDo.js → tracker-config-DZ8Zn2nQ.js} +2 -2
  447. package/server/{tracker-utils-tnxxqROg.js → tracker-utils-L0FKtjq2.js} +3 -3
  448. package/server/{traefik-connect-m73vGebA.js → traefik-connect-bNX6jKkb.js} +1 -1
  449. package/server/{tunnel-B2vxjx_b.js → tunnel-BAm1XgjG.js} +3 -3
  450. package/server/{tunnel-Cgj-IGIl.js → tunnel-CjSnHdTc.js} +1 -1
  451. package/server/{types-BBNjPcqU.js → types-q67TYYg5.js} +1 -1
  452. package/server/uat-promote-verification-CKB9ZrKC.js +92 -0
  453. package/server/uat-train-Cu-4nvbf.js +2 -0
  454. package/server/uat-train-D5UjcyAa.js +0 -0
  455. package/server/validate-Cxsx5Uz1.js +179 -0
  456. package/server/{validation-CIi6pnI2.js → validation-DEaTZafj.js} +1 -1
  457. package/server/{validation-B5JxoPUS.js → validation-VZgJxmqc.js} +4 -4
  458. package/server/{verification-artifact-C-lIHfUa.js → verification-artifact-C85cRTc_.js} +1 -1
  459. package/server/{verification-artifact-BcnIbigL.js → verification-artifact-g3yuxQDL.js} +1 -1
  460. package/server/{verification-runner-CDj4lD4t.js → verification-runner-DlZI8yhw.js} +1 -1
  461. package/server/{verification-runner-Br0S_Ous.js → verification-runner-KDZIsBj4.js} +114 -107
  462. package/server/{vtt-parser-DKpNNW5i.js → vtt-parser-Jr94BF3Y.js} +1 -1
  463. package/server/{work-agent-prompt-Yb2bd3Fq.js → work-agent-prompt-C-vuP3_J.js} +20 -9
  464. package/server/workflows-CHrx_hcW.js +2 -0
  465. package/server/{workflows-C9WmILql.js → workflows-D0oip4eV.js} +161 -78
  466. package/server/{workspace-DuUdndHe.js → workspace-BqFg__wH.js} +1 -1
  467. package/server/{workspace-BVl4rihN.js → workspace-C0fH3aek.js} +3 -3
  468. package/server/workspace-anchor-drift-B4gMRHl4.js +3 -0
  469. package/server/workspace-anchor-drift-CZKofakh.js +224 -0
  470. package/server/{workspace-config-cEGcO6UT.js → workspace-config-B123aZl-.js} +1 -1
  471. package/server/workspace-manager-CDTKjjdU.js +3 -0
  472. package/server/{workspace-manager-hLUv3ADC.js → workspace-manager-CwO-Hek7.js} +206 -116
  473. package/server/{workspace-metadata-CskwzzhL.js → workspace-metadata-CQv00QwK.js} +2 -2
  474. package/server/{workspace-metadata-DNpMixRq.js → workspace-metadata-D4M8BM4W.js} +1 -1
  475. package/server/{workspaces-hWvy9eKs.js → workspaces-j1e_6aAT.js} +736 -290
  476. package/sync-sources/dev-skills/pan-dashboard-restart/SKILL.md +34 -10
  477. package/sync-sources/hooks/linear-mcp-auth-hook +97 -0
  478. package/sync-sources/hooks/record-cost-event.js +6 -4
  479. package/sync-sources/rules/ask-user-question-self-contained.md +9 -0
  480. package/sync-sources/skills/okf/README.md +11 -3
  481. package/sync-sources/skills/okf/SKILL.md +12 -1
  482. package/sync-sources/skills/okf/docs/USAGE.md +15 -0
  483. package/sync-sources/skills/okf/references/overdeck.md +28 -0
  484. package/sync-sources/skills/pan-close/SKILL.md +5 -3
  485. package/sync-sources/skills/pan-flywheel/SKILL.md +18 -1
  486. package/sync-sources/skills/pan-knowledge/SKILL.md +10 -0
  487. package/sync-sources/skills/pan-orders/SKILL.md +33 -0
  488. package/sync-sources/skills/pan-peer-review/SKILL.md +195 -0
  489. package/sync-sources/skills/pan-reload/SKILL.md +3 -3
  490. package/sync-sources/skills/pan-restart/SKILL.md +5 -4
  491. package/sync-sources/skills/pan-review/SKILL.md +7 -1
  492. package/sync-sources/skills/pan-start/SKILL.md +4 -0
  493. package/sync-sources/skills/pan-sync-main/SKILL.md +9 -8
  494. package/sync-sources/skills/pipeline-status/SKILL.md +10 -1
  495. package/sync-sources/skills/workspace-add-repo/SKILL.md +16 -1
  496. package/sync-sources/templates/traefik/dynamic/overdeck.yml.template +10 -0
  497. package/server/activity-logger-OEUBdfZ8.js +0 -3
  498. package/server/agent-state-Bg0lhqwj.js +0 -3
  499. package/server/agents-FlIgQ3ql.js +0 -3
  500. package/server/archive-planning-zkJb3BeM.js +0 -3
  501. package/server/cli-BsVIHwzC.js +0 -3
  502. package/server/context-layers-B3Nt58jl.js +0 -4
  503. package/server/context-layers-ZYFcWiyc.js +0 -165
  504. package/server/conversation-service-Up7FEzIC.js +0 -3
  505. package/server/deacon-DYSEJb48.js +0 -4
  506. package/server/deacon-swarm-9jRLS5Ke.js +0 -2
  507. package/server/deploy-window-CM6W1-c6.js +0 -3
  508. package/server/dist-Bd3vn0Hw.js +0 -3
  509. package/server/flywheel-DMCUzDWg.js +0 -2
  510. package/server/flywheel-DSSpWmqF.js +0 -522
  511. package/server/flywheel-DcBkQvgE.js +0 -207
  512. package/server/flywheel-merge-order-C-6zRLvM.js +0 -2
  513. package/server/flywheel-merge-order-DxbQKE1d.js +0 -244
  514. package/server/forge-B-ZWyTRm.js +0 -2
  515. package/server/forge-Ch9gCFod.js +0 -270
  516. package/server/git-utils-Dry_Ka_D.js +0 -3
  517. package/server/github-pr-lookup-BRbDW-qk.js +0 -44
  518. package/server/hume-B_DbflNM.js +0 -3
  519. package/server/inspect-agent-ch-F-5Ci.js +0 -2
  520. package/server/launcher-generator-CHVm7bGT.js +0 -379
  521. package/server/layers-DzxSTGNA.js +0 -93
  522. package/server/merge-blockers-BsFjGrQ8.js +0 -41
  523. package/server/merge-ops-DlB1IM0Y.js +0 -2
  524. package/server/merge-set-DLz0MkGT.js +0 -139
  525. package/server/merge-set-DnSYdBEp.js +0 -3
  526. package/server/merge-sync-SSv3E-pl.js +0 -3
  527. package/server/merge-verification-CSizH3HY.js +0 -124
  528. package/server/projects-9SkRpES9.js +0 -3
  529. package/server/public/assets/index-CUr1xv8w.css +0 -1
  530. package/server/public/assets/index-CsSuZQBI.js +0 -802
  531. package/server/public/assets/mermaid-GHXKKRXX-BUAB8hqt.js +0 -1
  532. package/server/rally-njs_mJrt.js +0 -3
  533. package/server/rebuild-stack-kA7XngID.js +0 -3
  534. package/server/record-t6V-3Dcj.js +0 -3
  535. package/server/record-update-DACtKh6_.js +0 -3
  536. package/server/resume-CcKqnTvE.js +0 -3
  537. package/server/review-status-A7quS5KJ.js +0 -1454
  538. package/server/review-status-C6n6-9f_.js +0 -3
  539. package/server/settings-D0OSwos5.js +0 -2
  540. package/server/specs-nN45DG2X.js +0 -3
  541. package/server/src-U7_kTPEE.js +0 -4733
  542. package/server/stack-health-Df0YEZKa.js +0 -3
  543. package/server/supervisor-BPy-o1A8.js +0 -2
  544. package/server/token-util-DrHg8abn.js +0 -3
  545. package/server/tracker-utils-BePq_oj-.js +0 -3
  546. package/server/uat-train-CuEn0t9M.js +0 -2152
  547. package/server/uat-train-cKfM-_WW.js +0 -2
  548. package/server/workflows-D90rMOya.js +0 -2
  549. package/server/workspace-manager-ZTdJAy9M.js +0 -3
@@ -1,31 +1,32 @@
1
1
  import { a as __toCommonJS } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { $ as derefWorkhorse, Br as getOverdeckHome, Dt as getProjectConfigFromWorkspacePath, Ft as resolveProjectForIssue, Ot as init_record, Pt as readRecordContinueViewSync, Tn as init_projects, Vr as init_paths, f as loadConfigSync, hr as AGENTS_DIR, mr as init_errors, t as init_config_yaml, wr as OVERDECK_HOME, zn as resolveProjectFromIssueSync } from "./config-yaml-DvyMuOle.js";
3
- import { a as init_activity_logger, n as emitActivityEntrySync } from "./activity-logger-DDlOIAML.js";
4
- import { D as sql, E as like, S as gte, _ as integer, a as EventBus, b as and, f as init_infra, g as real, h as text, i as DbLive, m as sqliteTable, n as CostArchiveLive, o as EventBusLive, p as init_sqlite_core, r as Db, t as CostArchive, v as init_drizzle_orm, x as eq, y as desc } from "./infra-CzaSOgul.js";
5
- import { D as killSession, H as sessionExists, U as sessionExistsSync, m as exactPaneTarget, w as init_tmux } from "./tmux-ftABRAmc.js";
6
- import { b as setReviewStatusSync, d as loadReviewStatuses, l as init_review_status } from "./review-status-A7quS5KJ.js";
7
- import { n as init_issues, t as IssueId } from "./issues-B6ToV6x1.js";
8
- import { a as getAllBudgetsSync, i as deleteBudgetSync, n as checkBudgetSync, r as createBudgetSync, s as init_cost } from "./cost-Ca0YTWDw.js";
9
- import { Bn as getAgentDir, Cr as getAgentRuntimeStateSync, Hn as getAgentState, J as isContextOverflowTail, K as init_context_overflow, Mr as init_ohmypi_parser, Nr as parseOhmypiSessionCostResultSync, Tr as saveAgentRuntimeState, Wn as getAgentStateSync, a as listRunningAgentsSync, b as init_agents, ir as saveAgentStateSync, lt as spawnAgent, pt as stopAgentSync } from "./queries-6d7Cdtm7.js";
10
- import { n as parseCodexSessionCostEventsSync, r as parseCodexSessionSync, t as init_codex_parser } from "./codex-parser-C4gSH-IR.js";
11
- import { _ as init_tier_metrics, c as getDailyTrendsSync, d as init_cost_sync, h as deriveTieredAgentCostRole, t as getAgentDailyCostSync } from "./cost-sync-C0VdGme1.js";
12
- import { n as init_issue_service_singleton, r as issue_service_singleton_exports } from "./issue-service-singleton-B5ushCvE.js";
13
- import { r as isRoleTerminal } from "./review-status-source-CxuEjLGg.js";
14
- import { m as readWorkspacePlanSync, o as init_io } from "./io-B3_AHDfr.js";
15
- import { a as requireModelOverrideSync, r as init_model_validation } from "./launcher-generator-CHVm7bGT.js";
16
- import { _ as setDeaconGloballyPaused, c as isCloisterSpawnsPausedSync, d as isFlywheelAutoPickupBacklog, g as setCloisterSpawnsPausedSync, s as init_control_settings, x as setFlywheelGloballyPaused } from "./control-settings-aP1ANIlI.js";
17
- import { n as checkHookSync, p as init_hooks } from "./hooks-DUXw8A0-.js";
18
- import { a as loadCloisterConfigSync, n as getHealthThresholdsMs, r as init_config } from "./config-DjLOdbgT.js";
19
- import { t as init_reap_terminal_sessions } from "./reap-terminal-sessions-N3BTkmX_.js";
20
- import { o as getRuntimeForAgent } from "./stuck-remediation-CzEov_fq.js";
21
- import "./flywheel-DSSpWmqF.js";
22
- import { B as recordDeadEndNeedsYou, C as getLastPatrolResult, D as isDeaconRunning, N as runPatrol, R as startDeacon, S as getDeaconStatus, St as deliverOrchestratedCompact, n as assessDeaconPatrolFreshness, x as getDeaconLogs, z as stopDeacon } from "./deacon-pRnyD5w9.js";
23
- import { n as renderPrompt, t as init_prompts } from "./prompts-Dp4Tpk39.js";
24
- import { U as getTmuxSessionName, t as init_specialists } from "./specialists-DyFeedjn.js";
25
- import { n as init_issue_closed, r as isIssueClosed } from "./issue-closed-zhdvQicO.js";
26
- import { n as shouldSkipDispatchAsMerged, t as init_merge_verification } from "./merge-verification-CSizH3HY.js";
27
- import { m as init_pickup, n as LEGACY_PARKED_LABELS } from "./pickup-Dd0Znxxy.js";
28
- import { r as writeHealthEvent } from "./health-events-C9B8y1Hm.js";
2
+ import { $ as derefWorkhorse, Bt as readRecordContinueViewSync, Fr as init_errors, Gn as init_projects, Gr as OVERDECK_HOME, Ir as AGENTS_DIR, Nt as getProjectConfigFromWorkspacePath, Pt as init_record, Vt as resolveProjectForIssue, ar as resolveProjectFromIssueSync, ci as init_paths, f as loadConfigSync, si as getOverdeckHome, t as init_config_yaml } from "./config-yaml-CmOPzmBb.js";
3
+ import { o as init_activity_logger, r as emitActivityEntrySync } from "./activity-logger-CyteR4JO.js";
4
+ import { D as sql, E as like, S as gte, _ as integer, a as EventBus, b as and, f as init_infra, g as real, h as text, i as DbLive, m as sqliteTable, n as CostArchiveLive, o as EventBusLive, p as init_sqlite_core, r as Db, t as CostArchive, v as init_drizzle_orm, x as eq, y as desc } from "./infra-BjuxvjdS.js";
5
+ import { D as killSession, H as sessionExists, U as sessionExistsSync, m as exactPaneTarget, w as init_tmux } from "./tmux-B1Wbxz5o.js";
6
+ import { S as setReviewStatusSync, f as init_review_status, m as loadReviewStatuses } from "./review-status-yljtTd-q.js";
7
+ import { n as init_issues, t as IssueId } from "./issues-CgnQ1OGQ.js";
8
+ import { a as getAllBudgetsSync, i as deleteBudgetSync, n as checkBudgetSync, r as createBudgetSync, s as init_cost } from "./cost-Bgcub5kW.js";
9
+ import { $n as getAgentDir, Gr as init_ohmypi_parser, Ir as getAgentRuntimeStateSync, J as isContextOverflowTail, K as init_context_overflow, Kr as parseOhmypiSessionCostResultSync, Rr as saveAgentRuntimeState, _r as saveAgentStateSync, a as listRunningAgentsSync, b as init_agents, mt as stopAgentSync, rr as getAgentStateSync, tr as getAgentState, ut as spawnAgent } from "./queries-DHJm7bTd.js";
10
+ import { n as parseCodexSessionCostEventsSync, r as parseCodexSessionSync, t as init_codex_parser } from "./codex-parser-DpB89Vqa.js";
11
+ import { _ as init_tier_metrics, c as getDailyTrendsSync, d as init_cost_sync, h as deriveTieredAgentCostRole, t as getAgentDailyCostSync } from "./cost-sync-Dv3LUaNW.js";
12
+ import { n as init_issue_service_singleton, r as issue_service_singleton_exports } from "./issue-service-singleton-DmCh7EHj.js";
13
+ import { r as isRoleTerminal } from "./review-status-source-CpvJnvnQ.js";
14
+ import { m as readWorkspacePlanSync, o as init_io } from "./io-VHvc0Ssp.js";
15
+ import { g as requireModelOverrideSync, m as init_model_validation } from "./tmux-dedup-DbN6MGzM.js";
16
+ import { S as setFlywheelGloballyPaused, _ as setCloisterSpawnsPausedSync, c as isCloisterSpawnsPausedSync, d as isFlywheelAutoPickupBacklog, s as init_control_settings, v as setDeaconGloballyPaused } from "./control-settings-C7DUehE1.js";
17
+ import { n as checkHookSync, p as init_hooks } from "./hooks-BO3QT1sn.js";
18
+ import { a as loadCloisterConfigSync, n as getHealthThresholdsMs, r as init_config } from "./config-B2IMcBxx.js";
19
+ import { t as init_reap_terminal_sessions } from "./reap-terminal-sessions-CvmwaqKv.js";
20
+ import { o as getRuntimeForAgent } from "./stuck-remediation-mkLC6G_t.js";
21
+ import { m as init_pickup, n as LEGACY_PARKED_LABELS } from "./pickup-D8xtG1J2.js";
22
+ import "./flywheel-BiT3odRb.js";
23
+ import { Ct as deliverOrchestratedCompact, E as isDeaconRunning, L as startDeacon, M as runPatrol, R as stopDeacon, S as getLastPatrolResult, b as getDeaconLogs, n as assessDeaconPatrolFreshness, x as getDeaconStatus } from "./deacon-hi9KLPLT.js";
24
+ import { n as renderPrompt, t as init_prompts } from "./prompts-BEx08AIu.js";
25
+ import { n as init_issue_closed, r as isIssueClosed } from "./issue-closed-B6KJkmHZ.js";
26
+ import { U as getTmuxSessionName, t as init_specialists } from "./specialists-Cicieuzu.js";
27
+ import { n as init_merge_verification, r as shouldSkipDispatchAsMerged } from "./merge-verification-x3JO8Dtz.js";
28
+ import { t as recordDeadEndNeedsYou } from "./dead-end-trip-CQcP70ND.js";
29
+ import { r as writeHealthEvent } from "./health-events-CazRxJUS.js";
29
30
  import { join } from "node:path";
30
31
  import { Context, Data, Effect, Layer, Schema } from "effect";
31
32
  import { appendFileSync, existsSync, mkdirSync, readFileSync, readdirSync, renameSync, statSync, unlinkSync, writeFileSync } from "fs";
@@ -695,6 +696,7 @@ HttpApiGroup.make("costs").add(HttpApiEndpoint.get("summary", "/costs/summary",
695
696
  "claude",
696
697
  "ohmypi",
697
698
  "codex",
699
+ "acp",
698
700
  "wal"
699
701
  ])),
700
702
  dryRun: Schema.optional(Schema.Boolean),
@@ -738,6 +740,7 @@ init_review_status();
738
740
  init_io();
739
741
  init_control_settings();
740
742
  init_hooks();
743
+ init_pickup();
741
744
  init_agents();
742
745
  init_config();
743
746
  /**
@@ -848,7 +851,7 @@ function getAgentsNeedingAttention(agentHealths) {
848
851
  * Captures and serializes agent context for handoffs between models.
849
852
  */
850
853
  init_prompts();
851
- const execAsync$3 = promisify$1(exec$1);
854
+ const execAsync$2 = promisify$1(exec$1);
852
855
  async function captureHandoffContextPromise(agentState, targetModel, reason) {
853
856
  const context = {
854
857
  issueId: agentState.issueId,
@@ -887,17 +890,17 @@ async function captureFiles(context, workspace, issueId) {
887
890
  */
888
891
  async function captureGitState(context, workspace) {
889
892
  try {
890
- const { stdout: branch } = await execAsync$3("git branch --show-current", {
893
+ const { stdout: branch } = await execAsync$2("git branch --show-current", {
891
894
  cwd: workspace,
892
895
  encoding: "utf-8"
893
896
  });
894
897
  context.gitBranch = branch.trim();
895
- const { stdout: status } = await execAsync$3("git status --porcelain", {
898
+ const { stdout: status } = await execAsync$2("git status --porcelain", {
896
899
  cwd: workspace,
897
900
  encoding: "utf-8"
898
901
  });
899
902
  context.uncommittedFiles = status.split("\n").filter((line) => line.trim()).map((line) => line.substring(3));
900
- const { stdout: lastCommit } = await execAsync$3("git log -1 --oneline", {
903
+ const { stdout: lastCommit } = await execAsync$2("git log -1 --oneline", {
901
904
  cwd: workspace,
902
905
  encoding: "utf-8"
903
906
  });
@@ -1380,7 +1383,6 @@ function getCostSummary() {
1380
1383
  //#endregion
1381
1384
  //#region ../../lib/cloister/autonomous-plan-dispatch.ts
1382
1385
  init_agents();
1383
- init_pickup();
1384
1386
  async function gatherAutonomousPlanDispatchInput(issueId) {
1385
1387
  const normalizedIssueId = issueId.trim().toUpperCase();
1386
1388
  const issueLower = normalizedIssueId.toLowerCase();
@@ -1454,7 +1456,6 @@ init_agents();
1454
1456
  init_tmux();
1455
1457
  init_issue_closed();
1456
1458
  init_merge_verification();
1457
- const execAsync$2 = promisify(exec);
1458
1459
  /** Return issues orphaned in reviewStatus='reviewing' with no active reviewer. */
1459
1460
  function identifyOrphanedReviewingIssues(statuses, activeReviewIssues) {
1460
1461
  const orphaned = [];
@@ -1542,10 +1543,10 @@ async function activeRoleRunExists(issueId, role, workspacePath) {
1542
1543
  if (stateRole === role && state.status === "starting" && !await Effect.runPromise(sessionExists(candidateId))) return isFreshStarting(state);
1543
1544
  if (!(stateRole === role && state.status !== "stopped" && state.status !== "error")) return false;
1544
1545
  if (workspacePath && state.roleRunHead) try {
1545
- const { stdout } = await execAsync$2("git rev-parse --short=8 HEAD", { cwd: workspacePath });
1546
- const currentHead = stdout.trim();
1546
+ const { formatAnchorShort, snapshotWorkspaceHeadsPromise } = await import("./git-utils-CI6cwyyC.js");
1547
+ const currentHead = await snapshotWorkspaceHeadsPromise(issueId, workspacePath);
1547
1548
  if (currentHead && currentHead !== state.roleRunHead) {
1548
- console.log(`[cloister] ${issueId}: ${role} session ${candidateId} is stale (ran against ${state.roleRunHead}, HEAD is now ${currentHead}) — not active`);
1549
+ console.log(`[cloister] ${issueId}: ${role} session ${candidateId} is stale (ran against ${formatAnchorShort(state.roleRunHead)}, HEAD is now ${formatAnchorShort(currentHead)}) — not active`);
1549
1550
  return false;
1550
1551
  }
1551
1552
  } catch {}
@@ -1595,7 +1596,7 @@ async function onIssueStateChangePromise(issueId, newState) {
1595
1596
  });
1596
1597
  return;
1597
1598
  }
1598
- const { getReviewStatusSync } = await import("./review-status-C6n6-9f_.js");
1599
+ const { getReviewStatusSync } = await import("./review-status-BZH8h-6W.js");
1599
1600
  if (getReviewStatusSync(normalizedIssueId)?.mergeStatus === "merged") {
1600
1601
  const message = `${normalizedIssueId}: skipping ${role} dispatch — merge already landed (merge_status='merged' is terminal)`;
1601
1602
  console.log(`[cloister] ${message}`);
@@ -1662,7 +1663,7 @@ async function onIssueStateChangePromise(issueId, newState) {
1662
1663
  return;
1663
1664
  }
1664
1665
  const branch = `feature/${normalizedIssueId.toLowerCase()}`;
1665
- const { spawnReviewRoleForIssue } = await import("./review-agent-DJRO8EG8.js");
1666
+ const { spawnReviewRoleForIssue } = await import("./review-agent-CD4RCI0Y.js");
1666
1667
  const result = await Effect.runPromise(spawnReviewRoleForIssue({
1667
1668
  issueId: normalizedIssueId,
1668
1669
  workspace,
@@ -1680,7 +1681,7 @@ async function onIssueStateChangePromise(issueId, newState) {
1680
1681
  }
1681
1682
  if (role === "test") {
1682
1683
  const branch = `feature/${normalizedIssueId.toLowerCase()}`;
1683
- const { dispatchTestAgentAndNotify } = await import("./test-agent-queue-DXDt0Xa-.js");
1684
+ const { dispatchTestAgentAndNotify } = await import("./test-agent-queue-qakFIIGz.js");
1684
1685
  await Effect.runPromise(dispatchTestAgentAndNotify(normalizedIssueId, workspace ?? void 0, branch));
1685
1686
  const message = `${normalizedIssueId}: test role dispatched from lifecycle state '${newState}'`;
1686
1687
  console.log(`[cloister] ${message}`);
@@ -1692,7 +1693,7 @@ async function onIssueStateChangePromise(issueId, newState) {
1692
1693
  });
1693
1694
  return;
1694
1695
  }
1695
- const { spawnRun } = await import("./agents-FlIgQ3ql.js");
1696
+ const { spawnRun } = await import("./agents-BKKkxKgK.js");
1696
1697
  if (role === "plan") {
1697
1698
  const decision = decideAutonomousPlanDispatch(await gatherAutonomousPlanDispatchInput(normalizedIssueId));
1698
1699
  if (!decision.allow) {
@@ -1794,30 +1795,35 @@ function issueStateChangeFromDomainEvent(event) {
1794
1795
  }
1795
1796
  }
1796
1797
  async function handleCloisterDomainEventPromise(event) {
1798
+ if (event.type === "linear_mcp_auth.healthy") {
1799
+ const { processLinearMcpAuthWake } = await import("./linear-mcp-auth-NYBq_oHZ.js");
1800
+ await processLinearMcpAuthWake();
1801
+ return;
1802
+ }
1797
1803
  if (event.type === "agent.stopped") {
1798
1804
  const agentId = event.payload?.agentId;
1799
1805
  if (agentId) {
1800
- const { handleAgentStoppedEvent, handleAgentStoppedForOrphanReviewerSessions } = await import("./deacon-DYSEJb48.js");
1801
- const { handleAgentLifecycleEventForIdleStack } = await import("./idle-stack-reaper-D7w9t3fE.js");
1806
+ const { handleAgentStoppedEvent, handleAgentStoppedForOrphanReviewerSessions } = await import("./deacon-DrXqT9LQ.js");
1807
+ const { handleAgentLifecycleEventForIdleStack } = await import("./idle-stack-reaper-BYqERdkE.js");
1802
1808
  handleAgentLifecycleEventForIdleStack(agentId);
1803
1809
  const slotMatch = /^agent-(.+)-slot-\d+$/.exec(agentId);
1804
1810
  await Promise.all([
1805
1811
  handleAgentStoppedEvent(agentId),
1806
1812
  handleAgentStoppedForOrphanReviewerSessions(agentId),
1807
- slotMatch ? (await import("./deacon-swarm-9jRLS5Ke.js")).coordinateSwarmSlots({ issueId: slotMatch[1].toUpperCase() }) : Promise.resolve([])
1813
+ slotMatch ? (await import("./deacon-swarm-I2JfX5Tg.js")).coordinateSwarmSlots({ issueId: slotMatch[1].toUpperCase() }) : Promise.resolve([])
1808
1814
  ]);
1809
1815
  }
1810
1816
  return;
1811
1817
  }
1812
1818
  if (event.type === "agent.started") {
1813
1819
  const agentId = event.payload?.agentId;
1814
- if (agentId) (await import("./idle-stack-reaper-D7w9t3fE.js")).handleAgentLifecycleEventForIdleStack(agentId);
1820
+ if (agentId) (await import("./idle-stack-reaper-BYqERdkE.js")).handleAgentLifecycleEventForIdleStack(agentId);
1815
1821
  return;
1816
1822
  }
1817
1823
  if (event.type === "agent.heartbeat_dead") {
1818
1824
  const agentId = event.payload?.agentId;
1819
1825
  if (agentId) {
1820
- const { handleAgentHeartbeatDeadEvent } = await import("./deacon-DYSEJb48.js");
1826
+ const { handleAgentHeartbeatDeadEvent } = await import("./deacon-DrXqT9LQ.js");
1821
1827
  await handleAgentHeartbeatDeadEvent(agentId, "event");
1822
1828
  }
1823
1829
  return;
@@ -1826,7 +1832,7 @@ async function handleCloisterDomainEventPromise(event) {
1826
1832
  const payload = event.payload;
1827
1833
  const issueId = payload?.issueId;
1828
1834
  if (issueId) {
1829
- const { handleReviewCoordinatorDied } = await import("./deacon-DYSEJb48.js");
1835
+ const { handleReviewCoordinatorDied } = await import("./deacon-DrXqT9LQ.js");
1830
1836
  await handleReviewCoordinatorDied(issueId, payload?.sessionName ?? "", payload?.reason ?? "");
1831
1837
  }
1832
1838
  return;
@@ -1834,7 +1840,7 @@ async function handleCloisterDomainEventPromise(event) {
1834
1840
  if (event.type === "work.completed") {
1835
1841
  const issueId = event.payload?.issueId;
1836
1842
  if (issueId) {
1837
- const { handleWorkCompleted } = await import("./deacon-DYSEJb48.js");
1843
+ const { handleWorkCompleted } = await import("./deacon-DrXqT9LQ.js");
1838
1844
  await handleWorkCompleted(issueId);
1839
1845
  }
1840
1846
  }
@@ -1845,12 +1851,12 @@ async function handleCloisterDomainEventPromise(event) {
1845
1851
  const status = payload?.status?.toLowerCase();
1846
1852
  if (issueId) {
1847
1853
  if (canonicalStatus === "closed" || status === "closed") {
1848
- const { handleIssueStatusChangedClosed } = await import("./closed-issue-reaper-CWpY2uBw.js");
1854
+ const { handleIssueStatusChangedClosed } = await import("./closed-issue-reaper-CJ24u0Zt.js");
1849
1855
  await handleIssueStatusChangedClosed(issueId);
1850
1856
  return;
1851
1857
  }
1852
1858
  if (canonicalStatus === "todo" || status === "planned" || status === "todo") {
1853
- const { handleOrphanProposedSpec } = await import("./orphan-proposed-reconciler-BTkDrl4R.js");
1859
+ const { handleOrphanProposedSpec } = await import("./orphan-proposed-reconciler-CWmOdM9-.js");
1854
1860
  await handleOrphanProposedSpec(issueId);
1855
1861
  }
1856
1862
  }
@@ -2548,7 +2554,7 @@ async function performHealthCheck(host) {
2548
2554
  for (const health of needsAttention) {
2549
2555
  const idleAgentState = getAgentStateSync(health.agentId);
2550
2556
  if (idleAgentState?.role === "sequencer") continue;
2551
- const { shouldSkipIdlePokeForAgent } = await import("./stuck-remediation-sY_MHHgQ.js");
2557
+ const { shouldSkipIdlePokeForAgent } = await import("./stuck-remediation-Wt0UVvu1.js");
2552
2558
  if (shouldSkipIdlePokeForAgent(idleAgentState)) {
2553
2559
  host.pokeProgress.delete(health.agentId);
2554
2560
  continue;
@@ -2795,7 +2801,7 @@ async function checkCompletionMarkers(host) {
2795
2801
  if (retryCount === Infinity) host.processedCompletions.delete(dir.name);
2796
2802
  else if (retryCount >= 3) continue;
2797
2803
  const issueId = dir.name.replace("agent-", "").toUpperCase();
2798
- const { getReviewStatusSync } = await import("./review-status-C6n6-9f_.js");
2804
+ const { getReviewStatusSync } = await import("./review-status-BZH8h-6W.js");
2799
2805
  const existingReview = getReviewStatusSync(issueId);
2800
2806
  if (existingReview && ["reviewing", "passed"].includes(existingReview.reviewStatus || "")) {
2801
2807
  console.log(`🔔 Cloister: Completion marker for ${issueId} — review already ${existingReview.reviewStatus}, marking processed`);
@@ -2916,11 +2922,16 @@ async function progressFingerprint(_host, agentId) {
2916
2922
  const state = getAgentStateSync(agentId);
2917
2923
  let head = "";
2918
2924
  if (state?.workspace) try {
2919
- const { stdout } = await execAsync("git rev-parse HEAD", {
2920
- cwd: state.workspace,
2921
- encoding: "utf-8"
2922
- });
2923
- head = stdout.trim();
2925
+ if (state.issueId) {
2926
+ const { snapshotWorkspaceHeadsPromise } = await import("./git-utils-CI6cwyyC.js");
2927
+ head = await snapshotWorkspaceHeadsPromise(state.issueId, state.workspace) ?? "";
2928
+ } else {
2929
+ const { stdout } = await execAsync("git rev-parse HEAD", {
2930
+ cwd: state.workspace,
2931
+ encoding: "utf-8"
2932
+ });
2933
+ head = stdout.trim();
2934
+ }
2924
2935
  } catch {}
2925
2936
  let pane = "";
2926
2937
  try {
@@ -2950,7 +2961,7 @@ async function pokeAgentWithEscalation(host, agentId) {
2950
2961
  ineffective
2951
2962
  });
2952
2963
  if (ineffective >= 4) {
2953
- const { setAgentPausedSync } = await import("./agent-state-Bg0lhqwj.js");
2964
+ const { setAgentPausedSync } = await import("./agent-state-VQk8fY9F.js");
2954
2965
  try {
2955
2966
  setAgentPausedSync(agentId, `needs-you: idle-alive — no observable progress across ${ineffective + 1} pokes (idle-alive escalation)`);
2956
2967
  host.emit({
@@ -3041,7 +3052,7 @@ async function handleAgentCrash(host, agentId) {
3041
3052
  if (skipReason) {
3042
3053
  let recoverUnfinishedOneShot = false;
3043
3054
  if (ONE_SHOT_ROLES.has(agentState.role) && agentState.sessionId && agentState.issueId) try {
3044
- const { getReviewStatusSync } = await import("./review-status-C6n6-9f_.js");
3055
+ const { getReviewStatusSync } = await import("./review-status-BZH8h-6W.js");
3045
3056
  const status = getReviewStatusSync(agentState.issueId);
3046
3057
  recoverUnfinishedOneShot = !(status ? isRoleTerminal(agentState.role, {
3047
3058
  reviewStatus: status.reviewStatus,
@@ -3477,7 +3488,7 @@ var CloisterService = class {
3477
3488
  let clearedSpecialistCount = 0;
3478
3489
  try {
3479
3490
  if (existsSync(AGENTS_DIR)) {
3480
- const { isRunning: isSpecialistRunning } = await import("./specialists-DVj0hvaL.js");
3491
+ const { isRunning: isSpecialistRunning } = await import("./specialists-Tdezg_6N.js");
3481
3492
  const entries = readdirSync(AGENTS_DIR, { withFileTypes: true });
3482
3493
  for (const entry of entries) {
3483
3494
  if (!entry.isDirectory()) continue;
@@ -3512,8 +3523,8 @@ var CloisterService = class {
3512
3523
  }
3513
3524
  try {
3514
3525
  const reviewStatuses = loadReviewStatuses();
3515
- const { resolveProjectFromIssueSync } = await import("./projects-9SkRpES9.js");
3516
- const { getTmuxSessionName, getAllProjectSpecialistStatuses } = await import("./specialists-DVj0hvaL.js");
3526
+ const { resolveProjectFromIssueSync } = await import("./projects-B03Wr-xc.js");
3527
+ const { getTmuxSessionName, getAllProjectSpecialistStatuses } = await import("./specialists-Tdezg_6N.js");
3517
3528
  const activeReviewIssues = /* @__PURE__ */ new Set();
3518
3529
  try {
3519
3530
  const projSpecs = await getAllProjectSpecialistStatuses();
@@ -3524,7 +3535,7 @@ var CloisterService = class {
3524
3535
  }
3525
3536
  const globalRs = getAgentRuntimeStateSync(getTmuxSessionName("review-agent"));
3526
3537
  if (globalRs?.state === "active" && globalRs.currentIssue) activeReviewIssues.add(globalRs.currentIssue.toUpperCase());
3527
- const { listRunningAgents } = await import("./agents-FlIgQ3ql.js");
3538
+ const { listRunningAgents } = await import("./agents-BKKkxKgK.js");
3528
3539
  const agents = await Effect.runPromise(listRunningAgents());
3529
3540
  for (const agent of agents) {
3530
3541
  if (agent.status === "stopped" || agent.status === "error") continue;
@@ -3567,7 +3578,7 @@ var CloisterService = class {
3567
3578
  continue;
3568
3579
  }
3569
3580
  const branch = `feature/${issueId.toLowerCase()}`;
3570
- const { spawnReviewRoleForIssue } = await import("./review-agent-DJRO8EG8.js");
3581
+ const { spawnReviewRoleForIssue } = await import("./review-agent-CD4RCI0Y.js");
3571
3582
  const dispatchResult = await Effect.runPromise(spawnReviewRoleForIssue({
3572
3583
  issueId,
3573
3584
  workspace,
@@ -3634,6 +3645,13 @@ var CloisterService = class {
3634
3645
  message: "Cloister agent watchdog started"
3635
3646
  });
3636
3647
  await this.subscribeToDomainEvents();
3648
+ try {
3649
+ const { processLinearMcpAuthWake } = await import("./linear-mcp-auth-NYBq_oHZ.js");
3650
+ await processLinearMcpAuthWake();
3651
+ console.log(" ✓ Reconciled pending Linear MCP auth wakes");
3652
+ } catch (error) {
3653
+ console.error(" ✗ Failed to recover pending Linear MCP auth wakes:", error);
3654
+ }
3637
3655
  this.startMonitoringLoop();
3638
3656
  }
3639
3657
  async subscribeToDomainEvents() {
@@ -3655,7 +3673,7 @@ var CloisterService = class {
3655
3673
  console.log(" ✓ Cloister event store provider installed");
3656
3674
  return;
3657
3675
  }
3658
- const { initEventStore } = await import("./event-store-Cr5PQwFC.js");
3676
+ const { initEventStore } = await import("./event-store-ELqkVOn0.js");
3659
3677
  const store = await initEventStore();
3660
3678
  this.eventStore = store;
3661
3679
  this.domainEventUnsubscribe = store.subscribe((event) => {
@@ -4005,4 +4023,4 @@ function getCloisterService() {
4005
4023
  //#endregion
4006
4024
  export { performHandoff as a, getAgentsNeedingAttention as c, CostResolverLive as d, CostWriter as f, checkAllTriggers as i, CostDoorLive as l, readCloisterStateFile as n, generateHealthSummary as o, setCloisterEventStoreProvider as r, getAgentHealth as s, getCloisterService as t, CostResolver as u };
4007
4025
 
4008
- //# sourceMappingURL=service-DCpB_SGd.js.map
4026
+ //# sourceMappingURL=service-Br9rpBNA.js.map
@@ -1,5 +1,5 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { Nr as encodeClaudeProjectDir, Vr as init_paths } from "./config-yaml-DvyMuOle.js";
2
+ import { ci as init_paths, ei as encodeClaudeProjectDir } from "./config-yaml-CmOPzmBb.js";
3
3
  import { join } from "node:path";
4
4
  import { mkdir, readFile, writeFile } from "node:fs/promises";
5
5
  import { randomUUID } from "node:crypto";
@@ -96,4 +96,4 @@ __esmMin((() => {
96
96
  }))();
97
97
  export { copySessionForFork, reserveForkSession };
98
98
 
99
- //# sourceMappingURL=session-fork-BQ8_6H32.js.map
99
+ //# sourceMappingURL=session-fork-D0LY152N.js.map
@@ -1,7 +1,7 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { Br as getOverdeckHome, Vr as init_paths } from "./config-yaml-DvyMuOle.js";
3
- import { o as getHarnessBehavior } from "./src-U7_kTPEE.js";
4
- import { t as init_behavior } from "./behavior-B_-4EKF3.js";
2
+ import { ci as init_paths, si as getOverdeckHome } from "./config-yaml-CmOPzmBb.js";
3
+ import { s as getHarnessBehavior } from "./src-CRmCHlma.js";
4
+ import { t as init_behavior } from "./behavior-CfIg6pKp.js";
5
5
  import { Effect } from "effect";
6
6
  import { appendFileSync, existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
7
7
  import { join } from "path";
@@ -165,4 +165,4 @@ var init_session_history = __esmMin((() => {
165
165
  //#endregion
166
166
  export { persistCurrentSessionId as a, logDeaconEventSync as c, isAgentStateServiceInProcess as d, markAgentStateServiceInProcess as f, logLauncherSessionPinned as i, getRuntimeSnapshot as l, createFreshSessionIdentity as n, init_persistent_logger as o, setAgentRuntimeMirror as p, init_session_history as r, logAgentLifecycleSync as s, appendSessionIdToHistory as t, init_agent_runtime_mirror as u };
167
167
 
168
- //# sourceMappingURL=session-history-CVZDpS3c.js.map
168
+ //# sourceMappingURL=session-history-BUyK29eq.js.map
@@ -1,6 +1,6 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { h as jsYaml, m as init_js_yaml, o as getGlobalConfigPath, t as init_config_yaml } from "./config-yaml-DvyMuOle.js";
3
- import { n as isBackgroundFeatureEnabled, t as init_features } from "./features-Dhxz-wLc.js";
2
+ import { h as jsYaml, m as init_js_yaml, o as getGlobalConfigPath, t as init_config_yaml } from "./config-yaml-CmOPzmBb.js";
3
+ import { n as isBackgroundFeatureEnabled, t as init_features } from "./features--nFkJY8v.js";
4
4
  import { readFile } from "fs/promises";
5
5
  //#region ../../lib/memory/settings.ts
6
6
  async function loadMemorySettings(configPath = getGlobalConfigPath()) {
@@ -101,4 +101,4 @@ var init_settings = __esmMin((() => {
101
101
  //#endregion
102
102
  export { isMemoryKnowledgeIndexEnabled as a, init_settings as i, getMemoryRollupPendingThreshold as n, isMemoryPromptTimeInjectionEnabled as o, getMemoryWorkerConcurrency as r, loadMemorySettings as s, areMemoryObservationsEnabled as t };
103
103
 
104
- //# sourceMappingURL=settings-BZ5m1UCl.js.map
104
+ //# sourceMappingURL=settings-Bse1Pdcj.js.map
@@ -0,0 +1,2 @@
1
+ import { t as getAgentCommandSync } from "./settings-CvVGqNEs.js";
2
+ export { getAgentCommandSync };
@@ -1,4 +1,4 @@
1
- import { Vr as init_paths, mr as init_errors } from "./config-yaml-DvyMuOle.js";
1
+ import { Fr as init_errors, ci as init_paths } from "./config-yaml-CmOPzmBb.js";
2
2
  import "effect";
3
3
  import "fs";
4
4
  //#region ../../lib/settings.ts
@@ -18,6 +18,7 @@ function isAnthropicModelSync(modelId) {
18
18
  function getClaudeModelFlagSync(modelId) {
19
19
  return {
20
20
  "claude-fable-5": "claude-fable-5",
21
+ "claude-opus-5": "claude-opus-5",
21
22
  "claude-opus-4-8": "opus",
22
23
  "claude-opus-4-7": "opus",
23
24
  "claude-opus-4-6": "opus",
@@ -45,4 +46,4 @@ function getAgentCommandSync(modelId) {
45
46
  //#endregion
46
47
  export { getClaudeModelFlagSync as n, isAnthropicModelSync as r, getAgentCommandSync as t };
47
48
 
48
- //# sourceMappingURL=settings-ylxwqwQG.js.map
49
+ //# sourceMappingURL=settings-CvVGqNEs.js.map
@@ -1,5 +1,5 @@
1
1
  import { a as PAN_DIRNAME } from "./types-hraoaQIp.js";
2
- import { t as init_pan_dir } from "./pan-dir-DeVUgwA7.js";
2
+ import { t as init_pan_dir } from "./pan-dir-ubraCiUg.js";
3
3
  import { Data, Effect } from "effect";
4
4
  import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from "fs";
5
5
  import { join } from "path";
@@ -221,4 +221,4 @@ init_pan_dir();
221
221
  //#endregion
222
222
  export { gatherArtifacts, generateBasicInference, runObserverCycle, updateInferenceDocumentSync };
223
223
 
224
- //# sourceMappingURL=shadow-engineering-BlxG6Xye.js.map
224
+ //# sourceMappingURL=shadow-engineering-BWLa8ODz.js.map
@@ -1,5 +1,5 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { Br as getOverdeckHome, Vr as init_paths } from "./config-yaml-DvyMuOle.js";
2
+ import { ci as init_paths, si as getOverdeckHome } from "./config-yaml-CmOPzmBb.js";
3
3
  import { Data, Effect } from "effect";
4
4
  import { existsSync, mkdirSync, unlinkSync } from "fs";
5
5
  import { join } from "path";
@@ -287,4 +287,4 @@ var init_shadow_state = __esmMin((() => {
287
287
  //#endregion
288
288
  export { getShadowState as a, isShadowed as c, needsSync as d, removeShadowState as f, getPendingSyncCount as i, listShadowedIssues as l, updateTrackerStatusCache as m, createShadowState as n, getUnsyncedHistory as o, updateShadowState as p, getDisplayStatus as r, init_shadow_state as s, ShadowStateError as t, markAsSynced as u };
289
289
 
290
- //# sourceMappingURL=shadow-state-Dh-HzF2J.js.map
290
+ //# sourceMappingURL=shadow-state-B4fpKxOO.js.map
@@ -1,3 +1,3 @@
1
- import { a as getShadowState, c as isShadowed, d as needsSync, f as removeShadowState, i as getPendingSyncCount, l as listShadowedIssues, m as updateTrackerStatusCache, n as createShadowState, o as getUnsyncedHistory, p as updateShadowState, r as getDisplayStatus, s as init_shadow_state, t as ShadowStateError, u as markAsSynced } from "./shadow-state-Dh-HzF2J.js";
1
+ import { a as getShadowState, c as isShadowed, d as needsSync, f as removeShadowState, i as getPendingSyncCount, l as listShadowedIssues, m as updateTrackerStatusCache, n as createShadowState, o as getUnsyncedHistory, p as updateShadowState, r as getDisplayStatus, s as init_shadow_state, t as ShadowStateError, u as markAsSynced } from "./shadow-state-B4fpKxOO.js";
2
2
  init_shadow_state();
3
3
  export { ShadowStateError, createShadowState, getDisplayStatus, getPendingSyncCount, getShadowState, getUnsyncedHistory, isShadowed, listShadowedIssues, markAsSynced, needsSync, removeShadowState, updateShadowState, updateTrackerStatusCache };
@@ -1,5 +1,5 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { ir as FsError, mr as init_errors } from "./config-yaml-DvyMuOle.js";
2
+ import { Fr as init_errors, Tr as FsError } from "./config-yaml-CmOPzmBb.js";
3
3
  import { Effect } from "effect";
4
4
  import { existsSync, readFileSync } from "fs";
5
5
  import { join } from "path";
@@ -36,4 +36,4 @@ var init_shadow_utils = __esmMin((() => {
36
36
  //#endregion
37
37
  export { init_shadow_utils as n, getLinearApiKey as t };
38
38
 
39
- //# sourceMappingURL=shadow-utils-4bvjn9b3.js.map
39
+ //# sourceMappingURL=shadow-utils-D7asqxOZ.js.map
@@ -36,4 +36,4 @@ function getShipLog(issueId) {
36
36
  //#endregion
37
37
  export { appendShipLog, beginShipLog, getShipLog };
38
38
 
39
- //# sourceMappingURL=ship-log-ClSMIzZX.js.map
39
+ //# sourceMappingURL=ship-log-xplJ8t75.js.map
@@ -1,3 +1,3 @@
1
- import { a as runModelSummary, c as truncateHeadTail, i as parseEntries, n as generateSummaryFromPrompt, o as serializeConversation, r as init_smart_compaction, s as summarizeSerializedText, t as generateSmartSummary } from "./smart-compaction-r4pHQBIr.js";
1
+ import { a as runModelSummary, c as truncateHeadTail, i as parseEntries, n as generateSummaryFromPrompt, o as serializeConversation, r as init_smart_compaction, s as summarizeSerializedText, t as generateSmartSummary } from "./smart-compaction-D3U_79f-.js";
2
2
  init_smart_compaction();
3
3
  export { generateSmartSummary, generateSummaryFromPrompt, parseEntries, runModelSummary, serializeConversation, summarizeSerializedText, truncateHeadTail };
@@ -1,10 +1,10 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { ir as FsError, mr as init_errors, ur as ProcessSpawnError } from "./config-yaml-DvyMuOle.js";
3
- import { o as getHarnessBehavior } from "./src-U7_kTPEE.js";
4
- import { K as init_context_overflow, _n as buildSpawnEnvForModel, b as init_agents, q as isContextOverflowError, yn as getProviderEnvForModel } from "./queries-6d7Cdtm7.js";
5
- import { t as init_behavior } from "./behavior-B_-4EKF3.js";
6
- import { a as init_claude_permissions, i as getClaudePermissionFlagsSync } from "./claude-permissions-H_5wHQZQ.js";
7
- import { n as recordBackgroundAiCost, t as init_cost } from "./cost-CW4WSe72.js";
2
+ import { Fr as init_errors, Tr as FsError, jr as ProcessSpawnError } from "./config-yaml-CmOPzmBb.js";
3
+ import { s as getHarnessBehavior } from "./src-CRmCHlma.js";
4
+ import { Dn as buildSpawnEnvForModel, K as init_context_overflow, b as init_agents, kn as getProviderEnvForModel, q as isContextOverflowError } from "./queries-DHJm7bTd.js";
5
+ import { t as init_behavior } from "./behavior-CfIg6pKp.js";
6
+ import { a as init_claude_permissions, i as getClaudePermissionFlagsSync } from "./claude-permissions-CN0cSCPp.js";
7
+ import { n as recordBackgroundAiCost, t as init_cost } from "./cost-CvxRrucd.js";
8
8
  import { join } from "node:path";
9
9
  import { Effect } from "effect";
10
10
  import { tmpdir } from "node:os";
@@ -841,6 +841,7 @@ Be thorough. Preserve exact file paths, function names, error messages, and code
841
841
  "claude-sonnet-5": 12e5,
842
842
  "claude-sonnet-4-6": 12e5,
843
843
  "claude-fable-5": 12e5,
844
+ "claude-opus-5": 12e5,
844
845
  "claude-opus-4-8": 12e5,
845
846
  "claude-opus-4-7": 12e5,
846
847
  "claude-opus-4-6": 12e5
@@ -850,4 +851,4 @@ Be thorough. Preserve exact file paths, function names, error messages, and code
850
851
  //#endregion
851
852
  export { runModelSummary as a, truncateHeadTail as c, parseEntries as i, generateSummaryFromPrompt as n, serializeConversation as o, init_smart_compaction as r, summarizeSerializedText as s, generateSmartSummary as t };
852
853
 
853
- //# sourceMappingURL=smart-compaction-r4pHQBIr.js.map
854
+ //# sourceMappingURL=smart-compaction-D3U_79f-.js.map
@@ -1,2 +1,2 @@
1
- import { o as spawnPlanningSession } from "./spawn-planning-session-DWAorh2B.js";
1
+ import { o as spawnPlanningSession } from "./spawn-planning-session-DGfZ5B8D.js";
2
2
  export { spawnPlanningSession };