dorkos 0.126.2 → 0.126.4

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 (317) hide show
  1. package/dist/bin/cli.js +254 -114
  2. package/dist/browser/native/package-manifest.json +1 -1
  3. package/dist/browser/source-manifest.json +1 -1
  4. package/dist/client/assets/{AboutPage-BQ66xWcJ.js → AboutPage-CAt15a-r.js} +1 -1
  5. package/dist/client/assets/{ActivityErrorState-CPbfgXjw.js → ActivityErrorState-s4xAcJQR.js} +1 -1
  6. package/dist/client/assets/{ActivityPage-CesljfZn.js → ActivityPage-BpSggjZV.js} +1 -1
  7. package/dist/client/assets/{ActivityRow-DzhwE0ht.js → ActivityRow-5PJBHIt2.js} +1 -1
  8. package/dist/client/assets/{AdapterIcon-BXJkyF5g.js → AdapterIcon-d8mZODCX.js} +1 -1
  9. package/dist/client/assets/AdapterSetupWizard-R-KxNMiM.js +2 -0
  10. package/dist/client/assets/{AgentOptionRow-0VdNzXCF.js → AgentOptionRow-hemBruhh.js} +1 -1
  11. package/dist/client/assets/{AgentPicker-Ldh64iOA.js → AgentPicker-DOba9a77.js} +1 -1
  12. package/dist/client/assets/{AgentRequestCard-CmAlDGTr.js → AgentRequestCard-RFQOrk-W.js} +1 -1
  13. package/dist/client/assets/{AppearancePage-DmsZPHst.js → AppearancePage-1m4bJ-Rg.js} +1 -1
  14. package/dist/client/assets/{ApplyToOverridesDialog-Ct1W283T.js → ApplyToOverridesDialog-BxeMLhGv.js} +1 -1
  15. package/dist/client/assets/{AttentionSignalRow-B7gezgzA.js → AttentionSignalRow-BoTonsR5.js} +1 -1
  16. package/dist/client/assets/{BaseTanStackRouterDevtoolsPanel-B-iktbLX-Nqvr65_g.js → BaseTanStackRouterDevtoolsPanel-B-iktbLX-Bz6XyZ6v.js} +3 -3
  17. package/dist/client/assets/BindingDialog-CILm91iU.js +1 -0
  18. package/dist/client/assets/{BlintzCanvas-BCtfZPrs.js → BlintzCanvas-BFJXKo1L.js} +3 -3
  19. package/dist/client/assets/{CanvasCsvContent-DYksqzaf.js → CanvasCsvContent-DzkaHpEo.js} +3 -3
  20. package/dist/client/assets/{CanvasFileContent-CqEqSxuJ.js → CanvasFileContent-DZf9SjJn.js} +2 -2
  21. package/dist/client/assets/{CanvasModel3dContent-vR6ze4IR.js → CanvasModel3dContent-Cd8hf6Ba.js} +2 -2
  22. package/dist/client/assets/{ChannelComposer-BVACOdph.js → ChannelComposer-YXkkFcyY.js} +10 -10
  23. package/dist/client/assets/{ChatAppsOff-VsPP2Hye.js → ChatAppsOff-X5Y8OHAz.js} +2 -2
  24. package/dist/client/assets/{CodeMirrorDiff-CmKjH03N.js → CodeMirrorDiff-BsQKbrls.js} +1 -1
  25. package/dist/client/assets/{CodeMirrorEditor-BtNgazuc.js → CodeMirrorEditor-DnkumDd3.js} +1 -1
  26. package/dist/client/assets/{CommitmentList-D9I-CmNy.js → CommitmentList-BjI2jvMX.js} +1 -1
  27. package/dist/client/assets/{CommitmentsPage-BORMYDZb.js → CommitmentsPage-7g68FcGR.js} +1 -1
  28. package/dist/client/assets/{ComputerResourceView-BZ9BxgOi.js → ComputerResourceView-Dcd0e_Oj.js} +1 -1
  29. package/dist/client/assets/{ComputerViewer-CbuU9tXK.js → ComputerViewer-Dq3aQyZD.js} +1 -1
  30. package/dist/client/assets/{ConnectionAccessLists-uE-Fzp6Y.js → ConnectionAccessLists-CXPn8ICQ.js} +1 -1
  31. package/dist/client/assets/{ConnectionsPage-D7QTHeQQ.js → ConnectionsPage-DEc4JsR5.js} +2 -2
  32. package/dist/client/assets/{ConventionPage-PS2WWCyB.js → ConventionPage-B7cm4O1D.js} +1 -1
  33. package/dist/client/assets/{ExtensionPageRoute-Cn7bYxGB.js → ExtensionPageRoute-ba2uGsYs.js} +2 -2
  34. package/dist/client/assets/{FloatingTanStackRouterDevtools-CqogiFob-DKGNSXVz.js → FloatingTanStackRouterDevtools-CqogiFob-Dxk_rLHR.js} +1 -1
  35. package/dist/client/assets/{ForwardConsentHost-CLIHtWwq.js → ForwardConsentHost-CNuTTR3q.js} +1 -1
  36. package/dist/client/assets/HandlePage-WIwOCyJg.js +1 -0
  37. package/dist/client/assets/{HeartbeatPage-7MTowke-.js → HeartbeatPage-CEb8SaAx.js} +1 -1
  38. package/dist/client/assets/{KeyEntry-Cf7D0Oo6.js → KeyEntry-CHJpgP6H.js} +1 -1
  39. package/dist/client/assets/{LexicalField-DqvzeMr3.js → LexicalField-B0tWaDy5.js} +1 -1
  40. package/dist/client/assets/{ManagesPage-DxR4zWMf.js → ManagesPage-rcz--gCT.js} +1 -1
  41. package/dist/client/assets/{Marketplace-V_92jKOn.js → Marketplace-wjAUiULQ.js} +4 -4
  42. package/dist/client/assets/{MarketplaceSourcesView-CjCVMP_d.js → MarketplaceSourcesView-BMGnEy8T.js} +1 -1
  43. package/dist/client/assets/{McpAppFrame-4JDJsrmg.js → McpAppFrame-CmwiQHxf.js} +2 -2
  44. package/dist/client/assets/{McpSigninBody-DG1XX7XT.js → McpSigninBody-D99PCc0n.js} +1 -1
  45. package/dist/client/assets/{Model3dViewer-DedBFHsl.js → Model3dViewer-qUwwZnb2.js} +1 -1
  46. package/dist/client/assets/NamePage-B7VSrPmK.js +1 -0
  47. package/dist/client/assets/{NewDirectMessageMenu-C8t7x-sB.js → NewDirectMessageMenu-DyMfEU7i.js} +1 -1
  48. package/dist/client/assets/{NotificationsPage-DwGFE3F6.js → NotificationsPage-BsOaV6Ei.js} +1 -1
  49. package/dist/client/assets/{OpenMeshSwitch-DPmTA9eg.js → OpenMeshSwitch-CjCPWZn0.js} +2 -2
  50. package/dist/client/assets/{OperatorIdentityForm-Cu0h8Xqy.js → OperatorIdentityForm-Cd6B2hxb.js} +1 -1
  51. package/dist/client/assets/{PermissionHistory-zD6ksrl2.js → PermissionHistory-xp6vPQ20.js} +1 -1
  52. package/dist/client/assets/{PermissionsPage-Durcnmie.js → PermissionsPage-DaAJew99.js} +1 -1
  53. package/dist/client/assets/{PersonalityPopover-DuRjJuLj.js → PersonalityPopover-BZaif5Fn.js} +1 -1
  54. package/dist/client/assets/PhotoPage-43WNaavk.js +1 -0
  55. package/dist/client/assets/{PreviewRefusedNotice-hlYrFDQM.js → PreviewRefusedNotice-CCpHgrea.js} +1 -1
  56. package/dist/client/assets/{ProfileFields-x-x8vgNo.js → ProfileFields-DyVqmcPr.js} +1 -1
  57. package/dist/client/assets/{ProfilePanelContainer-8WxopRj2.js → ProfilePanelContainer-CMRG6AmB.js} +1 -1
  58. package/dist/client/assets/{ProfileRolePicker-BfciiNpr.js → ProfileRolePicker-Q_hY6ybO.js} +1 -1
  59. package/dist/client/assets/{PromptSuggestionChips-D34Zeaq_.js → PromptSuggestionChips-B5afjbD0.js} +1 -1
  60. package/dist/client/assets/{ReportsToPopover-BhqA5qXi.js → ReportsToPopover-CVF7Rtzh.js} +1 -1
  61. package/dist/client/assets/{RoomSurface-BlMNuQsT.js → RoomSurface-Bz1DfoQD.js} +1 -1
  62. package/dist/client/assets/{RoomsPage-C52AOHIE.js → RoomsPage-4u74yonc.js} +1 -1
  63. package/dist/client/assets/{RunsOnPopover-DLhEKwXF.js → RunsOnPopover-CnUm4LP2.js} +1 -1
  64. package/dist/client/assets/{RuntimeConnectFlow-D3H5Fpkc.js → RuntimeConnectFlow-B0TIITVq.js} +1 -1
  65. package/dist/client/assets/{RuntimeSetupDialog-DPU4QIY9.js → RuntimeSetupDialog-CEUC7GrY.js} +1 -1
  66. package/dist/client/assets/{SeenDevices-CDSHTsL7.js → SeenDevices-CxhuIRp3.js} +2 -2
  67. package/dist/client/assets/{SessionsPage-Crh3D3Jj.js → SessionsPage-l6_Qc7hz.js} +1 -1
  68. package/dist/client/assets/{SettingsDialog-D0Oh-ku1.js → SettingsDialog-GEK8nhI8.js} +4 -4
  69. package/dist/client/assets/{SkillsPage-BPexZwnJ.js → SkillsPage-PlVj6VdA.js} +1 -1
  70. package/dist/client/assets/{TaskDialogWrapper-D6RB8E59.js → TaskDialogWrapper-TspfYk9J.js} +1 -1
  71. package/dist/client/assets/{TasksEmptyState-Di3SbhJM.js → TasksEmptyState-DsHh0blU.js} +2 -2
  72. package/dist/client/assets/{TasksPage-CDLsY1Ww.js → TasksPage-Va0dvkif.js} +1 -1
  73. package/dist/client/assets/{TeamComputerEntry-B_q-oVSs.js → TeamComputerEntry-C6juiObF.js} +1 -1
  74. package/dist/client/assets/{ToolsPage-gvIVTnwf.js → ToolsPage-C0ESG42C.js} +2 -2
  75. package/dist/client/assets/{TopologyGraph-Bp8aL_qw.js → TopologyGraph-M24Edx-I.js} +3 -3
  76. package/dist/client/assets/TourHost-CcN4uCDR.js +1 -0
  77. package/dist/client/assets/{UnlinkDialog-Ddd1Yxfk.js → UnlinkDialog-DlD1cmRZ.js} +1 -1
  78. package/dist/client/assets/{UnreadDivider-LL4_YtF0.js → UnreadDivider-DPD9MQ8-.js} +1 -1
  79. package/dist/client/assets/{WidgetErrorCard-BA3P7hNv.js → WidgetErrorCard-Bte2obmw.js} +3 -3
  80. package/dist/client/assets/{WithheldExtensionsNotice-quqWNbus.js → WithheldExtensionsNotice-CZibLuKA.js} +1 -1
  81. package/dist/client/assets/{WorkView-C_h8sclU.js → WorkView-PsLjURld.js} +15 -15
  82. package/dist/client/assets/{_shell-D9q8zLfr.js → _shell-Ce_cSF7V.js} +2 -2
  83. package/dist/client/assets/{_shell._home-CrTxBB3h.js → _shell._home-DcZcTXu8.js} +1 -1
  84. package/dist/client/assets/{_shell._home.activity-2M0BJkbQ.js → _shell._home.activity-BXw8iSC4.js} +1 -1
  85. package/dist/client/assets/_shell._home.index-BleaCq_y.js +3 -0
  86. package/dist/client/assets/{_shell._home.tasks-Dfrqv2nl.js → _shell._home.tasks-gdbnkq3-.js} +1 -1
  87. package/dist/client/assets/{_shell._home.workspaces-DPLQXDdH.js → _shell._home.workspaces-BCwJX783.js} +1 -1
  88. package/dist/client/assets/{_shell.channels-CJqfUTZ1.js → _shell.channels-D-lMqbSA.js} +1 -1
  89. package/dist/client/assets/_shell.connections-BFmTpceq.js +1 -0
  90. package/dist/client/assets/{_shell.feedback-requests-BeWCqScf.js → _shell.feedback-requests-NKpm6Uhu.js} +1 -1
  91. package/dist/client/assets/_shell.marketplace-DB7NSxDU.js +1 -0
  92. package/dist/client/assets/_shell.marketplace_.sources-WU9ILkRM.js +1 -0
  93. package/dist/client/assets/_shell.session-CchZWYRA.js +1 -0
  94. package/dist/client/assets/{_shell.team-EPvcS7RS.js → _shell.team-DcCRbdAb.js} +4 -4
  95. package/dist/client/assets/{_shell.threads-NJDzq9dv.js → _shell.threads-BLy6Cgqk.js} +1 -1
  96. package/dist/client/assets/_shell.x._extensionId-CVW0g7Rb.js +1 -0
  97. package/dist/client/assets/_shell.x._extensionId_._-CVW0g7Rb.js +1 -0
  98. package/dist/client/assets/{abnfDiagram-WEYOIA3C-DUHshdrR.js → abnfDiagram-WEYOIA3C-DpkXbw1_.js} +1 -1
  99. package/dist/client/assets/{access-copy-DHfPjN3G.js → access-copy-Y2_F9uAx.js} +1 -1
  100. package/dist/client/assets/{arc-sP6zNsGB.js → arc-B3bZAGvi.js} +1 -1
  101. package/dist/client/assets/{architectureDiagram-ZHVYKT53-C8PTjsPx.js → architectureDiagram-ZHVYKT53-BKR1sFvp.js} +1 -1
  102. package/dist/client/assets/{banner-CVrzHqOT.js → banner-CqhUGJmy.js} +2 -2
  103. package/dist/client/assets/{blockDiagram-RJAE7QA3-Cydde2fz.js → blockDiagram-RJAE7QA3-C2I50BMQ.js} +1 -1
  104. package/dist/client/assets/{c4Diagram-XDPPPE54-DbM6KAK7.js → c4Diagram-XDPPPE54-dhHi_wUH.js} +1 -1
  105. package/dist/client/assets/{card-DA_Z-FYX.js → card-CM7-_8nD.js} +1 -1
  106. package/dist/client/assets/channel-NlrM9BR7.js +1 -0
  107. package/dist/client/assets/{chunk-2E7WHVMD-CEbspaNh.js → chunk-2E7WHVMD-B0B27SHJ.js} +1 -1
  108. package/dist/client/assets/{chunk-2Q5K7J3B-DDP1SiE0.js → chunk-2Q5K7J3B-dsUDjsr2.js} +1 -1
  109. package/dist/client/assets/{chunk-4EMNKR2T-BFjozJqd.js → chunk-4EMNKR2T-C3IdUlS9.js} +1 -1
  110. package/dist/client/assets/{chunk-55XCU76K-0JSp6acZ.js → chunk-55XCU76K-D6qgX8rY.js} +1 -1
  111. package/dist/client/assets/{chunk-5VM5RSS4-DswTXnmp.js → chunk-5VM5RSS4-CWhRZZS1.js} +1 -1
  112. package/dist/client/assets/{chunk-JWPE2WC7-D0PYncYV.js → chunk-JWPE2WC7-Bd3RyNB2.js} +1 -1
  113. package/dist/client/assets/{chunk-VQ5W62QI-r5T-ZVBs.js → chunk-VQ5W62QI-HqUjzAO7.js} +1 -1
  114. package/dist/client/assets/{chunk-XXDRQBXY-D8kkjktE.js → chunk-XXDRQBXY-CfeGRauy.js} +1 -1
  115. package/dist/client/assets/{chunk-ZCHMQSOR-D6XtRzln.js → chunk-ZCHMQSOR-D30UE34C.js} +2 -2
  116. package/dist/client/assets/{classDiagram-v2-4MYWR3UA-DUPDMGfm.js → classDiagram-v2-4MYWR3UA-ClIZEeNx.js} +1 -1
  117. package/dist/client/assets/{command-BvXBgZfv.js → command-DuhX52Bi.js} +1 -1
  118. package/dist/client/assets/{cose-bilkent-JH36ORCC-tiQpE-Q8.js → cose-bilkent-JH36ORCC-C_MZbmxw.js} +1 -1
  119. package/dist/client/assets/{cpu-mx7zDf7k.js → cpu-BMUMZCWW.js} +1 -1
  120. package/dist/client/assets/{cynefin-EF2NZ3EQ-BjAUxFfb.js → cynefin-EF2NZ3EQ-DjzC1gsw.js} +1 -1
  121. package/dist/client/assets/{cynefinDiagram-WF24UDRP-PmlyltXR.js → cynefinDiagram-WF24UDRP-Dnu1pf_9.js} +1 -1
  122. package/dist/client/assets/{dagre-NK4GIZVX-DDePjPkn.js → dagre-NK4GIZVX-Bruwoqfg.js} +1 -1
  123. package/dist/client/assets/{diagram-CBK3MWTC-D7N3T4Fx.js → diagram-CBK3MWTC-Co7nk3xQ.js} +1 -1
  124. package/dist/client/assets/{diagram-I5XIIV2D-BfZHSbR2.js → diagram-I5XIIV2D-CDJY0Snc.js} +1 -1
  125. package/dist/client/assets/{diagram-ODIL2UCW-sXAa9bzN.js → diagram-ODIL2UCW-CF0utpvI.js} +1 -1
  126. package/dist/client/assets/{diagram-PFBEJUXE-Dfd_61WO.js → diagram-PFBEJUXE-BrLRX5Ip.js} +1 -1
  127. package/dist/client/assets/{diagram-RJA3I4VV-BCzdEfnM.js → diagram-RJA3I4VV-BOo6-thr.js} +1 -1
  128. package/dist/client/assets/{diagram-TYUNFSNR-BMqtz6sZ.js → diagram-TYUNFSNR-B-206XZy.js} +1 -1
  129. package/dist/client/assets/{ebnfDiagram-V4P3TTPT-CyWj1615.js → ebnfDiagram-V4P3TTPT-C6SZjvSQ.js} +1 -1
  130. package/dist/client/assets/{elk-QONTBCTQ-BkQMBXse.js → elk-QONTBCTQ-B_QHOQ8G.js} +1 -1
  131. package/dist/client/assets/{empty-state-Dv5iV4jb.js → empty-state-BzWMBBQZ.js} +1 -1
  132. package/dist/client/assets/{erDiagram-KYQIGQAA-DiPsX7uU.js → erDiagram-KYQIGQAA-BTKJgVOK.js} +1 -1
  133. package/dist/client/assets/{execution-config-Bej0Ot8e.js → execution-config-D_PgYyCI.js} +1 -1
  134. package/dist/client/assets/{file-DXbyb23e.js → file-DiYwTQdD.js} +1 -1
  135. package/dist/client/assets/{file-exclamation-point-C8XqHyzY.js → file-exclamation-point-CnQYdJiV.js} +1 -1
  136. package/dist/client/assets/{file-text-CRTgqqkn.js → file-text-DLPhIP0f.js} +1 -1
  137. package/dist/client/assets/{find-latest-widget-fence-D1i7qNny.js → find-latest-widget-fence-BYtG5PzD.js} +3 -3
  138. package/dist/client/assets/{flowDiagram-IUGLLWBU-BSM44aJP.js → flowDiagram-IUGLLWBU-o2In4cGl.js} +1 -1
  139. package/dist/client/assets/{form-DYSiVEri.js → form-DUFlQ-yL.js} +1 -1
  140. package/dist/client/assets/{format-cron-DYYwmo-o.js → format-cron-D5dtMPdH.js} +1 -1
  141. package/dist/client/assets/{ganttDiagram-R7GPNTJY-BWCjYexX.js → ganttDiagram-R7GPNTJY-WwrWLB2J.js} +1 -1
  142. package/dist/client/assets/{git-branch-1zYKSuur.js → git-branch-uZFa3Tmr.js} +1 -1
  143. package/dist/client/assets/{gitGraphDiagram-PDYL7XHY-ULC7Zunc.js → gitGraphDiagram-PDYL7XHY-C1yG6xrf.js} +1 -1
  144. package/dist/client/assets/{graph-BsZzo5TN.js → graph-C10tj8MW.js} +1 -1
  145. package/dist/client/assets/{heart-C4CSHUW7.js → heart--8btr31M.js} +1 -1
  146. package/dist/client/assets/{highlighted-body-KPVGNVTW-CFECg7iB.js → highlighted-body-KPVGNVTW-DGp-Vg6c.js} +1 -1
  147. package/dist/client/assets/{image-lightbox-M9t3Wulc.js → image-lightbox-BfwZy_vF.js} +1 -1
  148. package/dist/client/assets/{image-off-c01kxBAm.js → image-off-Bmtj2Xtq.js} +1 -1
  149. package/dist/client/assets/{index-BScgHCO_.js → index-8hXtJ0Xw.js} +1 -1
  150. package/dist/client/assets/{index-DG13Cp5o.js → index-B5i5B8F0.js} +1 -1
  151. package/dist/client/assets/{index-DzHj8lCz.js → index-BBaFVr5z.js} +9 -9
  152. package/dist/client/assets/{index-DIDUjTkq.js → index-BCZa5De0.js} +1 -1
  153. package/dist/client/assets/{index-BTGRc0hC.js → index-BE8yM241.js} +1 -1
  154. package/dist/client/assets/{index-XEE1k4cl.js → index-BHXG7bNX.js} +1 -1
  155. package/dist/client/assets/{index-BqwCOIbF.js → index-BJ_fl1Gy.js} +1 -1
  156. package/dist/client/assets/{index-DhoaVQXu.js → index-BbIFaQ9_.js} +1 -1
  157. package/dist/client/assets/{index-Dt7RONID.js → index-BlHuuCes.js} +1 -1
  158. package/dist/client/assets/{index-C3swXqWW.js → index-BtrV6g02.js} +1 -1
  159. package/dist/client/assets/{index-C1XazYWZ.js → index-C-tNYOVV.js} +1 -1
  160. package/dist/client/assets/{index-BYY8HEOz.js → index-C3LZBxuM.js} +1 -1
  161. package/dist/client/assets/{index-B-7P1Q9s.js → index-CO9QUYdl.js} +1 -1
  162. package/dist/client/assets/{index-BIVIHPoe.js → index-CP47qL8N.js} +1 -1
  163. package/dist/client/assets/{index-BRH6C3LJ.js → index-CYM65t4i.js} +1 -1
  164. package/dist/client/assets/{index-DhkfALZp.js → index-CaZ9yNIm.js} +1 -1
  165. package/dist/client/assets/index-CaxFHvSK.js +1 -0
  166. package/dist/client/assets/index-CdHuEKYh.js +1 -0
  167. package/dist/client/assets/{index-YXyEu3Ia.js → index-CoL3MmPh.js} +1 -1
  168. package/dist/client/assets/{index-Du4HX97h.js → index-CtN6_QCQ.js} +2 -2
  169. package/dist/client/assets/{index-JG_0k1NX.js → index-CvIKejlx.js} +1 -1
  170. package/dist/client/assets/{index-FwAvbbet.js → index-CypEgDik.js} +1 -1
  171. package/dist/client/assets/index-Cz9N1NHd.js +1 -0
  172. package/dist/client/assets/{index-CnltS8ym.js → index-D-ZRSiaH.js} +1 -1
  173. package/dist/client/assets/{index-DQTTC52E.js → index-D8ZcqMea.js} +1 -1
  174. package/dist/client/assets/{index-CAjKQnAd.js → index-D97clHqL.js} +1 -1
  175. package/dist/client/assets/index-DAaYbj1s.js +1 -0
  176. package/dist/client/assets/{index-B3xeyV6n.js → index-DI9IsN-O.js} +1 -1
  177. package/dist/client/assets/{index-DhYnXLRT.js → index-DLPkp7I9.js} +1 -1
  178. package/dist/client/assets/{index-CAAsqmfP.js → index-DMTfnznD.js} +1 -1
  179. package/dist/client/assets/{index-BSxkprTm.js → index-DZQUx5pX.js} +3 -3
  180. package/dist/client/assets/{index-B_he44rF.js → index-DamNtsio.js} +1 -1
  181. package/dist/client/assets/{index-Ce3HZQem.js → index-DenTxAiI.js} +1 -1
  182. package/dist/client/assets/{index-jLIoULQt.js → index-DmG7yphM.js} +1 -1
  183. package/dist/client/assets/{index-BnXWm8Db.js → index-Dqouol3i.js} +1 -1
  184. package/dist/client/assets/{index-DsasLE1l.js → index-Dsj1fDYU.js} +1 -1
  185. package/dist/client/assets/{index-Br35Gqfz.js → index-E5KPj_ZX.js} +1 -1
  186. package/dist/client/assets/{index-DrENuQdJ.js → index-LGTvsZzp.js} +1 -1
  187. package/dist/client/assets/{index-uLbyd6YP.js → index-Nr39AP-T.js} +1 -1
  188. package/dist/client/assets/{index-DrQqkQq_.js → index-YrSNUw95.js} +1 -1
  189. package/dist/client/assets/index-fge85Gub.js +1053 -0
  190. package/dist/client/assets/{index-D847rJXW.js → index-mweR5xOP.js} +1 -1
  191. package/dist/client/assets/{index-LpaxG4VS.js → index-ocZzSFoR.js} +1 -1
  192. package/dist/client/assets/{index.esm-CZ68Qd2t.js → index.esm-BEGwgVfU.js} +1 -1
  193. package/dist/client/assets/{infoDiagram-MVDRKAX5-BCjhXqIT.js → infoDiagram-MVDRKAX5-oeBcoEBA.js} +1 -1
  194. package/dist/client/assets/{inline-code-BKPMIXZR.js → inline-code-7dwi7wWG.js} +1 -1
  195. package/dist/client/assets/{ishikawaDiagram-HPEHV2GE-C9rsv2nh.js → ishikawaDiagram-HPEHV2GE-CLIGz304.js} +1 -1
  196. package/dist/client/assets/{journeyDiagram-BOSHW7O7-BRYr1XL1.js → journeyDiagram-BOSHW7O7-Cg0HlPT5.js} +1 -1
  197. package/dist/client/assets/{kanban-definition-FNSA4HC5-2ey8FXEn.js → kanban-definition-FNSA4HC5-DXaqYXhm.js} +1 -1
  198. package/dist/client/assets/{layers-DE3wjQuk.js → layers-BhECZJWp.js} +1 -1
  199. package/dist/client/assets/{lightbulb-BXJIRUdm.js → lightbulb-DjMxuZnu.js} +1 -1
  200. package/dist/client/assets/{link-2-DzWm9OxA.js → link-2-BY2WyWzK.js} +1 -1
  201. package/dist/client/assets/{list-runtime-types-BhkZkTrB.js → list-runtime-types-hMouIGtG.js} +1 -1
  202. package/dist/client/assets/{markdown-content-Bk9lCksw.js → markdown-content-DV3AiG76.js} +1 -1
  203. package/dist/client/assets/{mention-pill-os_7QQu2.js → mention-pill-Db0XBC6Z.js} +1 -1
  204. package/dist/client/assets/{mermaid.core-BcRUBvZd.js → mermaid.core-_ZqWvaFB.js} +4 -4
  205. package/dist/client/assets/{message-square-off-DuOiETNI.js → message-square-off-w0__0O5g.js} +1 -1
  206. package/dist/client/assets/{mindmap-definition-6OY57UG3-DBhXkS2i.js → mindmap-definition-6OY57UG3-BRVkHL68.js} +1 -1
  207. package/dist/client/assets/{more-details-Bt9nlPmS.js → more-details-BUolHzrY.js} +1 -1
  208. package/dist/client/assets/{owner-notice-4ZSBxa2K.js → owner-notice-Cn5EUxgh.js} +1 -1
  209. package/dist/client/assets/{package-BmOMrNwc.js → package-BafFSryH.js} +1 -1
  210. package/dist/client/assets/{page-container-LomhzyuS.js → page-container-BCdJ_DsH.js} +1 -1
  211. package/dist/client/assets/{pane-resize-handle-BOtzx5Q4.js → pane-resize-handle-Bar-FdkY.js} +1 -1
  212. package/dist/client/assets/{paperclip-C1tkiT74.js → paperclip-DY4e-IlK.js} +1 -1
  213. package/dist/client/assets/{path-input-JHTlL97W.js → path-input-SZl4NGTs.js} +1 -1
  214. package/dist/client/assets/{pegDiagram-ECIUJNBX-B01fb3t0.js → pegDiagram-ECIUJNBX-D9J7XmXK.js} +1 -1
  215. package/dist/client/assets/{pieDiagram-GNMPY74T-BJ7JYrTk.js → pieDiagram-GNMPY74T-myMGqtsR.js} +1 -1
  216. package/dist/client/assets/{plug-CsqfQsYq.js → plug-BdWCGVJg.js} +1 -1
  217. package/dist/client/assets/primer-trigger-r8N0YY5e.js +3 -0
  218. package/dist/client/assets/{profile-errors-CpvSy5wY.js → profile-errors-DymWFWiP.js} +1 -1
  219. package/dist/client/assets/{progress-qB87L0zJ.js → progress-es667_cM.js} +1 -1
  220. package/dist/client/assets/{quadrantDiagram-D57K4MC3-mJYGGmOV.js → quadrantDiagram-D57K4MC3-D5_2lcqK.js} +1 -1
  221. package/dist/client/assets/{query-error-state-MyJ1ivia.js → query-error-state-BNPduDBN.js} +1 -1
  222. package/dist/client/assets/{radio-DJV7l0fv.js → radio-DpWUX1KL.js} +1 -1
  223. package/dist/client/assets/{railroadDiagram-Y72NRBL7-BlXWwQe2.js → railroadDiagram-Y72NRBL7-D15ELhSC.js} +1 -1
  224. package/dist/client/assets/{registry-tJrGs7kB.js → registry-5Qudcjd5.js} +4 -4
  225. package/dist/client/assets/registry-DvKu39S1.js +1 -0
  226. package/dist/client/assets/relay-trace-schemas-DURazPP9.js +6 -0
  227. package/dist/client/assets/{repeat-CBnopqBr.js → repeat-HOHWZc6L.js} +1 -1
  228. package/dist/client/assets/{requirementDiagram-EQYSW5RA-Dqr1Y74x.js → requirementDiagram-EQYSW5RA-CHcEVlsR.js} +1 -1
  229. package/dist/client/assets/{room-files-source-BFo0FEUP.js → room-files-source-BO3E2ed0.js} +1 -1
  230. package/dist/client/assets/{rotate-ccw-clock-D9XRHj5E.js → rotate-ccw-clock-Dniulnw5.js} +1 -1
  231. package/dist/client/assets/{rotate-cw-DNa7ENG3.js → rotate-cw-um9OzAM7.js} +1 -1
  232. package/dist/client/assets/{sankeyDiagram-SY24JHO5-DGYZs_kW.js → sankeyDiagram-SY24JHO5-_R5087R3.js} +1 -1
  233. package/dist/client/assets/{scroll-area-Bf6IGziJ.js → scroll-area-MdXbnM77.js} +1 -1
  234. package/dist/client/assets/search-x-CHNgYj0F.js +6 -0
  235. package/dist/client/assets/{sequenceDiagram-BLEHNHQU-BW3u4L9y.js → sequenceDiagram-BLEHNHQU-BzHmSHMF.js} +1 -1
  236. package/dist/client/assets/{shield-x-WGxwrtNV.js → shield-x-CDXAW9YF.js} +1 -1
  237. package/dist/client/assets/{signed-in-eV4_EXuv.js → signed-in-JAMHtSjx.js} +1 -1
  238. package/dist/client/assets/{sizeCapture-INFHLROL-C1TpueOu.js → sizeCapture-INFHLROL-CqA3cZcy.js} +1 -1
  239. package/dist/client/assets/{soul-file-e1iYX9IV.js → soul-file-BcaDvIdL.js} +1 -1
  240. package/dist/client/assets/{stateDiagram-v2-A6IESKWZ-DvrHUauN.js → stateDiagram-v2-A6IESKWZ-RAA8YyBW.js} +1 -1
  241. package/dist/client/assets/{swimlanes-B3ENRKFQ-BUbTcoId.js → swimlanes-B3ENRKFQ-BQvgJIcj.js} +1 -1
  242. package/dist/client/assets/swimlanesDiagram-AYQRV4AK-iDgTYazX.js +8 -0
  243. package/dist/client/assets/{table-DsxLk3Gx.js → table-BcJvj9rx.js} +1 -1
  244. package/dist/client/assets/{timeline-definition-JXYKGLGB-CzbVpGxn.js → timeline-definition-JXYKGLGB-DXi0saeN.js} +1 -1
  245. package/dist/client/assets/{trust-posture-Blofy7eE.js → trust-posture-vH4plBRD.js} +1 -1
  246. package/dist/client/assets/{unplug-B6dUhqA7.js → unplug-CK2bPGpg.js} +1 -1
  247. package/dist/client/assets/untrusted-text-BDygHCRk.js +1 -0
  248. package/dist/client/assets/{unverified-catalog-notice-6pwZtIjx.js → unverified-catalog-notice-WMkPDdUp.js} +1 -1
  249. package/dist/client/assets/{use-bindings-BgXZ0D7k.js → use-bindings-h_mG9d64.js} +1 -1
  250. package/dist/client/assets/{use-composer-prefs--zO2mm_M.js → use-composer-prefs-DhCnTsrF.js} +1 -1
  251. package/dist/client/assets/{use-connector-management-9Q7wHb06.js → use-connector-management-CXVz2xe3.js} +1 -1
  252. package/dist/client/assets/{use-deep-link-scroll-CXqwdwGr.js → use-deep-link-scroll-DYOZ5k0G.js} +1 -1
  253. package/dist/client/assets/{use-delete-binding-BBQNMtUY.js → use-delete-binding-CHAeTC_Q.js} +1 -1
  254. package/dist/client/assets/{use-dev-links-C643CCcq.js → use-dev-links-CM2NIeqy.js} +1 -1
  255. package/dist/client/assets/{use-direct-message-panel-BD_daG2E.js → use-direct-message-panel-DXTH05Ym.js} +1 -1
  256. package/dist/client/assets/use-external-adapter-catalog-DKlBkkvF.js +1 -0
  257. package/dist/client/assets/use-full-activity-feed-QZAZ5vBJ.js +1 -0
  258. package/dist/client/assets/use-is-below-desktop-DS51QTwj.js +1 -0
  259. package/dist/client/assets/{use-local-browser-P93oA-F5.js → use-local-browser-43FpcgCM.js} +1 -1
  260. package/dist/client/assets/{use-mesh-topology-B0k0gLoW.js → use-mesh-topology-Bw7MmKA9.js} +1 -1
  261. package/dist/client/assets/{use-mounted-ref-DE7EQsBF.js → use-mounted-ref-Cuui7-gf.js} +1 -1
  262. package/dist/client/assets/{use-notification-prefs-B8JtshQ0.js → use-notification-prefs-CJnF55Rv.js} +1 -1
  263. package/dist/client/assets/use-pending-read-DB25CO5E.js +1 -0
  264. package/dist/client/assets/{use-personality-commit-Dh5Sejj_.js → use-personality-commit-p6Of1UxX.js} +1 -1
  265. package/dist/client/assets/{use-promo-activation-C9FWA7ru.js → use-promo-activation-CxG-kZJQ.js} +3 -3
  266. package/dist/client/assets/{use-promo-dismissals-BIfafj9f.js → use-promo-dismissals-DeNbRWOh.js} +1 -1
  267. package/dist/client/assets/{use-pulse-freshness-CxzVMmVK.js → use-pulse-freshness-CdRkKThf.js} +1 -1
  268. package/dist/client/assets/{use-room-follow-claim-B1QPFaUb.js → use-room-follow-claim-_B7HonZx.js} +1 -1
  269. package/dist/client/assets/{use-room-sessions-CdjzO67_.js → use-room-sessions-CrFskgCJ.js} +1 -1
  270. package/dist/client/assets/{use-roving-tab-list-Nu-MIapD.js → use-roving-tab-list-DSjW4_wm.js} +1 -1
  271. package/dist/client/assets/use-session-canvas-KguPfnsc.js +27 -0
  272. package/dist/client/assets/{use-status-budget-DgeTxC3h.js → use-status-budget-CTereFSr.js} +3 -3
  273. package/dist/client/assets/{use-transform-CiJqtMBf.js → use-transform-YUDqOhoc.js} +1 -1
  274. package/dist/client/assets/{use-unclaimed-chats-Blkq6U4D.js → use-unclaimed-chats-B9ChucvA.js} +1 -1
  275. package/dist/client/assets/use-update-config-BH0agtZh.js +1 -0
  276. package/dist/client/assets/{useMutationState-lbcdmnfE.js → useMutationState-TJGtJT5R.js} +1 -1
  277. package/dist/client/assets/{usecaseDiagram-WPOLBNNX-BM36oESm.js → usecaseDiagram-WPOLBNNX-Cjs1EpVL.js} +1 -1
  278. package/dist/client/assets/{vennDiagram-Q3Y3IDCW-Zrybcs91.js → vennDiagram-Q3Y3IDCW-BtgH-ZyN.js} +1 -1
  279. package/dist/client/assets/{wardleyDiagram-IVAIDKWA-CO4pzGG0.js → wardleyDiagram-IVAIDKWA-BCWHQ18G.js} +1 -1
  280. package/dist/client/assets/{xychartDiagram-4URNHDU4-pi_wF1CM.js → xychartDiagram-4URNHDU4-CUBPWq_V.js} +1 -1
  281. package/dist/client/index.html +1 -1
  282. package/dist/server/index.js +7695 -5486
  283. package/dist/server/index.js.map +2 -2
  284. package/package.json +5 -5
  285. package/dist/client/assets/AdapterSetupWizard-CwKYl1vG.js +0 -2
  286. package/dist/client/assets/BindingDialog-CpBZoSZU.js +0 -1
  287. package/dist/client/assets/HandlePage-BjlcYr_l.js +0 -1
  288. package/dist/client/assets/NamePage-A8X09lY7.js +0 -1
  289. package/dist/client/assets/PhotoPage-DP5WoeFd.js +0 -1
  290. package/dist/client/assets/TourHost-Cg8EHvod.js +0 -1
  291. package/dist/client/assets/_shell._home.index-BTJhhEWN.js +0 -3
  292. package/dist/client/assets/_shell.connections-Cpe1hru3.js +0 -1
  293. package/dist/client/assets/_shell.marketplace-CzLqm8iR.js +0 -1
  294. package/dist/client/assets/_shell.marketplace_.sources-DtraxnMx.js +0 -1
  295. package/dist/client/assets/_shell.session-72JEfodU.js +0 -1
  296. package/dist/client/assets/_shell.x._extensionId-CcJi8pKR.js +0 -1
  297. package/dist/client/assets/_shell.x._extensionId_._-CcJi8pKR.js +0 -1
  298. package/dist/client/assets/channel-DMgpNBDz.js +0 -1
  299. package/dist/client/assets/index-B6Scr7KJ.js +0 -1053
  300. package/dist/client/assets/index-DyN65ufd.js +0 -1
  301. package/dist/client/assets/index-UJq1qaku.js +0 -1
  302. package/dist/client/assets/index-e6oawwKv.js +0 -1
  303. package/dist/client/assets/index-j30EyYIU.js +0 -1
  304. package/dist/client/assets/primer-trigger-DLdK7lVr.js +0 -3
  305. package/dist/client/assets/registry-BrjQCdmG.js +0 -1
  306. package/dist/client/assets/relay-trace-schemas-TH0-GYCB.js +0 -6
  307. package/dist/client/assets/search-x-DFBBEouE.js +0 -6
  308. package/dist/client/assets/swimlanesDiagram-AYQRV4AK-wkooBe_N.js +0 -8
  309. package/dist/client/assets/untrusted-text-pHjcUwfI.js +0 -1
  310. package/dist/client/assets/use-adapter-catalog-J43bUHJu.js +0 -1
  311. package/dist/client/assets/use-external-adapter-catalog-BjbC1V6t.js +0 -1
  312. package/dist/client/assets/use-full-activity-feed-DUH8r8jx.js +0 -1
  313. package/dist/client/assets/use-is-below-desktop-DAZnwJGB.js +0 -1
  314. package/dist/client/assets/use-pending-read-DeGO1wGC.js +0 -1
  315. package/dist/client/assets/use-relay-config-DQE3dmJ2.js +0 -1
  316. package/dist/client/assets/use-session-canvas-BfKGOpNy.js +0 -27
  317. package/dist/client/assets/use-update-config-BFFW_6Mc.js +0 -1
