@runeya/runeya 2.0.108 → 2.0.110

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 (345) hide show
  1. package/agent/index.js +6 -3
  2. package/agent/index.js.map +1 -1
  3. package/agent-manager-APY7SZ75.js +9 -0
  4. package/{chat-WMT34BXJ.js → chat-XSI73SXM.js} +6 -6
  5. package/{chunk-QRMG6GMX.js → chunk-6T7R2JZR.js} +24 -1
  6. package/{chunk-QRMG6GMX.js.map → chunk-6T7R2JZR.js.map} +1 -1
  7. package/{chunk-D2PF2FYU.js → chunk-77UQ2UKW.js} +2 -2
  8. package/{chunk-4SJCPFGK.js → chunk-N46G7MQW.js} +27 -21
  9. package/{chunk-4SJCPFGK.js.map → chunk-N46G7MQW.js.map} +1 -1
  10. package/{chunk-RIITTBK3.js → chunk-OGCEFBSS.js} +2 -2
  11. package/{chunk-DS66SEYH.js → chunk-QYFLRYTR.js} +6 -6
  12. package/{companion-EPINTIC7.js → companion-DCFBV2BV.js} +4 -4
  13. package/{desktop-launcher-N7WRF3LC.js → desktop-launcher-Q6J2LSVP.js} +2 -2
  14. package/index.js +4 -4
  15. package/package.json +1 -1
  16. package/settings-manager-MQBUCUIO.js +9 -0
  17. package/{src-LONZKLMU.js → src-NH6Z6SKR.js} +107 -7
  18. package/src-NH6Z6SKR.js.map +1 -0
  19. package/web/assets/AgentScalarChatInterface.vue-bVUbJM6k.js +13 -0
  20. package/web/assets/AgentTerminalPage-BTTCmZ8e.js +1 -0
  21. package/web/assets/AiChatPage-D8jocQri.js +1 -0
  22. package/web/assets/AppLayout-Cn-MzICV.js +1 -0
  23. package/web/assets/AuditPage-AeuQRjbs.js +1 -0
  24. package/web/assets/CloudAccountPage-BzNSVdY6.js +1 -0
  25. package/web/assets/CloudAccountPage-D233-TJM.js +1 -0
  26. package/web/assets/CloudMessagingPage-BYzmzyXT.js +2 -0
  27. package/web/assets/DashboardPage-BOnyPov5.js +164 -0
  28. package/web/assets/DashboardPage-DFaiJ4c-.css +1 -0
  29. package/web/assets/DirectoryPickerDialog-hjrZkIOv.js +1 -0
  30. package/web/assets/{EditorIcon-DvX4OCO1.js → EditorIcon-B3Su-OwT.js} +2 -2
  31. package/web/assets/EnvironmentForm-BGXJVD4I.js +108 -0
  32. package/web/assets/EnvironmentForm-BYLz936T.css +1 -0
  33. package/web/assets/EnvironmentFormPage-CT1_FZrS.js +1 -0
  34. package/web/assets/EnvironmentListPage-DNm1Zjfz.js +1 -0
  35. package/web/assets/KanbanBoardPage-BHjb62Os.js +4 -0
  36. package/web/assets/KanbanListPage-CEuMG9RC.js +1 -0
  37. package/web/assets/LaunchProjectPage-DUDdMjko.js +1 -0
  38. package/web/assets/LaunchServicesPage-DiQrNueu.js +1 -0
  39. package/web/assets/LogViewer-BpEtGsZ5.js +3 -0
  40. package/web/assets/OrgKeyPrompt-CE9pStU1.js +1 -0
  41. package/web/assets/{ProcessControls-DPOmEvIy.js → ProcessControls-CsWzruEm.js} +1 -1
  42. package/web/assets/ProcessDetailPage-8y2SxEU-.js +1 -0
  43. package/web/assets/{ProcessMetrics-C2YI8_M5.js → ProcessMetrics-CUzyutMf.js} +2 -2
  44. package/web/assets/RandomJobTestPage-Db2N7EO6.js +2 -0
  45. package/web/assets/ScenarioEditorPage-DZGwKqca.js +14 -0
  46. package/web/assets/SendToChatDialog-npzyD5uP.js +1 -0
  47. package/web/assets/ServiceControlsBar-FVooFZc5.js +1 -0
  48. package/web/assets/{ServiceDetailPage-DpgtCJPg.css → ServiceDetailPage-BcFOlsU9.css} +1 -1
  49. package/web/assets/ServiceDetailPage-CgqjxBM6.js +2 -0
  50. package/web/assets/ServiceFormPage-CYOoNVF1.js +1 -0
  51. package/web/assets/SettingsPage-CoGjqOzD.js +2063 -0
  52. package/web/assets/UnlockPage-CGiYwSyZ.js +1 -0
  53. package/web/assets/VaultMigrationPage-CyiBrr-p.js +1 -0
  54. package/web/assets/VersionBadge-DX13eD3-.js +1 -0
  55. package/web/assets/WikiPage-DXipm2xF.js +1 -0
  56. package/web/assets/WikiView-2NvYhk4Z.js +1 -0
  57. package/web/assets/add-scalar-classes-raPkwxxx.js +387 -0
  58. package/web/assets/autocomplete-CybakBEo.js +308 -0
  59. package/web/assets/{basic-shape-diamond.svg-CUsdhYKG.js → basic-shape-diamond.svg-CapSkAmG.js} +1 -1
  60. package/web/assets/{basic-shape-hexagon.svg-BPfS9EDA.js → basic-shape-hexagon.svg-CsHQuK0t.js} +1 -1
  61. package/web/assets/{basic-shape-primary-circle-ellipse-round.svg-C0Y2bkJl.js → basic-shape-primary-circle-ellipse-round.svg-kIAVlJXt.js} +1 -1
  62. package/web/assets/{basic-shape-primary-square-rectangle.svg-1LwihH2B.js → basic-shape-primary-square-rectangle.svg-D0ET3Tqc.js} +1 -1
  63. package/web/assets/{basic-shape-shield.svg-DGe2vG6Z.js → basic-shape-shield.svg-XlQTA0eZ.js} +1 -1
  64. package/web/assets/{browser-CQu9nsVO.js → browser-CXl-HRlQ.js} +1 -1
  65. package/web/assets/{browser-QoavDMKL.js → browser-Dgbd7roH.js} +1 -1
  66. package/web/assets/card-B7N8GBzU.js +32 -0
  67. package/web/assets/{checkbox-BKV4svPN.js → checkbox-BEqo7VlA.js} +3 -3
  68. package/web/assets/{chip-DA83o4Kg.js → chip-DbuOs6mD.js} +2 -2
  69. package/web/assets/client-BTPVHpIK.js +24 -0
  70. package/web/assets/cloud-chat.store-BVbcxYpE.js +1 -0
  71. package/web/assets/cloud-client-BQK_KiGt.js +1 -0
  72. package/web/assets/cloud-session-B8hpRdx9.js +1 -0
  73. package/web/assets/cloud-session-ClyLQ2X7.js +2 -0
  74. package/web/assets/column-Dj8-WSbH.js +907 -0
  75. package/web/assets/{computer-device-desktop-monitor.svg-CAldNRkh.js → computer-device-desktop-monitor.svg-DoHrfDHw.js} +1 -1
  76. package/web/assets/{computer-device-desktop.svg-DwVKMGyS.js → computer-device-desktop.svg-Dzi97f3e.js} +1 -1
  77. package/web/assets/{computer-device-laptop.svg-fyjI7tSV.js → computer-device-laptop.svg-B-qwwyLX.js} +1 -1
  78. package/web/assets/{computer-device-mobile-phone-android-samsung-back.svg-CNHunNo4.js → computer-device-mobile-phone-android-samsung-back.svg-BCB1yyCO.js} +1 -1
  79. package/web/assets/{computer-device-mobile-phone-android-samsung.svg-WhhpuflD.js → computer-device-mobile-phone-android-samsung.svg-CKI20fhG.js} +1 -1
  80. package/web/assets/{computer-device-mobile-phone-iphone-x-back.svg-RveI1E1x.js → computer-device-mobile-phone-iphone-x-back.svg-DHmkgLCF.js} +1 -1
  81. package/web/assets/{computer-device-mobile-phone-iphone-x.svg-Cyjp0aan.js → computer-device-mobile-phone-iphone-x.svg-TbsaqOop.js} +1 -1
  82. package/web/assets/{computer-device-mobile-tablet-touch.svg-u88Qx92m.js → computer-device-mobile-tablet-touch.svg-BC65H-Wy.js} +1 -1
  83. package/web/assets/{computer-device-mobile-tablet.svg-Dzdz4e4O.js → computer-device-mobile-tablet.svg-pIk1A-MA.js} +1 -1
  84. package/web/assets/{computer-device-network-ethernet-cat6.svg-BW1j1BkJ.js → computer-device-network-ethernet-cat6.svg-CJJeY52X.js} +1 -1
  85. package/web/assets/{computer-device-network-lan-www.svg-CxNGv37e.js → computer-device-network-lan-www.svg-BZQvS7kF.js} +1 -1
  86. package/web/assets/{computer-device-network-wifi-connection.svg-Ck3nAZv3.js → computer-device-network-wifi-connection.svg-2PvHanNl.js} +1 -1
  87. package/web/assets/{computer-device-network-wifi-router.svg-gWXKoMXh.js → computer-device-network-wifi-router.svg-zO1msMdQ.js} +1 -1
  88. package/web/assets/{cssMode-D8Jyxeqc.js → cssMode-C7hrywnS.js} +1 -1
  89. package/web/assets/{divider-D-Mvqkj1.js → divider-xSFkNZuS.js} +2 -2
  90. package/web/assets/{docx-preview-DxSIfBtK.js → docx-preview-CjWxgQ-C.js} +1 -1
  91. package/web/assets/{ecology-science-erlenmeyer-flask.svg-psfHQe5z.js → ecology-science-erlenmeyer-flask.svg-DHimG7ap.js} +1 -1
  92. package/web/assets/{fieldset-oHSSpvVY.js → fieldset--SZPF3MD.js} +2 -2
  93. package/web/assets/{freemarker2-DlJBY4WY.js → freemarker2-BbPnOIWY.js} +1 -1
  94. package/web/assets/{handlebars-DTEXdr2O.js → handlebars-CXbCTrew.js} +1 -1
  95. package/web/assets/{html-eYBbc2Bx.js → html-ty3-UbXV.js} +1 -1
  96. package/web/assets/{htmlMode-B4O_yjGK.js → htmlMode-D57pU926.js} +1 -1
  97. package/web/assets/{image-flash-lightning.svg-r_oTLRoo.js → image-flash-lightning.svg-Dob2Li0r.js} +1 -1
  98. package/web/assets/{image-picture-flower.svg-8nv9asUS.js → image-picture-flower.svg-BRxcKOOu.js} +1 -1
  99. package/web/assets/{index-B9x3uCZ9.js → index-DgMcUhMc.js} +257 -257
  100. package/web/assets/{interface-alert-exclamation-diamond.svg-A5K0l-78.js → interface-alert-exclamation-diamond.svg-Cmld7PXP.js} +1 -1
  101. package/web/assets/{interface-alert-exclamation-triangle-warning.svg-Dq66i82G.js → interface-alert-exclamation-triangle-warning.svg-Bw7UDYTt.js} +1 -1
  102. package/web/assets/{interface-alert-information-circle.svg-B4ROZIk0.js → interface-alert-information-circle.svg-Dnvhp_26.js} +1 -1
  103. package/web/assets/{interface-award-crown.svg-DRnv1a4n.js → interface-award-crown.svg-CP4Pl0YZ.js} +1 -1
  104. package/web/assets/{interface-bookmark.svg-CopCSuT2.js → interface-bookmark-tag.svg-xczywRbU.js} +1 -1
  105. package/web/assets/{interface-bookmark-tag.svg-Dwwi4iOX.js → interface-bookmark.svg-cQjMEE4B.js} +1 -1
  106. package/web/assets/{interface-calendar-date-one.svg-BxkYYC67.js → interface-calendar-date-one.svg-CwtdNynk.js} +1 -1
  107. package/web/assets/{interface-content-book-open-pages.svg-BJozsCHP.js → interface-content-book-open-pages.svg-DZ2KU7G8.js} +1 -1
  108. package/web/assets/{interface-content-book-page.svg-CbWXY0Yb.js → interface-content-book-page.svg-BaPv-9rL.js} +1 -1
  109. package/web/assets/{interface-content-file.svg-Ck3RuXRm.js → interface-content-file.svg-BZJtwiL1.js} +1 -1
  110. package/web/assets/{interface-content-folder.svg-LK0HJ4yQ.js → interface-content-folder.svg-DB9MQGQ4.js} +1 -1
  111. package/web/assets/interface-content-folder.svg-DzRoqEFB.js +1 -0
  112. package/web/assets/{interface-copy-clipboard.svg-vkTPN1aA.js → interface-copy-clipboard.svg-yyVdu6pX.js} +1 -1
  113. package/web/assets/{interface-edit-attachment.svg-CjCh5Lb1.js → interface-edit-attachment.svg-C3RMyf1l.js} +1 -1
  114. package/web/assets/{interface-edit-binocular.svg-Dos2P4t_.js → interface-edit-binocular.svg-BuQ7dKNu.js} +1 -1
  115. package/web/assets/{interface-edit-magic-wand.svg-fxAohPEI.js → interface-edit-magic-wand.svg-Cl-slEVG.js} +1 -1
  116. package/web/assets/{interface-edit-tool-paint-roller.svg-JLIYavUO.js → interface-edit-tool-paint-roller.svg-VtA2xiUP.js} +1 -1
  117. package/web/assets/{interface-edit-tool-pencil.svg-Tkm527sw.js → interface-edit-tool-pencil.svg-DDZ1Qpo3.js} +1 -1
  118. package/web/assets/{interface-favorite-award.svg-O-HQC6xP.js → interface-favorite-award.svg-C77bPJa7.js} +1 -1
  119. package/web/assets/{interface-favorite-flag.svg-DWSuqI-W.js → interface-favorite-flag.svg-DPwM9eFd.js} +1 -1
  120. package/web/assets/{interface-favorite-heart.svg-3md2synz.js → interface-favorite-heart.svg-CjHOFAtX.js} +1 -1
  121. package/web/assets/{interface-favorite-star.svg-MnNO7Wk6.js → interface-favorite-star.svg-DACH9tr3.js} +1 -1
  122. package/web/assets/{interface-favorite-stars-sparkles.svg-WKCS18Oo.js → interface-favorite-stars-sparkles.svg-BIylMQu0.js} +1 -1
  123. package/web/assets/{interface-hierarchy-flowchart.svg-KnHJ7War.js → interface-hierarchy-flowchart.svg-eaFiqkb5.js} +1 -1
  124. package/web/assets/{interface-home-house.svg-2bdYCM0o.js → interface-home-house.svg-B4ey7IZt.js} +1 -1
  125. package/web/assets/{interface-hyperlink.svg-dTQQRFwy.js → interface-hyperlink.svg-CvW9MZwK.js} +1 -1
  126. package/web/assets/{interface-lighting-brightness.svg-CwI2OM6O.js → interface-lighting-brightness.svg-w5DuskTj.js} +1 -1
  127. package/web/assets/{interface-lock-closed.svg-BcnsrWQP.js → interface-lock-closed.svg-BIZdNFIS.js} +1 -1
  128. package/web/assets/{interface-lock-open-unlock.svg-Du_CfbnO.js → interface-lock-open-unlock.svg-DS5_kBLT.js} +1 -1
  129. package/web/assets/{interface-login-key.svg-C3Hh7Lxb.js → interface-login-key.svg-BQlECtR3.js} +1 -1
  130. package/web/assets/{interface-search.svg-DRez-w7-.js → interface-search.svg-BS-x4i-8.js} +1 -1
  131. package/web/assets/{interface-setting-cog.svg-BbO7fWvj.js → interface-setting-cog.svg-D0tRRHVL.js} +1 -1
  132. package/web/assets/{interface-share-megaphone-bullhorn.svg-BbNIqS3V.js → interface-share-megaphone-bullhorn.svg-BlGAEnhw.js} +1 -1
  133. package/web/assets/{interface-share-rocket.svg-NYzb39WL.js → interface-share-rocket.svg-CLdFEyet.js} +1 -1
  134. package/web/assets/{interface-share-satellite.svg-BVbcZIy6.js → interface-share-satellite.svg-D3OkFEOt.js} +1 -1
  135. package/web/assets/{interface-share-space-ship.svg-BFY5IO9d.js → interface-share-space-ship.svg-BTe2lxrV.js} +1 -1
  136. package/web/assets/{interface-share.svg-BTd9ID7k.js → interface-share.svg-BCTLtla3.js} +1 -1
  137. package/web/assets/{interface-signal-square.svg-MjEdhTXk.js → interface-signal-square.svg-CqScSuc2.js} +1 -1
  138. package/web/assets/{interface-time-clock-circle.svg-ChSylXjE.js → interface-time-clock-circle.svg-BDG1hFZs.js} +1 -1
  139. package/web/assets/{interface-time-hour-glass.svg-BZQl9M_C.js → interface-time-hour-glass.svg-Cu59RRWV.js} +1 -1
  140. package/web/assets/{interface-users-multiple.svg-BmvFtDD2.js → interface-users-multiple.svg-hznafpHR.js} +1 -1
  141. package/web/assets/{interface-weather-moon.svg-CU_uP2aE.js → interface-weather-moon.svg-30vqXYx7.js} +1 -1
  142. package/web/assets/{javascript-CzJXS_Bo.js → javascript-XaPiNZQv.js} +1 -1
  143. package/web/assets/{jsonMode-ClLnazHL.js → jsonMode-tSmem8x1.js} +2 -2
  144. package/web/assets/{liquid-k8yO1VdQ.js → liquid-f03Ti3hW.js} +1 -1
  145. package/web/assets/{lspLanguageFeatures-BdUk3xiz.js → lspLanguageFeatures-B23AQdJe.js} +3 -3
  146. package/web/assets/{mail-chat-bubble-square.svg-UruTYt7K.js → mail-chat-bubble-square.svg-B2-pSu9j.js} +1 -1
  147. package/web/assets/{mail-send-email-paper-airplane.svg-CQ8gOMxm.js → mail-send-email-paper-airplane.svg-DwVcGr1a.js} +1 -1
  148. package/web/assets/{mail-send-envelope.svg-B8XF7xYz.js → mail-send-envelope.svg-DMbyAXYt.js} +1 -1
  149. package/web/assets/{mdx-Dpg5Mbqd.js → mdx-Bpd9DTcy.js} +1 -1
  150. package/web/assets/{minus-CM-56m8R.js → minus-a6_7dk4h.js} +2 -2
  151. package/web/assets/modal-BANEeRpn.js +1 -0
  152. package/web/assets/modal-a6Kt1dzz.js +5 -0
  153. package/web/assets/{money-cashier-receipt.svg-BGvvrVYh.js → money-cashier-receipt.svg-HlerUjGg.js} +1 -1
  154. package/web/assets/{money-currency-dollar-pay.svg-oPVgaUnC.js → money-currency-dollar-pay.svg-BrMvxswh.js} +1 -1
  155. package/web/assets/{money-graph-arrow-increase.svg-DbW43WXz.js → money-graph-arrow-increase.svg-CR9ynrN1.js} +1 -1
  156. package/web/assets/{money-graph-bar-chart-increase.svg-BecdDdvJ.js → money-graph-bar-chart-increase.svg-CLIYv9Zi.js} +1 -1
  157. package/web/assets/multiselect-CHVr6bCm.js +251 -0
  158. package/web/assets/{nature-ecology-leaf.svg-CZxwEqo2.js → nature-ecology-leaf.svg-CRFE2UOf.js} +1 -1
  159. package/web/assets/{password-CJ4ckRGW.js → password-Crt6yaCK.js} +4 -4
  160. package/web/assets/{phone-telephone.svg-U4WTbEXR.js → phone-telephone.svg-BAFjcykp.js} +1 -1
  161. package/web/assets/{plus-DvnsNNSA.js → plus-BxB6gfY6.js} +6 -6
  162. package/web/assets/process.store-BmgNhpT0.js +1 -0
  163. package/web/assets/{programming-bug.svg-D-ueh13g.js → programming-bug.svg-CaxsGXj9.js} +1 -1
  164. package/web/assets/{programming-cloud.svg-DW3eNYjS.js → programming-cloud.svg-D_-CfmBD.js} +1 -1
  165. package/web/assets/{programming-computer-database-server.svg-bBeXwbmi.js → programming-computer-database-server.svg-BP33fukT.js} +1 -1
  166. package/web/assets/{programming-computer-database.svg-DP1oJ-Xb.js → programming-computer-database.svg-4nbbFmcO.js} +1 -1
  167. package/web/assets/{programming-module-four-layout.svg-BCRfiu3A.js → programming-module-four-layout.svg-qcnfg-wb.js} +1 -1
  168. package/web/assets/{programming-module-three.svg-Cb8y-suF.js → programming-module-three.svg-CtFdkENo.js} +1 -1
  169. package/web/assets/{programming-module.svg-CCF23Kn-.js → programming-module.svg-LUuSbnoV.js} +1 -1
  170. package/web/assets/{programming-script-code.svg-D7zugBoU.js → programming-script-code.svg-ul-1-tZT.js} +1 -1
  171. package/web/assets/project-launch.store-CV2GbIs6.js +1 -0
  172. package/web/assets/project.store-B9iW5FCC.js +1 -0
  173. package/web/assets/{python-C2Xee937.js → python-rcJozlXm.js} +1 -1
  174. package/web/assets/{razor-DP11amFn.js → razor-n_pGMGP7.js} +1 -1
  175. package/web/assets/router-QurlNTcy.js +1 -0
  176. package/web/assets/settings-scope-DGxVjPdn.js +1 -0
  177. package/web/assets/settings.store-BDTiKnY0.js +1 -0
  178. package/web/assets/{shopping-cart.svg-DWikcMT4.js → shopping-cart.svg-D63t0Ee9.js} +1 -1
  179. package/web/assets/{shopping-gift-present.svg-4RQmBLlg.js → shopping-gift-present.svg-CQhZ-xkS.js} +1 -1
  180. package/web/assets/{shopping-shipping-box-parcel-package.svg-D1lBxinA.js → shopping-shipping-box-parcel-package.svg-BXvVDMs7.js} +1 -1
  181. package/web/assets/src-BCqSqqR1.js +1 -0
  182. package/web/assets/src-DG6rIcRE.js +572 -0
  183. package/web/assets/{src-Dwvd5kd0.js → src-Q8zu2fVJ.js} +14 -14
  184. package/web/assets/{tabpanel-ep3FBKze.js → tabpanel-ojMcJKcL.js} +3 -3
  185. package/web/assets/{tag-new-circle.svg-C1MFrgC6.js → tag-new-circle.svg-DUEWkCr-.js} +1 -1
  186. package/web/assets/theme-CsisqT_G.js +1 -0
  187. package/web/assets/{toggleswitch-6H_VuZ4L.js → toggleswitch-ChWnuWRp.js} +2 -2
  188. package/web/assets/{travel-map-earth-globe.svg-tCJZglOg.js → travel-map-earth-globe.svg-Bqc1W9oO.js} +1 -1
  189. package/web/assets/trpc-JF-OgMjz.js +1 -0
  190. package/web/assets/{tsMode-9MCfBuVI.js → tsMode-De5mQ_m3.js} +5 -5
  191. package/web/assets/{typescript-BPNkI37D.js → typescript-CoFf1maU.js} +1 -1
  192. package/web/assets/useAiChatDrawer-CxSowewJ.js +1 -0
  193. package/web/assets/{useCloudOrg-kMh7h7gI.js → useCloudOrg-PgHbQuMN.js} +1 -1
  194. package/web/assets/useEnvVarAutocomplete-Bi1n69eW.js +1 -0
  195. package/web/assets/{VariablesTable-DNNf7eCt.css → useEnvVarAutocomplete-DFNddwqp.css} +1 -1
  196. package/web/assets/useProjectCatalog-C8_X7ldz.js +1 -0
  197. package/web/assets/{useProjectCloudOrg-qr_xZto1.js → useProjectCloudOrg-Cw8Kpegk.js} +1 -1
  198. package/web/assets/useServiceUrlHost-DyClDWJE.js +1 -0
  199. package/web/assets/{xml-CsWY9129.js → xml-COAqiO0X.js} +1 -1
  200. package/web/assets/{yaml-CUnJQoDT.js → yaml-B5Xmo958.js} +1 -1
  201. package/web/index.html +1 -1
  202. package/agent-manager-EI7SXPN5.js +0 -9
  203. package/settings-manager-YSH7ZCLP.js +0 -9
  204. package/src-LONZKLMU.js.map +0 -1
  205. package/web/assets/AgentScalarChatInterface.vue-CElmj8LJ.js +0 -13
  206. package/web/assets/AgentTerminalPage-hk46uwat.js +0 -1
  207. package/web/assets/AiChatPage-wCWG0TXA.js +0 -1
  208. package/web/assets/AppLayout-CHxGU2pw.js +0 -1
  209. package/web/assets/AuditPage-CSRVCGZi.js +0 -1
  210. package/web/assets/CloudAccountPage-DjQdxy2v.js +0 -1
  211. package/web/assets/CloudAccountPage-UnmpE1jD.js +0 -1
  212. package/web/assets/CloudMessagingPage-jh1AWzKj.js +0 -2
  213. package/web/assets/DashboardPage-CiihNr9b.js +0 -164
  214. package/web/assets/DashboardPage-CspSBpVO.css +0 -1
  215. package/web/assets/DirectoryPickerDialog-Dy1zyHux.js +0 -1
  216. package/web/assets/EnvironmentForm-D2JDn5Zc.js +0 -108
  217. package/web/assets/EnvironmentForm-DVMc303P.css +0 -1
  218. package/web/assets/EnvironmentFormPage-BPDo_AMy.js +0 -1
  219. package/web/assets/EnvironmentListPage-BFT6nMkR.js +0 -1
  220. package/web/assets/KanbanBoardPage-6vbnqxkk.js +0 -4
  221. package/web/assets/KanbanListPage-BBLCnzN8.js +0 -1
  222. package/web/assets/LaunchProjectPage-Cznkvcvm.js +0 -1
  223. package/web/assets/LaunchServicesPage-DwkYQefD.js +0 -1
  224. package/web/assets/LogViewer-x7JfZfN8.js +0 -3
  225. package/web/assets/OrgKeyPrompt-DPWfDcID.js +0 -1
  226. package/web/assets/ProcessDetailPage-BDsM9dnQ.js +0 -1
  227. package/web/assets/RandomJobTestPage-DGA72-VM.js +0 -2
  228. package/web/assets/ScenarioEditorPage-B4zEfHEz.js +0 -14
  229. package/web/assets/SendToChatDialog-8RfesH1F.js +0 -1
  230. package/web/assets/ServiceControlsBar-DLHgd13V.js +0 -1
  231. package/web/assets/ServiceDetailPage-na_wgdlZ.js +0 -2
  232. package/web/assets/ServiceFormPage-Cn_FPvKf.js +0 -1
  233. package/web/assets/SettingsPage-QBOlzawK.js +0 -2063
  234. package/web/assets/UnlockPage-A75PjxBe.js +0 -1
  235. package/web/assets/VariablesTable-D8Oh3-1C.js +0 -1
  236. package/web/assets/VaultMigrationPage-DA9H-AhS.js +0 -1
  237. package/web/assets/VersionBadge-DNDzBQcJ.js +0 -1
  238. package/web/assets/WikiPage-DdY1dy8w.js +0 -1
  239. package/web/assets/WikiView-Td2Ice0P.js +0 -1
  240. package/web/assets/add-scalar-classes-D0W5Egzt.js +0 -387
  241. package/web/assets/autocomplete-DXp2_8rJ.js +0 -308
  242. package/web/assets/card-zbAp8JZP.js +0 -32
  243. package/web/assets/client-Cb_xJW-8.js +0 -24
  244. package/web/assets/cloud-chat.store-BA5nPaX6.js +0 -1
  245. package/web/assets/cloud-client-C_MUljS_.js +0 -1
  246. package/web/assets/cloud-session-BRyDsLxd.js +0 -1
  247. package/web/assets/cloud-session-DqTwnX4d.js +0 -2
  248. package/web/assets/column-BVUPaQkA.js +0 -907
  249. package/web/assets/interface-content-folder.svg-pxt6DqMZ.js +0 -1
  250. package/web/assets/modal-DD3RK2dR.js +0 -5
  251. package/web/assets/modal-DXywOsPE.js +0 -1
  252. package/web/assets/multiselect-Bk3EZIJC.js +0 -251
  253. package/web/assets/process.store-utLBiVI8.js +0 -1
  254. package/web/assets/project-launch.store-D0bLcuPZ.js +0 -1
  255. package/web/assets/project.store-BcKEFAKW.js +0 -1
  256. package/web/assets/router-BhS8cxIJ.js +0 -1
  257. package/web/assets/settings-scope-KsJCT82K.js +0 -1
  258. package/web/assets/settings.store-FxdXT3wT.js +0 -1
  259. package/web/assets/src-BQn5mgNu.js +0 -1
  260. package/web/assets/src-vE4VZ3D3.js +0 -572
  261. package/web/assets/theme-DAUZuThi.js +0 -1
  262. package/web/assets/trpc-DZ27KTOo.js +0 -1
  263. package/web/assets/useAiChatDrawer-tSsNrRPY.js +0 -1
  264. package/web/assets/useProjectCatalog-BkL5z9lS.js +0 -1
  265. /package/{agent-manager-EI7SXPN5.js.map → agent-manager-APY7SZ75.js.map} +0 -0
  266. /package/{chat-WMT34BXJ.js.map → chat-XSI73SXM.js.map} +0 -0
  267. /package/{chunk-D2PF2FYU.js.map → chunk-77UQ2UKW.js.map} +0 -0
  268. /package/{chunk-RIITTBK3.js.map → chunk-OGCEFBSS.js.map} +0 -0
  269. /package/{chunk-DS66SEYH.js.map → chunk-QYFLRYTR.js.map} +0 -0
  270. /package/{companion-EPINTIC7.js.map → companion-DCFBV2BV.js.map} +0 -0
  271. /package/{desktop-launcher-N7WRF3LC.js.map → desktop-launcher-Q6J2LSVP.js.map} +0 -0
  272. /package/{settings-manager-YSH7ZCLP.js.map → settings-manager-MQBUCUIO.js.map} +0 -0
  273. /package/web/assets/{abap-B8g_2xYy.js → abap-DblxFMgX.js} +0 -0
  274. /package/web/assets/{apex-Bm8w4T5A.js → apex-C_fmPlQy.js} +0 -0
  275. /package/web/assets/{azcli-BqdUW6F8.js → azcli-D73HZyav.js} +0 -0
  276. /package/web/assets/{bat-Bngf0lQU.js → bat-Br4Biw6V.js} +0 -0
  277. /package/web/assets/{bicep-DzO554JS.js → bicep-Cwg6_V-m.js} +0 -0
  278. /package/web/assets/{browser-BJX5ZrVN.js → browser-D6yPejPt.js} +0 -0
  279. /package/web/assets/{cameligo-Bcy3ohdb.js → cameligo-Dq6Izwzi.js} +0 -0
  280. /package/web/assets/{clojure-CZbiqkDV.js → clojure-U0exYVUx.js} +0 -0
  281. /package/web/assets/{coffee-CDuhyV-7.js → coffee-mPGPozSE.js} +0 -0
  282. /package/web/assets/{cpp-BklV8f4x.js → cpp-lpr_PQMA.js} +0 -0
  283. /package/web/assets/{csharp-BelR_XiC.js → csharp-saQQwY3s.js} +0 -0
  284. /package/web/assets/{csp-DUjeBS2K.js → csp-CcDpUBZN.js} +0 -0
  285. /package/web/assets/{css-CvbYbEko.js → css-D6QFYBbL.js} +0 -0
  286. /package/web/assets/{cypher-Dwrbk-SP.js → cypher-B_4KCq-w.js} +0 -0
  287. /package/web/assets/{dart-BW1E5h9O.js → dart-CgLuovz1.js} +0 -0
  288. /package/web/assets/{dockerfile-B41ilpF9.js → dockerfile-DObNIc52.js} +0 -0
  289. /package/web/assets/{ecl-BZE6Vxna.js → ecl-BpCwjSsH.js} +0 -0
  290. /package/web/assets/{elixir-CtYg0bLh.js → elixir-CebZWKus.js} +0 -0
  291. /package/web/assets/{flow9-Sgvy48_I.js → flow9-DhoDs9JD.js} +0 -0
  292. /package/web/assets/{fsharp-BzAfXfKg.js → fsharp-YDWqgr0W.js} +0 -0
  293. /package/web/assets/{go-D7oonABu.js → go-CaPX4mu5.js} +0 -0
  294. /package/web/assets/{graphql-BEN-qkl0.js → graphql-DOSo46Ed.js} +0 -0
  295. /package/web/assets/{hcl-CE0OhwCq.js → hcl-nSYpx4qj.js} +0 -0
  296. /package/web/assets/{ini-CCLtcvjA.js → ini-Ca22qQIM.js} +0 -0
  297. /package/web/assets/{java-Bao8w_gp.js → java-KrQduvTo.js} +0 -0
  298. /package/web/assets/{julia-Dr0hFYrl.js → julia-Bb2MDsY_.js} +0 -0
  299. /package/web/assets/{kotlin-Cbfu8lcM.js → kotlin-DB7e82Vg.js} +0 -0
  300. /package/web/assets/{less-BU4gEpXr.js → less-K5fiQqgY.js} +0 -0
  301. /package/web/assets/{lexon-GpBGGdTS.js → lexon-Do9EcqkA.js} +0 -0
  302. /package/web/assets/{lua-DIPKk37y.js → lua-DU9Dpzvs.js} +0 -0
  303. /package/web/assets/{m3-CSOypKGf.js → m3-pF6PmPkL.js} +0 -0
  304. /package/web/assets/{markdown-VDqAgkyM.js → markdown-BNRSTD3D.js} +0 -0
  305. /package/web/assets/{mips-BJWI6dX7.js → mips-OIXxWbNl.js} +0 -0
  306. /package/web/assets/{msdax-BLpuE5Dc.js → msdax-Blzk7oHr.js} +0 -0
  307. /package/web/assets/{mysql-ZsxiEUoY.js → mysql-CISO3r5e.js} +0 -0
  308. /package/web/assets/{objective-c-DcQa1iPc.js → objective-c-CfnC_OAj.js} +0 -0
  309. /package/web/assets/{pascal-u-hmXdyn.js → pascal-BUF-IB2S.js} +0 -0
  310. /package/web/assets/{pascaligo-DqbP-1C6.js → pascaligo-BKce2a7P.js} +0 -0
  311. /package/web/assets/{perl-CUeQpRkH.js → perl-BSNQJqG3.js} +0 -0
  312. /package/web/assets/{pgsql-CQ7FhAFN.js → pgsql-B6gnZ9Pz.js} +0 -0
  313. /package/web/assets/{php-BEf_fu3E.js → php-D3DRjlE-.js} +0 -0
  314. /package/web/assets/{pla-CXNNbT0w.js → pla-DMkpEwWz.js} +0 -0
  315. /package/web/assets/{postiats-CIXLZwPb.js → postiats-CS9vJAK8.js} +0 -0
  316. /package/web/assets/{powerquery-DnGPASFA.js → powerquery-5wdkUpGP.js} +0 -0
  317. /package/web/assets/{powershell-1Y1kqIZS.js → powershell-CFy-OLZK.js} +0 -0
  318. /package/web/assets/{protobuf-Cfo9haoG.js → protobuf-BexdMU0z.js} +0 -0
  319. /package/web/assets/{pug-BujEZqmy.js → pug-D7XxQLO5.js} +0 -0
  320. /package/web/assets/{qsharp-BL9AqNGD.js → qsharp-Cbf2FpNP.js} +0 -0
  321. /package/web/assets/{r-D0dhpGOM.js → r-DF7k9FbU.js} +0 -0
  322. /package/web/assets/{redis-BMLwD7W9.js → redis-CsS7YEaP.js} +0 -0
  323. /package/web/assets/{redshift-CkHh73og.js → redshift-ELXdujA0.js} +0 -0
  324. /package/web/assets/{restructuredtext-DZ-LF65W.js → restructuredtext-xoFIa5lj.js} +0 -0
  325. /package/web/assets/{ruby-UzPHTzc9.js → ruby-BqZs-MXO.js} +0 -0
  326. /package/web/assets/{rust-ja9NGnXZ.js → rust-Bg6ZO_et.js} +0 -0
  327. /package/web/assets/{sb-BNdOJbMY.js → sb-DiB12F6v.js} +0 -0
  328. /package/web/assets/{scala-LlhkyN6l.js → scala-DElpnKpP.js} +0 -0
  329. /package/web/assets/{scheme-BAj99YIn.js → scheme-1ahRBKOq.js} +0 -0
  330. /package/web/assets/{scss-chS-xxB3.js → scss-DEMPy3QV.js} +0 -0
  331. /package/web/assets/{shell-CcH7eYIc.js → shell-DPy86lBu.js} +0 -0
  332. /package/web/assets/{solidity-cVvnqX-K.js → solidity-BJ26fCkf.js} +0 -0
  333. /package/web/assets/{sophia-BBT-EdFw.js → sophia-BisqpnJK.js} +0 -0
  334. /package/web/assets/{sparql-DGEqOrB6.js → sparql-C7Lhhim4.js} +0 -0
  335. /package/web/assets/{sql-CcTErTxM.js → sql-BXVElqbr.js} +0 -0
  336. /package/web/assets/{st-Bjw-B4mN.js → st-C3Kk-cML.js} +0 -0
  337. /package/web/assets/{swift-Bid-7bBd.js → swift-D8IWJydR.js} +0 -0
  338. /package/web/assets/{systemverilog-CXju7Nd-.js → systemverilog-524SrI2Q.js} +0 -0
  339. /package/web/assets/{tcl-D-Dw7JFz.js → tcl-MYNTx-d-.js} +0 -0
  340. /package/web/assets/{twig-BIPbzEWT.js → twig-BAVZN0tW.js} +0 -0
  341. /package/web/assets/{typespec-UJSutGCV.js → typespec-BhgMHLJQ.js} +0 -0
  342. /package/web/assets/{uuid--pMuF47W.js → uuid-Cro0aJm3.js} +0 -0
  343. /package/web/assets/{vb-oyG_LJw0.js → vb-BLauMmY8.js} +0 -0
  344. /package/web/assets/{w3c-keyname-DtJs0qQm.js → w3c-keyname-tfhvQ9CV.js} +0 -0
  345. /package/web/assets/{wgsl-DXZ6ljB6.js → wgsl-ybvhdvmz.js} +0 -0
