@overdeck/desktop 0.45.22 → 0.45.23

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 (375) hide show
  1. package/package.json +1 -1
  2. package/server/{acceptance-criteria-BH7ac_1G.js → acceptance-criteria-DOA0KgXx.js} +5 -5
  3. package/server/{advancing-selfheal-cSvXNZLZ.js → advancing-selfheal-BBu6DSNm.js} +6 -6
  4. package/server/{agent-gc-Dj2gncak.js → agent-gc-BV1q_2EV.js} +4 -4
  5. package/server/agent-state-Bg0lhqwj.js +3 -0
  6. package/server/{agent-state-service-CsQ07Pxe.js → agent-state-service-CnzFKSAQ.js} +1 -1
  7. package/server/{agent-state-service-DistflNn.js → agent-state-service-HoK8U4jW.js} +5 -5
  8. package/server/{agents-DXdHmRTC.js → agents-B4Bjbkfv.js} +4 -4
  9. package/server/agents-FlIgQ3ql.js +3 -0
  10. package/server/{archive-planning-BvDuWNMo.js → archive-planning-DYrYojxl.js} +30 -6
  11. package/server/{archive-planning-Cp_DC1j-.js → archive-planning-zkJb3BeM.js} +1 -1
  12. package/server/{artifact-index-jobs-CDBFL4OU.js → artifact-index-jobs-C-xy7Z5v.js} +2 -2
  13. package/server/{backlog-auto-trigger-DmA1IbYf.js → backlog-auto-trigger-GtG71X8H.js} +3 -3
  14. package/server/{behavior-CGj16clS.js → behavior-B_-4EKF3.js} +2 -2
  15. package/server/{briefing-freshness-C12WgkaB.js → briefing-freshness-DWdW7vUm.js} +2 -2
  16. package/server/{build-info-NU3KbXYw.js → build-info-BT096lEl.js} +3 -3
  17. package/server/{build-info-BRpqQvNd.js → build-info-DgTqZkL5.js} +1 -1
  18. package/server/{checkpoint-manager-rOgT98WY.js → checkpoint-manager-B7Bt29J0.js} +1 -1
  19. package/server/{checkpoint-manager-CTPjAmtH.js → checkpoint-manager-DDqcGyu8.js} +2 -2
  20. package/server/checkpoint-worker.js +1 -1
  21. package/server/{checkpoints-BJum14fs.js → checkpoints-C-AXLfYT.js} +2 -2
  22. package/server/{checkpoints-B5jFNi2G.js → checkpoints-CpgCjAlN.js} +1 -1
  23. package/server/{claude-hooks-provision-BhwWK-TQ.js → claude-hooks-provision-C8wdRnN1.js} +1 -1
  24. package/server/{claude-hooks-provision-D7p5WcKZ.js → claude-hooks-provision-but-_qGY.js} +2 -2
  25. package/server/{claude-permissions-nSFKH78M.js → claude-permissions-H_5wHQZQ.js} +2 -2
  26. package/server/{claude-settings-overlay-DHBwjS1X.js → claude-settings-overlay-BTENVmYf.js} +1 -1
  27. package/server/{claude-settings-overlay-BI_UIke0.js → claude-settings-overlay-CbSz0Dvb.js} +2 -2
  28. package/server/cli-BsVIHwzC.js +3 -0
  29. package/server/{cli-CbKNkFE5.js → cli-vBeXbPrq.js} +9 -9
  30. package/server/{cliproxy-Brf_5MuG.js → cliproxy-Bgb2XCqi.js} +2 -2
  31. package/server/{cliproxy-bONZDBbC.js → cliproxy-DW0V86F8.js} +1 -1
  32. package/server/{close-issue-CxReRxIc.js → close-issue-Dn_4c4G8.js} +5 -5
  33. package/server/{closed-issue-reaper-DXP2Xyv3.js → closed-issue-reaper-CWpY2uBw.js} +1 -1
  34. package/server/{closed-issue-reaper-CQ3kqha7.js → closed-issue-reaper-hANY_ehE.js} +9 -9
  35. package/server/codex-Dg7Is5yb.js +3 -0
  36. package/server/{codex-CbmztVcc.js → codex-TmSi-yTv.js} +27 -8
  37. package/server/{codex-parser-jl8AeAmB.js → codex-parser-C4gSH-IR.js} +2 -2
  38. package/server/{config-q4Gvd8dq.js → config-CCvjQf27.js} +2 -2
  39. package/server/{config-BJKocXKd.js → config-DUIhMN_T.js} +1 -1
  40. package/server/{config-DeTsoZdR.js → config-DjLOdbgT.js} +2 -2
  41. package/server/{config-yaml-ig8Nwtiw.js → config-yaml-DvyMuOle.js} +55 -186
  42. package/server/{conflict-gate-CHU9K1vU.js → conflict-gate-BSJkNTdp.js} +1 -1
  43. package/server/{conflict-gate-CFqPVxEg.js → conflict-gate-CmrYpa47.js} +3 -3
  44. package/server/{context-layers-DlQKkHH2.js → context-layers-B3Nt58jl.js} +2 -2
  45. package/server/{context-layers-15gDOk20.js → context-layers-ZYFcWiyc.js} +3 -3
  46. package/server/{control-settings-D_odMIaC.js → control-settings-aP1ANIlI.js} +4 -4
  47. package/server/{conversation-compaction-B6YSRLda.js → conversation-compaction-CNbTLB86.js} +8 -8
  48. package/server/{conversation-compaction-CN4-5YYt.js → conversation-compaction-DiG5zWQq.js} +1 -1
  49. package/server/{conversation-service-C3avRVEr.js → conversation-service-Du-MTNpJ.js} +6 -6
  50. package/server/{conversation-service-Dq33SYEj.js → conversation-service-Up7FEzIC.js} +1 -1
  51. package/server/{conversations-H9if0bCQ.js → conversations-6mPANqvL.js} +1 -1
  52. package/server/{conversations-bYpM9-kZ.js → conversations-DbOs1e9Q.js} +4 -4
  53. package/server/{cost-wH46-WsJ.js → cost-CW4WSe72.js} +3 -3
  54. package/server/{cost-Codk1pc2.js → cost-Ca0YTWDw.js} +18 -2
  55. package/server/{cost-sync-D_cre6WM.js → cost-sync-C0VdGme1.js} +3 -3
  56. package/server/{dag-CJpgf9A3.js → dag-CdOjJVDT.js} +9 -9
  57. package/server/{dangerous-git-ops-D6AF-Hg_.js → dangerous-git-ops-CT-IypG3.js} +1 -1
  58. package/server/dashboard-db-worker.js +7 -7
  59. package/server/{deacon-B8HbQdqU.js → deacon-DYSEJb48.js} +3 -3
  60. package/server/{deacon-nudge-log-D6K9K-rE.js → deacon-nudge-log-Bjg8U4Y9.js} +3 -3
  61. package/server/{deacon-CkT_kznS.js → deacon-pRnyD5w9.js} +266 -577
  62. package/server/deacon-swarm-9jRLS5Ke.js +2 -0
  63. package/server/{deacon-swarm-BryRr6AO.js → deacon-swarm-DftYRDo8.js} +17 -17
  64. package/server/deacon.js +8 -8
  65. package/server/{deploy-patrol-1IrZxicY.js → deploy-patrol-Bjsho_ha.js} +136 -19
  66. package/server/{deploy-window-7ZYHh7Zp.js → deploy-window-CM6W1-c6.js} +1 -1
  67. package/server/{deploy-window-wDf4UgHt.js → deploy-window-DeP_OIRk.js} +77 -10
  68. package/server/{dev-supervisor-C7p9kEpc.js → dev-supervisor-BpMoHlkR.js} +2 -2
  69. package/server/{devcontainer-renderer-CNmQy0pL.js → devcontainer-renderer-CtUgrVKW.js} +3 -3
  70. package/server/dist-Bd3vn0Hw.js +3 -0
  71. package/server/{dist-D-Ed5yVw.js → dist-DyRx4cI7.js} +1 -1
  72. package/server/{docker-BCZ89M9X.js → docker-BK7HIcBj.js} +2 -2
  73. package/server/{dod-DbJLYcHv.js → dod-BrSfUHm0.js} +1 -1
  74. package/server/{ensure-devcontainer-Cs6W9Yzj.js → ensure-devcontainer-DRqaAkBR.js} +1 -1
  75. package/server/{ensure-devcontainer-V5JWaAva.js → ensure-devcontainer-DseivYEy.js} +4 -4
  76. package/server/{esm-shims-dTeNdq7X.js → esm-shims-CbI3BVkl.js} +1 -1
  77. package/server/{event-store-CpBGsO6_.js → event-store-Cr5PQwFC.js} +1 -1
  78. package/server/{event-store-TnWdydfB.js → event-store-tdiY5eDZ.js} +3 -3
  79. package/server/{events-DSUdR-04.js → events-CC1dgUpx.js} +3 -3
  80. package/server/{events-Dsuv6qyB.js → events-CvvGK6LT.js} +1 -1
  81. package/server/{factory-BMrK4TrE.js → factory-CynerjXO.js} +50 -13
  82. package/server/{feature-registry-population-B-CI9hgE.js → feature-registry-population-B0pmAz0a.js} +4 -4
  83. package/server/{feature-registry-storage-B972ph_A.js → feature-registry-storage-_wUBRD3J.js} +2 -2
  84. package/server/{features-Bc-Bmiye.js → features-Dhxz-wLc.js} +2 -2
  85. package/server/{feedback-target-DZ-iAnAa.js → feedback-target-CPS15Vte.js} +7 -7
  86. package/server/{feedback-target-DS6NUuSs.js → feedback-target-iygZwmMc.js} +1 -1
  87. package/server/{feedback-writer-BXP6g75N.js → feedback-writer-C9b6ccN1.js} +6 -5
  88. package/server/{feedback-writer-Bx5z11mF.js → feedback-writer-qmiMbqTZ.js} +1 -1
  89. package/server/{flywheel-Ctr5uuvo.js → flywheel-DMCUzDWg.js} +1 -1
  90. package/server/{flywheel-COR0mbRI.js → flywheel-DSSpWmqF.js} +13 -13
  91. package/server/{flywheel-6WHU4O7A.js → flywheel-DcBkQvgE.js} +14 -14
  92. package/server/{flywheel-merge-order-CNKAY489.js → flywheel-merge-order-C-6zRLvM.js} +1 -1
  93. package/server/{flywheel-merge-order-CTgHeg-W.js → flywheel-merge-order-DxbQKE1d.js} +8 -8
  94. package/server/forge-B-ZWyTRm.js +2 -0
  95. package/server/{forge-B1S_KZv4.js → forge-Ch9gCFod.js} +2 -2
  96. package/server/{from-DpwQ-sc3.js → from-CJ_aH5jD.js} +1 -1
  97. package/server/{fts-db-DmAcuCkV.js → fts-db-CKgg0VKg.js} +2 -2
  98. package/server/{fts-operations-7d_RkmWp.js → fts-operations-BrL_VTRr.js} +2 -2
  99. package/server/{git-utils-Cc3FHDKd.js → git-utils-BVa07a4a.js} +2 -2
  100. package/server/{git-utils-CsKGnzFA.js → git-utils-Dry_Ka_D.js} +1 -1
  101. package/server/{github-app-CDPtGF7J.js → github-app-CMBdIFBQ.js} +11 -3
  102. package/server/{github-app-CU14oYzP.js → github-app-CPfoFAdV.js} +1 -1
  103. package/server/{github-client-XjTJbBm7.js → github-client--XVlDpwM.js} +2 -2
  104. package/server/{github-client-CwBZZ3t7.js → github-client-B4QsdE-X.js} +1 -1
  105. package/server/{github-pr-lookup-CFGeVhqv.js → github-pr-lookup-BRbDW-qk.js} +2 -2
  106. package/server/{harness-binary-B2CTcD84.js → harness-binary-CVio2m-u.js} +1 -1
  107. package/server/{harness-resolve-D5FVQTmy.js → harness-resolve-qHJBhy3Z.js} +4 -4
  108. package/server/{health-events-DREeevle.js → health-events-C9B8y1Hm.js} +2 -2
  109. package/server/{health-events-C1whmd58.js → health-events-CpfvuVmm.js} +1 -1
  110. package/server/{hooks-yxRsjk-z.js → hooks-DUXw8A0-.js} +2 -2
  111. package/server/{hooks-B-HItBiS.js → hooks-ltecuFqZ.js} +1 -1
  112. package/server/{hume-Dz_OymXE.js → hume-BEq0bUDg.js} +2 -2
  113. package/server/hume-B_DbflNM.js +3 -0
  114. package/server/{idle-stack-reaper-DrCv0OAG.js → idle-stack-reaper-D7w9t3fE.js} +1 -1
  115. package/server/{idle-stack-reaper-Yf34xXxY.js → idle-stack-reaper-w1ISSlhs.js} +2 -2
  116. package/server/{in-flight-guard-BoWm66Kh.js → in-flight-guard-aQ1IxeI3.js} +2 -2
  117. package/server/{infra-D4iNWMA5.js → infra-CzaSOgul.js} +4 -4
  118. package/server/{injection-D7T75Pye.js → injection-DZ0PfYa4.js} +7 -7
  119. package/server/{injection-BVNa4MQW.js → injection-oNZeoDhL.js} +1 -1
  120. package/server/{inspect-agent-BXCgNeZ4.js → inspect-agent-DJKLWcVT.js} +12 -12
  121. package/server/inspect-agent-ch-F-5Ci.js +2 -0
  122. package/server/{internal-token-CXsfxslp.js → internal-token-Bb4XeV2x.js} +2 -2
  123. package/server/{internal-token-C9DdEOKY.js → internal-token-DXdfprGr.js} +1 -1
  124. package/server/{io-DQR9PMgS.js → io-B3_AHDfr.js} +160 -184
  125. package/server/{issue-closed-DtmJM0D0.js → issue-closed-zhdvQicO.js} +7 -7
  126. package/server/{issue-lifecycle-CeyW_HoD.js → issue-lifecycle-CreaCkjW.js} +22 -22
  127. package/server/{issue-lifecycle-8PSS9Anq.js → issue-lifecycle-Dy4vd0Oa.js} +1 -1
  128. package/server/{issue-service-singleton-D_RVYBuL.js → issue-service-singleton-B5ushCvE.js} +8 -8
  129. package/server/{issue-service-singleton-DBZabEl7.js → issue-service-singleton-DabvBWUp.js} +1 -1
  130. package/server/{issues-pDW9VUNz.js → issues-B6ToV6x1.js} +2 -2
  131. package/server/{jsonl-parser-C3HVNR5d.js → jsonl-parser-Dhflo1SH.js} +3 -3
  132. package/server/{label-cleanup-DPwiZlWo.js → label-cleanup-BKPJm4Hv.js} +3 -3
  133. package/server/{label-reconciler-Df1ZduPH.js → label-reconciler-DdWbHEBu.js} +4 -4
  134. package/server/{launcher-generator-COgR2By1.js → launcher-generator-CHVm7bGT.js} +10 -9
  135. package/server/{layers-Cp1To4L8.js → layers-DzxSTGNA.js} +2 -2
  136. package/server/lifecycle-DfeyBDwA.js +121 -0
  137. package/server/lifecycle-io-Bsnr2K4F.js +3 -0
  138. package/server/{lifecycle-io-taIb0PoH.js → lifecycle-io-D8iNBcux.js} +37 -37
  139. package/server/{lifecycle-CtPDcZ9u.js → lifecycle-sycO16hj.js} +6 -6
  140. package/server/{linear-client-DsFkIxee.js → linear-client-D4zqMnX7.js} +2 -2
  141. package/server/{linear-client-YwZMDIwQ.js → linear-client-DqhDQO9k.js} +1 -1
  142. package/server/memory-fts-worker.js +1 -1
  143. package/server/{merge-C1t-bspg.js → merge-C_ZEhbqI.js} +3 -3
  144. package/server/{merge-BwsyNRJV.js → merge-DK23JEdS.js} +1 -1
  145. package/server/{merge-agent-B-SnXOoc.js → merge-agent-BQM3a8z5.js} +1 -1
  146. package/server/{merge-agent-DDiIjzk-.js → merge-agent-XrB80vfT.js} +28 -28
  147. package/server/{merge-batch-Byt-QnEl.js → merge-batch-Bwoyr8Je.js} +1 -1
  148. package/server/{merge-blockers-BYjeXrVN.js → merge-blockers-BsFjGrQ8.js} +2 -2
  149. package/server/merge-ops-DlB1IM0Y.js +2 -0
  150. package/server/{merge-rebase-Cm6fXaZN.js → merge-rebase-C1KIVr0s.js} +2 -2
  151. package/server/{merge-set-DiISXcC-.js → merge-set-DLz0MkGT.js} +3 -3
  152. package/server/{merge-set-6LEglm6o.js → merge-set-DnSYdBEp.js} +1 -1
  153. package/server/{merge-sync-Do8_q32h.js → merge-sync-DZ9dojJn.js} +2 -2
  154. package/server/{merge-sync-B95_4in_.js → merge-sync-SSv3E-pl.js} +1 -1
  155. package/server/{merge-train-CKana8EH.js → merge-train-DxDfBTjr.js} +3 -3
  156. package/server/{merge-train-deps-BgmqwIfA.js → merge-train-deps-CyYQUksx.js} +4 -4
  157. package/server/{merge-verification-CqnUzGEK.js → merge-verification-CSizH3HY.js} +4 -4
  158. package/server/{multipart-parser-tdOQDJ3o.js → multipart-parser-Dt8YPN5S.js} +2 -2
  159. package/server/{no-resume-mode-BWOSZjWd.js → no-resume-mode-Cx3K0hHi.js} +11 -8
  160. package/server/node_modules/.package-lock.json +1 -1
  161. package/server/{orphan-proposed-reconciler-DSvsJ5M7.js → orphan-proposed-reconciler-BTkDrl4R.js} +1 -1
  162. package/server/{orphan-proposed-reconciler-xklgvNA7.js → orphan-proposed-reconciler-neK8dHQk.js} +15 -13
  163. package/server/package-lock.json +2 -2
  164. package/server/package.json +1 -1
  165. package/server/{pan-dir-DOcf6ug3.js → pan-dir-DeVUgwA7.js} +78 -58
  166. package/server/{paths-DooHpt9p.js → paths-_zEts6wc.js} +2 -2
  167. package/server/{pickup-CaskQ7j6.js → pickup-Dd0Znxxy.js} +1 -1
  168. package/server/{pipeline-membership-1LGRjo-k.js → pipeline-membership-0HaEGDlH.js} +186 -67
  169. package/server/{pipeline-notifier-CZsrU_nj.js → pipeline-notifier-6iCJplFZ.js} +1 -1
  170. package/server/{pipeline-notifier-B6FVsYF9.js → pipeline-notifier-D0ykk59O.js} +2 -2
  171. package/server/{project-pipelines-CtNG_rvs.js → project-pipelines-2sK1apsO.js} +2 -2
  172. package/server/projects-9SkRpES9.js +3 -0
  173. package/server/{prompts-EvhMeeHG.js → prompts-Dp4Tpk39.js} +2 -2
  174. package/server/{providers-DNSQqy2V.js → providers-DKkBXhxU.js} +1 -1
  175. package/server/{providers-BDDPULlp.js → providers-DV7ec8l7.js} +7 -7
  176. package/server/public/assets/{chunk-BO2N2NFS-sym_ufXe.js → chunk-BO2N2NFS-CltymLRg.js} +4 -4
  177. package/server/public/assets/{diagram-OG6HWLK6-CQJPBNBu.js → diagram-OG6HWLK6-D2f6pjgA.js} +1 -1
  178. package/server/public/assets/{dist-Bio7THQU.js → dist-BWR4qFiV.js} +1 -1
  179. package/server/public/assets/{dist-DukGS2YZ.js → dist-DEmlBBNQ.js} +3 -3
  180. package/server/public/assets/{ganttDiagram-6RSMTGT7-D4lWwte3.js → ganttDiagram-6RSMTGT7-DnfiViPK.js} +1 -1
  181. package/server/public/assets/{highlighted-body-OFNGDK62-CaLboCt5.js → highlighted-body-OFNGDK62-B8Wrmj9H.js} +1 -1
  182. package/server/public/assets/index-CUr1xv8w.css +1 -0
  183. package/server/public/assets/{index-Bwejq-5s.js → index-CsSuZQBI.js} +145 -144
  184. package/server/public/assets/{linear-qUWmMZ-c.js → linear-C9zFQpkX.js} +1 -1
  185. package/server/public/assets/mermaid-GHXKKRXX-BUAB8hqt.js +1 -0
  186. package/server/public/assets/{pieDiagram-4H26LBE5-C4zYulEm.js → pieDiagram-4H26LBE5-lR8H7Yjd.js} +1 -1
  187. package/server/public/assets/{prod-C8VtLuWC.js → prod-B1jCQihw.js} +4 -4
  188. package/server/public/assets/{quadrantDiagram-W4KKPZXB-qP04zyZC.js → quadrantDiagram-W4KKPZXB-CVQ2guem.js} +1 -1
  189. package/server/public/assets/{sankeyDiagram-5OEKKPKP-eMPTX_cG.js → sankeyDiagram-5OEKKPKP-eD1RB4gm.js} +1 -1
  190. package/server/public/assets/{xychartDiagram-2RQKCTM6-Dme1PIt6.js → xychartDiagram-2RQKCTM6-ChEC6dQn.js} +1 -1
  191. package/server/public/index.html +2 -2
  192. package/server/{pull-requests-By_BteaL.js → pull-requests--Ib2jTgy.js} +1 -1
  193. package/server/{pull-requests-8z2N1UOV.js → pull-requests-CXIhdCYD.js} +13 -11
  194. package/server/{queries-ZABd5aXP.js → queries-6d7Cdtm7.js} +693 -104
  195. package/server/{rally-i_goYmiA.js → rally-B708-nZn.js} +3 -3
  196. package/server/{rally-api-DqKqIMNR.js → rally-api-nY0ZANw3.js} +2 -2
  197. package/server/{rally-api-xHazRk0d.js → rally-api-yjQ0TfHd.js} +1 -1
  198. package/server/{rally-client-COYz1vYR.js → rally-client-B1EJhfV0.js} +4 -4
  199. package/server/{rally-client-CGWEHaPd.js → rally-client-CULK2XAY.js} +1 -1
  200. package/server/rally-njs_mJrt.js +3 -0
  201. package/server/{reap-terminal-sessions-CaMkFOIH.js → reap-terminal-sessions-MWnqdLCJ.js} +1 -1
  202. package/server/{reap-terminal-sessions-DG9eiMVz.js → reap-terminal-sessions-N3BTkmX_.js} +1 -1
  203. package/server/{rebuild-stack-JUm0jqYP.js → rebuild-stack-Dp4eLkt4.js} +6 -6
  204. package/server/{rebuild-stack-CKjJAI8L.js → rebuild-stack-kA7XngID.js} +1 -1
  205. package/server/{reconstruct-cache-wU79aCee.js → reconstruct-cache-uWbZfjms.js} +6 -6
  206. package/server/record-t6V-3Dcj.js +3 -0
  207. package/server/{record-update-D3N6WMFR.js → record-update-DACtKh6_.js} +1 -1
  208. package/server/record-update-Dq0t2uBG.js +310 -0
  209. package/server/{recovery-trip-DkzJSej9.js → recovery-trip-BJtIQuag.js} +2 -2
  210. package/server/{release-engine-DMINVN8S.js → release-engine-DZpmGGzb.js} +5 -5
  211. package/server/{release-set-DeUSOEHy.js → release-set-hnXd_kga.js} +3 -3
  212. package/server/{remote-Dr5kGYSZ.js → remote-4tiENDaI.js} +3 -3
  213. package/server/{remote-b-c5bOce.js → remote-Br-ZWVIP.js} +3 -3
  214. package/server/{remote-agents-D6O_zETW.js → remote-agents-CRCg1L4H.js} +1 -1
  215. package/server/{remote-agents-Ct_WOyke.js → remote-agents-nmty1mLu.js} +6 -6
  216. package/server/{remote-completion-Dca3hAaa.js → remote-completion-BbWNd10K.js} +12 -12
  217. package/server/resume-CcKqnTvE.js +3 -0
  218. package/server/{review-agent-CCum8sGe.js → review-agent-DJRO8EG8.js} +1 -1
  219. package/server/{review-agent-CThvgK2r.js → review-agent-sKkE1FEL.js} +22 -22
  220. package/server/{review-artifacts-CXywD0F2.js → review-artifacts-BLbSC4ke.js} +5 -5
  221. package/server/{review-context-OYfKUprb.js → review-context-BgX3lcCx.js} +8 -8
  222. package/server/{review-status-DFRjDFef.js → review-status-A7quS5KJ.js} +54 -21
  223. package/server/review-status-C6n6-9f_.js +3 -0
  224. package/server/{review-status-enrichment-crNAtIpL.js → review-status-enrichment-tbOn_A_u.js} +3 -3
  225. package/server/{review-status-sync-DpAMD_WO.js → review-status-sync-BhSQ0d0l.js} +2 -2
  226. package/server/{review-status-sync-D60PJWNL.js → review-status-sync-To3-iS-N.js} +1 -1
  227. package/server/{review-verdict-feedback-JImjut0z.js → review-verdict-feedback-C1Kg8n7t.js} +1 -1
  228. package/server/{review-verdict-feedback-CpUZl5aE.js → review-verdict-feedback-CTRNtzXO.js} +6 -6
  229. package/server/{rollup-CZ02qgxk.js → rollup-B53Y81xK.js} +1 -1
  230. package/server/{rollup-SyuF09e4.js → rollup-WA0VD-Rr.js} +8 -8
  231. package/server/{scanner-Br0Z5S6R.js → scanner-D2743cp8.js} +11 -7
  232. package/server/{sequence-io-fxU0DlwW.js → sequence-io-Cg0zYj_E.js} +4 -4
  233. package/server/{sequencer-agent-B5YC5XVP.js → sequencer-agent-BGY8gjg-.js} +5 -5
  234. package/server/server.js +941 -752
  235. package/server/{service-Bagb90KZ.js → service-DCpB_SGd.js} +53 -53
  236. package/server/{session-fork-BqQxd-V6.js → session-fork-BQ8_6H32.js} +2 -2
  237. package/server/{session-history-XdS0JKp3.js → session-history-CVZDpS3c.js} +4 -4
  238. package/server/{settings-BNbocWOg.js → settings-BZ5m1UCl.js} +3 -3
  239. package/server/settings-D0OSwos5.js +2 -0
  240. package/server/{settings-uLc6DEYI.js → settings-ylxwqwQG.js} +2 -2
  241. package/server/{shadow-engineering-D4X_s3fA.js → shadow-engineering-BlxG6Xye.js} +2 -2
  242. package/server/{shadow-state-CbvsN3qG.js → shadow-state-C2_epgx2.js} +1 -1
  243. package/server/{shadow-state-C_NkP-sa.js → shadow-state-Dh-HzF2J.js} +2 -2
  244. package/server/{shadow-utils-CYMRPeRT.js → shadow-utils-4bvjn9b3.js} +2 -2
  245. package/server/{ship-log-__QtAFXG.js → ship-log-ClSMIzZX.js} +1 -1
  246. package/server/{smart-compaction-jdMkG1vo.js → smart-compaction-CHIxLr_d.js} +1 -1
  247. package/server/{smart-compaction-CLZOWin1.js → smart-compaction-r4pHQBIr.js} +7 -7
  248. package/server/{spawn-planning-session-D5OXo8pT.js → spawn-planning-session-DWAorh2B.js} +22 -21
  249. package/server/{spawn-planning-session-8D6mE033.js → spawn-planning-session-KC_UduxD.js} +1 -1
  250. package/server/{specialist-completion-CqmduO92.js → specialist-completion-BXhav38U.js} +1 -1
  251. package/server/{specialist-context-CJ-QjFR-.js → specialist-context-DtrYvGJ-.js} +5 -5
  252. package/server/{specialist-handoff-logger-Dnjlwt7g.js → specialist-handoff-logger-C45ouoZ6.js} +2 -2
  253. package/server/{specialist-logs-CQnKzuZs.js → specialist-logs-DJ3RzKxW.js} +3 -3
  254. package/server/{specialists-D0gGXMZx.js → specialists-D5fRZXmN.js} +1 -1
  255. package/server/specialists-DVj0hvaL.js +3 -0
  256. package/server/{specialists-CwZHb5cb.js → specialists-DyFeedjn.js} +66 -76
  257. package/server/{specialists-Bg9v4z3F.js → specialists-JVO00bs7.js} +340 -214
  258. package/server/specs-nN45DG2X.js +3 -0
  259. package/server/{src-BMMoA_ba.js → src-CG9mCkP6.js} +6 -6
  260. package/server/{src-Bqdtd6po.js → src-CMTQGyCK.js} +3 -3
  261. package/server/{src-k039WVYY.js → src-U7_kTPEE.js} +2 -1
  262. package/server/{stack-health-Bd06frFn.js → stack-health-Df0YEZKa.js} +1 -1
  263. package/server/{stack-health-C-ifC7b0.js → stack-health-puygdaMd.js} +2 -2
  264. package/server/{stale-task-claims-L7pJkQFL.js → stale-task-claims-BbFwCTb0.js} +4 -4
  265. package/server/{staleness-BID1BKdr.js → staleness-Bpy41ngS.js} +15 -3
  266. package/server/{staleness-_Tr-GwdA.js → staleness-Cbl_w4Bw.js} +1 -1
  267. package/server/{state-home-CONQvZR0.js → state-home-CIGjwNfJ.js} +96 -44
  268. package/server/{state-migrate-BeBW0KXA.js → state-migrate-Dkzaxvny.js} +12 -3
  269. package/server/{stuck-remediation-CKnIryGT.js → stuck-remediation-CzEov_fq.js} +26 -22
  270. package/server/{stuck-remediation-CsGD5Ksb.js → stuck-remediation-sY_MHHgQ.js} +1 -1
  271. package/server/{substrate-bug-weights-service-CpIZILj9.js → substrate-bug-weights-service-BH66lhm7.js} +3 -3
  272. package/server/{summary-fork-agEMsPSo.js → summary-fork-D8bXjCr7.js} +2 -2
  273. package/server/{summary-fork-bX6ax6X7.js → summary-fork-DHhJIsAL.js} +8 -8
  274. package/server/{supervisor-Ctt4eRYz.js → supervisor-BO-Zk_h-.js} +3 -3
  275. package/server/supervisor-BPy-o1A8.js +2 -0
  276. package/server/{swarm-readiness-DdmJVX7y.js → swarm-readiness-CQ_fwUWF.js} +4 -4
  277. package/server/{system-prerequisites-DSXBvffY.js → system-prerequisites-Bza0ffAh.js} +2 -2
  278. package/server/{teardown-workspace-DDCf5n-a.js → teardown-workspace-CEgauF4U.js} +15 -15
  279. package/server/{test-agent-queue-BJZ9Nfcc.js → test-agent-queue-DXDt0Xa-.js} +7 -7
  280. package/server/{test-verdict-Cp5tljlJ.js → test-verdict-CmUBK5cT.js} +1 -1
  281. package/server/{test-verdict-D_-sXIz_.js → test-verdict-DFjjIHR5.js} +1 -1
  282. package/server/{tldr-daemon-BQFmmFp0.js → tldr-daemon-BDtLOIlO.js} +2 -2
  283. package/server/{tldr-daemon-B8_oT5gx.js → tldr-daemon-DL566HbH.js} +1 -1
  284. package/server/tmux-DoThH6aj.js +3 -0
  285. package/server/{tmux-L5LgvGLp.js → tmux-ftABRAmc.js} +76 -44
  286. package/server/{token-BkQLy4yS.js → token-CsOhvw42.js} +2 -2
  287. package/server/{token-util-DI8sGlmF.js → token-util-CTmczIfW.js} +1 -1
  288. package/server/token-util-DrHg8abn.js +3 -0
  289. package/server/{tracker-config-DdT-nUAM.js → tracker-config-B4itFzDo.js} +2 -2
  290. package/server/{tracker-utils-DV3h1FYG.js → tracker-utils-BePq_oj-.js} +1 -1
  291. package/server/{tracker-utils-CawsPSS2.js → tracker-utils-tnxxqROg.js} +2 -2
  292. package/server/{traefik-connect-C6mJckNs.js → traefik-connect-m73vGebA.js} +1 -1
  293. package/server/{tunnel-IdK1iTHx.js → tunnel-B2vxjx_b.js} +3 -3
  294. package/server/{tunnel-BIFl98rc.js → tunnel-Cgj-IGIl.js} +1 -1
  295. package/server/{types-7-GnJn0t.js → types-BBNjPcqU.js} +1 -1
  296. package/server/{uat-train-j0cPeMSj.js → uat-train-CuEn0t9M.js} +28 -28
  297. package/server/{uat-train-0Ujk8GCv.js → uat-train-cKfM-_WW.js} +1 -1
  298. package/server/{validation-CabEISJT.js → validation-B5JxoPUS.js} +259 -9
  299. package/server/{validation-DcAgXTQp.js → validation-CIi6pnI2.js} +1 -1
  300. package/server/{verification-artifact-BuTA1QbL.js → verification-artifact-BcnIbigL.js} +1 -1
  301. package/server/{verification-artifact-Ck1tefmz.js → verification-artifact-C-lIHfUa.js} +1 -1
  302. package/server/{verification-runner-FiuAZ-H2.js → verification-runner-Br0S_Ous.js} +102 -37
  303. package/server/{verification-runner-DlJezzef.js → verification-runner-CDj4lD4t.js} +1 -1
  304. package/server/{vtt-parser-BnRsYzcz.js → vtt-parser-DKpNNW5i.js} +1 -1
  305. package/server/{work-agent-prompt-DLthEPAq.js → work-agent-prompt-Yb2bd3Fq.js} +13 -13
  306. package/server/{workflows-BZNNYkGC.js → workflows-C9WmILql.js} +39 -77
  307. package/server/workflows-D90rMOya.js +2 -0
  308. package/server/{workspace-D9ppycdg.js → workspace-BVl4rihN.js} +3 -3
  309. package/server/{workspace-3IC-UkAi.js → workspace-DuUdndHe.js} +1 -1
  310. package/server/{workspace-config-Bigl_-Lk.js → workspace-config-cEGcO6UT.js} +1 -1
  311. package/server/{workspace-manager-B1WOfKvB.js → workspace-manager-ZTdJAy9M.js} +1 -1
  312. package/server/{workspace-manager-ClkCIWTe.js → workspace-manager-hLUv3ADC.js} +22 -15
  313. package/server/{workspace-metadata-tiSRIWJP.js → workspace-metadata-CskwzzhL.js} +2 -2
  314. package/server/{workspace-metadata-BE0efUv_.js → workspace-metadata-DNpMixRq.js} +1 -1
  315. package/server/{workspaces-CFPcL0vl.js → workspaces-hWvy9eKs.js} +275 -109
  316. package/sync-sources/agents/pan-inspect-agent.md +1 -1
  317. package/sync-sources/agents/pan-merge-agent.md +1 -1
  318. package/sync-sources/agents/pan-planning-agent.md +4 -4
  319. package/sync-sources/agents/pan-work-agent.md +1 -1
  320. package/sync-sources/dev-skills/pan-commit/SKILL.md +1 -1
  321. package/sync-sources/dev-skills/test-specialist-workflow/SKILL.md +1 -1
  322. package/sync-sources/hooks/record-cost-event.js +363 -71
  323. package/sync-sources/hooks/session-start-hook +7 -0
  324. package/sync-sources/hooks/work-agent-stop-hook +1 -1
  325. package/sync-sources/rules/per-bead-durability.md +1 -1
  326. package/sync-sources/rules/prd-authoring.md +1 -1
  327. package/sync-sources/skills/feature-work/SKILL.md +1 -1
  328. package/sync-sources/skills/pan/SKILL.md +2 -2
  329. package/sync-sources/skills/pan-admin-config/SKILL.md +1 -0
  330. package/sync-sources/skills/pan-approve/SKILL.md +1 -1
  331. package/sync-sources/skills/pan-close/SKILL.md +1 -1
  332. package/sync-sources/skills/pan-doctor/SKILL.md +1 -1
  333. package/sync-sources/skills/pan-new-project/SKILL.md +9 -11
  334. package/sync-sources/skills/pan-oversee/SKILL.md +5 -5
  335. package/sync-sources/skills/pan-plan/SKILL.md +6 -6
  336. package/sync-sources/skills/pan-quickstart/SKILL.md +1 -1
  337. package/sync-sources/skills/pan-recap/SKILL.md +2 -2
  338. package/sync-sources/skills/pan-review/SKILL.md +1 -1
  339. package/sync-sources/skills/pan-start/SKILL.md +3 -3
  340. package/sync-sources/skills/pan-swarm/SKILL.md +1 -1
  341. package/sync-sources/skills/pan-sync/SKILL.md +1 -1
  342. package/sync-sources/skills/pan-task/SKILL.md +2 -2
  343. package/sync-sources/skills/pan-wipe/SKILL.md +2 -2
  344. package/sync-sources/skills/pipeline-list/SKILL.md +1 -1
  345. package/sync-sources/skills/pipeline-status/SKILL.md +2 -2
  346. package/sync-sources/skills/plan/SKILL.md +11 -11
  347. package/sync-sources/skills/write-vbrief/SKILL.md +7 -282
  348. package/sync-sources/skills/write-xbrief/SKILL.md +295 -0
  349. package/sync-sources/templates/claude-md/sections/warnings.md +1 -1
  350. package/server/agent-state-Co5Sy2Fw.js +0 -3
  351. package/server/agents-DyHKlq1I.js +0 -3
  352. package/server/cli-BRORS9qY.js +0 -3
  353. package/server/codex-DNyiQDKW.js +0 -3
  354. package/server/deacon-swarm-CV54eNmU.js +0 -2
  355. package/server/dist-j64RzSrQ.js +0 -3
  356. package/server/forge-B0_opi-V.js +0 -2
  357. package/server/hume-BmhvfVbV.js +0 -3
  358. package/server/inspect-agent-Dq0z1k3H.js +0 -2
  359. package/server/lifecycle-io-DmY2qwCn.js +0 -3
  360. package/server/merge-ops-DwWCkSgo.js +0 -2
  361. package/server/projects-BKkwpH6q.js +0 -3
  362. package/server/public/assets/index-Bdc4V9ba.css +0 -1
  363. package/server/public/assets/mermaid-GHXKKRXX-B5v_r7cI.js +0 -1
  364. package/server/rally-OSJXdiHK.js +0 -3
  365. package/server/record-rwK-nKv_.js +0 -3
  366. package/server/record-update-Crz74r-6.js +0 -168
  367. package/server/resume-wZZsWtzz.js +0 -3
  368. package/server/review-status-Bnh-rdkY.js +0 -3
  369. package/server/settings-BlUsVaUc.js +0 -2
  370. package/server/specialists-Dqe6_HE5.js +0 -3
  371. package/server/specs-BhOKBzqk.js +0 -3
  372. package/server/supervisor-COVHrBTg.js +0 -2
  373. package/server/tmux-BAvtac_u.js +0 -3
  374. package/server/token-util-BArZLN6w.js +0 -3
  375. package/server/workflows-C4mR0Reb.js +0 -2