package/dist/bin/cli.js CHANGED
@@ -26826,6 +26826,15 @@ var init_env = __esm({
26826
26826
  // so the admin restart/reset endpoints refuse (409) rather than exit into a
26827
26827
  // process nothing will bring back. See routes/admin.ts.
26828
26828
  DORKOS_MANAGED_BY: external_exports.enum(["desktop"]).optional(),
26829
+ // Which kind of DorkOS this is, set by whatever launched the server: `desktop`
26830
+ // (the Electron shell), `npm` or `homebrew` (the CLI, from its own install
26831
+ // path), `docker` (the image), `dev` (a repo checkout). Free text on purpose:
26832
+ // a value this build does not know reads as `unknown` rather than refusing to
26833
+ // boot. See lib/distribution/, which is the only reader.
26834
+ DORKOS_DISTRIBUTION: external_exports.string().optional(),
26835
+ // The desktop app's own version, set by the Electron shell beside the above,
26836
+ // so a server bundle that drifted from the app it ships in says so.
26837
+ DORKOS_DESKTOP_VERSION: external_exports.string().optional(),
26829
26838
  // Single-instance lock escape hatch (DOR-532) — when 'true', skip the
26830
26839
  // per-data-directory lock that stops two servers from sharing one `~/.dork`.
26831
26840
  // The lock is already inert under NODE_ENV=test.
@@ -27003,7 +27012,7 @@ import path2 from "path";
27003
27012
  import { fileURLToPath } from "url";
27004
27013
  function resolveVersion() {
27005
27014
  if (env2.DORKOS_VERSION_OVERRIDE) return env2.DORKOS_VERSION_OVERRIDE;
27006
- if (true) return "0.126.2";
27015
+ if (true) return "0.126.4";
27007
27016
  const pkgPath = path2.join(path2.dirname(fileURLToPath(import.meta.url)), "../../package.json");
27008
27017
  return JSON.parse(readFileSync(pkgPath, "utf-8")).version;
27009
27018
  }
@@ -49044,8 +49053,8 @@ function requireDumper() {
49044
49053
  function blockHeader(string4, indentPerLevel) {
49045
49054
  const indentIndicator = needIndentIndicator(string4) ? String(indentPerLevel) : "";
49046
49055
  const clip3 = string4[string4.length - 1] === "\n";
49047
- const keep = clip3 && (string4[string4.length - 2] === "\n" || string4 === "\n");
49048
- const chomp = keep ? "+" : clip3 ? "" : "-";
49056
+ const keep2 = clip3 && (string4[string4.length - 2] === "\n" || string4 === "\n");
49057
+ const chomp = keep2 ? "+" : clip3 ? "" : "-";
49049
49058
  return indentIndicator + chomp + "\n";
49050
49059
  }
49051
49060
  function dropEndingNewline(string4) {
@@ -52368,12 +52377,10 @@ function mergeTeammateOrigins(a2, b2) {
52368
52377
  const added = b2.filter((origin) => !seen.has(key(origin)));
52369
52378
  return added.length === 0 ? a2 : [...a2, ...added];
52370
52379
  }
52371
- function ceilingCarriesOutsider(ceiling) {
52372
- if (!Array.isArray(ceiling)) {
52373
- return ceiling === "runtime-default" || ceiling.outsider === true;
52374
- }
52380
+ function ceilingHoldsForOutsider(ceiling) {
52381
+ if (!Array.isArray(ceiling)) return ceiling === "runtime-default";
52375
52382
  const bounds = ceiling;
52376
- return bounds.length === 0 || bounds.some(ceilingCarriesOutsider);
52383
+ return bounds.length === 0 || bounds.some(ceilingHoldsForOutsider);
52377
52384
  }
52378
52385
  function stricterPower(a2, b2) {
52379
52386
  const fits = (inner, outer) => isNoLooserThan(outer, inner) && (!inner.auto || outer.auto === true || outer.asks === "never");
@@ -52399,7 +52406,7 @@ function clampModeToCeiling(declared, modeId, ceiling) {
52399
52406
  )[0];
52400
52407
  return strictest?.id ?? modeId;
52401
52408
  }
52402
- var PERMISSION_STOPS, ASKS_RANK, REACH_RANK, AUTO_MODE_ID, READ_ONLY_LEVEL;
52409
+ var PERMISSION_STOPS, ASKS_RANK, REACH_RANK, AUTO_MODE_ID, READ_ONLY_LEVEL, CARRIED_OUTSIDER_LEVEL;
52403
52410
  var init_permission_semantics = __esm({
52404
52411
  "../shared/src/permission-semantics.ts"() {
52405
52412
  "use strict";
@@ -52417,6 +52424,11 @@ var init_permission_semantics = __esm({
52417
52424
  };
52418
52425
  AUTO_MODE_ID = "auto";
52419
52426
  READ_ONLY_LEVEL = { asks: "always", reach: "read" };
52427
+ CARRIED_OUTSIDER_LEVEL = Object.freeze({
52428
+ asks: "never",
52429
+ reach: "everything",
52430
+ outsider: true
52431
+ });
52420
52432
  }
52421
52433
  });
52422
52434
 
@@ -113184,6 +113196,7 @@ function defuseSystemTags(text3, tagNames) {
113184
113196
  var IDENTITY_MAX_LENGTH, INVISIBLE_FORMAT, CONTROL_CHARS, PATTERN_CACHE;
113185
113197
  var init_untrusted_text = __esm({
113186
113198
  "../shared/src/untrusted-text.ts"() {
113199
+ "use strict";
113187
113200
  IDENTITY_MAX_LENGTH = 80;
113188
113201
  INVISIBLE_FORMAT = /[\u00ad\u200b-\u200f\u202a-\u202e\u2060-\u2064\ufeff\ufff9-\ufffb]/g;
113189
113202
  CONTROL_CHARS = /[\u0000-\u001f\u007f-\u009f]/g;
@@ -115467,76 +115480,22 @@ var init_event_fan_out = __esm({
115467
115480
  get listenerCount() {
115468
115481
  return this.listeners.size;
115469
115482
  }
115470
- /**
115471
- * Broadcast an event to every connected client, and to every in-process
115472
- * listener.
115473
- *
115474
- * Backpressure: a frame a client cannot take immediately still buffers in
115475
- * process memory, so a slow consumer cannot lose frames mid-stream — but one
115476
- * whose buffer grows past {@link SSE.MAX_BUFFERED_BYTES} is dropped instead of
115477
- * accumulating unbounded memory. The client reconnects and re-baselines, which
115478
- * is the honest recovery for a consumer that can't keep up with a fan-out that
115479
- * cannot await any single client.
115480
- *
115481
- * The frame is encoded ONCE per wire format and the same strings sent to
115482
- * every client — see {@link EncodedBroadcast}. That stays true of an
115483
- * addressed broadcast: the audience decides who a frame is written to, never
115484
- * how many times it is rendered.
115485
- *
115486
- * A client the audience skips is left exactly as it was — not measured for
115487
- * backpressure, not dropped, not removed from the set. It is simply not this
115488
- * frame's reader.
115489
- *
115490
- * @param eventName - The event name, e.g. `session_status`.
115491
- * @param data - The payload, serialized once per wire format.
115492
- * @param audience - Which connections this frame is for. Omitted means every
115493
- * one of them, which is what all but one event on this bus mean — see
115494
- * {@link BroadcastAudience}.
115495
- */
115496
115483
  broadcast(eventName, data, audience) {
115497
115484
  this.notifyListeners(eventName, data);
115485
+ if (eventName.startsWith("room_") && !audience) return;
115498
115486
  this.writeToClients(() => encodeBroadcast(eventName, data), audience);
115499
115487
  }
115500
- /**
115501
- * Broadcast ONE event rendered two ways: in full to the connections entitled
115502
- * to its detail, and redacted to the rest.
115503
- *
115504
- * `session_status` needs this and an audience alone cannot give it.
115505
- * `SessionStatus.activity` carries the tool a session is on and the one
115506
- * argument of it a person would recognize — for a `blocked` session that is
115507
- * the very thing the Ask is asking about — while the same frame carries the
115508
- * lifecycle every reader legitimately needs. Withholding the whole frame
115509
- * would leave an unentitled reader's view of that session silently stuck on
115510
- * its previous lifecycle, which is a worse property than the leak it closes;
115511
- * sending it whole is the leak. So the detail is dropped and the lifecycle is
115512
- * kept (spec `ask-entitlement`, review finding 1).
115513
- *
115514
- * Every property {@link broadcast} holds is held here:
115515
- *
115516
- * - **In-process listeners are notified ONCE**, with the FULL payload. They
115517
- * are the server itself, not callers; a listener that received the same
115518
- * event twice — or received a redacted one — would be a new bug.
115519
- * - **Each rendering is encoded once**, whatever the split, and the redacted
115520
- * one is not encoded at all when every connection is entitled.
115521
- * - **Backpressure is unchanged**: each client is measured on the one frame
115522
- * it actually received.
115523
- *
115524
- * @param eventName - The event name.
115525
- * @param full - The payload for entitled connections.
115526
- * @param redacted - The payload for everybody else.
115527
- * @param entitled - Which connections may have the full one.
115528
- * @param audience - Which connections get either rendering; omitted means
115529
- * every one of them.
115530
- */
115531
- broadcastRedacted(eventName, full, redacted, entitled, audience = () => true) {
115488
+ broadcastRedacted(eventName, full, redacted, entitled, audience) {
115532
115489
  this.notifyListeners(eventName, full);
115490
+ if (eventName.startsWith("room_") && !audience) return;
115491
+ const receives = audience ?? (() => true);
115533
115492
  this.writeToClients(
115534
115493
  () => encodeBroadcast(eventName, full),
115535
- (principal) => audience(principal) && entitled(principal)
115494
+ (principal) => receives(principal) && entitled(principal)
115536
115495
  );
115537
115496
  this.writeToClients(
115538
115497
  () => encodeBroadcast(eventName, redacted),
115539
- (principal) => audience(principal) && !entitled(principal)
115498
+ (principal) => receives(principal) && !entitled(principal)
115540
115499
  );
115541
115500
  }
115542
115501
  /**
@@ -118765,6 +118724,15 @@ function withMarks(level, marks) {
118765
118724
  if (carriesAllMarks(own2, marks)) return level;
118766
118725
  return { ...level, ...mergeMarks(own2, marks) };
118767
118726
  }
118727
+ function withCarriedHold(runtimeType, opts, setToFull = false) {
118728
+ const ceiling = opts?.permissionCeiling;
118729
+ if (ceiling === void 0 || setToFull || GATES_CARRIED_SHELL.has(runtimeType)) return opts;
118730
+ if (ceilingHoldsForOutsider(ceiling) || marksOfCeiling(ceiling).outsider !== true) return opts;
118731
+ const bounds = Array.isArray(ceiling) ? [...ceiling] : [ceiling];
118732
+ bounds.push("runtime-default");
118733
+ const { continuationHold: _dropped, ...rest } = opts ?? {};
118734
+ return { ...rest, permissionCeiling: bounds.length === 1 ? bounds[0] : bounds };
118735
+ }
118768
118736
  async function* refused(reason) {
118769
118737
  yield* [];
118770
118738
  throw new Error(reason);
@@ -118777,13 +118745,13 @@ function placeOf(runtime, sessionId, opts) {
118777
118745
  }
118778
118746
  return { cwd, forAgent: turnAgentOf(opts) };
118779
118747
  }
118780
- function applyTurnMarks(runtime, marksOfSession, recordRefused) {
118748
+ function applyTurnMarks(runtime, marksOfSession, recordRefused, setToFull) {
118781
118749
  const places = /* @__PURE__ */ new Map();
118782
118750
  function markedTurn(target, sessionId, opts, start) {
118783
118751
  const marks = marksForTurn(opts);
118784
118752
  if (!hasMarks(marks)) return start(opts);
118785
118753
  if (marks.outsider === true) noteChatHeardOutsider(sessionId);
118786
- let sent = opts;
118754
+ let sent = withCarriedHold(target.type, opts, setToFull?.(sessionId, opts) === true);
118787
118755
  if (marks.teammate !== void 0) {
118788
118756
  sent = teammateTurnOpts(opts);
118789
118757
  const refusal2 = teammateTurnRefusal(target.type, marks.teammate);
@@ -118823,7 +118791,7 @@ function applyTurnMarks(runtime, marksOfSession, recordRefused) {
118823
118791
  }
118824
118792
  });
118825
118793
  }
118826
- var TURN_MARK_KINDS, NO_MARKS, PLACE_MEMORY, UNKNOWN_SOURCE, sameOrigin, RULES;
118794
+ var TURN_MARK_KINDS, NO_MARKS, PLACE_MEMORY, UNKNOWN_SOURCE, sameOrigin, RULES, GATES_CARRIED_SHELL;
118827
118795
  var init_turn_marks = __esm({
118828
118796
  "../../apps/server/src/services/core/turn-power/turn-marks.ts"() {
118829
118797
  "use strict";
@@ -118850,13 +118818,19 @@ var init_turn_marks = __esm({
118850
118818
  covers: (outer, inner) => inner === void 0 || outer !== void 0 && inner.every((origin) => outer.some((o3) => sameOrigin(o3, origin)))
118851
118819
  }
118852
118820
  };
118821
+ GATES_CARRIED_SHELL = /* @__PURE__ */ new Set(["claude-code"]);
118853
118822
  }
118854
118823
  });
118855
118824
 
118856
118825
  // ../../apps/server/src/services/core/turn-power/continuation-hold.ts
118857
- function noteTurnHold(sessionId, held2) {
118858
- if (!db) return;
118826
+ function noteTurnHold(sessionId, held2, carried = false) {
118859
118827
  const key = primaryOf(sessionId);
118828
+ carriedOnly.delete(key);
118829
+ if (held2 && carried) {
118830
+ carriedOnly.add(key);
118831
+ if (carriedOnly.size > WRITTEN_MAX) carriedOnly.delete(carriedOnly.values().next().value);
118832
+ }
118833
+ if (!db) return;
118860
118834
  if (written.get(key) === held2) return;
118861
118835
  try {
118862
118836
  db.insert(sessionMetadata).values({
@@ -118875,15 +118849,59 @@ function noteTurnHold(sessionId, held2) {
118875
118849
  });
118876
118850
  }
118877
118851
  }
118878
- var db, written, WRITTEN_MAX;
118852
+ var db, written, WRITTEN_MAX, carriedOnly;
118879
118853
  var init_continuation_hold = __esm({
118880
118854
  "../../apps/server/src/services/core/turn-power/continuation-hold.ts"() {
118881
118855
  "use strict";
118882
118856
  init_src2();
118857
+ init_permission_semantics();
118883
118858
  init_session_key_registry();
118884
118859
  init_logger();
118885
118860
  written = /* @__PURE__ */ new Map();
118886
118861
  WRITTEN_MAX = 1e4;
118862
+ carriedOnly = /* @__PURE__ */ new Set();
118863
+ }
118864
+ });
118865
+
118866
+ // ../shared/src/session-link.ts
118867
+ var init_session_link = __esm({
118868
+ "../shared/src/session-link.ts"() {
118869
+ }
118870
+ });
118871
+
118872
+ // ../../apps/server/src/services/core/turn-power/full-autonomy.ts
118873
+ function keep(set3, key, on) {
118874
+ set3.delete(key);
118875
+ if (!on) return;
118876
+ set3.add(key);
118877
+ if (set3.size > MEMORY) set3.delete(set3.values().next().value);
118878
+ }
118879
+ function isFullLevel(level) {
118880
+ return level !== void 0 && level.asks === "never" && level.reach === "everything";
118881
+ }
118882
+ function ownLevelBounds(ceiling) {
118883
+ if (ceiling === void 0) return void 0;
118884
+ const bounds = Array.isArray(ceiling) ? ceiling : [ceiling];
118885
+ const kept = bounds.filter((bound) => {
118886
+ if (typeof bound !== "object" || bound === null) return false;
118887
+ const level = bound;
118888
+ return level.outsider !== true && level.teammate === void 0;
118889
+ });
118890
+ if (kept.length === 0) return void 0;
118891
+ return kept.length === 1 ? kept[0] : kept;
118892
+ }
118893
+ function noteChosenTurn(sessionId, chosen, nobodyToAsk) {
118894
+ keep(fullChats, sessionId, isFullLevel(chosen));
118895
+ keep(unattendedChats, sessionId, nobodyToAsk);
118896
+ }
118897
+ var MEMORY, fullChats, unattendedChats;
118898
+ var init_full_autonomy = __esm({
118899
+ "../../apps/server/src/services/core/turn-power/full-autonomy.ts"() {
118900
+ "use strict";
118901
+ init_session_link();
118902
+ MEMORY = 1e4;
118903
+ fullChats = /* @__PURE__ */ new Set();
118904
+ unattendedChats = /* @__PURE__ */ new Set();
118887
118905
  }
118888
118906
  });
118889
118907
 
@@ -118902,6 +118920,46 @@ function lastTurnLevelOf(sessionId) {
118902
118920
  function levelForTurn(runtime, stored, opts) {
118903
118921
  return withMarks(powerForTurn(runtime, stored, opts), marksForTurn(opts));
118904
118922
  }
118923
+ function recordTurn(runtime, sessionId, stored, opts) {
118924
+ const level = levelForTurn(runtime, stored, opts);
118925
+ remember(turnLevels, sessionId, level);
118926
+ noteChosenTurn(
118927
+ sessionId,
118928
+ chosenLevelOf(runtime, stored, opts),
118929
+ opts?.unattended === true || opts?.unattendedApprovals === true
118930
+ );
118931
+ const ceiling = opts?.continuationHold === true ? void 0 : opts?.permissionCeiling;
118932
+ if (ceiling !== void 0 && ceilingHoldsForOutsider(ceiling)) {
118933
+ strangerHeld.add(sessionId);
118934
+ const own2 = withoutStrangerHold(ceiling);
118935
+ const { permissionCeiling: _held, ...rest } = opts ?? {};
118936
+ const handOff = withMarks(
118937
+ powerForTurn(runtime, stored, own2 === void 0 ? rest : { ...rest, permissionCeiling: own2 }),
118938
+ marksOfLevel(level)
118939
+ );
118940
+ remember(handOffLevels, sessionId, handOff);
118941
+ } else {
118942
+ strangerHeld.delete(sessionId);
118943
+ handOffLevels.delete(sessionId);
118944
+ }
118945
+ if (strangerHeld.size > TURN_LEVEL_MEMORY) {
118946
+ strangerHeld.delete(strangerHeld.values().next().value);
118947
+ }
118948
+ return level;
118949
+ }
118950
+ function chosenLevelOf(runtime, stored, opts) {
118951
+ const { permissionCeiling, ...unbounded } = opts ?? {};
118952
+ const own2 = ownLevelBounds(permissionCeiling);
118953
+ const kept = own2 === void 0 ? unbounded : { ...unbounded, permissionCeiling: own2 };
118954
+ return powerForTurn(runtime, stored, kept);
118955
+ }
118956
+ function withoutStrangerHold(ceiling) {
118957
+ if (!Array.isArray(ceiling)) return ceiling === "runtime-default" ? void 0 : ceiling;
118958
+ const kept = ceiling.filter(
118959
+ (bound) => bound !== "runtime-default"
118960
+ );
118961
+ return kept.length === 0 ? void 0 : kept.length === 1 ? kept[0] : kept;
118962
+ }
118905
118963
  function powerForTurn(runtime, stored, opts) {
118906
118964
  let declared;
118907
118965
  try {
@@ -118916,18 +118974,21 @@ function powerForTurn(runtime, stored, opts) {
118916
118974
  return opts?.permissionCeiling !== void 0 ? stricterLevel(base, resolveCeilingLevel(declared, opts.permissionCeiling)) : base;
118917
118975
  }
118918
118976
  function recordTurnLevels(runtime, storedModeOf) {
118977
+ const storedOf2 = (sessionId) => {
118978
+ try {
118979
+ return storedModeOf(sessionId);
118980
+ } catch {
118981
+ return void 0;
118982
+ }
118983
+ };
118919
118984
  return applyTurnMarks(
118920
118985
  recordLevels(runtime, storedModeOf),
118921
118986
  (sessionId) => marksOfLevel(turnLevels.get(sessionId)),
118922
118987
  (sessionId, opts) => {
118923
- let stored;
118924
- try {
118925
- stored = storedModeOf(sessionId);
118926
- } catch {
118927
- stored = void 0;
118928
- }
118929
- remember(turnLevels, sessionId, levelForTurn(runtime, stored, opts));
118930
- }
118988
+ recordTurn(runtime, sessionId, storedOf2(sessionId), opts);
118989
+ },
118990
+ // A chat set to Full is never held for a mark it carries (DOR-3394).
118991
+ (sessionId, opts) => isFullLevel(chosenLevelOf(runtime, storedOf2(sessionId), opts))
118931
118992
  );
118932
118993
  }
118933
118994
  function recordLevels(runtime, storedModeOf) {
@@ -118942,9 +119003,13 @@ function recordLevels(runtime, storedModeOf) {
118942
119003
  } catch {
118943
119004
  stored = void 0;
118944
119005
  }
118945
- const level = levelForTurn(target, stored, opts);
118946
- remember(turnLevels, sessionId, level);
118947
- if (opts?.continuationHold !== true) noteTurnHold(sessionId, level.outsider === true);
119006
+ const level = recordTurn(target, sessionId, stored, opts);
119007
+ if (opts?.continuationHold !== true) {
119008
+ const held2 = level.outsider === true;
119009
+ const ceiling = opts?.permissionCeiling;
119010
+ const carried = held2 && !(ceiling !== void 0 && ceilingHoldsForOutsider(ceiling));
119011
+ noteTurnHold(sessionId, held2, carried);
119012
+ }
118948
119013
  const serial = ++nextTurnSerial;
118949
119014
  for (const id of /* @__PURE__ */ new Set([sessionId, primaryOf(sessionId)])) {
118950
119015
  turnSerials.delete(id);
@@ -118961,7 +119026,7 @@ function recordLevels(runtime, storedModeOf) {
118961
119026
  }
118962
119027
  });
118963
119028
  }
118964
- var TURN_LEVEL_MEMORY, AUTO_MODE_ID2, AUTO_FALLBACK_MODE_ID, turnLevels, turnSerials, nextTurnSerial;
119029
+ var TURN_LEVEL_MEMORY, AUTO_MODE_ID2, AUTO_FALLBACK_MODE_ID, turnLevels, handOffLevels, strangerHeld, turnSerials, nextTurnSerial;
118965
119030
  var init_turn_levels = __esm({
118966
119031
  "../../apps/server/src/services/core/turn-power/turn-levels.ts"() {
118967
119032
  "use strict";
@@ -118969,16 +119034,34 @@ var init_turn_levels = __esm({
118969
119034
  init_session_key_registry();
118970
119035
  init_outsider_turns();
118971
119036
  init_continuation_hold();
119037
+ init_full_autonomy();
118972
119038
  init_permission_semantics();
118973
119039
  TURN_LEVEL_MEMORY = 1e4;
118974
119040
  AUTO_MODE_ID2 = "auto";
118975
119041
  AUTO_FALLBACK_MODE_ID = "default";
118976
119042
  turnLevels = /* @__PURE__ */ new Map();
119043
+ handOffLevels = /* @__PURE__ */ new Map();
119044
+ strangerHeld = /* @__PURE__ */ new Set();
118977
119045
  turnSerials = /* @__PURE__ */ new Map();
118978
119046
  nextTurnSerial = 0;
118979
119047
  }
118980
119048
  });
118981
119049
 
119050
+ // ../../apps/server/src/services/connectors/principal/server-principal.ts
119051
+ var init_server_principal = __esm({
119052
+ "../../apps/server/src/services/connectors/principal/server-principal.ts"() {
119053
+ "use strict";
119054
+ }
119055
+ });
119056
+
119057
+ // ../../apps/server/src/services/core/capabilities/marked-turn-holds.ts
119058
+ var init_marked_turn_holds = __esm({
119059
+ "../../apps/server/src/services/core/capabilities/marked-turn-holds.ts"() {
119060
+ "use strict";
119061
+ init_server_principal();
119062
+ }
119063
+ });
119064
+
118982
119065
  // ../../apps/server/src/services/core/capabilities/permission-enforcement.ts
118983
119066
  function permissionGateSources() {
118984
119067
  return sources;
@@ -118992,6 +119075,8 @@ var init_permission_enforcement = __esm({
118992
119075
  init_mesh_schemas();
118993
119076
  init_permissions();
118994
119077
  init_turn_levels();
119078
+ init_full_autonomy();
119079
+ init_marked_turn_holds();
118995
119080
  init_logger();
118996
119081
  UNCHOSEN = { preset: null, defaults: { areas: {}, actions: {} } };
118997
119082
  DEFAULT_SOURCES = {
@@ -120742,9 +120827,10 @@ async function agentOfTurn(runtime, sessionId, opts, recordedAgentOf) {
120742
120827
  }
120743
120828
  function turnIsMarked(opts) {
120744
120829
  const ceiling = opts?.permissionCeiling;
120745
- if (ceiling !== void 0 && ceilingCarriesOutsider(ceiling)) return true;
120830
+ if (ceiling !== void 0 && ceilingHoldsForOutsider(ceiling)) return true;
120746
120831
  if (opts?.teammate === true || opts?.roomTurn?.teammate === true) return true;
120747
- return hasMarks(marksForTurn(opts));
120832
+ if (opts?.roomTurn?.outsiderInView === true) return true;
120833
+ return marksForTurn(opts).teammate !== void 0;
120748
120834
  }
120749
120835
  function rises(runtime, sessionId, agentPath, stored, levelMode, opts) {
120750
120836
  if (opts?.permissionMode !== void 0 || opts?.unattended === true) return false;
@@ -123969,7 +124055,7 @@ var init_project_registry = __esm({
123969
124055
  * re-checks lookup-only in the delete itself, so a row another process
123970
124056
  * upgraded meanwhile stays, and memory learns its new state.
123971
124057
  */
123972
- forgetOldLookups(keep) {
124058
+ forgetOldLookups(keep2) {
123973
124059
  let held2;
123974
124060
  try {
123975
124061
  held2 = new Set(this.protectedRoots());
@@ -123989,7 +124075,7 @@ var init_project_registry = __esm({
123989
124075
  const over = excess;
123990
124076
  for (const project2 of lookups) {
123991
124077
  if (excess <= 0) break;
123992
- if (project2.root === keep) continue;
124078
+ if (project2.root === keep2) continue;
123993
124079
  let removed;
123994
124080
  try {
123995
124081
  removed = this.store ? this.store.removeLookupOnly(project2.root) : true;
@@ -138233,10 +138319,10 @@ var init_marketplace_cache = __esm({
138233
138319
  * @returns What was removed, the bytes freed, and any entry that could not be
138234
138320
  * removed (the others still are).
138235
138321
  */
138236
- async removeUnused(keep) {
138322
+ async removeUnused(keep2) {
138237
138323
  const treesRoot = join51(this.cacheRoot, TREES_DIRNAME);
138238
138324
  const entries = await this.listPackages();
138239
- const kept = keep(entries);
138325
+ const kept = keep2(entries);
138240
138326
  const result2 = { removed: [], freedBytes: 0, failed: [] };
138241
138327
  for (const entry of entries) {
138242
138328
  if (kept.has(entry.path)) continue;
@@ -142631,7 +142717,7 @@ function createInstallationJobs(configuration, options = { ownerKind: "controlle
142631
142717
  );
142632
142718
  requireFact2(!expected || sameFileIdentity(identity2(s2), expected), "ROOT_CHANGED");
142633
142719
  }
142634
- async function readPinned(slot, path71, digest2, cap, expected, keep = false) {
142720
+ async function readPinned(slot, path71, digest2, cap, expected, keep2 = false) {
142635
142721
  const before = await lstat5(path71, { bigint: true });
142636
142722
  requireFact2(
142637
142723
  before.isFile() && !before.isSymbolicLink() && before.size <= BigInt(cap),
@@ -142667,7 +142753,7 @@ function createInstallationJobs(configuration, options = { ownerKind: "controlle
142667
142753
  bytes += result3.bytesRead;
142668
142754
  requireFact2(bytes <= cap, "RETENTION_EXCEEDED");
142669
142755
  hash3.update(buffer.subarray(0, result3.bytesRead));
142670
- if (keep) chunks.push(buffer.slice(0, result3.bytesRead));
142756
+ if (keep2) chunks.push(buffer.slice(0, result3.bytesRead));
142671
142757
  }
142672
142758
  requireFact2(
142673
142759
  sameFileIdentity(beforeIdentity, identity2(await original.stat({ bigint: true }))) && sameFileIdentity(beforeIdentity, identity2(await lstat5(path71, { bigint: true }))),
@@ -142690,7 +142776,7 @@ function createInstallationJobs(configuration, options = { ownerKind: "controlle
142690
142776
  }
142691
142777
  }
142692
142778
  if (failed) throw primary;
142693
- const result2 = new Uint8Array(keep ? bytes : 0);
142779
+ const result2 = new Uint8Array(keep2 ? bytes : 0);
142694
142780
  let offset = 0;
142695
142781
  for (const chunk of chunks) {
142696
142782
  result2.set(chunk, offset);
@@ -174258,13 +174344,19 @@ var init_connector_event_schemas = __esm({
174258
174344
  });
174259
174345
 
174260
174346
  // ../connector-providers/src/connector-managed-schemas.ts
174261
- var ManagedConnectorErrorBodySchema, ManagedConnectorOperationSelectorSchema, ManagedAuthorityCommandBaseSchema, ManagedConnectorAuthorityCommandSchema, ManagedAuthorityStatusBaseSchema, ManagedConnectorAuthorityCommandStatusSchema, ManagedConnectorExecutionAttributionSchema, ManagedConnectorExecutionRequestSchema, ManagedConnectorExecutionReceiptSchema, ManagedConnectorCompletedExecutionResponseSchema, ManagedConnectorExecutionResponseSchema, ManagedConnectorExecutionReceiptStatusSchema;
174347
+ var ManagedConnectorApprovalRefSchema, ManagedConnectorErrorBodySchema, ManagedConnectorOperationSelectorSchema, ManagedAuthorityCommandBaseSchema, ManagedConnectorAuthorityCommandSchema, ManagedAuthorityStatusBaseSchema, ManagedConnectorAuthorityCommandStatusSchema, ManagedConnectorTurnMarkSchema, ManagedConnectorExecutionAttributionSchema, ManagedConnectorExecutionRequestSchema, ManagedConnectorExecutionReceiptSchema, ManagedConnectorHeldExecutionSchema, ManagedConnectorCompletedExecutionResponseSchema, ManagedConnectorExecutionResponseSchema, ManagedConnectorExecutionReceiptStatusSchema, ManagedConnectorInstanceApprovalSchema, ManagedConnectorInstanceApprovalListSchema;
174262
174348
  var init_connector_managed_schemas = __esm({
174263
174349
  "../connector-providers/src/connector-managed-schemas.ts"() {
174264
174350
  init_dist13();
174265
174351
  init_zod();
174352
+ init_stable_stringify();
174266
174353
  init_connector_event_schemas();
174267
174354
  init_connector_schemas();
174355
+ ManagedConnectorApprovalRefSchema = external_exports.object({
174356
+ approvalId: external_exports.string().uuid(),
174357
+ approveUrl: external_exports.string().url(),
174358
+ expiresAt: external_exports.string().datetime().refine((at) => Date.parse(at) > Date.now(), "The approval has already expired")
174359
+ }).strict();
174268
174360
  ManagedConnectorErrorBodySchema = external_exports.object({
174269
174361
  error: external_exports.string().min(1).max(100),
174270
174362
  reason: external_exports.string().max(1e3).optional()
@@ -174333,16 +174425,32 @@ var init_connector_managed_schemas = __esm({
174333
174425
  "event_subscription_limit_reached",
174334
174426
  "invalid_event_filter",
174335
174427
  "permission_upgrade_required",
174336
- "scope_conflict"
174428
+ "scope_conflict",
174429
+ "approval_denied",
174430
+ "approval_expired",
174431
+ "approval_limit_reached"
174337
174432
  ])
174338
174433
  }).strict(),
174339
- ManagedAuthorityStatusBaseSchema.extend({ state: external_exports.literal("superseded") }).strict()
174434
+ ManagedAuthorityStatusBaseSchema.extend({ state: external_exports.literal("superseded") }).strict(),
174435
+ // Not applied yet: the owner has not approved it. The client keeps honouring
174436
+ // the last `applied` set for that scope; this is not a stall and not a reason
174437
+ // to resend. Sent only to a client that sent MANAGED_APPROVALS_HEADER.
174438
+ ManagedAuthorityStatusBaseSchema.extend({ state: external_exports.literal("awaiting_approval") }).merge(ManagedConnectorApprovalRefSchema).strict()
174340
174439
  ]);
174440
+ ManagedConnectorTurnMarkSchema = external_exports.enum(["outsider", "tool_read", "teammate"]);
174341
174441
  ManagedConnectorExecutionAttributionSchema = external_exports.object({
174342
174442
  surface: external_exports.enum(["mcp", "rest", "cli", "event"]),
174343
174443
  actorKind: external_exports.enum(["operator", "agent", "program", "event", "runtime"]),
174344
174444
  actorId: external_exports.string().min(1).max(200),
174345
- sessionId: external_exports.string().min(1).max(200).optional()
174445
+ sessionId: external_exports.string().min(1).max(200).optional(),
174446
+ /**
174447
+ * What the calling turn carries, derived by the broker, never the agent, so
174448
+ * the owner's approval card can say it: `outsider` (the turn read words
174449
+ * from outside the owner's circle, or a stranger started it), `tool_read`
174450
+ * (it read outside text through a tool) and `teammate` (a teammate in a
174451
+ * shared space started the chain). Absent means none is known.
174452
+ */
174453
+ marks: external_exports.array(ManagedConnectorTurnMarkSchema).max(3).optional()
174346
174454
  }).strict();
174347
174455
  ManagedConnectorExecutionRequestSchema = external_exports.object({
174348
174456
  version: external_exports.literal(1),
@@ -174381,6 +174489,12 @@ var init_connector_managed_schemas = __esm({
174381
174489
  });
174382
174490
  }
174383
174491
  });
174492
+ ManagedConnectorHeldExecutionSchema = external_exports.object({
174493
+ state: external_exports.literal("held"),
174494
+ attemptId: external_exports.string().min(1).max(200),
174495
+ approval: external_exports.enum(["awaiting", "approved"]),
174496
+ requestHash: external_exports.string().regex(/^[0-9a-f]{64}$/)
174497
+ }).merge(ManagedConnectorApprovalRefSchema).strict();
174384
174498
  ManagedConnectorCompletedExecutionResponseSchema = external_exports.object({
174385
174499
  state: external_exports.literal("completed"),
174386
174500
  result: ConnectorProviderExecuteResultSchema,
@@ -174404,7 +174518,8 @@ var init_connector_managed_schemas = __esm({
174404
174518
  external_exports.object({
174405
174519
  state: external_exports.literal("pending"),
174406
174520
  attemptId: external_exports.string().min(1).max(200)
174407
- }).strict()
174521
+ }).strict(),
174522
+ ManagedConnectorHeldExecutionSchema
174408
174523
  ]);
174409
174524
  ManagedConnectorExecutionReceiptStatusSchema = external_exports.discriminatedUnion("state", [
174410
174525
  external_exports.object({
@@ -174414,8 +174529,19 @@ var init_connector_managed_schemas = __esm({
174414
174529
  external_exports.object({
174415
174530
  state: external_exports.literal("recorded"),
174416
174531
  receipt: ManagedConnectorExecutionReceiptSchema
174417
- }).strict()
174532
+ }).strict(),
174533
+ ManagedConnectorHeldExecutionSchema
174418
174534
  ]);
174535
+ ManagedConnectorInstanceApprovalSchema = external_exports.object({
174536
+ kind: external_exports.enum(["grant", "grant_review", "execution"]),
174537
+ managedConnectionId: external_exports.string().min(1).max(200),
174538
+ commandId: external_exports.string().min(1).max(200).optional(),
174539
+ attemptId: external_exports.string().min(1).max(200).optional()
174540
+ }).merge(ManagedConnectorApprovalRefSchema).strict();
174541
+ ManagedConnectorInstanceApprovalListSchema = external_exports.object({
174542
+ version: external_exports.literal(1),
174543
+ approvals: external_exports.array(ManagedConnectorInstanceApprovalSchema)
174544
+ }).strict();
174419
174545
  }
174420
174546
  });
174421
174547
 
@@ -178890,6 +179016,21 @@ function installCliErrorHandlers(reporter) {
178890
179016
  // src/cli.ts
178891
179017
  init_dork_home2();
178892
179018
 
179019
+ // src/lib/distribution.ts
179020
+ function cliDistribution(entryPath, inherited) {
179021
+ if (inherited?.trim().toLowerCase() === "docker") return "docker";
179022
+ const normalized = entryPath.replace(/\\/g, "/");
179023
+ if (normalized.includes("/Cellar/")) return "homebrew";
179024
+ if (normalized.includes("/node_modules/")) return "npm";
179025
+ if (normalized.includes("/packages/cli/dist/")) return "dev";
179026
+ return "unknown";
179027
+ }
179028
+ function stampCliLaunch(env6, entryPath, version4) {
179029
+ env6.DORKOS_CLI_ENTRYPOINT = entryPath;
179030
+ env6.DORKOS_CLI_VERSION = version4;
179031
+ env6.DORKOS_DISTRIBUTION = cliDistribution(entryPath, env6.DORKOS_DISTRIBUTION);
179032
+ }
179033
+
178893
179034
  // src/parse-cli-args.ts
178894
179035
  import { parseArgs } from "node:util";
178895
179036
  function parseCliArgs(args = process.argv.slice(2)) {
@@ -179381,7 +179522,7 @@ if (process.argv[2] === "community") {
179381
179522
  );
179382
179523
  Object.assign(childEnv, credentialEnv.pickCommunityCredentialEnv(rawProcessEnv));
179383
179524
  const exitCode = await dispatcher.runCommunityDispatcher(process.argv.slice(3), {
179384
- cliVersion: "0.126.2",
179525
+ cliVersion: "0.126.4",
179385
179526
  dorkHome: DORK_HOME,
179386
179527
  processEnv: childEnv,
179387
179528
  parseRelease: (bytes) => releaseContract.parseCompatibleCommunityReleaseManifest(
@@ -179389,7 +179530,7 @@ if (process.argv[2] === "community") {
179389
179530
  {
179390
179531
  platform: { os: "linux", architecture: "amd64" },
179391
179532
  configSchemaVersion: releaseContract.COMMUNITY_CONFIG_SCHEMA_VERSION,
179392
- migrationCompatibilityId: "sha256:92df0e89ae4ba6c9e7a91699e39f0110f24e8ac1362a11c0d263adf3a20bac7d"
179533
+ migrationCompatibilityId: "sha256:137102b0b50d6beffe53867c67282c84d4b7bf27f2f27134fec41c72289bca28"
179393
179534
  }
179394
179535
  )
179395
179536
  });
@@ -179399,7 +179540,7 @@ if (process.argv[2] === "community") {
179399
179540
  process.exit(1);
179400
179541
  }
179401
179542
  }
179402
- var cliErrorReporter = initCliErrorReporting({ dorkHome: DORK_HOME, version: "0.126.2" });
179543
+ var cliErrorReporter = initCliErrorReporting({ dorkHome: DORK_HOME, version: "0.126.4" });
179403
179544
  var uninstallCliErrorHandlers = cliErrorReporter ? installCliErrorHandlers(cliErrorReporter) : void 0;
179404
179545
  if (process.argv[2] === "doctor") {
179405
179546
  process.env.DORK_HOME = DORK_HOME;
@@ -179409,7 +179550,7 @@ if (process.argv[2] === "doctor") {
179409
179550
  if (process.argv[2] === "feedback") {
179410
179551
  process.env.DORK_HOME = DORK_HOME;
179411
179552
  const { runFeedback: runFeedback2 } = await Promise.resolve().then(() => (init_feedback2(), feedback_exports));
179412
- process.exit(await runFeedback2(DORK_HOME, "0.126.2", process.argv.slice(3)));
179553
+ process.exit(await runFeedback2(DORK_HOME, "0.126.4", process.argv.slice(3)));
179413
179554
  }
179414
179555
  if (process.argv[2] === "auth") {
179415
179556
  process.env.DORK_HOME = DORK_HOME;
@@ -179508,7 +179649,7 @@ if (process.argv[2] === "agent" || process.argv[2] === "task" || process.argv[2]
179508
179649
  }
179509
179650
  }
179510
179651
  const { runVersionDispatcher: runVersionDispatcher2 } = await Promise.resolve().then(() => (init_version5(), version_exports));
179511
- process.exit(await runVersionDispatcher2("0.126.2", DORK_HOME, subArgs));
179652
+ process.exit(await runVersionDispatcher2("0.126.4", DORK_HOME, subArgs));
179512
179653
  }
179513
179654
  var { values, positionals } = parseCliArgs();
179514
179655
  if (positionals[0] && !knownCommands.has(positionals[0])) {
@@ -179602,14 +179743,14 @@ Examples:
179602
179743
  process.exit(0);
179603
179744
  }
179604
179745
  if (values.version) {
179605
- console.log("0.126.2");
179746
+ console.log("0.126.4");
179606
179747
  process.exit(0);
179607
179748
  }
179608
179749
  if (values["post-install-check"]) {
179609
179750
  const claudeFound = checkClaude();
179610
179751
  const coreExtensionsFound = checkCoreExtensions();
179611
179752
  const extensionsCompile = await checkExtensionCompilation();
179612
- console.log(`dorkos ${"0.126.2"}`);
179753
+ console.log(`dorkos ${"0.126.4"}`);
179613
179754
  if (!coreExtensionsFound) {
179614
179755
  console.log("Installation incomplete \u2014 bundled core extensions are missing.");
179615
179756
  }
@@ -179756,8 +179897,7 @@ if (fs40.existsSync(envPath)) {
179756
179897
  dotenv.config({ path: envPath, override: false });
179757
179898
  }
179758
179899
  uninstallCliErrorHandlers?.();
179759
- process.env.DORKOS_CLI_ENTRYPOINT = fileURLToPath7(import.meta.url);
179760
- process.env.DORKOS_CLI_VERSION = "0.126.2";
179900
+ stampCliLaunch(process.env, fileURLToPath7(import.meta.url), "0.126.4");
179761
179901
  var server;
179762
179902
  try {
179763
179903
  server = await import("../server/index.js");
@@ -179782,7 +179922,7 @@ var ansiReset = "\x1B[0m";
179782
179922
  console.log("");
179783
179923
  console.log(`${purple}${logo}${ansiReset}`);
179784
179924
  console.log("");
179785
- console.log(` DorkOS v${"0.126.2"}`);
179925
+ console.log(` DorkOS v${"0.126.4"}`);
179786
179926
  console.log(` Local: ${link(localUrl, localUrl)}`);
179787
179927
  var nets = networkInterfaces();
179788
179928
  var networkUrl = null;
@@ -179808,9 +179948,9 @@ if (shouldOpenBrowser && process.stdin.isTTY) {
179808
179948
  const openCmd = process.platform === "darwin" ? "open" : process.platform === "win32" ? "start" : "xdg-open";
179809
179949
  exec(`${openCmd} ${localUrl}`);
179810
179950
  }
179811
- checkForUpdate("0.126.2").then((latestVersion) => {
179951
+ checkForUpdate("0.126.4").then((latestVersion) => {
179812
179952
  if (latestVersion) {
179813
- const msg = `Update available: ${"0.126.2"} \u2192 ${latestVersion}`;
179953
+ const msg = `Update available: ${"0.126.4"} \u2192 ${latestVersion}`;
179814
179954
  const cmd = "Run npm install -g dorkos@latest to update";
179815
179955
  const width = Math.max(msg.length, cmd.length) + 6;
179816
179956
  const pad2 = (s2) => `\u2502 ${s2}${" ".repeat(width - s2.length - 6)} \u2502`;