@@ -8,7 +8,7 @@ import {
8
8
  TraefikConfigSchema,
9
9
  WS_RECONNECT_MAX,
10
10
  WS_RECONNECT_MIN
11
- } from "./chunk-QRMG6GMX.js";
11
+ } from "./chunk-6T7R2JZR.js";
12
12
  import {
13
13
  allVaultRoots,
14
14
  env,
@@ -3024,4 +3024,4 @@ export {
3024
3024
  traefikManager,
3025
3025
  agentManager
3026
3026
  };
3027
- //# sourceMappingURL=chunk-RIITTBK3.js.map
3027
+ //# sourceMappingURL=chunk-OGCEFBSS.js.map
@@ -24,13 +24,13 @@ import {
24
24
  setProjectServices,
25
25
  setProjectVault,
26
26
  wasRead
27
- } from "./chunk-RIITTBK3.js";
27
+ } from "./chunk-OGCEFBSS.js";
28
28
  import {
29
29
  COMPANION_RELAY_CLOSE,
30
30
  COMPANION_RELAY_OPEN,
31
31
  ProjectSchema,
32
32
  extractCompanionRelay
33
- } from "./chunk-QRMG6GMX.js";
33
+ } from "./chunk-6T7R2JZR.js";
34
34
  import {
35
35
  allVaultRoots,
36
36
  ensureLocalVault,
@@ -1881,7 +1881,7 @@ async function runCompanionForTurn(conversationId) {
1881
1881
  if (!hasNew) {
1882
1882
  return trace(conversationId, `rien de neuf \xE0 relire (${messageCount} messages)`);
1883
1883
  }
1884
- const { startCliSession } = await import("./chat-WMT34BXJ.js");
1884
+ const { startCliSession } = await import("./chat-XSI73SXM.js");
1885
1885
  const companionConv = await ensureCompanionConversation(conv);
1886
1886
  const isFirstTurn = (companionConv.messages?.length ?? 0) === 0;
1887
1887
  const exchange = formatExchange(conv.messages, from);
@@ -1975,7 +1975,7 @@ async function deliverToMainConversation(conv, message) {
1975
1975
  async function attemptDelivery(conv, message) {
1976
1976
  if (await writeToLivePty(conv.id, message)) return "pty";
1977
1977
  try {
1978
- const { startCliSession } = await import("./chat-WMT34BXJ.js");
1978
+ const { startCliSession } = await import("./chat-XSI73SXM.js");
1979
1979
  await startCliSession(conv.runner, conv.id, message, { jwt: await signJwt() });
1980
1980
  return "headless";
1981
1981
  } catch (err) {
@@ -1998,7 +1998,7 @@ async function writeToLivePty(conversationId, message) {
1998
1998
  }
1999
1999
  async function companionSettings() {
2000
2000
  try {
2001
- const { settingsManager } = await import("./settings-manager-YSH7ZCLP.js");
2001
+ const { settingsManager } = await import("./settings-manager-MQBUCUIO.js");
2002
2002
  const settings = await settingsManager.getSettings();
2003
2003
  return settings.companion ?? { enabledByDefault: false };
2004
2004
  } catch {
@@ -2117,4 +2117,4 @@ export {
2117
2117
  companionSettings,
2118
2118
  initCompanion
2119
2119
  };
2120
- //# sourceMappingURL=chunk-DS66SEYH.js.map
2120
+ //# sourceMappingURL=chunk-QYFLRYTR.js.map
@@ -21,10 +21,10 @@ import {
21
21
  resetRelaunches,
22
22
  reviewWindow,
23
23
  takeRelaunchSlot
24
- } from "./chunk-DS66SEYH.js";
24
+ } from "./chunk-QYFLRYTR.js";
25
25
  import "./chunk-MD3VW4HQ.js";
26
- import "./chunk-RIITTBK3.js";
27
- import "./chunk-QRMG6GMX.js";
26
+ import "./chunk-OGCEFBSS.js";
27
+ import "./chunk-6T7R2JZR.js";
28
28
  import "./chunk-ZFELQG4B.js";
29
29
  export {
30
30
  COMPANION_SIGNATURE,
@@ -50,4 +50,4 @@ export {
50
50
  reviewWindow,
51
51
  takeRelaunchSlot
52
52
  };
53
- //# sourceMappingURL=companion-EPINTIC7.js.map
53
+ //# sourceMappingURL=companion-DCFBV2BV.js.map
@@ -2,7 +2,7 @@ import {
2
2
  deriveLauncherIdentity,
3
3
  launcherIdFromName,
4
4
  slugifyLauncherName
5
- } from "./chunk-QRMG6GMX.js";
5
+ } from "./chunk-6T7R2JZR.js";
6
6
 
7
7
  // src/desktop-launcher.ts
8
8
  import { mkdir, writeFile, rm, copyFile, access } from "fs/promises";
@@ -278,4 +278,4 @@ export {
278
278
  vbsQuote,
279
279
  windowsVbsScript
280
280
  };
281
- //# sourceMappingURL=desktop-launcher-N7WRF3LC.js.map
281
+ //# sourceMappingURL=desktop-launcher-Q6J2LSVP.js.map
package/index.js CHANGED
@@ -84,7 +84,7 @@ for (const { flag, env: key } of ENV_FLAGS) {
84
84
  if (args.includes("--debug")) process.env["RUNEYA_DEBUG"] = "1";
85
85
  var subCommand = args[0];
86
86
  if (subCommand === "install-desktop" || subCommand === "uninstall-desktop") {
87
- const { installDesktopLauncher, uninstallDesktopLauncher, deriveIdentity } = await import("./desktop-launcher-N7WRF3LC.js");
87
+ const { installDesktopLauncher, uninstallDesktopLauncher, deriveIdentity } = await import("./desktop-launcher-Q6J2LSVP.js");
88
88
  const { shouldRunWizard, runInstallWizard, printInstallReport, printUninstallReport } = await import("./desktop-wizard-4CYANX2O.js");
89
89
  const { parsePort } = await import("./free-port-565NMFIZ.js");
90
90
  const rest = args.slice(1);
@@ -135,7 +135,7 @@ if (subCommand === "install-desktop" || subCommand === "uninstall-desktop") {
135
135
  }
136
136
  }
137
137
  if (subCommand === "instances") {
138
- const { listInstances, killInstance, restartInstance } = await import("./src-LONZKLMU.js");
138
+ const { listInstances, killInstance, restartInstance } = await import("./src-NH6Z6SKR.js");
139
139
  const { runInstancesCommand } = await import("./instances-command-KZ5UGXOR.js");
140
140
  process.exit(await runInstancesCommand(args.slice(1), {
141
141
  listInstances,
@@ -299,7 +299,7 @@ async function main() {
299
299
  ensureNodeBinOnPath();
300
300
  await ensureUserBinsOnPath();
301
301
  if (!isPullEnv) stampConsole();
302
- const { createLocalServer, pullEnv, PullEnvError, registerInstance, registerCliLocation } = await import("./src-LONZKLMU.js");
302
+ const { createLocalServer, pullEnv, PullEnvError, registerInstance, registerCliLocation } = await import("./src-NH6Z6SKR.js");
303
303
  registerCliLocation({ execPath: process.execPath, cliEntry: fileURLToPath(import.meta.url) });
304
304
  if (isPullEnv) {
305
305
  if (!serviceArg) {
@@ -406,7 +406,7 @@ async function main() {
406
406
  networkInfo,
407
407
  setLanMode,
408
408
  resolveTrayIcon
409
- } = await import("./src-LONZKLMU.js");
409
+ } = await import("./src-NH6Z6SKR.js");
410
410
  tray = await startInstanceTray({
411
411
  info: { cwd: process.cwd(), port, version, url: appUrl },
412
412
  assetsDir: join(__dirname, "assets"),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@runeya/runeya",
3
- "version": "2.0.108",
3
+ "version": "2.0.110",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "runeya": "./index.js"
@@ -0,0 +1,9 @@
1
+ import {
2
+ settingsManager
3
+ } from "./chunk-77UQ2UKW.js";
4
+ import "./chunk-6T7R2JZR.js";
5
+ import "./chunk-ZFELQG4B.js";
6
+ export {
7
+ settingsManager
8
+ };
9
+ //# sourceMappingURL=settings-manager-MQBUCUIO.js.map
@@ -63,7 +63,7 @@ import {
63
63
  soleAccountScope,
64
64
  startCliSession,
65
65
  vaultOfProject
66
- } from "./chunk-4SJCPFGK.js";
66
+ } from "./chunk-N46G7MQW.js";
67
67
  import {
68
68
  resolveCliInvocation,
69
69
  whichCommand
@@ -86,7 +86,7 @@ import {
86
86
  stopClaudeTranscriptWatcher,
87
87
  stopCodexTranscriptWatcher,
88
88
  verifyJwt
89
- } from "./chunk-DS66SEYH.js";
89
+ } from "./chunk-QYFLRYTR.js";
90
90
  import "./chunk-MD3VW4HQ.js";
91
91
  import {
92
92
  agentManager,
@@ -125,10 +125,10 @@ import {
125
125
  stableEncryptValue,
126
126
  traefikManager,
127
127
  unregisterInstance
128
- } from "./chunk-RIITTBK3.js";
128
+ } from "./chunk-OGCEFBSS.js";
129
129
  import {
130
130
  settingsManager
131
- } from "./chunk-D2PF2FYU.js";
131
+ } from "./chunk-77UQ2UKW.js";
132
132
  import {
133
133
  AGENT_LONG_FETCH_TIMEOUT,
134
134
  AGENT_STOP_FETCH_TIMEOUT,
@@ -152,13 +152,16 @@ import {
152
152
  UpdateEnvironmentSchema,
153
153
  VariableOverrideSchema,
154
154
  VariableSchema,
155
+ ambiguousServiceSlugs,
156
+ crossServiceSlugsIn,
155
157
  deriveLauncherIdentity,
156
158
  getCollection,
157
159
  nativeParsers,
158
160
  primaryServiceLink,
159
161
  readEntity,
162
+ serviceSlug,
160
163
  writeEntity
161
- } from "./chunk-QRMG6GMX.js";
164
+ } from "./chunk-6T7R2JZR.js";
162
165
  import {
163
166
  env,
164
167
  forgetOrgLogo,
@@ -767,6 +770,54 @@ async function sealUnopenedOrgVaults() {
767
770
  return sealed;
768
771
  }
769
772
 
773
+ // ../server/src/services/service-graph.ts
774
+ function addKey(buckets, from, target, key) {
775
+ const id = `${from}\0${target}`;
776
+ const bucket = buckets.get(id) ?? { from, target, keys: /* @__PURE__ */ new Set() };
777
+ bucket.keys.add(key);
778
+ buckets.set(id, bucket);
779
+ }
780
+ function buildServiceGraph(input) {
781
+ const ambiguous = ambiguousServiceSlugs(input.services.map((s) => s.name));
782
+ const nodes = input.services.map((service) => {
783
+ const slug = serviceSlug(service.name);
784
+ return {
785
+ id: service.id,
786
+ name: service.name,
787
+ slug,
788
+ ambiguousSlug: ambiguous.has(slug)
789
+ };
790
+ });
791
+ const bySlug = /* @__PURE__ */ new Map();
792
+ for (const node of nodes) {
793
+ if (node.slug && !node.ambiguousSlug) bySlug.set(node.slug, node.id);
794
+ }
795
+ const edgeBuckets = /* @__PURE__ */ new Map();
796
+ const danglingBuckets = /* @__PURE__ */ new Map();
797
+ for (const service of input.services) {
798
+ const env2 = input.envByServiceId[service.id] ?? {};
799
+ for (const [key, value] of Object.entries(env2)) {
800
+ for (const slug of crossServiceSlugsIn(value)) {
801
+ const target = bySlug.get(slug);
802
+ if (target === service.id) continue;
803
+ if (target) addKey(edgeBuckets, service.id, target, key);
804
+ else addKey(danglingBuckets, service.id, slug, key);
805
+ }
806
+ }
807
+ }
808
+ const edges = [...edgeBuckets.values()].map((b) => ({
809
+ from: b.from,
810
+ to: b.target,
811
+ keys: [...b.keys].sort()
812
+ }));
813
+ const dangling = [...danglingBuckets.values()].map((b) => ({
814
+ from: b.from,
815
+ slug: b.target,
816
+ keys: [...b.keys].sort()
817
+ }));
818
+ return { nodes, edges, dangling };
819
+ }
820
+
770
821
  // ../server/src/trpc/routers/project.ts
771
822
  async function assertReadable(orgId) {
772
823
  if (!orgId) return;
@@ -1021,6 +1072,55 @@ var projectRouter = router({
1021
1072
  setCurrentProject(input ? { id: input.id, orgId: input.orgId } : null);
1022
1073
  return { ok: true };
1023
1074
  }),
1075
+ /**
1076
+ * Le graphe des dépendances du projet : qui a besoin de qui.
1077
+ *
1078
+ * Les arêtes ne sont pas déclarées, elles se lisent — une variable de A qui
1079
+ * cite `{{services.<slug-de-B>.PORT}}` EST la dépendance, celle-là même que
1080
+ * l'interpolation résout au déploiement. Rien à tenir à jour à côté, donc
1081
+ * rien qui puisse mentir.
1082
+ *
1083
+ * Seules les CLÉS des variables sortent d'ici. Les valeurs résolues portent
1084
+ * des secrets déchiffrés : elles servent à détecter la référence, et
1085
+ * s'arrêtent là.
1086
+ */
1087
+ graph: protectedProcedure.input(z4.object({
1088
+ id: z4.string().min(1).max(128),
1089
+ orgId: z4.string().max(128).nullable().optional()
1090
+ })).query(async ({ ctx, input }) => {
1091
+ const project = await projectStore.get(input);
1092
+ if (!project) {
1093
+ throw new TRPCError2({ code: "NOT_FOUND", message: `Project ${input.id} not found` });
1094
+ }
1095
+ await assertReadable(project.orgId);
1096
+ const allowed = getAllowedServiceIds(ctx);
1097
+ const services = (await Promise.all(project.serviceIds.map((sid) => serviceStore.get(sid)))).filter((s) => s !== null);
1098
+ const envByServiceId = {};
1099
+ if (project.activeEnvironmentId) {
1100
+ const activeEnvironmentId = project.activeEnvironmentId;
1101
+ await Promise.all(services.map(async (service) => {
1102
+ try {
1103
+ const resolved = await environmentResolver.resolveForService({
1104
+ serviceId: service.id,
1105
+ activeEnvironmentId
1106
+ });
1107
+ envByServiceId[service.id] = resolved.env;
1108
+ } catch (err) {
1109
+ console.error("[project-router] Failed to resolve variables for graph, service", service.id + ":", err.message);
1110
+ }
1111
+ }));
1112
+ }
1113
+ const graph = buildServiceGraph({
1114
+ services: services.map((s) => ({ id: s.id, name: s.name })),
1115
+ envByServiceId
1116
+ });
1117
+ if (allowed === null) return graph;
1118
+ return {
1119
+ nodes: graph.nodes.filter((n) => allowed.has(n.id)),
1120
+ edges: graph.edges.filter((e) => allowed.has(e.from) && allowed.has(e.to)),
1121
+ dangling: graph.dangling.filter((d) => allowed.has(d.from))
1122
+ };
1123
+ }),
1024
1124
  localPaths: protectedProcedure.query(async () => {
1025
1125
  return projectPathStore.all();
1026
1126
  }),
@@ -10249,7 +10349,7 @@ async function createLocalServer() {
10249
10349
  ]);
10250
10350
  console.log("[server] Shutdown complete");
10251
10351
  };
10252
- const { initCompanion } = await import("./companion-EPINTIC7.js");
10352
+ const { initCompanion } = await import("./companion-DCFBV2BV.js");
10253
10353
  initCompanion();
10254
10354
  return { app, server, wss, shutdown };
10255
10355
  }
@@ -10696,4 +10796,4 @@ export {
10696
10796
  startProcess,
10697
10797
  stopProcess
10698
10798
  };
10699
- //# sourceMappingURL=src-LONZKLMU.js.map
10799
+ //# sourceMappingURL=src-NH6Z6SKR.js.map