@@ -1,5 +1,5 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { Rr as CONFIG_FILE, f as loadConfigSync$1, ii as init_paths, jr as init_errors, t as init_config_yaml, xr as FsError } from "./config-yaml-ig8Nwtiw.js";
2
+ import { Vr as init_paths, f as loadConfigSync$1, ir as FsError, mr as init_errors, t as init_config_yaml, xr as CONFIG_FILE } from "./config-yaml-DvyMuOle.js";
3
3
  import { t as require_toml } from "./toml-CeLDATih.js";
4
4
  import { Effect } from "effect";
5
5
  import { existsSync, promises, readFileSync, writeFileSync } from "fs";
@@ -253,4 +253,4 @@ var init_config = __esmMin((() => {
253
253
  //#endregion
254
254
  export { saveConfigSync as _, getConversationsConfigSync as a, getDefaultConfig as c, getDevrootPathSync as d, init_config as f, saveConfig as g, normalizeRemoteConfig as h, getConversationsConfig as i, getDefaultConfigSync as l, loadConfigSync as m, findDevrootForProject as n, getDashboardApiUrl as o, loadConfig as p, findDevrootForProjectSync as r, getDashboardApiUrlSync as s, checkDevrootDeprecation as t, getDevrootPath as u };
255
255
 
256
- //# sourceMappingURL=config-q4Gvd8dq.js.map
256
+ //# sourceMappingURL=config-CCvjQf27.js.map
@@ -1,3 +1,3 @@
1
- import { _ as saveConfigSync, a as getConversationsConfigSync, c as getDefaultConfig, d as getDevrootPathSync, f as init_config, g as saveConfig, h as normalizeRemoteConfig, i as getConversationsConfig, l as getDefaultConfigSync, m as loadConfigSync, n as findDevrootForProject, o as getDashboardApiUrl, p as loadConfig, r as findDevrootForProjectSync, s as getDashboardApiUrlSync, t as checkDevrootDeprecation, u as getDevrootPath } from "./config-q4Gvd8dq.js";
1
+ import { _ as saveConfigSync, a as getConversationsConfigSync, c as getDefaultConfig, d as getDevrootPathSync, f as init_config, g as saveConfig, h as normalizeRemoteConfig, i as getConversationsConfig, l as getDefaultConfigSync, m as loadConfigSync, n as findDevrootForProject, o as getDashboardApiUrl, p as loadConfig, r as findDevrootForProjectSync, s as getDashboardApiUrlSync, t as checkDevrootDeprecation, u as getDevrootPath } from "./config-CCvjQf27.js";
2
2
  init_config();
3
3
  export { checkDevrootDeprecation, findDevrootForProject, findDevrootForProjectSync, getConversationsConfig, getConversationsConfigSync, getDashboardApiUrl, getDashboardApiUrlSync, getDefaultConfig, getDefaultConfigSync, getDevrootPath, getDevrootPathSync, loadConfig, loadConfigSync, normalizeRemoteConfig, saveConfig, saveConfigSync };
@@ -1,5 +1,5 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { Vr as OVERDECK_HOME, br as ConfigError, ii as init_paths, jr as init_errors, xr as FsError } from "./config-yaml-ig8Nwtiw.js";
2
+ import { Vr as init_paths, ir as FsError, mr as init_errors, rr as ConfigError, wr as OVERDECK_HOME } from "./config-yaml-DvyMuOle.js";
3
3
  import { t as require_toml } from "./toml-CeLDATih.js";
4
4
  import { Effect } from "effect";
5
5
  import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
@@ -289,4 +289,4 @@ var init_config = __esmMin((() => {
289
289
  //#endregion
290
290
  export { loadCloisterConfigSync as a, loadCloisterConfig as i, getHealthThresholdsMs as n, saveCloisterConfigSync as o, init_config as r, shouldAutoStart as s, DEFAULT_CLOISTER_CONFIG as t };
291
291
 
292
- //# sourceMappingURL=config-DeTsoZdR.js.map
292
+ //# sourceMappingURL=config-DjLOdbgT.js.map
@@ -7564,9 +7564,11 @@ function stateMigrationLockPath(projectKey) {
7564
7564
  return join(getOverdeckHome(), "locks", "state-migration", `${projectKey}.lock`);
7565
7565
  }
7566
7566
  function isStateMigrationLocked(projectKey) {
7567
+ const path = stateMigrationLockPath(projectKey);
7568
+ mkdirSync$1(dirname(path), { recursive: true });
7567
7569
  try {
7568
- closeSync$1(openSync$1(stateMigrationLockPath(projectKey), "wx"));
7569
- rmSync$1(stateMigrationLockPath(projectKey));
7570
+ closeSync$1(openSync$1(path, "wx"));
7571
+ rmSync$1(path);
7570
7572
  return false;
7571
7573
  } catch {
7572
7574
  return true;
@@ -8406,7 +8408,7 @@ function preserveCorruptRecordSync(path) {
8406
8408
  * renamed file parses as JSON. A mid-write crash can no longer truncate the
8407
8409
  * record in place (rename is atomic); a write that somehow produces unparseable
8408
8410
  * bytes throws instead of leaving a corrupt record for readers to silently
8409
- * fabricate over. Modeled on writePlanFileAtomic (src/lib/vbrief/dag-cli.ts:101).
8411
+ * fabricate over. Modeled on writePlanFileAtomic (src/lib/xbrief/dag-cli.ts:101).
8410
8412
  */
8411
8413
  function writeRecordFileAtomicSync(path, record) {
8412
8414
  preserveCorruptRecordSync(path);
@@ -8441,27 +8443,6 @@ function writeIssueRecordSync(project, issueId, record) {
8441
8443
  });
8442
8444
  return path;
8443
8445
  }
8444
- /**
8445
- * Workspace-scoped synchronous whole-record writer. Keep this call atomic: async
8446
- * read-modify-write flows must take `withIssueRecordLock` before reading and
8447
- * must not split this write behind an await.
8448
- */
8449
- function writeIssueRecordForWorkspaceSync(workspacePath, issueId, record) {
8450
- const resolvedProject = resolveProjectForIssue(issueId);
8451
- const path = getIssueRecordPathForWorkspace(workspacePath, issueId);
8452
- const dir = dirname(path);
8453
- if (!existsSync$1(dir)) mkdirSync$1(dir, { recursive: true });
8454
- const now = (/* @__PURE__ */ new Date()).toISOString();
8455
- writeRecordFileAtomicSync(path, {
8456
- ...preserveCloseOutSync(path, record),
8457
- issueId: issueId.toUpperCase(),
8458
- schemaVersion: 2,
8459
- created: record.created || now,
8460
- updated: now
8461
- });
8462
- if (resolvedProject) queueIssueRecordCommit(resolvedProject, issueId, path);
8463
- return path;
8464
- }
8465
8446
  async function readIssueRecord(project, issueId) {
8466
8447
  const path = getIssueRecordPath(project, issueId);
8467
8448
  try {
@@ -8499,48 +8480,6 @@ function queueIssueRecordCommit(project, issueId, recordPath) {
8499
8480
  });
8500
8481
  return basePath;
8501
8482
  }
8502
- /** Build this node's owner URI: pan://host[:port]. */
8503
- function buildOwnUri() {
8504
- const port = process.env.OVERDECK_PORT ? `:${process.env.OVERDECK_PORT}` : "";
8505
- return `pan://${hostname()}${port}`;
8506
- }
8507
- async function claimIssueOwner(project, issueId, ownUri = buildOwnUri()) {
8508
- const record = await readIssueRecord(project, issueId) ?? {
8509
- issueId,
8510
- schemaVersion: 2,
8511
- pipeline: {
8512
- issueId,
8513
- reviewStatus: "pending",
8514
- testStatus: "pending",
8515
- readyForMerge: false,
8516
- updatedAt: (/* @__PURE__ */ new Date()).toISOString()
8517
- },
8518
- closeOut: {
8519
- usage: {
8520
- byStage: {},
8521
- totals: {}
8522
- },
8523
- merges: [],
8524
- ranOn: hostname()
8525
- }
8526
- };
8527
- if (record.owner && record.owner !== ownUri) return {
8528
- ok: false,
8529
- owner: record.owner
8530
- };
8531
- record.owner = ownUri;
8532
- queueIssueRecordCommit(project, issueId, writeIssueRecordSync(project, issueId, record));
8533
- return {
8534
- ok: true,
8535
- owner: ownUri
8536
- };
8537
- }
8538
- async function clearIssueOwner(project, issueId) {
8539
- const record = await readIssueRecord(project, issueId);
8540
- if (!record) return;
8541
- delete record.owner;
8542
- queueIssueRecordCommit(project, issueId, writeIssueRecordSync(project, issueId, record));
8543
- }
8544
8483
  /** Ensure a base record exists for an issue. */
8545
8484
  async function ensureIssueRecord(project, issueId) {
8546
8485
  const existing = await readIssueRecord(project, issueId);
@@ -8568,43 +8507,6 @@ async function ensureIssueRecord(project, issueId) {
8568
8507
  }
8569
8508
  };
8570
8509
  }
8571
- /** Write a single status override into the per-issue record. */
8572
- async function writeStatusOverride(project, issueId, key, status, opts = {}) {
8573
- const existing = await readIssueRecord(project, issueId);
8574
- if (existing?.statusOverrides?.[key] === status) return;
8575
- const record = existing ?? await ensureIssueRecord(project, issueId);
8576
- record.statusOverrides = {
8577
- ...record.statusOverrides ?? {},
8578
- [key]: status
8579
- };
8580
- const recordPath = writeIssueRecordSync(project, issueId, record);
8581
- if (opts.autoCommit !== false) queueIssueRecordCommit(project, issueId, recordPath);
8582
- }
8583
- /** Synchronous variant for legacy CLI call sites. */
8584
- function writeStatusOverrideSync(project, issueId, key, status, opts = {}) {
8585
- const existing = readIssueRecordSync(project, issueId);
8586
- if (existing?.statusOverrides?.[key] === status) return;
8587
- const record = existing ?? ensureIssueRecordSync(project, issueId);
8588
- record.statusOverrides = {
8589
- ...record.statusOverrides ?? {},
8590
- [key]: status
8591
- };
8592
- const recordPath = writeIssueRecordSync(project, issueId, record);
8593
- if (opts.autoCommit !== false) queueIssueRecordCommit(project, issueId, recordPath);
8594
- }
8595
- /** Synchronous variant that writes many overrides at once. */
8596
- function writeStatusOverridesSync(project, issueId, overrides, opts = {}) {
8597
- const existing = readIssueRecordSync(project, issueId);
8598
- const nextOverrides = {
8599
- ...existing?.statusOverrides ?? {},
8600
- ...overrides
8601
- };
8602
- if (existing && JSON.stringify(existing.statusOverrides) === JSON.stringify(nextOverrides)) return;
8603
- const record = existing ?? ensureIssueRecordSync(project, issueId);
8604
- record.statusOverrides = nextOverrides;
8605
- const recordPath = writeIssueRecordSync(project, issueId, record);
8606
- if (opts.autoCommit !== false) queueIssueRecordCommit(project, issueId, recordPath);
8607
- }
8608
8510
  /** Synchronous variant of ensureIssueRecord. */
8609
8511
  function ensureIssueRecordSync(project, issueId) {
8610
8512
  const path = getIssueRecordPath(project, issueId);
@@ -8643,23 +8545,6 @@ async function appendSessionEntry(project, issueId, entry, opts = {}) {
8643
8545
  const recordPath = writeIssueRecordSync(project, issueId, record);
8644
8546
  if (opts.autoCommit !== false) queueIssueRecordCommit(project, issueId, recordPath);
8645
8547
  }
8646
- /** Append a feedback entry to the per-issue record. */
8647
- async function appendFeedbackEntry(project, issueId, entry, opts = {}) {
8648
- const record = await ensureIssueRecord(project, issueId);
8649
- record.feedback = [...record.feedback ?? [], entry];
8650
- const recordPath = writeIssueRecordSync(project, issueId, record);
8651
- if (opts.autoCommit !== false) queueIssueRecordCommit(project, issueId, recordPath);
8652
- }
8653
- /** Store harness + model in the per-issue record. */
8654
- async function writeAgentHarnessModel(project, issueId, harness, model, opts = {}) {
8655
- const existing = await readIssueRecord(project, issueId);
8656
- if (existing?.harness === harness && existing?.model === model) return;
8657
- const record = existing ?? await ensureIssueRecord(project, issueId);
8658
- record.harness = harness;
8659
- record.model = model;
8660
- const recordPath = writeIssueRecordSync(project, issueId, record);
8661
- if (opts.autoCommit !== false) queueIssueRecordCommit(project, issueId, recordPath);
8662
- }
8663
8548
  /** Synchronous variant for legacy CLI spawn paths. */
8664
8549
  function writeAgentHarnessModelSync(project, issueId, harness, model, opts = {}) {
8665
8550
  const existing = readIssueRecordSync(project, issueId);
@@ -8700,19 +8585,6 @@ function clearRecordFeedbackSync(project, issueId) {
8700
8585
  record.feedback = [];
8701
8586
  queueIssueRecordCommit(project, issueId, writeIssueRecordSync(project, issueId, record));
8702
8587
  }
8703
- /** Record advisory scope prediction drift in the per-issue record (sync). */
8704
- function writeRecordScopeDriftSync(project, issueId, scopeDrift) {
8705
- const record = ensureIssueRecordSync(project, issueId);
8706
- record.scopeDrift = scopeDrift;
8707
- queueIssueRecordCommit(project, issueId, writeIssueRecordSync(project, issueId, record));
8708
- }
8709
- /** Write tiered execution override into the per-issue record (sync). Passing null clears the override. */
8710
- function writeRecordTieredExecutionOverrideSync(project, issueId, override) {
8711
- const record = ensureIssueRecordSync(project, issueId);
8712
- if (override === null) delete record.tieredExecutionOverride;
8713
- else record.tieredExecutionOverride = override;
8714
- queueIssueRecordCommit(project, issueId, writeIssueRecordSync(project, issueId, record));
8715
- }
8716
8588
  /** Write tiered execution override into the per-issue record (async). Passing null clears the override. */
8717
8589
  async function writeRecordTieredExecutionOverride(project, issueId, override) {
8718
8590
  const record = await ensureIssueRecord(project, issueId);
@@ -8732,12 +8604,6 @@ function markRecordPipelineClosedOutSync(project, issueId) {
8732
8604
  record.pipeline.updatedAt = now;
8733
8605
  queueIssueRecordCommit(project, issueId, writeIssueRecordSync(project, issueId, record));
8734
8606
  }
8735
- /** Persist the completed Definition-of-Done gate through the issue record write door. */
8736
- function writeCloseOutDodGateSync(project, issueId, dodGate) {
8737
- const record = ensureIssueRecordSync(project, issueId);
8738
- record.closeOut.dodGate = dodGate;
8739
- queueIssueRecordCommit(project, issueId, writeIssueRecordSync(project, issueId, record));
8740
- }
8741
8607
  async function writeCloseOutDodGate(project, issueId, dodGate) {
8742
8608
  const recordPath = getIssueRecordPath(project, issueId);
8743
8609
  const record = await readIssueRecord(project, issueId);
@@ -8763,48 +8629,6 @@ async function writeCloseOutDodGate(project, issueId, dodGate) {
8763
8629
  JSON.parse(await promises$1.readFile(recordPath, "utf-8"));
8764
8630
  queueIssueRecordCommit(project, issueId, recordPath);
8765
8631
  }
8766
- /** Write decisions into the per-issue record (sync). */
8767
- function writeRecordDecisionsSync(project, issueId, decisions, opts = {}) {
8768
- const record = ensureIssueRecordSync(project, issueId);
8769
- record.decisions = decisions;
8770
- const recordPath = writeIssueRecordSync(project, issueId, record);
8771
- if (opts.autoCommit !== false) queueIssueRecordCommit(project, issueId, recordPath);
8772
- }
8773
- /** Write decisions into the per-issue record (async). */
8774
- async function writeRecordDecisions(project, issueId, decisions, opts = {}) {
8775
- const record = await ensureIssueRecord(project, issueId);
8776
- record.decisions = decisions;
8777
- const recordPath = writeIssueRecordSync(project, issueId, record);
8778
- if (opts.autoCommit !== false) queueIssueRecordCommit(project, issueId, recordPath);
8779
- }
8780
- /** Write hazards into the per-issue record (sync). */
8781
- function writeRecordHazardsSync(project, issueId, hazards, opts = {}) {
8782
- const record = ensureIssueRecordSync(project, issueId);
8783
- record.hazards = hazards;
8784
- const recordPath = writeIssueRecordSync(project, issueId, record);
8785
- if (opts.autoCommit !== false) queueIssueRecordCommit(project, issueId, recordPath);
8786
- }
8787
- /** Write hazards into the per-issue record (async). */
8788
- async function writeRecordHazards(project, issueId, hazards, opts = {}) {
8789
- const record = await ensureIssueRecord(project, issueId);
8790
- record.hazards = hazards;
8791
- const recordPath = writeIssueRecordSync(project, issueId, record);
8792
- if (opts.autoCommit !== false) queueIssueRecordCommit(project, issueId, recordPath);
8793
- }
8794
- /** Write resumePoint into the per-issue record (sync). */
8795
- function writeRecordResumePointSync(project, issueId, resumePoint, opts = {}) {
8796
- const record = ensureIssueRecordSync(project, issueId);
8797
- record.resumePoint = resumePoint;
8798
- const recordPath = writeIssueRecordSync(project, issueId, record);
8799
- if (opts.autoCommit !== false) queueIssueRecordCommit(project, issueId, recordPath);
8800
- }
8801
- /** Write resumePoint into the per-issue record (async). */
8802
- async function writeRecordResumePoint(project, issueId, resumePoint, opts = {}) {
8803
- const record = await ensureIssueRecord(project, issueId);
8804
- record.resumePoint = resumePoint;
8805
- const recordPath = writeIssueRecordSync(project, issueId, record);
8806
- if (opts.autoCommit !== false) queueIssueRecordCommit(project, issueId, recordPath);
8807
- }
8808
8632
  /** Infer a minimal ProjectConfig from a workspace path (tests / fallback).
8809
8633
  *
8810
8634
  * Returns a config whose `path` is the workspace directory itself so that
@@ -8822,12 +8646,11 @@ function resolveProjectForIssue(issueId) {
8822
8646
  if (!resolved) return null;
8823
8647
  return getProjectSync(resolved.projectKey);
8824
8648
  }
8825
- var RECORD_SCHEMA_VERSION, RECORD_DIRNAME;
8649
+ var RECORD_DIRNAME;
8826
8650
  var init_record = __esmMin((() => {
8827
8651
  init_auto_commit();
8828
8652
  init_state_read_home();
8829
8653
  init_projects();
8830
- RECORD_SCHEMA_VERSION = 2;
8831
8654
  RECORD_DIRNAME = "records";
8832
8655
  }));
8833
8656
  //#endregion
@@ -9688,6 +9511,48 @@ var init_model_capabilities = __esmMin((() => {
9688
9511
  "context-length": 100
9689
9512
  }
9690
9513
  },
9514
+ "k3": {
9515
+ model: "k3",
9516
+ provider: "kimi",
9517
+ displayName: "Kimi K3",
9518
+ costPer1MTokens: 9,
9519
+ contextWindow: 262144,
9520
+ skills: {
9521
+ "code-generation": 95,
9522
+ "code-review": 93,
9523
+ debugging: 93,
9524
+ planning: 90,
9525
+ documentation: 90,
9526
+ testing: 90,
9527
+ security: 85,
9528
+ performance: 88,
9529
+ synthesis: 94,
9530
+ speed: 70,
9531
+ "context-length": 98
9532
+ },
9533
+ notes: "Kimi K3 coding endpoint alias. 2.8T MoE, always-thinking, 256K context. Source: https://www.kimi.com/code/docs/en/third-party-tools/other-coding-agents.html"
9534
+ },
9535
+ "k3[1m]": {
9536
+ model: "k3[1m]",
9537
+ provider: "kimi",
9538
+ displayName: "Kimi K3 (1M)",
9539
+ costPer1MTokens: 9,
9540
+ contextWindow: 1048576,
9541
+ skills: {
9542
+ "code-generation": 95,
9543
+ "code-review": 93,
9544
+ debugging: 93,
9545
+ planning: 90,
9546
+ documentation: 90,
9547
+ testing: 90,
9548
+ security: 85,
9549
+ performance: 88,
9550
+ synthesis: 94,
9551
+ speed: 70,
9552
+ "context-length": 100
9553
+ },
9554
+ notes: "Kimi K3 coding endpoint 1M alias. 2.8T MoE, always-thinking, 1,048,576-token context. Source: https://www.kimi.com/code/docs/en/third-party-tools/other-coding-agents.html"
9555
+ },
9691
9556
  "kimi-k2.7-code": {
9692
9557
  model: "kimi-k2.7-code",
9693
9558
  provider: "kimi",
@@ -10803,6 +10668,8 @@ function getProviderForModelSync(modelId) {
10803
10668
  "MiniMax-M3"
10804
10669
  ].includes(modelId)) return PROVIDERS.minimax;
10805
10670
  if ([
10671
+ "k3",
10672
+ "k3[1m]",
10806
10673
  "kimi-k2.7-code",
10807
10674
  "kimi-k2.6",
10808
10675
  "kimi-k2.5",
@@ -10973,6 +10840,8 @@ var init_providers = __esmMin((() => {
10973
10840
  compatibility: "direct",
10974
10841
  defaultHarness: "claude-code",
10975
10842
  models: [
10843
+ "k3",
10844
+ "k3[1m]",
10976
10845
  "kimi-k2.7-code",
10977
10846
  "kimi-k2.6",
10978
10847
  "kimi-k2.5",
@@ -11290,7 +11159,7 @@ function resolveTieredExecutionBlock(config, planMetadata, recordOverride) {
11290
11159
  * Per-issue tiered_execution opt-in/out (PAN-1791 FR-9, PAN-2383 FR-1). Resolves with precedence:
11291
11160
  * record override > plan.metadata.tiered_execution > config.enabled.
11292
11161
  *
11293
- * An issue's vBRIEF may set `tiered_execution: 'on' | 'off'` in plan.metadata; a record
11162
+ * An issue's xBRIEF may set `tiered_execution: 'on' | 'off'` in plan.metadata; a record
11294
11163
  * override takes precedence; an explicit value wins over the global `tiered_execution.enabled`
11295
11164
  * flag, and an unset value inherits it — zero behavior change when no overrides exist.
11296
11165
  * Any invalid value is a config error (fail-loud, no silent inherit on typos).
@@ -14830,6 +14699,6 @@ var init_config_yaml = __esmMin((() => {
14830
14699
  init_load();
14831
14700
  }));
14832
14701
  //#endregion
14833
- export { derefWorkhorse as $, renameProjectSync as $n, getDocsIndexPath as $r, writeRecordScopeDriftSync as $t, canUseHarnessSync as A, findProjectByTeam as An, VcsError as Ar, getIssueRecordPathForWorkspace as At, getProviderEnvSync as B, hasProjects as Bn, LOGS_DIR as Br, resolveProjectForIssue as Bt, TIERED_EXECUTION_DIFFICULTIES as C, projectKey as Cn, GitHubApiError as Cr, claimIssueOwner as Ct, resolveTieredExecutionEnabled as D, extractTeamPrefix as Dn, ProcessSpawnError as Dr, ensureIssueRecordSync as Dt, resolveTieredExecutionBlock as E, createDefaultProjectsConfig as En, MergeConflictError as Er, ensureIssueRecord as Et, PROVIDERS as F, getProjectSwarmHotspots as Fn, CACHE_AGENTS_DIR as Fr, queueIssueRecordCommit as Ft, setupCredentialFileAuthSync as G, listProjects as Gn, PROJECT_PRDS_PLANNED_SUBDIR as Gr, writeIssueRecordForWorkspaceSync as Gt, init_providers as H, init_projects as Hn, PROJECT_DOCS_SUBDIR as Hr, writeAgentHarnessModelSync as Ht, UnknownModelError as I, getProjectSync as In, CACHE_RULES_DIR as Ir, readIssueRecord as It, defaultBackgroundAiFeatures as J, loadProjectsConfigSync as Jn, SYNC_SOURCES as Jr, writeRecordDecisionsSync as Jt, ensureOpenAICompatibleProxyRunning as K, listProjectsSync as Kn, PROJECT_PRDS_SUBDIR as Kr, writeIssueRecordSync as Kt, clearCredentialFileAuthSync as L, getSpecialistConfig as Ln, CLAUDE_DIR as Lr, readIssueRecordForWorkspaceSync as Lt, init_harness_policy as M, findProjectsByRallyProject as Mn, AGENTS_DIR as Mr, getProjectConfigFromWorkspacePath as Mt, KIMI_CODING_BASE_URL as N, getIssuePrefix as Nn, ARCHIVES_DIR as Nr, init_record as Nt, resolveTieredExecutionEnabledForIssue as O, findProjectByPath as On, TmuxError as Or, getIssueRecordBasePath as Ot, KIMI_PLATFORM_BASE_URL as P, getProject as Pn, BIN_DIR as Pr, markRecordPipelineClosedOutSync as Pt, computeModelOrigin as Q, renameProject as Qn, getDocsDisableStatePath as Qr, writeRecordResumePointSync as Qt, getBuiltInDefaultHarness as R, getSpecialistPromptOverride as Rn, CONFIG_FILE as Rr, readIssueRecordSync as Rt, DEFAULT_TIERED_EXECUTION_CONFIG as S, init_project_key as Sn, GitError as Sr, buildOwnUri as St, init_tier_table as T, ProjectRenameError as Tn, LinearApiError as Tr, clearRecordFeedbackSync as Tt, piProviderForModel as U, initializeProjectsConfig as Un, PROJECT_PRDS_ACTIVE_SUBDIR as Ur, writeCloseOutDodGate as Ut, getProviderForModelSync as V, hasProjectsSync as Vn, OVERDECK_HOME as Vr, writeAgentHarnessModel as Vt, qualifyPiModel as W, initializeProjectsConfigSync as Wn, PROJECT_PRDS_COMPLETED_SUBDIR as Wr, writeCloseOutDodGateSync as Wt, DEFAULT_ROLES as X, registerProject as Xn, encodeClaudeProjectDir as Xr, writeRecordHazardsSync as Xt, init_registry as Y, projects_exports as Yn, TRAEFIK_DIR as Yr, writeRecordHazards as Yt, DEFAULT_WORKHORSES as Z, registerProjectSync as Zn, getDocsBudgetStatePath as Zr, writeRecordResumePoint as Zt, getDefaultDocsConfig as _, acquireStateMigrationLock as _n, require_dist as _r, RECORD_SCHEMA_VERSION as _t, getConversationsConfigSync as a, isDevMode as ai, deriveProjectRoot as an, saveProjectsConfigSync as ar, getModelEffortLevelsSync as at, DEFAULT_CONFIG as b, resolveStateReadHomeSync as bn, ConfigError as br, appendSessionEntry as bt, isClaudeCodeChannelsEnabled as c, sessionFilePath as ci, init_auto_commit as cn, unregisterProject as cr, modelSupportsImagesSync as ct, loadConfigNoMigration as d, STATE_BRANCH_PATHS as dn, extractPrefixSync as dr, fnv1a32 as dt, getDocsTelemetryPath as ei, writeRecordTieredExecutionOverride as en, resolveInfraRepo as er, init_roles as et, loadConfigSync as f, STATE_PLANE_PATHS as fn, init_issue_id as fr, init_percent as ft, mergeConfigs as g, isStatePlanePath as gn, resolveIssueIdSync as gr, RECORD_DIRNAME as gt, jsYaml as h, isStatePlaneOnlyStatus as hn, resolveBareNumericIdSync as hr, ROLE_EFFORTS as ht, getConversationsConfig as i, init_paths as ii, writeStatusOverridesSync as in, saveProjectsConfig as ir, getModelCapabilitySync as it, canUseModelWithAuthSync as j, findProjectByTeamSync as jn, init_errors as jr, getIssueWorkspacePath as jt, validateTieredExecutionConfig as k, findProjectByPathSync as kn, TrackerError as kr, getIssueRecordPath as kt, isClaudeCodeChannelsMcpEnabled as l, queueAutoCommit as ln, unregisterProjectSync as lr, resolveModelIdSync as lt, init_js_yaml as m, init_state_plane as mn, parseIssueIdSync as mr, PARENT_MODEL_REF as mt, clearConfigCache as n, getLegacyHome as ni, writeStatusOverride as nn, resolveProjectFromIssueSync as nr, MODEL_CAPABILITIES as nt, getGlobalConfigPath as o, packageRoot as oi, flushAllPendingAutoCommits as on, setProjectAutoMergeDefaultSync as or, hasModelCapabilitySync as ot, updateConversationsConfig as p, getMainDivergence as pn, normalizeIssueIdSync as pr, COMPLIANCE_MODES as pt, init_openai_compatible_proxy as q, loadProjectsConfig as qn, SKILLS_DIR as qr, writeRecordDecisions as qt, getConversationSearchConfigSync as r, getOverdeckHome as ri, writeStatusOverrideSync as rn, resolveProjectPath as rr, MODEL_DEPRECATIONS as rt, init_load as s, resolveOhmypiExtensionPath as si, flushAutoCommits as sn, setProjectSwarmPolicySync as sr, init_model_capabilities as st, init_config_yaml as t, getHandoffsDir as ti, writeRecordTieredExecutionOverrideSync as tn, resolveProjectFromIssue as tr, resolveModel as tt, isTldrEnabledSync as u, reconcileStatePlaneDrift as un, extractNumberSync as ur, fmix32 as ut, getDefaultTtsDaemonConfig as v, init_state_migration_lock as vn, CheckpointError as vr, appendFeedbackEntry as vt, TieredExecutionConfigError as w, PROJECTS_CONFIG_FILE as wn, InvalidAgentIdError as wr, clearIssueOwner as wt, init_defaults as x, shouldCommitLegacyWorkspaceArtifacts as xn, FsError as xr, appendSessionEntrySync as xt, mergeTtsDaemonConfigs as y, init_state_read_home as yn, ClaudeCredentialParseError as yr, appendFeedbackEntrySync as yt, getKimiAnthropicBaseUrl as z, getSpecialistRetention as zn, COSTS_DIR as zr, readRecordContinueViewSync as zt };
14702
+ export { derefWorkhorse as $, resolveIssueIdSync as $n, acquireStateMigrationLock as $t, canUseHarnessSync as A, loadProjectsConfig as An, SKILLS_DIR as Ar, queueIssueRecordCommit as At, getProviderEnvSync as B, resolveProjectPath as Bn, getOverdeckHome as Br, deriveProjectRoot as Bt, TIERED_EXECUTION_DIFFICULTIES as C, hasProjects as Cn, LOGS_DIR as Cr, getIssueRecordBasePath as Ct, resolveTieredExecutionEnabled as D, initializeProjectsConfigSync as Dn, PROJECT_PRDS_COMPLETED_SUBDIR as Dr, getProjectConfigFromWorkspacePath as Dt, resolveTieredExecutionBlock as E, initializeProjectsConfig as En, PROJECT_PRDS_ACTIVE_SUBDIR as Er, getIssueWorkspacePath as Et, PROVIDERS as F, renameProject as Fn, getDocsDisableStatePath as Fr, resolveProjectForIssue as Ft, setupCredentialFileAuthSync as G, unregisterProject as Gn, sessionFilePath as Gr, reconcileStatePlaneDrift as Gt, init_providers as H, saveProjectsConfigSync as Hn, isDevMode as Hr, flushAutoCommits as Ht, UnknownModelError as I, renameProjectSync as In, getDocsIndexPath as Ir, writeAgentHarnessModelSync as It, defaultBackgroundAiFeatures as J, extractPrefixSync as Jn, getMainDivergence as Jt, ensureOpenAICompatibleProxyRunning as K, unregisterProjectSync as Kn, STATE_BRANCH_PATHS as Kt, clearCredentialFileAuthSync as L, resolveInfraRepo as Ln, getDocsTelemetryPath as Lr, writeCloseOutDodGate as Lt, init_harness_policy as M, projects_exports as Mn, TRAEFIK_DIR as Mr, readIssueRecordForWorkspaceSync as Mt, KIMI_CODING_BASE_URL as N, registerProject as Nn, encodeClaudeProjectDir as Nr, readIssueRecordSync as Nt, resolveTieredExecutionEnabledForIssue as O, listProjects as On, PROJECT_PRDS_PLANNED_SUBDIR as Or, init_record as Ot, KIMI_PLATFORM_BASE_URL as P, registerProjectSync as Pn, getDocsBudgetStatePath as Pr, readRecordContinueViewSync as Pt, computeModelOrigin as Q, resolveBareNumericIdSync as Qn, parsePorcelainStatusPaths as Qt, getBuiltInDefaultHarness as R, resolveProjectFromIssue as Rn, getHandoffsDir as Rr, writeIssueRecordSync as Rt, DEFAULT_TIERED_EXECUTION_CONFIG as S, getSpecialistRetention as Sn, COSTS_DIR as Sr, ensureIssueRecordSync as St, init_tier_table as T, init_projects as Tn, PROJECT_DOCS_SUBDIR as Tr, getIssueRecordPathForWorkspace as Tt, piProviderForModel as U, setProjectAutoMergeDefaultSync as Un, packageRoot as Ur, init_auto_commit as Ut, getProviderForModelSync as V, saveProjectsConfig as Vn, init_paths as Vr, flushAllPendingAutoCommits as Vt, qualifyPiModel as W, setProjectSwarmPolicySync as Wn, resolveOhmypiExtensionPath as Wr, queueAutoCommit as Wt, DEFAULT_ROLES as X, normalizeIssueIdSync as Xn, isStatePlaneOnlyStatus as Xt, init_registry as Y, init_issue_id as Yn, init_state_plane as Yt, DEFAULT_WORKHORSES as Z, parseIssueIdSync as Zn, isStatePlanePath as Zt, getDefaultDocsConfig as _, getProject as _n, BIN_DIR as _r, appendFeedbackEntrySync as _t, getConversationsConfigSync as a, init_project_key as an, GitError as ar, getModelEffortLevelsSync as at, DEFAULT_CONFIG as b, getSpecialistConfig as bn, CLAUDE_DIR as br, clearRecordFeedbackSync as bt, isClaudeCodeChannelsEnabled as c, ProjectRenameError as cn, LinearApiError as cr, modelSupportsImagesSync as ct, loadConfigNoMigration as d, findProjectByPath as dn, TmuxError as dr, fnv1a32 as dt, init_state_migration_lock as en, require_dist as er, init_roles as et, loadConfigSync as f, findProjectByPathSync as fn, TrackerError as fr, init_percent as ft, mergeConfigs as g, getIssuePrefix as gn, ARCHIVES_DIR as gr, RECORD_DIRNAME as gt, jsYaml as h, findProjectsByRallyProject as hn, AGENTS_DIR as hr, ROLE_EFFORTS as ht, getConversationsConfig as i, shouldCommitLegacyWorkspaceArtifacts as in, FsError as ir, getModelCapabilitySync as it, canUseModelWithAuthSync as j, loadProjectsConfigSync as jn, SYNC_SOURCES as jr, readIssueRecord as jt, validateTieredExecutionConfig as k, listProjectsSync as kn, PROJECT_PRDS_SUBDIR as kr, markRecordPipelineClosedOutSync as kt, isClaudeCodeChannelsMcpEnabled as l, createDefaultProjectsConfig as ln, MergeConflictError as lr, resolveModelIdSync as lt, init_js_yaml as m, findProjectByTeamSync as mn, init_errors as mr, PARENT_MODEL_REF as mt, clearConfigCache as n, init_state_read_home as nn, ClaudeCredentialParseError as nr, MODEL_CAPABILITIES as nt, getGlobalConfigPath as o, projectKey as on, GitHubApiError as or, hasModelCapabilitySync as ot, updateConversationsConfig as p, findProjectByTeam as pn, VcsError as pr, COMPLIANCE_MODES as pt, init_openai_compatible_proxy as q, extractNumberSync as qn, STATE_PLANE_PATHS as qt, getConversationSearchConfigSync as r, resolveStateReadHomeSync as rn, ConfigError as rr, MODEL_DEPRECATIONS as rt, init_load as s, PROJECTS_CONFIG_FILE as sn, InvalidAgentIdError as sr, init_model_capabilities as st, init_config_yaml as t, STATE_BRANCH as tn, CheckpointError as tr, resolveModel as tt, isTldrEnabledSync as u, extractTeamPrefix as un, ProcessSpawnError as ur, fmix32 as ut, getDefaultTtsDaemonConfig as v, getProjectSwarmHotspots as vn, CACHE_AGENTS_DIR as vr, appendSessionEntry as vt, TieredExecutionConfigError as w, hasProjectsSync as wn, OVERDECK_HOME as wr, getIssueRecordPath as wt, init_defaults as x, getSpecialistPromptOverride as xn, CONFIG_FILE as xr, ensureIssueRecord as xt, mergeTtsDaemonConfigs as y, getProjectSync as yn, CACHE_RULES_DIR as yr, appendSessionEntrySync as yt, getKimiAnthropicBaseUrl as z, resolveProjectFromIssueSync as zn, getLegacyHome as zr, writeRecordTieredExecutionOverride as zt };
14834
14703
 
14835
- //# sourceMappingURL=config-yaml-ig8Nwtiw.js.map
14704
+ //# sourceMappingURL=config-yaml-DvyMuOle.js.map
@@ -1,3 +1,3 @@
1
- import { a as resolveConflictGate, i as init_conflict_gate, t as buildRealConflictGateDeps } from "./conflict-gate-CFqPVxEg.js";
1
+ import { a as resolveConflictGate, i as init_conflict_gate, t as buildRealConflictGateDeps } from "./conflict-gate-CmrYpa47.js";
2
2
  init_conflict_gate();
3
3
  export { buildRealConflictGateDeps, resolveConflictGate };
@@ -1,7 +1,7 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
2
  import { a as init_activity_logger, n as emitActivityEntrySync } from "./activity-logger-DDlOIAML.js";
3
- import { c as init_review_status, s as getReviewStatusSync, y as setReviewStatusSync } from "./review-status-DFRjDFef.js";
4
- import { L as messageAgent, Z as spawnRun, s as init_agents } from "./queries-ZABd5aXP.js";
3
+ import { b as setReviewStatusSync, c as getReviewStatusSync, l as init_review_status } from "./review-status-A7quS5KJ.js";
4
+ import { X as messageAgent, b as init_agents, ut as spawnRun } from "./queries-6d7Cdtm7.js";
5
5
  import { exec } from "node:child_process";
6
6
  import { promisify } from "node:util";
7
7
  //#region ../../lib/cloister/conflict-gate.ts
@@ -230,4 +230,4 @@ var init_conflict_gate = __esmMin((() => {
230
230
  //#endregion
231
231
  export { resolveConflictGate as a, init_conflict_gate as i, checkBranchMergeability as n, getCachedConflictGateMergeability as r, buildRealConflictGateDeps as t };
232
232
 
233
- //# sourceMappingURL=conflict-gate-CFqPVxEg.js.map
233
+ //# sourceMappingURL=conflict-gate-CmrYpa47.js.map
@@ -1,4 +1,4 @@
1
- import { l as piGlobalContextFile, n as codexGlobalContextFile } from "./layers-Cp1To4L8.js";
2
- import { t as init_context_layers } from "./context-layers-15gDOk20.js";
1
+ import { l as piGlobalContextFile, n as codexGlobalContextFile } from "./layers-DzxSTGNA.js";
2
+ import { t as init_context_layers } from "./context-layers-ZYFcWiyc.js";
3
3
  init_context_layers();
4
4
  export { codexGlobalContextFile, piGlobalContextFile };
@@ -1,6 +1,6 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { ii as init_paths, jr as init_errors } from "./config-yaml-ig8Nwtiw.js";
3
- import { o as init_layers } from "./layers-Cp1To4L8.js";
2
+ import { Vr as init_paths, mr as init_errors } from "./config-yaml-DvyMuOle.js";
3
+ import { o as init_layers } from "./layers-DzxSTGNA.js";
4
4
  import "effect";
5
5
  import "fs";
6
6
  import "path";
@@ -162,4 +162,4 @@ var init_context_layers = __esmMin((() => {
162
162
  //#endregion
163
163
  export { init_render as a, KNOWN_HARNESS_MARKERS as c, validateTemplate as d, hasManagedRegion as i, init_harness as l, REGION_BEGIN as n, userContentOutsideRegion as o, REGION_END as r, HARNESS_MARKERS as s, init_context_layers as t, renderForHarness as u };
164
164
 
165
- //# sourceMappingURL=context-layers-15gDOk20.js.map
165
+ //# sourceMappingURL=context-layers-ZYFcWiyc.js.map
@@ -1,7 +1,7 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { Hn as init_projects, In as getProjectSync, Jn as loadProjectsConfigSync } from "./config-yaml-ig8Nwtiw.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-D4iNWMA5.js";
4
- import { n as init_issues, t as IssueId } from "./issues-pDW9VUNz.js";
2
+ import { Tn as init_projects, jn as loadProjectsConfigSync, yn as getProjectSync } from "./config-yaml-DvyMuOle.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-CzaSOgul.js";
4
+ import { n as init_issues, t as IssueId } from "./issues-B6ToV6x1.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
@@ -403,4 +403,4 @@ var init_control_settings = __esmMin((() => {
403
403
  //#endregion
404
404
  export { setMergeTrainEnabled as C, setFlywheelRequireUatBeforeMerge as S, stampBootReconciliation as T, setDeaconGloballyPaused as _, getFlywheelActiveRunIdSync as a, setFlywheelAutoPickupBacklog as b, isCloisterSpawnsPausedSync as c, isFlywheelAutoPickupBacklog as d, isFlywheelGloballyPaused as f, setCloisterSpawnsPausedSync 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, setDeaconGloballyPausedSync as v, setSetting as w, setFlywheelGloballyPaused as x, setFlywheelActiveRunId as y };
405
405
 
406
- //# sourceMappingURL=control-settings-D_odMIaC.js.map
406
+ //# sourceMappingURL=control-settings-aP1ANIlI.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-ig8Nwtiw.js";
3
- import { a as init_event_store, n as getEventStore } from "./event-store-TnWdydfB.js";
4
- import { Ht as getAgentRuntimeBaseCommand, s as init_agents, sn as getProviderExportsForModel } from "./queries-ZABd5aXP.js";
5
- import { n as isBackgroundFeatureEnabled, t as init_features } from "./features-Bc-Bmiye.js";
6
- import { t as init_conversation_service, u as findLastCompactBoundary } from "./conversation-service-C3avRVEr.js";
7
- import { r as init_smart_compaction, t as generateSmartSummary } from "./smart-compaction-CLZOWin1.js";
8
- import { a as generateFallbackSummary, l as init_summary_fork } from "./summary-fork-bX6ax6X7.js";
2
+ import { f as loadConfigSync, t as init_config_yaml } from "./config-yaml-DvyMuOle.js";
3
+ import { a as init_event_store, n as getEventStore } from "./event-store-tdiY5eDZ.js";
4
+ import { b as init_agents, bn as getProviderExportsForModel, tn as getAgentRuntimeBaseCommand } from "./queries-6d7Cdtm7.js";
5
+ import { n as isBackgroundFeatureEnabled, t as init_features } from "./features-Dhxz-wLc.js";
6
+ import { t as init_conversation_service, u as findLastCompactBoundary } from "./conversation-service-Du-MTNpJ.js";
7
+ import { r as init_smart_compaction, t as generateSmartSummary } from "./smart-compaction-r4pHQBIr.js";
8
+ import { a as generateFallbackSummary, l as init_summary_fork } from "./summary-fork-DHhJIsAL.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-B6YSRLda.js.map
182
+ //# sourceMappingURL=conversation-compaction-CNbTLB86.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-B6YSRLda.js";
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-CNbTLB86.js";
2
2
  init_conversation_compaction();
3
3
  export { buildCompactionRuntimeInfo, compactConversationNative, estimateContextTokens, getConversationCompactionSettings, isCompacting, maybeCompactBeforeRespawn, shouldInterceptManualCompact };
@@ -1,9 +1,9 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { ii as init_paths, lt as resolveModelIdSync, nt as MODEL_CAPABILITIES, st as init_model_capabilities } from "./config-yaml-ig8Nwtiw.js";
3
- import { o as getHarnessBehavior } from "./src-k039WVYY.js";
4
- import { o as getPricingSync, s as init_cost, t as calculateCostSync } from "./cost-Codk1pc2.js";
5
- import { r as parseCodexSessionSync, t as init_codex_parser } from "./codex-parser-jl8AeAmB.js";
6
- import { t as init_behavior } from "./behavior-CGj16clS.js";
2
+ import { Vr as init_paths, lt as resolveModelIdSync, nt as MODEL_CAPABILITIES, st as init_model_capabilities } from "./config-yaml-DvyMuOle.js";
3
+ import { o as getHarnessBehavior } from "./src-U7_kTPEE.js";
4
+ import { o as getPricingSync, s as init_cost, t as calculateCostSync } from "./cost-Ca0YTWDw.js";
5
+ import { r as parseCodexSessionSync, t as init_codex_parser } from "./codex-parser-C4gSH-IR.js";
6
+ import { t as init_behavior } from "./behavior-B_-4EKF3.js";
7
7
  import "node:path";
8
8
  import "node:os";
9
9
  import { open, readFile, stat, watch } from "node:fs/promises";
@@ -1751,4 +1751,4 @@ var init_conversation_service = __esmMin((() => {
1751
1751
  //#endregion
1752
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 };
1753
1753
 
1754
- //# sourceMappingURL=conversation-service-C3avRVEr.js.map
1754
+ //# sourceMappingURL=conversation-service-Du-MTNpJ.js.map
@@ -1,3 +1,3 @@
1
- import { i as computeContextUsage, t as init_conversation_service } from "./conversation-service-C3avRVEr.js";
1
+ import { i as computeContextUsage, t as init_conversation_service } from "./conversation-service-Du-MTNpJ.js";
2
2
  init_conversation_service();
3
3
  export { computeContextUsage };
@@ -1,3 +1,3 @@
1
- import { M as listConversations, k as init_conversations } from "./conversations-bYpM9-kZ.js";
1
+ import { M as listConversations, k as init_conversations } from "./conversations-DbOs1e9Q.js";
2
2
  init_conversations();
3
3
  export { listConversations };
@@ -1,7 +1,7 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { ii as init_paths, ri as getOverdeckHome } from "./config-yaml-ig8Nwtiw.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-D4iNWMA5.js";
4
- import { a as init_event_store, n as getEventStore } from "./event-store-TnWdydfB.js";
2
+ import { Br as getOverdeckHome, Vr as init_paths } from "./config-yaml-DvyMuOle.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-CzaSOgul.js";
4
+ import { a as init_event_store, n as getEventStore } from "./event-store-tdiY5eDZ.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";
@@ -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-bYpM9-kZ.js.map
1588
+ //# sourceMappingURL=conversations-DbOs1e9Q.js.map
@@ -1,6 +1,6 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { o as getPricingSync, s as init_cost$1, t as calculateCostSync } from "./cost-Codk1pc2.js";
3
- import { i as init_events, t as appendCostEventSync } from "./events-DSUdR-04.js";
2
+ import { o as getPricingSync, s as init_cost$1, t as calculateCostSync } from "./cost-Ca0YTWDw.js";
3
+ import { i as init_events, t as appendCostEventSync } from "./events-CC1dgUpx.js";
4
4
  //#region ../../lib/background-ai/cost.ts
5
5
  /** The cost-source tag prefix used for every background AI event. */
6
6
  function backgroundCostSource(feature) {
@@ -52,4 +52,4 @@ var init_cost = __esmMin((() => {
52
52
  //#endregion
53
53
  export { recordBackgroundAiCost as n, init_cost as t };
54
54
 
55
- //# sourceMappingURL=cost-wH46-WsJ.js.map
55
+ //# sourceMappingURL=cost-CW4WSe72.js.map
@@ -1,5 +1,5 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { ii as init_paths, jr as init_errors, zr as COSTS_DIR } from "./config-yaml-ig8Nwtiw.js";
2
+ import { Sr as COSTS_DIR, Vr as init_paths, mr as init_errors } from "./config-yaml-DvyMuOle.js";
3
3
  import "effect";
4
4
  import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
5
5
  import { join } from "path";
@@ -457,6 +457,22 @@ var init_cost = __esmMin((() => {
457
457
  outputPer1k: .004,
458
458
  cacheReadPer1k: 19e-5,
459
459
  currency: "USD"
460
+ },
461
+ {
462
+ provider: "custom",
463
+ model: "k3",
464
+ inputPer1k: .003,
465
+ outputPer1k: .015,
466
+ cacheReadPer1k: 3e-4,
467
+ currency: "USD"
468
+ },
469
+ {
470
+ provider: "custom",
471
+ model: "k3[1m]",
472
+ inputPer1k: .003,
473
+ outputPer1k: .015,
474
+ cacheReadPer1k: 3e-4,
475
+ currency: "USD"
460
476
  }
461
477
  ];
462
478
  BUDGETS_FILE = join(COSTS_DIR, "budgets.json");
@@ -464,4 +480,4 @@ var init_cost = __esmMin((() => {
464
480
  //#endregion
465
481
  export { getAllBudgetsSync as a, deleteBudgetSync as i, checkBudgetSync as n, getPricingSync as o, createBudgetSync as r, init_cost as s, calculateCostSync as t };
466
482
 
467
- //# sourceMappingURL=cost-Codk1pc2.js.map
483
+ //# sourceMappingURL=cost-Ca0YTWDw.js.map
@@ -1,6 +1,6 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { ii as init_paths, ri as getOverdeckHome } from "./config-yaml-ig8Nwtiw.js";
3
- import { d as getOverdeckDatabaseSync, f as init_infra } from "./infra-D4iNWMA5.js";
2
+ import { Br as getOverdeckHome, Vr as init_paths } from "./config-yaml-DvyMuOle.js";
3
+ import { d as getOverdeckDatabaseSync, f as init_infra } from "./infra-CzaSOgul.js";
4
4
  import { join } from "path";
5
5
  import { appendFile, mkdir } from "fs/promises";
6
6
  //#region ../../lib/agents/tier-metrics.ts
@@ -398,4 +398,4 @@ var init_cost_sync = __esmMin((() => {
398
398
  //#endregion
399
399
  export { init_tier_metrics as _, getCostForIssueAggregateSync as a, getDailyTrendsSync as c, init_cost_sync as d, insertCostEventSync as f, estimateFeedDeliveryTokens as g, deriveTieredAgentCostRole as h, getCostBreakdownByStageAndModelSync as i, getModelRollupSync as l, queryMemoryExtractionCostUsdSync as m, getBackgroundCostBySourceSync as n, getCostForIssueSync as o, queryCostEventsSync as p, getCavemanExperimentDataSync as r, getCostsByIssueSync as s, getAgentDailyCostSync as t, getTodayCostSync as u, recordTierFeedDelivery as v };
400
400
 
401
- //# sourceMappingURL=cost-sync-D_cre6WM.js.map
401
+ //# sourceMappingURL=cost-sync-C0VdGme1.js.map