unspaghettit 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (772) hide show
  1. package/README.md +56 -18
  2. package/build/client/_app/immutable/assets/0.DCOD5ne_.css +1 -0
  3. package/build/client/_app/immutable/assets/0.DCOD5ne_.css.br +0 -0
  4. package/build/client/_app/immutable/assets/0.DCOD5ne_.css.gz +0 -0
  5. package/build/client/_app/immutable/assets/12.nv0I59TU.css.gz +0 -0
  6. package/build/client/_app/immutable/assets/3.B3akUL9A.css.gz +0 -0
  7. package/build/client/_app/immutable/assets/BehaviorGraph.Bk0xQRZk.css +1 -0
  8. package/build/client/_app/immutable/assets/BehaviorGraph.Bk0xQRZk.css.br +0 -0
  9. package/build/client/_app/immutable/assets/BehaviorGraph.Bk0xQRZk.css.gz +0 -0
  10. package/build/client/_app/immutable/chunks/B3vnQs252.js +1 -0
  11. package/build/client/_app/immutable/chunks/B3vnQs252.js.br +0 -0
  12. package/build/client/_app/immutable/chunks/B3vnQs252.js.gz +0 -0
  13. package/build/client/_app/immutable/chunks/{CxyLMlpt2.js → BANF9BhQ2.js} +1 -1
  14. package/build/client/_app/immutable/chunks/BANF9BhQ2.js.br +0 -0
  15. package/build/client/_app/immutable/chunks/BANF9BhQ2.js.gz +0 -0
  16. package/build/client/_app/immutable/chunks/BJdTO_n6.js +1 -0
  17. package/build/client/_app/immutable/chunks/BJdTO_n6.js.br +0 -0
  18. package/build/client/_app/immutable/chunks/BJdTO_n6.js.gz +0 -0
  19. package/build/client/_app/immutable/chunks/BPl9BITm.js.gz +0 -0
  20. package/build/client/_app/immutable/chunks/BQ9GodWX2.js.gz +0 -0
  21. package/build/client/_app/immutable/chunks/Bcyn5YUg.js +4 -0
  22. package/build/client/_app/immutable/chunks/Bcyn5YUg.js.br +0 -0
  23. package/build/client/_app/immutable/chunks/Bcyn5YUg.js.gz +0 -0
  24. package/build/client/_app/immutable/chunks/Bfc9rQXP.js +1 -0
  25. package/build/client/_app/immutable/chunks/Bfc9rQXP.js.br +0 -0
  26. package/build/client/_app/immutable/chunks/Bfc9rQXP.js.gz +0 -0
  27. package/build/client/_app/immutable/chunks/{BfMYiIUi.js → BjxqhpPG.js} +1 -1
  28. package/build/client/_app/immutable/chunks/BjxqhpPG.js.br +0 -0
  29. package/build/client/_app/immutable/chunks/BjxqhpPG.js.gz +0 -0
  30. package/build/client/_app/immutable/chunks/ByaoVvNB.js +1 -0
  31. package/build/client/_app/immutable/chunks/ByaoVvNB.js.br +0 -0
  32. package/build/client/_app/immutable/chunks/ByaoVvNB.js.gz +0 -0
  33. package/build/client/_app/immutable/chunks/BzLd0mTH.js.gz +0 -0
  34. package/build/client/_app/immutable/chunks/C8b3IMj8.js +1 -0
  35. package/build/client/_app/immutable/chunks/C8b3IMj8.js.br +0 -0
  36. package/build/client/_app/immutable/chunks/C8b3IMj8.js.gz +0 -0
  37. package/build/client/_app/immutable/chunks/CXvvf4uQ.js +1 -0
  38. package/build/client/_app/immutable/chunks/CXvvf4uQ.js.br +0 -0
  39. package/build/client/_app/immutable/chunks/CXvvf4uQ.js.gz +0 -0
  40. package/build/client/_app/immutable/chunks/Cl7Z3e6-.js.gz +0 -0
  41. package/build/client/_app/immutable/chunks/ClC4qR7W2.js +2 -0
  42. package/build/client/_app/immutable/chunks/ClC4qR7W2.js.br +0 -0
  43. package/build/client/_app/immutable/chunks/ClC4qR7W2.js.gz +0 -0
  44. package/build/client/_app/immutable/chunks/CuGlh1c2.js +1 -0
  45. package/build/client/_app/immutable/chunks/CuGlh1c2.js.br +0 -0
  46. package/build/client/_app/immutable/chunks/CuGlh1c2.js.gz +0 -0
  47. package/build/client/_app/immutable/chunks/CwzIdrQR.js +1 -0
  48. package/build/client/_app/immutable/chunks/CwzIdrQR.js.br +0 -0
  49. package/build/client/_app/immutable/chunks/CwzIdrQR.js.gz +0 -0
  50. package/build/client/_app/immutable/chunks/D5speDV82.js +908 -0
  51. package/build/client/_app/immutable/chunks/D5speDV82.js.br +0 -0
  52. package/build/client/_app/immutable/chunks/D5speDV82.js.gz +0 -0
  53. package/build/client/_app/immutable/chunks/D64sGJRN.js +1 -0
  54. package/build/client/_app/immutable/chunks/D64sGJRN.js.br +0 -0
  55. package/build/client/_app/immutable/chunks/D64sGJRN.js.gz +0 -0
  56. package/build/client/_app/immutable/chunks/DNaA4QRO2.js +1 -0
  57. package/build/client/_app/immutable/chunks/DNaA4QRO2.js.br +0 -0
  58. package/build/client/_app/immutable/chunks/DNaA4QRO2.js.gz +0 -0
  59. package/build/client/_app/immutable/chunks/Da59TXPe.js +1 -0
  60. package/build/client/_app/immutable/chunks/Da59TXPe.js.br +2 -0
  61. package/build/client/_app/immutable/chunks/Da59TXPe.js.gz +0 -0
  62. package/build/client/_app/immutable/chunks/DhTiE3j02.js +2 -0
  63. package/build/client/_app/immutable/chunks/DhTiE3j02.js.br +0 -0
  64. package/build/client/_app/immutable/chunks/DhTiE3j02.js.gz +0 -0
  65. package/build/client/_app/immutable/chunks/Dhqg7r_2.js.gz +0 -0
  66. package/build/client/_app/immutable/chunks/DmyaDy4d2.js +1 -0
  67. package/build/client/_app/immutable/chunks/DmyaDy4d2.js.br +0 -0
  68. package/build/client/_app/immutable/chunks/DmyaDy4d2.js.gz +0 -0
  69. package/build/client/_app/immutable/chunks/DryaQyjN2.js +1 -0
  70. package/build/client/_app/immutable/chunks/DryaQyjN2.js.br +0 -0
  71. package/build/client/_app/immutable/chunks/DryaQyjN2.js.gz +0 -0
  72. package/build/client/_app/immutable/chunks/DtK8qK5Q2.js +1 -0
  73. package/build/client/_app/immutable/chunks/DtK8qK5Q2.js.br +0 -0
  74. package/build/client/_app/immutable/chunks/DtK8qK5Q2.js.gz +0 -0
  75. package/build/client/_app/immutable/chunks/DtblIi6X2.js +1 -0
  76. package/build/client/_app/immutable/chunks/DtblIi6X2.js.br +1 -0
  77. package/build/client/_app/immutable/chunks/DtblIi6X2.js.gz +0 -0
  78. package/build/client/_app/immutable/chunks/UkzDDeO42.js +1 -0
  79. package/build/client/_app/immutable/chunks/UkzDDeO42.js.br +0 -0
  80. package/build/client/_app/immutable/chunks/UkzDDeO42.js.gz +0 -0
  81. package/build/client/_app/immutable/chunks/Vu8LzrwP2.js +1 -0
  82. package/build/client/_app/immutable/chunks/Vu8LzrwP2.js.br +0 -0
  83. package/build/client/_app/immutable/chunks/Vu8LzrwP2.js.gz +0 -0
  84. package/build/client/_app/immutable/chunks/_b612aVb.js +1 -0
  85. package/build/client/_app/immutable/chunks/_b612aVb.js.br +0 -0
  86. package/build/client/_app/immutable/chunks/_b612aVb.js.gz +0 -0
  87. package/build/client/_app/immutable/chunks/aNMRV4sP2.js.gz +0 -0
  88. package/build/client/_app/immutable/chunks/cMamJTsF.js.gz +0 -0
  89. package/build/client/_app/immutable/chunks/ib21i2T_.js.gz +0 -0
  90. package/build/client/_app/immutable/chunks/kNaey6uv.js.gz +0 -0
  91. package/build/client/_app/immutable/chunks/oVMDLirx.js +1 -0
  92. package/build/client/_app/immutable/chunks/oVMDLirx.js.br +0 -0
  93. package/build/client/_app/immutable/chunks/oVMDLirx.js.gz +0 -0
  94. package/build/client/_app/immutable/chunks/olAc024e.js +1 -0
  95. package/build/client/_app/immutable/chunks/olAc024e.js.br +0 -0
  96. package/build/client/_app/immutable/chunks/olAc024e.js.gz +0 -0
  97. package/build/client/_app/immutable/chunks/suTxxv1t.js.gz +0 -0
  98. package/build/client/_app/immutable/chunks/wXIHzLMQ2.js +1 -0
  99. package/build/client/_app/immutable/chunks/wXIHzLMQ2.js.br +0 -0
  100. package/build/client/_app/immutable/chunks/wXIHzLMQ2.js.gz +0 -0
  101. package/build/client/_app/immutable/chunks/wrqalH0a.js +1 -0
  102. package/build/client/_app/immutable/chunks/wrqalH0a.js.br +0 -0
  103. package/build/client/_app/immutable/chunks/wrqalH0a.js.gz +0 -0
  104. package/build/client/_app/immutable/chunks/x60Tn5kT.js +1 -0
  105. package/build/client/_app/immutable/chunks/x60Tn5kT.js.br +0 -0
  106. package/build/client/_app/immutable/chunks/x60Tn5kT.js.gz +0 -0
  107. package/build/client/_app/immutable/chunks/xihTtKlq.js.gz +0 -0
  108. package/build/client/_app/immutable/chunks/{BOrLmFwJ.js → yShDxCNj.js} +1 -1
  109. package/build/client/_app/immutable/chunks/yShDxCNj.js.br +2 -0
  110. package/build/client/_app/immutable/chunks/yShDxCNj.js.gz +0 -0
  111. package/build/client/_app/immutable/entry/app.Etd-exTb.js +2 -0
  112. package/build/client/_app/immutable/entry/app.Etd-exTb.js.br +0 -0
  113. package/build/client/_app/immutable/entry/app.Etd-exTb.js.gz +0 -0
  114. package/build/client/_app/immutable/entry/start.DY2B3u4g.js +1 -0
  115. package/build/client/_app/immutable/entry/start.DY2B3u4g.js.br +0 -0
  116. package/build/client/_app/immutable/entry/start.DY2B3u4g.js.gz +0 -0
  117. package/build/client/_app/immutable/nodes/0.tKfYV3__.js +8 -0
  118. package/build/client/_app/immutable/nodes/0.tKfYV3__.js.br +0 -0
  119. package/build/client/_app/immutable/nodes/0.tKfYV3__.js.gz +0 -0
  120. package/build/client/_app/immutable/nodes/{1.KYdA6ppX.js → 1.CER5ICKt.js} +1 -1
  121. package/build/client/_app/immutable/nodes/1.CER5ICKt.js.br +1 -0
  122. package/build/client/_app/immutable/nodes/1.CER5ICKt.js.gz +0 -0
  123. package/build/client/_app/immutable/nodes/10.rT7cD8kX.js +1 -0
  124. package/build/client/_app/immutable/nodes/10.rT7cD8kX.js.br +0 -0
  125. package/build/client/_app/immutable/nodes/10.rT7cD8kX.js.gz +0 -0
  126. package/build/client/_app/immutable/nodes/11.BAnV_Y5Y.js +2 -0
  127. package/build/client/_app/immutable/nodes/11.BAnV_Y5Y.js.br +0 -0
  128. package/build/client/_app/immutable/nodes/11.BAnV_Y5Y.js.gz +0 -0
  129. package/build/client/_app/immutable/nodes/{9.CMW6a2Lg.js → 12.DCTRFMqo.js} +4 -3
  130. package/build/client/_app/immutable/nodes/12.DCTRFMqo.js.br +0 -0
  131. package/build/client/_app/immutable/nodes/12.DCTRFMqo.js.gz +0 -0
  132. package/build/client/_app/immutable/nodes/{2.DBz20KgG.js → 2.CF488WWF.js} +1 -1
  133. package/build/client/_app/immutable/nodes/2.CF488WWF.js.br +0 -0
  134. package/build/client/_app/immutable/nodes/2.CF488WWF.js.gz +0 -0
  135. package/build/client/_app/immutable/nodes/3.CP7CPPVH.js +1 -0
  136. package/build/client/_app/immutable/nodes/3.CP7CPPVH.js.br +0 -0
  137. package/build/client/_app/immutable/nodes/3.CP7CPPVH.js.gz +0 -0
  138. package/build/client/_app/immutable/nodes/4.D1bxCSiM.js +3 -0
  139. package/build/client/_app/immutable/nodes/4.D1bxCSiM.js.br +0 -0
  140. package/build/client/_app/immutable/nodes/4.D1bxCSiM.js.gz +0 -0
  141. package/build/client/_app/immutable/nodes/5.D6jZgh9y.js +48 -0
  142. package/build/client/_app/immutable/nodes/5.D6jZgh9y.js.br +0 -0
  143. package/build/client/_app/immutable/nodes/5.D6jZgh9y.js.gz +0 -0
  144. package/build/client/_app/immutable/nodes/6.BrBFUA0s.js +1 -0
  145. package/build/client/_app/immutable/nodes/6.BrBFUA0s.js.br +0 -0
  146. package/build/client/_app/immutable/nodes/6.BrBFUA0s.js.gz +0 -0
  147. package/build/client/_app/immutable/nodes/7.pajo8MfM.js +3 -0
  148. package/build/client/_app/immutable/nodes/7.pajo8MfM.js.br +0 -0
  149. package/build/client/_app/immutable/nodes/7.pajo8MfM.js.gz +0 -0
  150. package/build/client/_app/immutable/nodes/8.Cc80_Igi.js +5 -0
  151. package/build/client/_app/immutable/nodes/8.Cc80_Igi.js.br +0 -0
  152. package/build/client/_app/immutable/nodes/8.Cc80_Igi.js.gz +0 -0
  153. package/build/client/_app/immutable/nodes/{7.CemgNJfw.js → 9.D72NaL3l.js} +1 -1
  154. package/build/client/_app/immutable/nodes/9.D72NaL3l.js.br +1 -0
  155. package/build/client/_app/immutable/nodes/9.D72NaL3l.js.gz +0 -0
  156. package/build/client/_app/version.json +1 -1
  157. package/build/client/_app/version.json.br +0 -0
  158. package/build/client/_app/version.json.gz +0 -0
  159. package/build/client/lyriks_logo.svg +148 -0
  160. package/build/client/lyriks_logo.svg.br +0 -0
  161. package/build/client/lyriks_logo.svg.gz +0 -0
  162. package/build/server/chunks/0-8YZc572z.js +15 -0
  163. package/build/server/chunks/0-8YZc572z.js.map +1 -0
  164. package/build/server/chunks/1-DxkfSJLu.js +9 -0
  165. package/build/server/chunks/{1-DPpKAKXV.js.map → 1-DxkfSJLu.js.map} +1 -1
  166. package/build/server/chunks/10-DkObdGtU.js +9 -0
  167. package/build/server/chunks/10-DkObdGtU.js.map +1 -0
  168. package/build/server/chunks/11-DL94HxpZ.js +9 -0
  169. package/build/server/chunks/11-DL94HxpZ.js.map +1 -0
  170. package/build/server/chunks/12-CI74sCkt.js +9 -0
  171. package/build/server/chunks/12-CI74sCkt.js.map +1 -0
  172. package/build/server/chunks/2-qhWwQ4eL.js +9 -0
  173. package/build/server/chunks/2-qhWwQ4eL.js.map +1 -0
  174. package/build/server/chunks/3-CzoZtSTp.js +16 -0
  175. package/build/server/chunks/3-CzoZtSTp.js.map +1 -0
  176. package/build/server/chunks/4-CDa9DBsh.js +16 -0
  177. package/build/server/chunks/4-CDa9DBsh.js.map +1 -0
  178. package/build/server/chunks/5-qD2xxOrq.js +9 -0
  179. package/build/server/chunks/5-qD2xxOrq.js.map +1 -0
  180. package/build/server/chunks/6-B4mWzvDn.js +9 -0
  181. package/build/server/chunks/6-B4mWzvDn.js.map +1 -0
  182. package/build/server/chunks/7-zExv-fTN.js +9 -0
  183. package/build/server/chunks/7-zExv-fTN.js.map +1 -0
  184. package/build/server/chunks/8-BVrGdQg4.js +9 -0
  185. package/build/server/chunks/{6-QQ7r8Rd5.js.map → 8-BVrGdQg4.js.map} +1 -1
  186. package/build/server/chunks/9-BnZLRMYA.js +9 -0
  187. package/build/server/chunks/9-BnZLRMYA.js.map +1 -0
  188. package/build/server/chunks/BehaviorGraph-C-9z37Sm.js +788 -0
  189. package/build/server/chunks/BehaviorGraph-C-9z37Sm.js.map +1 -0
  190. package/build/server/chunks/Clock-BfMWQpmJ.js +5 -0
  191. package/build/server/chunks/Clock-BfMWQpmJ.js.map +1 -0
  192. package/build/server/chunks/DeleteDomain-BvHEgAyp.js +24 -0
  193. package/build/server/chunks/DeleteDomain-BvHEgAyp.js.map +1 -0
  194. package/build/server/chunks/{FeatureValidator-B8qEjAUW.js → DeleteFeature-DnK8sBJI.js} +142 -77
  195. package/build/server/chunks/DeleteFeature-DnK8sBJI.js.map +1 -0
  196. package/build/server/chunks/DeleteProject-BXZcehHZ.js +41 -0
  197. package/build/server/chunks/DeleteProject-BXZcehHZ.js.map +1 -0
  198. package/build/server/chunks/Effect-BJtLR-6l.js +46 -0
  199. package/build/server/chunks/Effect-BJtLR-6l.js.map +1 -0
  200. package/build/server/chunks/{FeatureCard-BQOY6gJQ.js → FeatureCard-Bb50FEfp.js} +4 -4
  201. package/build/server/chunks/{FeatureCard-BQOY6gJQ.js.map → FeatureCard-Bb50FEfp.js.map} +1 -1
  202. package/build/server/chunks/{FeatureJson-Bv-qiOSf.js → FeatureJson-DYvMEAub.js} +2 -2
  203. package/build/server/chunks/{FeatureJson-Bv-qiOSf.js.map → FeatureJson-DYvMEAub.js.map} +1 -1
  204. package/build/server/chunks/{FeatureTransforms-UWDHmWEg.js → FeatureTransforms-B0aI_CJD.js} +10 -3
  205. package/build/server/chunks/FeatureTransforms-B0aI_CJD.js.map +1 -0
  206. package/build/server/chunks/{ManageTagsDialog-DBxA3tM2.js → ManageTagsDialog-D5xbAVNB.js} +5 -5
  207. package/build/server/chunks/ManageTagsDialog-D5xbAVNB.js.map +1 -0
  208. package/build/server/chunks/{ProgressBar-CfhccQ83.js → ProgressBar-CUC2EZqG.js} +3 -3
  209. package/build/server/chunks/ProgressBar-CUC2EZqG.js.map +1 -0
  210. package/build/server/chunks/{ProjectsIndex-CoDrvRya.js → ProjectsIndex-FgIu9dBp.js} +135 -14
  211. package/build/server/chunks/ProjectsIndex-FgIu9dBp.js.map +1 -0
  212. package/build/server/chunks/{RenameTag-BuWLMl1m.js → RenameTag-DWIIR4Bx.js} +3 -6
  213. package/build/server/chunks/RenameTag-DWIIR4Bx.js.map +1 -0
  214. package/build/server/chunks/ScenarioApplier-YPKECfZe.js +55 -0
  215. package/build/server/chunks/ScenarioApplier-YPKECfZe.js.map +1 -0
  216. package/build/server/chunks/SimulatorEngine-DM1F9nCO.js +1391 -0
  217. package/build/server/chunks/SimulatorEngine-DM1F9nCO.js.map +1 -0
  218. package/build/server/chunks/StateValue-BBjWox8f.js +105 -0
  219. package/build/server/chunks/StateValue-BBjWox8f.js.map +1 -0
  220. package/build/server/chunks/{TagDotStrip-B1XQ0m0Y.js → TagDotStrip-0rn-IJVE.js} +4 -4
  221. package/build/server/chunks/TagDotStrip-0rn-IJVE.js.map +1 -0
  222. package/build/server/chunks/{TagFilterSelect-DbO0Qduh.js → TagFilterSelect-Dbu-7Dg4.js} +5 -5
  223. package/build/server/chunks/{TagFilterSelect-DbO0Qduh.js.map → TagFilterSelect-Dbu-7Dg4.js.map} +1 -1
  224. package/build/server/chunks/{TagPalette-CtMNYCmu.js → TagPalette-CpdTiC_7.js} +101 -9
  225. package/build/server/chunks/TagPalette-CpdTiC_7.js.map +1 -0
  226. package/build/server/chunks/TransitionCatalog-CYXUANy6.js +271 -0
  227. package/build/server/chunks/TransitionCatalog-CYXUANy6.js.map +1 -0
  228. package/build/server/chunks/_layout.svelte-pSSG85WT.js +1342 -0
  229. package/build/server/chunks/_layout.svelte-pSSG85WT.js.map +1 -0
  230. package/build/server/chunks/{_page.svelte-BKTveFAj.js → _page.svelte-BNH3szkk.js} +22 -17
  231. package/build/server/chunks/{_page.svelte-BKTveFAj.js.map → _page.svelte-BNH3szkk.js.map} +1 -1
  232. package/build/server/chunks/_page.svelte-BcuGvUt1.js +37 -0
  233. package/build/server/chunks/{_page.svelte-B7hT3P8E.js.map → _page.svelte-BcuGvUt1.js.map} +1 -1
  234. package/build/server/chunks/_page.svelte-BoOMG5Y0.js +37 -0
  235. package/build/server/chunks/{_page.svelte-De508ek8.js.map → _page.svelte-BoOMG5Y0.js.map} +1 -1
  236. package/build/server/chunks/{_page.svelte-BqSC-1vK.js → _page.svelte-C4PRh_wP.js} +104 -54
  237. package/build/server/chunks/_page.svelte-C4PRh_wP.js.map +1 -0
  238. package/build/server/chunks/_page.svelte-Cqn34NXy.js +74 -0
  239. package/build/server/chunks/_page.svelte-Cqn34NXy.js.map +1 -0
  240. package/build/server/chunks/{_page.svelte-B1s7jxaQ.js → _page.svelte-DSCeOGv7.js} +15 -10
  241. package/build/server/chunks/_page.svelte-DSCeOGv7.js.map +1 -0
  242. package/build/server/chunks/_page.svelte-DqWdGt48.js +182 -0
  243. package/build/server/chunks/_page.svelte-DqWdGt48.js.map +1 -0
  244. package/build/server/chunks/_page.svelte-DsQHSEl4.js +49 -0
  245. package/build/server/chunks/_page.svelte-DsQHSEl4.js.map +1 -0
  246. package/build/server/chunks/{_page.svelte-BKKCa9H5.js → _page.svelte-Uioz8hsG.js} +18 -11
  247. package/build/server/chunks/{_page.svelte-BKKCa9H5.js.map → _page.svelte-Uioz8hsG.js.map} +1 -1
  248. package/build/server/chunks/{_page.svelte-Zf9H4KOP.js → _page.svelte-p38jot9e.js} +81 -478
  249. package/build/server/chunks/_page.svelte-p38jot9e.js.map +1 -0
  250. package/build/server/chunks/{_page.svelte-BtI2zZ_Z.js → _page.svelte-yN5kzgJ9.js} +251 -447
  251. package/build/server/chunks/_page.svelte-yN5kzgJ9.js.map +1 -0
  252. package/build/server/chunks/{_server.ts-DsbbVoOn.js → _server.ts-1CtrHhte.js} +4 -4
  253. package/build/server/chunks/{_server.ts-DsbbVoOn.js.map → _server.ts-1CtrHhte.js.map} +1 -1
  254. package/build/server/chunks/{_server.ts-CWvU15tL.js → _server.ts-71Qx1lQb.js} +4 -4
  255. package/build/server/chunks/{_server.ts-CWvU15tL.js.map → _server.ts-71Qx1lQb.js.map} +1 -1
  256. package/build/server/chunks/_server.ts-BAyekGHB.js +961 -0
  257. package/build/server/chunks/_server.ts-BAyekGHB.js.map +1 -0
  258. package/build/server/chunks/{_server.ts-BihpbxOW.js → _server.ts-BLWhU22T.js} +4 -4
  259. package/build/server/chunks/{_server.ts-BihpbxOW.js.map → _server.ts-BLWhU22T.js.map} +1 -1
  260. package/build/server/chunks/{_server.ts-YnfXkeMJ.js → _server.ts-C7EVZVxv.js} +22 -13
  261. package/build/server/chunks/_server.ts-C7EVZVxv.js.map +1 -0
  262. package/build/server/chunks/{_server.ts-vcaqdwxS.js → _server.ts-CGjYuLmo.js} +12 -7
  263. package/build/server/chunks/_server.ts-CGjYuLmo.js.map +1 -0
  264. package/build/server/chunks/{_server.ts-Dy5zQHe2.js → _server.ts-CX6H8fSE.js} +8 -31
  265. package/build/server/chunks/_server.ts-CX6H8fSE.js.map +1 -0
  266. package/build/server/chunks/{_server.ts-BuoQ02BW.js → _server.ts-CyEdTCLr.js} +4 -4
  267. package/build/server/chunks/{_server.ts-BuoQ02BW.js.map → _server.ts-CyEdTCLr.js.map} +1 -1
  268. package/build/server/chunks/_server.ts-DKVTM9Pj.js +77 -0
  269. package/build/server/chunks/_server.ts-DKVTM9Pj.js.map +1 -0
  270. package/build/server/chunks/{_server.ts-0uNTZKwF.js → _server.ts-Dip65hLJ.js} +15 -9
  271. package/build/server/chunks/_server.ts-Dip65hLJ.js.map +1 -0
  272. package/build/server/chunks/{_server.ts-D4EO0VHu.js → _server.ts-Dm0tCs2i.js} +5 -5
  273. package/build/server/chunks/{_server.ts-D4EO0VHu.js.map → _server.ts-Dm0tCs2i.js.map} +1 -1
  274. package/build/server/chunks/{_server.ts-BIBWjQI-.js → _server.ts-DsYwK_uW.js} +4 -4
  275. package/build/server/chunks/{_server.ts-BIBWjQI-.js.map → _server.ts-DsYwK_uW.js.map} +1 -1
  276. package/build/server/chunks/{_server.ts-DDa0Nk_S.js → _server.ts-RCEgegYU.js} +4 -4
  277. package/build/server/chunks/{_server.ts-DDa0Nk_S.js.map → _server.ts-RCEgegYU.js.map} +1 -1
  278. package/build/server/chunks/_server.ts-XOLAT4dd.js +146 -0
  279. package/build/server/chunks/_server.ts-XOLAT4dd.js.map +1 -0
  280. package/build/server/chunks/_server.ts-afh_zLVi.js +69 -0
  281. package/build/server/chunks/_server.ts-afh_zLVi.js.map +1 -0
  282. package/build/server/chunks/{browserContainer-CNX7ANld.js → browserContainer-BdldtueJ.js} +71 -1378
  283. package/build/server/chunks/browserContainer-BdldtueJ.js.map +1 -0
  284. package/build/server/chunks/buildSearchDocs-Cyfrnw9G.js +337 -0
  285. package/build/server/chunks/buildSearchDocs-Cyfrnw9G.js.map +1 -0
  286. package/build/server/chunks/{builderModeStore.svelte-ihupr-3p.js → builderModeStore.svelte-BEZMQEqn.js} +223 -11
  287. package/build/server/chunks/builderModeStore.svelte-BEZMQEqn.js.map +1 -0
  288. package/build/server/chunks/client-C9Cat4DK.js +51 -0
  289. package/build/server/chunks/{client-DfpLcAZ9.js.map → client-C9Cat4DK.js.map} +1 -1
  290. package/build/server/chunks/{error.svelte-C35KOpru.js → error.svelte-CzVR_A6P.js} +5 -5
  291. package/build/server/chunks/{error.svelte-C35KOpru.js.map → error.svelte-CzVR_A6P.js.map} +1 -1
  292. package/build/server/chunks/featureQueueContext-DuXpyTdC.js +32 -0
  293. package/build/server/chunks/featureQueueContext-DuXpyTdC.js.map +1 -0
  294. package/build/server/chunks/featureStore.svelte-DHZf88gu.js +162 -0
  295. package/build/server/chunks/featureStore.svelte-DHZf88gu.js.map +1 -0
  296. package/build/server/chunks/{projectsStore.svelte-QDz5PchX.js → featuresStore.svelte-bUyQBg1-.js} +95 -3
  297. package/build/server/chunks/featuresStore.svelte-bUyQBg1-.js.map +1 -0
  298. package/build/server/chunks/{hooks.server-Rv301GTB.js → hooks.server-y3jdg_sB.js} +6 -2
  299. package/build/server/chunks/hooks.server-y3jdg_sB.js.map +1 -0
  300. package/build/server/chunks/humanize-CkCPfeWi.js +53 -0
  301. package/build/server/chunks/humanize-CkCPfeWi.js.map +1 -0
  302. package/build/server/chunks/{index-server-7H0jzj0M.js → index-server-DvBux_Gf.js} +47 -2
  303. package/build/server/chunks/{index-server-7H0jzj0M.js.map → index-server-DvBux_Gf.js.map} +1 -1
  304. package/build/server/chunks/{internal-BPKrFkK1.js → internal-BFt8yDlf.js} +5 -5
  305. package/build/server/chunks/{internal-BPKrFkK1.js.map → internal-BFt8yDlf.js.map} +1 -1
  306. package/build/server/chunks/projectBundleClient-BtvWPh87.js +168 -0
  307. package/build/server/chunks/projectBundleClient-BtvWPh87.js.map +1 -0
  308. package/build/server/chunks/projectContextStore.svelte-jRJGJZ42.js +141 -0
  309. package/build/server/chunks/projectContextStore.svelte-jRJGJZ42.js.map +1 -0
  310. package/build/server/chunks/projectFeaturesStore.svelte-BwNEtDIL.js +87 -0
  311. package/build/server/chunks/projectFeaturesStore.svelte-BwNEtDIL.js.map +1 -0
  312. package/build/server/chunks/projectStore.svelte-BNuLNxk_.js +230 -0
  313. package/build/server/chunks/projectStore.svelte-BNuLNxk_.js.map +1 -0
  314. package/build/server/chunks/{reconcile-Dv7jS3C8.js → reconcile-CVG2LSlW.js} +54 -267
  315. package/build/server/chunks/reconcile-CVG2LSlW.js.map +1 -0
  316. package/build/server/chunks/registry-DqAn_hVE.js +21 -0
  317. package/build/server/chunks/registry-DqAn_hVE.js.map +1 -0
  318. package/build/server/chunks/{snapshotRepository-BPXCjX92.js → snapshotRepository-8f-2wTrb.js} +30 -5
  319. package/build/server/chunks/snapshotRepository-8f-2wTrb.js.map +1 -0
  320. package/build/server/chunks/{state-CpLVNZq7.js → state-CZZtjXLE.js} +3 -3
  321. package/build/server/chunks/{state-CpLVNZq7.js.map → state-CZZtjXLE.js.map} +1 -1
  322. package/build/server/chunks/{sync-DZ3dn761.js → sync-Bn6eSUhC.js} +3 -3
  323. package/build/server/chunks/{sync-DZ3dn761.js.map → sync-Bn6eSUhC.js.map} +1 -1
  324. package/build/server/chunks/{syncBridge-BwXzPdjJ.js → syncAwareRepositories-DvUjq5Q6.js} +27 -3
  325. package/build/server/chunks/syncAwareRepositories-DvUjq5Q6.js.map +1 -0
  326. package/build/server/chunks/{tagPaletteStore.svelte-DfZOBvgY.js → tagPaletteStore.svelte-C71bdzDl.js} +4 -4
  327. package/build/server/chunks/{tagPaletteStore.svelte-DfZOBvgY.js.map → tagPaletteStore.svelte-C71bdzDl.js.map} +1 -1
  328. package/build/server/index.js +2 -2
  329. package/build/server/index.js.map +1 -1
  330. package/build/server/manifest.js +74 -29
  331. package/build/server/manifest.js.map +1 -1
  332. package/cli/README.md +70 -2
  333. package/cli/commands/check.ts +190 -0
  334. package/cli/commands/ci.ts +71 -0
  335. package/cli/commands/coverage-ingest.ts +112 -0
  336. package/cli/commands/dashboard.ts +14 -0
  337. package/cli/commands/init.ts +26 -0
  338. package/cli/commands/scenarios-adapter.ts +96 -0
  339. package/cli/commands/theme.ts +62 -0
  340. package/cli/scenarios/adapter-scaffold.ts +99 -0
  341. package/cli/scenarios/codegen.ts +7 -1
  342. package/cli/scenarios/results.ts +85 -0
  343. package/cli/skills/unspa-audit/SKILL.md +19 -0
  344. package/cli/skills/unspa-edit/SKILL.md +20 -3
  345. package/cli/skills/unspa-implement/SKILL.md +28 -0
  346. package/cli/unspa.ts +136 -2
  347. package/cli/util/context-files.ts +18 -2
  348. package/cli/util/theme.ts +34 -0
  349. package/mcp-server/bin.ts +104 -104
  350. package/mcp-server/migrate-defaults.ts +164 -164
  351. package/mcp-server/repo-link.ts +142 -134
  352. package/mcp-server/resources/guide.ts +24 -4
  353. package/mcp-server/resources/operations.ts +3 -0
  354. package/mcp-server/seed-snapshots.ts +22 -22
  355. package/mcp-server/server.ts +8 -4
  356. package/mcp-server/sync-aware-repos.ts +79 -79
  357. package/mcp-server/sync-notifier.ts +180 -127
  358. package/mcp-server/tools/_codegen.ts +115 -115
  359. package/mcp-server/tools/_entity_builders.ts +30 -0
  360. package/mcp-server/tools/_shared.ts +210 -210
  361. package/mcp-server/tools/action.ts +210 -210
  362. package/mcp-server/tools/batch.ts +29 -5
  363. package/mcp-server/tools/effect.ts +139 -135
  364. package/mcp-server/tools/entity.ts +132 -132
  365. package/mcp-server/tools/entityField.ts +132 -132
  366. package/mcp-server/tools/event.ts +116 -116
  367. package/mcp-server/tools/feature.ts +264 -264
  368. package/mcp-server/tools/invariant.ts +275 -275
  369. package/mcp-server/tools/persona.ts +141 -141
  370. package/mcp-server/tools/project.ts +500 -391
  371. package/mcp-server/tools/reachabilityGoal.ts +97 -0
  372. package/mcp-server/tools/read.ts +526 -483
  373. package/mcp-server/tools/reorder.ts +114 -114
  374. package/mcp-server/tools/resource.ts +194 -194
  375. package/mcp-server/tools/rule.ts +302 -302
  376. package/mcp-server/tools/scenario.ts +4 -1
  377. package/mcp-server/tools/specGaps.ts +221 -221
  378. package/mcp-server/tools/state.ts +10 -2
  379. package/mcp-server/tools/surface.ts +102 -102
  380. package/mcp-server/tools/transition.ts +96 -96
  381. package/mcp-server/tools/verification.ts +131 -0
  382. package/package.json +15 -2
  383. package/src/app.css +208 -9
  384. package/src/app.html +15 -1
  385. package/src/features/behavior-model/application/ports/FeatureRepository.ts +16 -16
  386. package/src/features/behavior-model/application/use-cases/CreateFeature.ts +24 -24
  387. package/src/features/behavior-model/application/use-cases/DeleteFeature.ts +8 -8
  388. package/src/features/behavior-model/application/use-cases/GetFeature.ts +9 -9
  389. package/src/features/behavior-model/application/use-cases/ListFeatures.ts +10 -10
  390. package/src/features/behavior-model/application/use-cases/MutateFeature.ts +90 -90
  391. package/src/features/behavior-model/application/use-cases/SaveFeature.ts +31 -31
  392. package/src/features/behavior-model/domain/entities/Entity.ts +45 -45
  393. package/src/features/behavior-model/domain/entities/EventDefinition.ts +35 -35
  394. package/src/features/behavior-model/domain/entities/Feature.ts +10 -0
  395. package/src/features/behavior-model/domain/entities/Persona.ts +33 -33
  396. package/src/features/behavior-model/domain/entities/ReachabilityGoal.ts +39 -0
  397. package/src/features/behavior-model/domain/entities/Resource.ts +54 -54
  398. package/src/features/behavior-model/domain/entities/Scenario.ts +15 -0
  399. package/src/features/behavior-model/domain/entities/StateDefinition.ts +13 -0
  400. package/src/features/behavior-model/domain/entities/Surface.ts +75 -75
  401. package/src/features/behavior-model/domain/entities/index.ts +9 -9
  402. package/src/features/behavior-model/domain/services/BehaviorGraphModel.ts +556 -0
  403. package/src/features/behavior-model/domain/services/DerivedState.ts +67 -0
  404. package/src/features/behavior-model/domain/services/EffectApplier.ts +112 -3
  405. package/src/features/behavior-model/domain/services/EffectiveEntities.ts +166 -166
  406. package/src/features/behavior-model/domain/services/EntityDeducer.ts +83 -83
  407. package/src/features/behavior-model/domain/services/EventCatalog.ts +141 -141
  408. package/src/features/behavior-model/domain/services/FeatureExpressionNormalizer.ts +43 -5
  409. package/src/features/behavior-model/domain/services/FeatureSharedStateNormalizer.ts +24 -3
  410. package/src/features/behavior-model/domain/services/FeatureTransforms.ts +33 -0
  411. package/src/features/behavior-model/domain/services/FeatureValidator.ts +124 -16
  412. package/src/features/behavior-model/domain/services/PersonaApplier.ts +39 -39
  413. package/src/features/behavior-model/domain/services/ResourceDeducer.ts +64 -64
  414. package/src/features/behavior-model/domain/services/ResourceUsage.ts +79 -79
  415. package/src/features/behavior-model/domain/services/ScenarioApplier.ts +40 -40
  416. package/src/features/behavior-model/domain/services/SharedStateDefinitions.ts +32 -32
  417. package/src/features/behavior-model/domain/services/StatePathReferences.ts +249 -217
  418. package/src/features/behavior-model/domain/services/TransitionCatalog.ts +173 -173
  419. package/src/features/behavior-model/domain/value-objects/Effect.ts +100 -3
  420. package/src/features/behavior-model/domain/value-objects/EntityFieldType.ts +57 -57
  421. package/src/features/behavior-model/domain/value-objects/Expression.ts +22 -2
  422. package/src/features/behavior-model/domain/value-objects/ParameterType.ts +57 -57
  423. package/src/features/behavior-model/domain/value-objects/Resource.ts +210 -210
  424. package/src/features/behavior-model/domain/value-objects/RuleCategory.ts +57 -57
  425. package/src/features/behavior-model/domain/value-objects/RuleCondition.ts +52 -1
  426. package/src/features/behavior-model/domain/value-objects/SimulationClock.ts +35 -0
  427. package/src/features/behavior-model/domain/value-objects/ids.ts +2 -0
  428. package/src/features/behavior-model/infrastructure/io/FeatureJson.ts +89 -89
  429. package/src/features/behavior-model/infrastructure/persistence/HttpFeatureRepository.ts +43 -43
  430. package/src/features/behavior-model/infrastructure/persistence/JsonFolderFeatureRepository.ts +10 -0
  431. package/src/features/behavior-model/infrastructure/persistence/snapshot-discovery.ts +76 -76
  432. package/src/features/behavior-model/infrastructure/seed/seedStorefront.ts +967 -967
  433. package/src/features/behavior-model/presentation/adapters/VisBehaviorGraphRenderer.ts +501 -0
  434. package/src/features/behavior-model/presentation/components/ActionEditor.svelte +683 -682
  435. package/src/features/behavior-model/presentation/components/ActionsEditor.svelte +232 -232
  436. package/src/features/behavior-model/presentation/components/BehaviorGraph.svelte +568 -0
  437. package/src/features/behavior-model/presentation/components/EffectEditor.svelte +168 -168
  438. package/src/features/behavior-model/presentation/components/EntityEditor.svelte +241 -248
  439. package/src/features/behavior-model/presentation/components/EntityFieldRow.svelte +180 -181
  440. package/src/features/behavior-model/presentation/components/EntityManager.svelte +252 -251
  441. package/src/features/behavior-model/presentation/components/EventsManager.svelte +373 -372
  442. package/src/features/behavior-model/presentation/components/FeatureEditor.svelte +396 -348
  443. package/src/features/behavior-model/presentation/components/FeatureHeader.svelte +165 -148
  444. package/src/features/behavior-model/presentation/components/FeatureHealthStrip.svelte +110 -110
  445. package/src/features/behavior-model/presentation/components/HistoryPanel.svelte +154 -154
  446. package/src/features/behavior-model/presentation/components/NewFeatureForm.svelte +66 -66
  447. package/src/features/behavior-model/presentation/components/ParameterNameSelect.svelte +84 -84
  448. package/src/features/behavior-model/presentation/components/ParametersEditor.svelte +411 -411
  449. package/src/features/behavior-model/presentation/components/PersonaEditor.svelte +244 -244
  450. package/src/features/behavior-model/presentation/components/PersonasManager.svelte +130 -130
  451. package/src/features/behavior-model/presentation/components/ReachabilityGoalEditor.svelte +230 -0
  452. package/src/features/behavior-model/presentation/components/ReachabilityGoalsEditor.svelte +86 -0
  453. package/src/features/behavior-model/presentation/components/ResourcesManager.svelte +291 -290
  454. package/src/features/behavior-model/presentation/components/ScenariosEditor.svelte +496 -496
  455. package/src/features/behavior-model/presentation/components/StateDefinitionsEditor.svelte +356 -356
  456. package/src/features/behavior-model/presentation/components/SurfaceEntitiesView.svelte +88 -88
  457. package/src/features/behavior-model/presentation/components/SurfaceInvariantsEditor.svelte +76 -76
  458. package/src/features/behavior-model/presentation/components/SurfaceList.svelte +300 -300
  459. package/src/features/behavior-model/presentation/components/SurfaceMetaEditor.svelte +158 -156
  460. package/src/features/behavior-model/presentation/components/SurfacePanel.svelte +198 -198
  461. package/src/features/behavior-model/presentation/components/SurfacePersonasView.svelte +122 -122
  462. package/src/features/behavior-model/presentation/components/SurfaceResourcesView.svelte +113 -113
  463. package/src/features/behavior-model/presentation/components/SurfaceRulesEditor.svelte +69 -69
  464. package/src/features/behavior-model/presentation/components/TransitionsManager.svelte +322 -321
  465. package/src/features/behavior-model/presentation/context/featureQueueContext.ts +78 -0
  466. package/src/features/behavior-model/presentation/stores/editorStore.svelte.ts +132 -131
  467. package/src/features/behavior-model/presentation/stores/featureStore.svelte.ts +177 -177
  468. package/src/features/behavior-model/presentation/stores/featuresStore.svelte.ts +98 -98
  469. package/src/features/behavior-model/presentation/view-models/BehaviorGraphTheme.ts +44 -0
  470. package/src/features/behavior-model/presentation/view-models/factories.ts +181 -132
  471. package/src/features/builder-mode/domain/BuilderModeDashboard.ts +7 -1
  472. package/src/features/builder-mode/presentation/components/BuilderModeDashboard.svelte +78 -16
  473. package/src/features/builder-mode/presentation/components/BuilderTagChips.svelte +25 -0
  474. package/src/features/builder-mode/presentation/stores/builderModeStore.svelte.ts +247 -3
  475. package/src/features/domains/infrastructure/persistence/JsonFolderDomainRepository.ts +9 -0
  476. package/src/features/global-search/application/use-cases/LoadSearchIndex.ts +70 -0
  477. package/src/features/global-search/domain/SearchDoc.ts +111 -0
  478. package/src/features/global-search/domain/buildSearchDocs.ts +483 -0
  479. package/src/features/global-search/domain/searchNav.ts +58 -0
  480. package/src/features/global-search/domain/searchScoring.ts +81 -0
  481. package/src/features/global-search/infrastructure/adapters/defaultSearchHost.ts +28 -0
  482. package/src/features/global-search/presentation/components/GlobalSearch.svelte +262 -0
  483. package/src/features/global-search/presentation/ports/SearchHostPorts.ts +41 -0
  484. package/src/features/global-search/presentation/searchKindMeta.ts +108 -0
  485. package/src/features/global-search/presentation/stores/globalSearchStore.svelte.ts +171 -0
  486. package/src/features/implementation-queue/presentation/components/FloatingQueueWidget.svelte +264 -0
  487. package/src/features/implementation-queue/presentation/stores/globalQueueStore.svelte.ts +172 -0
  488. package/src/features/implementation-status/application/ports/ImplementationStatusRepository.ts +8 -8
  489. package/src/features/implementation-status/application/use-cases/GetImplementationStatus.ts +8 -8
  490. package/src/features/implementation-status/domain/ApplyCapturedToSpec.ts +323 -322
  491. package/src/features/implementation-status/domain/FieldDiff.ts +238 -236
  492. package/src/features/implementation-status/infrastructure/persistence/InMemoryImplementationStatusRepository.ts +21 -21
  493. package/src/features/implementation-status/presentation/components/ImplementationStatusPanel.svelte +831 -831
  494. package/src/features/implementation-status/presentation/stores/implementationStatusStore.svelte.ts +97 -97
  495. package/src/features/library/application/use-cases/ApplyBlueprintsToFeature.ts +33 -33
  496. package/src/features/library/domain/services/BlueprintApplier.ts +94 -94
  497. package/src/features/library/infrastructure/blueprints/auth/ResetPasswordBlueprint.ts +332 -332
  498. package/src/features/library/infrastructure/blueprints/auth/SignInBlueprint.ts +281 -281
  499. package/src/features/library/infrastructure/blueprints/auth/SignUpBlueprint.ts +299 -299
  500. package/src/features/library/infrastructure/blueprints/auth/VerifyEmailBlueprint.ts +288 -288
  501. package/src/features/library/infrastructure/blueprints/auth/shared.ts +146 -146
  502. package/src/features/library/infrastructure/blueprints/commerce/CartBlueprint.ts +222 -222
  503. package/src/features/library/infrastructure/blueprints/commerce/CatalogBlueprint.ts +190 -190
  504. package/src/features/library/infrastructure/blueprints/commerce/CheckoutBlueprint.ts +322 -322
  505. package/src/features/library/infrastructure/blueprints/commerce/OrderConfirmationBlueprint.ts +172 -172
  506. package/src/features/library/infrastructure/blueprints/commerce/ProductDetailsBlueprint.ts +290 -290
  507. package/src/features/library/infrastructure/blueprints/content/ReviewsBlueprint.ts +392 -392
  508. package/src/features/library/infrastructure/blueprints/onboarding/OnboardingWizardBlueprint.ts +344 -344
  509. package/src/features/library/infrastructure/blueprints/utility/CanvasBlueprint.ts +419 -419
  510. package/src/features/library/infrastructure/blueprints/utility/CookieConsentBlueprint.ts +195 -195
  511. package/src/features/library/infrastructure/blueprints/utility/NotFoundBlueprint.ts +86 -86
  512. package/src/features/library/infrastructure/blueprints/utility/SearchPaletteBlueprint.ts +192 -192
  513. package/src/features/library/infrastructure/blueprints/utility/StoreLocatorBlueprint.ts +221 -221
  514. package/src/features/library/infrastructure/blueprints/utility/TaskBoardBlueprint.ts +196 -196
  515. package/src/features/maturity/application/use-cases/ScoreFeature.ts +7 -7
  516. package/src/features/maturity/domain/MaturityReport.ts +70 -70
  517. package/src/features/maturity/domain/MaturityScorer.ts +1001 -985
  518. package/src/features/maturity/presentation/components/MaturityPanel.svelte +376 -372
  519. package/src/features/mcp-tools/application/tools/dryRunSimulate.ts +24 -24
  520. package/src/features/mcp-tools/application/tools/findStateReferences.ts +19 -19
  521. package/src/features/mcp-tools/application/tools/generateTypes.ts +0 -1
  522. package/src/features/mcp-tools/application/tools/getAction.ts +165 -165
  523. package/src/features/mcp-tools/application/tools/getFeature.ts +5 -5
  524. package/src/features/mcp-tools/application/tools/getFeatureIndex.ts +79 -79
  525. package/src/features/mcp-tools/application/tools/getNeighborhood.ts +319 -319
  526. package/src/features/mcp-tools/application/tools/getSurface.ts +86 -86
  527. package/src/features/mcp-tools/application/tools/index.ts +56 -56
  528. package/src/features/mcp-tools/application/tools/listActions.ts +49 -49
  529. package/src/features/mcp-tools/application/tools/listFeatures.ts +7 -7
  530. package/src/features/mcp-tools/application/tools/scoreFeature.ts +153 -153
  531. package/src/features/projects/application/ports/ProjectRepository.ts +14 -14
  532. package/src/features/projects/application/use-cases/AddFeatureToProject.ts +23 -23
  533. package/src/features/projects/application/use-cases/CreateProject.ts +16 -16
  534. package/src/features/projects/application/use-cases/FindProjectContainingFeature.ts +23 -23
  535. package/src/features/projects/application/use-cases/GetProjectAggregate.ts +131 -131
  536. package/src/features/projects/application/use-cases/ImportProjectBundle.ts +45 -0
  537. package/src/features/projects/application/use-cases/MoveFeatureInProject.ts +36 -36
  538. package/src/features/projects/application/use-cases/RemoveFeatureFromProject.ts +23 -23
  539. package/src/features/projects/domain/entities/Project.ts +12 -0
  540. package/src/features/projects/domain/services/InheritedFromProject.ts +130 -130
  541. package/src/features/projects/infrastructure/persistence/JsonFolderProjectRepository.ts +9 -0
  542. package/src/features/projects/presentation/components/ProjectCard.svelte +27 -8
  543. package/src/features/projects/presentation/components/ProjectEditor.svelte +23 -19
  544. package/src/features/projects/presentation/components/ProjectFeaturesPanel.svelte +433 -433
  545. package/src/features/projects/presentation/components/ProjectsIndex.svelte +54 -10
  546. package/src/features/projects/presentation/stores/projectContextStore.svelte.ts +170 -170
  547. package/src/features/projects/presentation/stores/projectFeaturesStore.svelte.ts +114 -114
  548. package/src/features/projects/presentation/stores/projectStore.svelte.ts +265 -266
  549. package/src/features/projects/presentation/stores/projectsStore.svelte.ts +134 -134
  550. package/src/features/simulator/application/use-cases/RunScenarios.ts +27 -1
  551. package/src/features/simulator/application/use-cases/SimulateAction.ts +47 -47
  552. package/src/features/simulator/domain/SimulationResult.ts +79 -79
  553. package/src/features/simulator/domain/SimulatorEngine.ts +43 -9
  554. package/src/features/simulator/domain/StateExplorer.ts +369 -0
  555. package/src/features/simulator/domain/SurfaceReachability.ts +130 -0
  556. package/src/features/simulator/presentation/components/ParameterInputs.svelte +277 -277
  557. package/src/features/simulator/presentation/components/PersonaPicker.svelte +52 -52
  558. package/src/features/simulator/presentation/components/ScenarioPicker.svelte +42 -45
  559. package/src/features/simulator/presentation/components/SidePanel.svelte +170 -170
  560. package/src/features/simulator/presentation/components/SimulationResultView.svelte +394 -394
  561. package/src/features/simulator/presentation/components/SimulatorPanel.svelte +293 -293
  562. package/src/features/simulator/presentation/components/StateInspector.svelte +101 -101
  563. package/src/features/simulator/presentation/stores/simulatorStore.svelte.ts +268 -268
  564. package/src/features/tutorial/presentation/components/CodeBlock.svelte +5 -1
  565. package/src/features/verification/application/ports/BehavioralIndexReader.ts +12 -0
  566. package/src/features/verification/application/use-cases/VerifyFeatures.ts +151 -0
  567. package/src/features/verification/domain/DriftReport.ts +37 -0
  568. package/src/features/verification/domain/EventCoherenceReport.ts +27 -0
  569. package/src/features/verification/domain/IndexedImplementation.ts +27 -0
  570. package/src/features/verification/domain/VerificationReport.ts +59 -0
  571. package/src/features/verification/domain/VerificationThresholds.ts +52 -0
  572. package/src/features/verification/domain/VerificationVerdict.ts +43 -0
  573. package/src/features/verification/domain/aggregateVerdict.ts +244 -0
  574. package/src/features/verification/domain/analyzeEventCoherence.ts +43 -0
  575. package/src/features/verification/domain/detectDrift.ts +166 -0
  576. package/src/features/verification/domain/verifiedCoverage.ts +37 -0
  577. package/src/features/verification/infrastructure/persistence/FileBehavioralIndexReader.ts +81 -0
  578. package/src/features/verification/infrastructure/persistence/StaticBehavioralIndexReader.ts +15 -0
  579. package/src/features/verification/presentation/components/VerifyPanel.svelte +74 -0
  580. package/src/features/verification/presentation/stores/verificationStore.svelte.ts +64 -0
  581. package/src/hooks.server.ts +11 -1
  582. package/src/lib/server/openLocalDirectory.ts +40 -0
  583. package/src/lib/server/searchIndex.ts +161 -0
  584. package/src/lib/server/snapshotRepository.ts +37 -37
  585. package/src/lib/server/sync/YDocManager.ts +391 -391
  586. package/src/lib/server/sync/historyStore.ts +276 -276
  587. package/src/lib/server/sync/wsServer.ts +1 -1
  588. package/src/lib/sync/protocol.ts +147 -147
  589. package/src/lib/sync/roomId.ts +33 -33
  590. package/src/lib/theme/registry.ts +77 -0
  591. package/src/lib/theme/themeStore.svelte.ts +64 -0
  592. package/src/routes/+layout.svelte +288 -30
  593. package/src/routes/api/domains/[id]/+server.ts +7 -3
  594. package/src/routes/api/projects/[id]/+server.ts +14 -4
  595. package/src/routes/api/projects/import/+server.ts +16 -38
  596. package/src/routes/api/search-index/+server.ts +16 -0
  597. package/src/routes/api/snapshots/[id]/+server.ts +56 -44
  598. package/src/routes/api/snapshots/[id]/implementation-status/+server.ts +13 -13
  599. package/src/routes/api/snapshots/[id]/verify/+server.ts +37 -0
  600. package/src/routes/api/sync/reload/+server.ts +157 -157
  601. package/src/routes/api/system/hub-directory/+server.ts +24 -0
  602. package/src/routes/features/+page.svelte +484 -484
  603. package/src/routes/features/[id]/+page.svelte +55 -49
  604. package/src/routes/features/[id]/graph/+page.svelte +39 -0
  605. package/src/routes/features/[id]/verify/+page.svelte +89 -0
  606. package/src/routes/mcp/+page.svelte +16 -1
  607. package/src/routes/projects/[id]/+page.svelte +70 -70
  608. package/src/routes/projects/[id]/graph/+page.svelte +79 -0
  609. package/src/routes/tutorial/+page.svelte +3 -2
  610. package/src/shared/infrastructure/browserContainer.ts +61 -61
  611. package/src/shared/presentation/components/KebabMenu.svelte +95 -0
  612. package/src/shared/presentation/components/MenuItem.svelte +29 -0
  613. package/src/shared/presentation/components/ProgressBar.svelte +1 -1
  614. package/src/shared/presentation/toast/SyncToast.svelte +14 -3
  615. package/src/shared/presentation/toast/viewLinkResolver.ts +32 -0
  616. package/static/lyriks_logo.svg +148 -0
  617. package/vite.config.ts +47 -47
  618. package/build/client/_app/immutable/assets/0.DFMDYAU9.css +0 -1
  619. package/build/client/_app/immutable/assets/0.DFMDYAU9.css.br +0 -0
  620. package/build/client/_app/immutable/assets/0.DFMDYAU9.css.gz +0 -0
  621. package/build/client/_app/immutable/assets/9.nv0I59TU.css.gz +0 -0
  622. package/build/client/_app/immutable/chunks/BO66rBOa2.js +0 -1
  623. package/build/client/_app/immutable/chunks/BO66rBOa2.js.br +0 -0
  624. package/build/client/_app/immutable/chunks/BO66rBOa2.js.gz +0 -0
  625. package/build/client/_app/immutable/chunks/BOrLmFwJ.js.br +0 -0
  626. package/build/client/_app/immutable/chunks/BOrLmFwJ.js.gz +0 -0
  627. package/build/client/_app/immutable/chunks/BfMYiIUi.js.br +0 -0
  628. package/build/client/_app/immutable/chunks/BfMYiIUi.js.gz +0 -0
  629. package/build/client/_app/immutable/chunks/Bp2_Vghh.js +0 -1
  630. package/build/client/_app/immutable/chunks/Bp2_Vghh.js.br +0 -0
  631. package/build/client/_app/immutable/chunks/Bp2_Vghh.js.gz +0 -0
  632. package/build/client/_app/immutable/chunks/Bp8HpEPe2.js +0 -4
  633. package/build/client/_app/immutable/chunks/Bp8HpEPe2.js.br +0 -0
  634. package/build/client/_app/immutable/chunks/Bp8HpEPe2.js.gz +0 -0
  635. package/build/client/_app/immutable/chunks/C8rRKIXT.js +0 -1
  636. package/build/client/_app/immutable/chunks/C8rRKIXT.js.br +0 -0
  637. package/build/client/_app/immutable/chunks/C8rRKIXT.js.gz +0 -0
  638. package/build/client/_app/immutable/chunks/CJjJLwzv2.js +0 -1
  639. package/build/client/_app/immutable/chunks/CJjJLwzv2.js.br +0 -0
  640. package/build/client/_app/immutable/chunks/CJjJLwzv2.js.gz +0 -0
  641. package/build/client/_app/immutable/chunks/CxyLMlpt2.js.br +0 -0
  642. package/build/client/_app/immutable/chunks/CxyLMlpt2.js.gz +0 -0
  643. package/build/client/_app/immutable/chunks/D6jhrpTg.js +0 -1
  644. package/build/client/_app/immutable/chunks/D6jhrpTg.js.br +0 -0
  645. package/build/client/_app/immutable/chunks/D6jhrpTg.js.gz +0 -0
  646. package/build/client/_app/immutable/chunks/D8YEa1po.js +0 -1
  647. package/build/client/_app/immutable/chunks/D8YEa1po.js.br +0 -0
  648. package/build/client/_app/immutable/chunks/D8YEa1po.js.gz +0 -0
  649. package/build/client/_app/immutable/chunks/D9dKmajw.js +0 -1
  650. package/build/client/_app/immutable/chunks/D9dKmajw.js.br +0 -0
  651. package/build/client/_app/immutable/chunks/D9dKmajw.js.gz +0 -0
  652. package/build/client/_app/immutable/chunks/DBJWcC6Y.js +0 -1
  653. package/build/client/_app/immutable/chunks/DBJWcC6Y.js.br +0 -0
  654. package/build/client/_app/immutable/chunks/DBJWcC6Y.js.gz +0 -0
  655. package/build/client/_app/immutable/chunks/DHoA038D.js +0 -1
  656. package/build/client/_app/immutable/chunks/DHoA038D.js.br +0 -2
  657. package/build/client/_app/immutable/chunks/DHoA038D.js.gz +0 -0
  658. package/build/client/_app/immutable/chunks/DKgYpi6_.js +0 -1
  659. package/build/client/_app/immutable/chunks/DKgYpi6_.js.br +0 -0
  660. package/build/client/_app/immutable/chunks/DKgYpi6_.js.gz +0 -0
  661. package/build/client/_app/immutable/chunks/DatGSObE.js +0 -1
  662. package/build/client/_app/immutable/chunks/DatGSObE.js.br +0 -0
  663. package/build/client/_app/immutable/chunks/DatGSObE.js.gz +0 -0
  664. package/build/client/_app/immutable/chunks/Dg0acPpT.js +0 -1
  665. package/build/client/_app/immutable/chunks/Dg0acPpT.js.br +0 -0
  666. package/build/client/_app/immutable/chunks/Dg0acPpT.js.gz +0 -0
  667. package/build/client/_app/immutable/chunks/DjWKKtqp.js +0 -1
  668. package/build/client/_app/immutable/chunks/DjWKKtqp.js.br +0 -1
  669. package/build/client/_app/immutable/chunks/DjWKKtqp.js.gz +0 -0
  670. package/build/client/_app/immutable/chunks/Dq0DUAz1.js +0 -1
  671. package/build/client/_app/immutable/chunks/Dq0DUAz1.js.br +0 -0
  672. package/build/client/_app/immutable/chunks/Dq0DUAz1.js.gz +0 -0
  673. package/build/client/_app/immutable/chunks/HKLi1Yz3.js +0 -1
  674. package/build/client/_app/immutable/chunks/HKLi1Yz3.js.br +0 -0
  675. package/build/client/_app/immutable/chunks/HKLi1Yz3.js.gz +0 -0
  676. package/build/client/_app/immutable/chunks/N7PXjlRH.js +0 -1
  677. package/build/client/_app/immutable/chunks/N7PXjlRH.js.br +0 -0
  678. package/build/client/_app/immutable/chunks/N7PXjlRH.js.gz +0 -0
  679. package/build/client/_app/immutable/chunks/hpWJNn0t2.js +0 -2
  680. package/build/client/_app/immutable/chunks/hpWJNn0t2.js.br +0 -0
  681. package/build/client/_app/immutable/chunks/hpWJNn0t2.js.gz +0 -0
  682. package/build/client/_app/immutable/chunks/iQu0D9Ux.js +0 -1
  683. package/build/client/_app/immutable/chunks/iQu0D9Ux.js.br +0 -0
  684. package/build/client/_app/immutable/chunks/iQu0D9Ux.js.gz +0 -0
  685. package/build/client/_app/immutable/entry/app.CLgh6Mx_.js +0 -2
  686. package/build/client/_app/immutable/entry/app.CLgh6Mx_.js.br +0 -0
  687. package/build/client/_app/immutable/entry/app.CLgh6Mx_.js.gz +0 -0
  688. package/build/client/_app/immutable/entry/start.D5GPCQZD.js +0 -1
  689. package/build/client/_app/immutable/entry/start.D5GPCQZD.js.br +0 -0
  690. package/build/client/_app/immutable/entry/start.D5GPCQZD.js.gz +0 -0
  691. package/build/client/_app/immutable/nodes/0.BOoI-hsu.js +0 -4
  692. package/build/client/_app/immutable/nodes/0.BOoI-hsu.js.br +0 -0
  693. package/build/client/_app/immutable/nodes/0.BOoI-hsu.js.gz +0 -0
  694. package/build/client/_app/immutable/nodes/1.KYdA6ppX.js.br +0 -2
  695. package/build/client/_app/immutable/nodes/1.KYdA6ppX.js.gz +0 -0
  696. package/build/client/_app/immutable/nodes/2.DBz20KgG.js.br +0 -0
  697. package/build/client/_app/immutable/nodes/2.DBz20KgG.js.gz +0 -0
  698. package/build/client/_app/immutable/nodes/3.19DIoFtw.js +0 -1
  699. package/build/client/_app/immutable/nodes/3.19DIoFtw.js.br +0 -0
  700. package/build/client/_app/immutable/nodes/3.19DIoFtw.js.gz +0 -0
  701. package/build/client/_app/immutable/nodes/4.BvMzqBJj.js +0 -3
  702. package/build/client/_app/immutable/nodes/4.BvMzqBJj.js.br +0 -0
  703. package/build/client/_app/immutable/nodes/4.BvMzqBJj.js.gz +0 -0
  704. package/build/client/_app/immutable/nodes/5.Dq6obSGG.js +0 -42
  705. package/build/client/_app/immutable/nodes/5.Dq6obSGG.js.br +0 -0
  706. package/build/client/_app/immutable/nodes/5.Dq6obSGG.js.gz +0 -0
  707. package/build/client/_app/immutable/nodes/6.BOHISqs-.js +0 -5
  708. package/build/client/_app/immutable/nodes/6.BOHISqs-.js.br +0 -0
  709. package/build/client/_app/immutable/nodes/6.BOHISqs-.js.gz +0 -0
  710. package/build/client/_app/immutable/nodes/7.CemgNJfw.js.br +0 -0
  711. package/build/client/_app/immutable/nodes/7.CemgNJfw.js.gz +0 -0
  712. package/build/client/_app/immutable/nodes/8.DejSfIYh.js +0 -5
  713. package/build/client/_app/immutable/nodes/8.DejSfIYh.js.br +0 -0
  714. package/build/client/_app/immutable/nodes/8.DejSfIYh.js.gz +0 -0
  715. package/build/client/_app/immutable/nodes/9.CMW6a2Lg.js.br +0 -0
  716. package/build/client/_app/immutable/nodes/9.CMW6a2Lg.js.gz +0 -0
  717. package/build/server/chunks/0-C_o0oz-N.js +0 -15
  718. package/build/server/chunks/0-C_o0oz-N.js.map +0 -1
  719. package/build/server/chunks/1-DPpKAKXV.js +0 -9
  720. package/build/server/chunks/2-AlfFqtL1.js +0 -9
  721. package/build/server/chunks/2-AlfFqtL1.js.map +0 -1
  722. package/build/server/chunks/3-vbjUt_51.js +0 -16
  723. package/build/server/chunks/3-vbjUt_51.js.map +0 -1
  724. package/build/server/chunks/4-BNow4x6D.js +0 -16
  725. package/build/server/chunks/4-BNow4x6D.js.map +0 -1
  726. package/build/server/chunks/5-D7OCJpxD.js +0 -9
  727. package/build/server/chunks/5-D7OCJpxD.js.map +0 -1
  728. package/build/server/chunks/6-QQ7r8Rd5.js +0 -9
  729. package/build/server/chunks/7-CbPLGaIG.js +0 -9
  730. package/build/server/chunks/7-CbPLGaIG.js.map +0 -1
  731. package/build/server/chunks/8-CVO-E-sf.js +0 -9
  732. package/build/server/chunks/8-CVO-E-sf.js.map +0 -1
  733. package/build/server/chunks/9-DxT1baO5.js +0 -9
  734. package/build/server/chunks/9-DxT1baO5.js.map +0 -1
  735. package/build/server/chunks/FeatureTransforms-UWDHmWEg.js.map +0 -1
  736. package/build/server/chunks/FeatureValidator-B8qEjAUW.js.map +0 -1
  737. package/build/server/chunks/ManageTagsDialog-DBxA3tM2.js.map +0 -1
  738. package/build/server/chunks/ProgressBar-CfhccQ83.js.map +0 -1
  739. package/build/server/chunks/ProjectsIndex-CoDrvRya.js.map +0 -1
  740. package/build/server/chunks/RenameTag-BuWLMl1m.js.map +0 -1
  741. package/build/server/chunks/TagDotStrip-B1XQ0m0Y.js.map +0 -1
  742. package/build/server/chunks/TagPalette-CtMNYCmu.js.map +0 -1
  743. package/build/server/chunks/_layout.svelte-BREws55o.js +0 -616
  744. package/build/server/chunks/_layout.svelte-BREws55o.js.map +0 -1
  745. package/build/server/chunks/_page.svelte-B1s7jxaQ.js.map +0 -1
  746. package/build/server/chunks/_page.svelte-B7hT3P8E.js +0 -29
  747. package/build/server/chunks/_page.svelte-BqSC-1vK.js.map +0 -1
  748. package/build/server/chunks/_page.svelte-BtI2zZ_Z.js.map +0 -1
  749. package/build/server/chunks/_page.svelte-De508ek8.js +0 -29
  750. package/build/server/chunks/_page.svelte-Zf9H4KOP.js.map +0 -1
  751. package/build/server/chunks/_server.ts-0uNTZKwF.js.map +0 -1
  752. package/build/server/chunks/_server.ts-DcZPhyhK.js +0 -59
  753. package/build/server/chunks/_server.ts-DcZPhyhK.js.map +0 -1
  754. package/build/server/chunks/_server.ts-Dy5zQHe2.js.map +0 -1
  755. package/build/server/chunks/_server.ts-YnfXkeMJ.js.map +0 -1
  756. package/build/server/chunks/_server.ts-vcaqdwxS.js.map +0 -1
  757. package/build/server/chunks/browserContainer-CNX7ANld.js.map +0 -1
  758. package/build/server/chunks/builderModeStore.svelte-ihupr-3p.js.map +0 -1
  759. package/build/server/chunks/client-DfpLcAZ9.js +0 -24
  760. package/build/server/chunks/featuresStore.svelte-DR1gYZyu.js +0 -98
  761. package/build/server/chunks/featuresStore.svelte-DR1gYZyu.js.map +0 -1
  762. package/build/server/chunks/hooks.server-Rv301GTB.js.map +0 -1
  763. package/build/server/chunks/identityStore.svelte-IIvW2_3b.js +0 -59
  764. package/build/server/chunks/identityStore.svelte-IIvW2_3b.js.map +0 -1
  765. package/build/server/chunks/projectsStore.svelte-QDz5PchX.js.map +0 -1
  766. package/build/server/chunks/reconcile-Dv7jS3C8.js.map +0 -1
  767. package/build/server/chunks/snapshotRepository-BPXCjX92.js.map +0 -1
  768. package/build/server/chunks/syncBridge-BwXzPdjJ.js.map +0 -1
  769. package/src/features/implementation-queue/presentation/components/QueuePanel.svelte +0 -204
  770. package/src/features/implementation-queue/presentation/stores/queueStore.svelte.ts +0 -143
  771. /package/build/client/_app/immutable/assets/{9.nv0I59TU.css → 12.nv0I59TU.css} +0 -0
  772. /package/build/client/_app/immutable/assets/{9.nv0I59TU.css.br → 12.nv0I59TU.css.br} +0 -0
@@ -0,0 +1,337 @@
1
+ import { _ as tagLabel, X as ruleCategoryLabel } from './TagPalette-CpdTiC_7.js';
2
+ import { s as surfaceTypeLabel, e as effectTypeLabel } from './Effect-BJtLR-6l.js';
3
+ import { h as humanizeStatePath } from './humanize-CkCPfeWi.js';
4
+
5
+ //#region src/features/global-search/domain/searchNav.ts
6
+ /** Build a feature-editor deep link, omitting params left at their defaults. */
7
+ var featureHref = (featureId, options = {}) => {
8
+ const params = new URLSearchParams();
9
+ if (options.tab && options.tab !== "build") params.set("tab", options.tab);
10
+ if (options.surface) params.set("surface", options.surface);
11
+ if (options.panel && options.panel !== "actions") params.set("panel", options.panel);
12
+ if (options.focus) params.set("focus", options.focus);
13
+ const qs = params.toString();
14
+ return `/features/${encodeURIComponent(featureId)}${qs ? `?${qs}` : ""}`;
15
+ };
16
+ var projectHref = (projectId) => `/projects/${encodeURIComponent(projectId)}`;
17
+ var domainHref = (domainId) => `/domains/${encodeURIComponent(domainId)}`;
18
+ /** Focus token for an action's editor card (`data-focus-target` in ActionEditor). */
19
+ var actionFocus = (actionId) => `action:${actionId}`;
20
+ /** Focus token for a surface-panel tab body (`data-focus-target` in SurfacePanel). */
21
+ var surfaceTabFocus = (surfaceId, panel) => `tab:${surfaceId}:${panel}`;
22
+ //#endregion
23
+ //#region src/features/global-search/domain/buildSearchDocs.ts
24
+ /** Join defined, non-empty parts into one lowercased corpus string. */
25
+ var corpus = (...parts) => parts.filter((p) => typeof p === "string" && p.trim().length > 0).join(" ").toLowerCase();
26
+ var tagsCorpus = (tags) => (tags ?? []).map(tagLabel).join(" ");
27
+ /** A short, human label for a state/parameter value or expression. */
28
+ var valueText = (value) => {
29
+ if (value === null || value === void 0) return "";
30
+ if (typeof value === "object") try {
31
+ return JSON.stringify(value);
32
+ } catch {
33
+ return "";
34
+ }
35
+ return String(value);
36
+ };
37
+ /** One-line summary of an effect, for both display and matching. */
38
+ var effectSummary = (effect) => {
39
+ switch (effect.type) {
40
+ case "set_state": return `Set ${effect.path} = ${valueText(effect.value)}`.trim();
41
+ case "show_message": return `“${effect.message}”`;
42
+ case "emit_event": return `Emit ${effect.event}`;
43
+ case "block_action": return `Block: ${effect.reason}`;
44
+ case "allow_action": return "Allow action";
45
+ case "transition_surface": return "Transition surface";
46
+ case "append_to_list": return `Append to ${effect.path}`;
47
+ case "remove_from_list": return `Remove from ${effect.path}`;
48
+ case "update_list_item": return `Update ${effect.field} in ${effect.path}`;
49
+ case "advance_time": return "Advance time";
50
+ }
51
+ };
52
+ var ruleTitle = (rule) => rule.description?.trim() || `${ruleCategoryLabel(rule.category)} rule`;
53
+ /**
54
+ * Walk the entire behavior model and emit one {@link SearchDoc} per element.
55
+ * Pure and total: the single source of truth for "what is searchable". Order
56
+ * is stable (domains, projects, then each feature's full sub-tree) so the
57
+ * scorer's index tiebreak is deterministic.
58
+ */
59
+ var buildSearchDocs = (input) => {
60
+ const docs = [];
61
+ const featureToProject = /* @__PURE__ */ new Map();
62
+ for (const project of input.projects) for (const fid of project.featureIds) if (!featureToProject.has(fid)) featureToProject.set(fid, {
63
+ id: project.id,
64
+ name: project.name
65
+ });
66
+ const push = (doc) => {
67
+ docs.push(doc);
68
+ };
69
+ for (const domain of input.domains) push({
70
+ id: `domain:${domain.id}`,
71
+ kind: "domain",
72
+ title: domain.name,
73
+ subtitle: domain.description,
74
+ haystack: corpus(domain.name, domain.description),
75
+ nav: { href: domainHref(domain.id) }
76
+ });
77
+ for (const project of input.projects) push({
78
+ id: `project:${project.id}`,
79
+ kind: "project",
80
+ title: project.name,
81
+ subtitle: project.description,
82
+ projectId: project.id,
83
+ projectName: project.name,
84
+ haystack: corpus(project.name, project.description, tagsCorpus(project.tags)),
85
+ nav: { href: projectHref(project.id) }
86
+ });
87
+ for (const feature of input.features) {
88
+ const owner = featureToProject.get(String(feature.id));
89
+ const ctx = {
90
+ featureId: String(feature.id),
91
+ featureName: feature.name,
92
+ projectId: owner?.id,
93
+ projectName: owner?.name
94
+ };
95
+ push({
96
+ id: `feature:${ctx.featureId}`,
97
+ kind: "feature",
98
+ title: feature.name,
99
+ subtitle: feature.description,
100
+ projectId: ctx.projectId,
101
+ projectName: ctx.projectName,
102
+ featureId: ctx.featureId,
103
+ featureName: feature.name,
104
+ haystack: corpus(feature.name, feature.description, tagsCorpus(feature.tags)),
105
+ nav: { href: featureHref(ctx.featureId) }
106
+ });
107
+ for (const surface of feature.surfaces) collectSurface(push, surface, ctx);
108
+ for (const persona of feature.personas) {
109
+ const firstSurfaceId = feature.surfaces[0]?.id;
110
+ push({
111
+ id: `persona:${ctx.featureId}:${persona.id}`,
112
+ kind: "persona",
113
+ title: persona.name,
114
+ subtitle: persona.description,
115
+ ...featureCrumb(ctx),
116
+ haystack: corpus(persona.name, persona.description),
117
+ nav: { href: firstSurfaceId ? featureHref(ctx.featureId, {
118
+ surface: String(firstSurfaceId),
119
+ panel: "personas"
120
+ }) : featureHref(ctx.featureId) }
121
+ });
122
+ }
123
+ for (const resource of feature.resources) push({
124
+ id: `resource:${ctx.featureId}:${resource.id}`,
125
+ kind: "resource",
126
+ title: resource.name,
127
+ subtitle: [resource.kind, resource.provider].filter(Boolean).join(" · "),
128
+ ...featureCrumb(ctx),
129
+ haystack: corpus(resource.name, resource.description, resource.provider, resource.location, resource.complianceTags?.join(" ")),
130
+ nav: { href: featureHref(ctx.featureId, { tab: "resources" }) }
131
+ });
132
+ for (const entity of feature.entities) {
133
+ const entityTitle = humanizeStatePath(entity.namespace);
134
+ push({
135
+ id: `entity:${ctx.featureId}:${entity.id}`,
136
+ kind: "entity",
137
+ title: entityTitle,
138
+ subtitle: entity.description,
139
+ ...featureCrumb(ctx),
140
+ haystack: corpus(entityTitle, entity.namespace, entity.description),
141
+ nav: { href: featureHref(ctx.featureId, { tab: "data" }) }
142
+ });
143
+ for (const field of entity.fields) collectEntityField(push, field, entity.id, entityTitle, ctx);
144
+ }
145
+ for (const event of feature.events ?? []) push({
146
+ id: `event:${ctx.featureId}:${event.id}`,
147
+ kind: "event",
148
+ title: String(event.name),
149
+ subtitle: event.description,
150
+ ...featureCrumb(ctx),
151
+ haystack: corpus(String(event.name), event.description, (event.payloadSchema ?? []).map((f) => f.name).join(" ")),
152
+ nav: { href: featureHref(ctx.featureId, { tab: "events" }) }
153
+ });
154
+ for (const valueSet of feature.valueSets ?? []) push({
155
+ id: `value-set:${ctx.featureId}:${valueSet.id}`,
156
+ kind: "value-set",
157
+ title: valueSet.name,
158
+ subtitle: valueSet.values.join(", "),
159
+ ...featureCrumb(ctx),
160
+ haystack: corpus(valueSet.name, valueSet.description, valueSet.values.join(" ")),
161
+ nav: { href: featureHref(ctx.featureId, { tab: "data" }) }
162
+ });
163
+ for (const invariant of feature.featureInvariants ?? []) push({
164
+ id: `invariant:${ctx.featureId}:feature:${invariant.id}`,
165
+ kind: "invariant",
166
+ title: invariant.name,
167
+ subtitle: invariant.message || invariant.description,
168
+ ...featureCrumb(ctx),
169
+ haystack: corpus(invariant.name, invariant.message, invariant.description),
170
+ nav: { href: featureHref(ctx.featureId, { tab: "invariants" }) }
171
+ });
172
+ }
173
+ return docs;
174
+ };
175
+ var featureCrumb = (ctx) => ({
176
+ projectId: ctx.projectId,
177
+ projectName: ctx.projectName,
178
+ featureId: ctx.featureId,
179
+ featureName: ctx.featureName
180
+ });
181
+ var surfaceCrumb = (ctx, surface) => ({
182
+ ...featureCrumb(ctx),
183
+ surfaceId: String(surface.id),
184
+ surfaceName: surface.name
185
+ });
186
+ var collectSurface = (push, surface, ctx) => {
187
+ const surfaceId = String(surface.id);
188
+ push({
189
+ id: `surface:${ctx.featureId}:${surfaceId}`,
190
+ kind: "surface",
191
+ title: surface.name,
192
+ subtitle: [surfaceTypeLabel(surface.type), surface.description].filter(Boolean).join(" · "),
193
+ ...surfaceCrumb(ctx, surface),
194
+ haystack: corpus(surface.name, surfaceTypeLabel(surface.type), surface.description),
195
+ nav: { href: featureHref(ctx.featureId, { surface: surfaceId }) }
196
+ });
197
+ for (const def of surface.stateDefinitions) {
198
+ const title = humanizeStatePath(def.path);
199
+ push({
200
+ id: `state:${ctx.featureId}:${surfaceId}:${def.id}`,
201
+ kind: "state",
202
+ title,
203
+ subtitle: [def.type, def.description].filter(Boolean).join(" · "),
204
+ ...surfaceCrumb(ctx, surface),
205
+ haystack: corpus(title, String(def.path), def.type, def.description),
206
+ nav: { href: featureHref(ctx.featureId, {
207
+ surface: surfaceId,
208
+ panel: "state",
209
+ focus: surfaceTabFocus(surfaceId, "state")
210
+ }) }
211
+ });
212
+ }
213
+ for (const rule of surface.rules) push({
214
+ id: `rule:${ctx.featureId}:${surfaceId}:${rule.id}`,
215
+ kind: "rule",
216
+ title: ruleTitle(rule),
217
+ subtitle: `${ruleCategoryLabel(rule.category)} · ${effectSummary(rule.effect)}`,
218
+ ...surfaceCrumb(ctx, surface),
219
+ haystack: corpus(rule.description, ruleCategoryLabel(rule.category), effectSummary(rule.effect)),
220
+ nav: { href: featureHref(ctx.featureId, {
221
+ surface: surfaceId,
222
+ panel: "rules",
223
+ focus: surfaceTabFocus(surfaceId, "rules")
224
+ }) }
225
+ });
226
+ for (const invariant of surface.invariants) push({
227
+ id: `invariant:${ctx.featureId}:${surfaceId}:${invariant.id}`,
228
+ kind: "invariant",
229
+ title: invariant.name,
230
+ subtitle: invariant.message || invariant.description,
231
+ ...surfaceCrumb(ctx, surface),
232
+ haystack: corpus(invariant.name, invariant.message, invariant.description),
233
+ nav: { href: featureHref(ctx.featureId, {
234
+ surface: surfaceId,
235
+ panel: "invariants",
236
+ focus: surfaceTabFocus(surfaceId, "invariants")
237
+ }) }
238
+ });
239
+ for (const transition of surface.transitions) {
240
+ const title = transition.label?.trim() || "Transition";
241
+ push({
242
+ id: `transition:${ctx.featureId}:${surfaceId}:${transition.id}`,
243
+ kind: "transition",
244
+ title,
245
+ subtitle: transition.description,
246
+ ...surfaceCrumb(ctx, surface),
247
+ haystack: corpus(transition.label, transition.description),
248
+ nav: { href: featureHref(ctx.featureId, { tab: "transitions" }) }
249
+ });
250
+ }
251
+ for (const action of surface.actions) collectAction(push, action, surface, ctx);
252
+ };
253
+ var collectAction = (push, action, surface, ctx) => {
254
+ const surfaceId = String(surface.id);
255
+ const actionId = String(action.id);
256
+ const actionHref = featureHref(ctx.featureId, {
257
+ surface: surfaceId,
258
+ panel: "actions",
259
+ focus: actionFocus(actionId)
260
+ });
261
+ push({
262
+ id: `action:${ctx.featureId}:${actionId}`,
263
+ kind: "action",
264
+ title: action.name,
265
+ subtitle: action.intent,
266
+ ...surfaceCrumb(ctx, surface),
267
+ haystack: corpus(action.name, action.intent, (action.roles ?? []).join(" ")),
268
+ nav: { href: actionHref }
269
+ });
270
+ for (const parameter of action.parameters) push({
271
+ id: `parameter:${ctx.featureId}:${actionId}:${parameter.id}`,
272
+ kind: "parameter",
273
+ title: parameter.name,
274
+ subtitle: [parameter.type, parameter.description].filter(Boolean).join(" · "),
275
+ ...surfaceCrumb(ctx, surface),
276
+ haystack: corpus(parameter.name, parameter.type, parameter.description),
277
+ nav: { href: actionHref }
278
+ });
279
+ for (const rule of action.rules) push({
280
+ id: `rule:${ctx.featureId}:${actionId}:${rule.id}`,
281
+ kind: "rule",
282
+ title: ruleTitle(rule),
283
+ subtitle: `${ruleCategoryLabel(rule.category)} · ${effectSummary(rule.effect)}`,
284
+ ...surfaceCrumb(ctx, surface),
285
+ haystack: corpus(rule.description, ruleCategoryLabel(rule.category), effectSummary(rule.effect)),
286
+ nav: { href: actionHref }
287
+ });
288
+ const effects = [...action.effects, ...action.onBlockedEffects ?? []];
289
+ for (const effect of effects) push({
290
+ id: `effect:${ctx.featureId}:${actionId}:${effect.id}`,
291
+ kind: "effect",
292
+ title: effectSummary(effect),
293
+ subtitle: `${effectTypeLabel(effect.type)} · ${action.name}`,
294
+ ...surfaceCrumb(ctx, surface),
295
+ haystack: corpus(effectSummary(effect), effectTypeLabel(effect.type), effect.description),
296
+ nav: { href: actionHref }
297
+ });
298
+ for (const invariant of action.invariants) push({
299
+ id: `invariant:${ctx.featureId}:${actionId}:${invariant.id}`,
300
+ kind: "invariant",
301
+ title: invariant.name,
302
+ subtitle: invariant.message || invariant.description,
303
+ ...surfaceCrumb(ctx, surface),
304
+ haystack: corpus(invariant.name, invariant.message, invariant.description),
305
+ nav: { href: actionHref }
306
+ });
307
+ for (const scenario of action.scenarios ?? []) push({
308
+ id: `scenario:${ctx.featureId}:${actionId}:${scenario.id}`,
309
+ kind: "scenario",
310
+ title: scenario.name,
311
+ subtitle: [scenario.description, `${action.name} scenario`].filter(Boolean).join(" · "),
312
+ ...surfaceCrumb(ctx, surface),
313
+ haystack: corpus(scenario.name, scenario.description, action.name),
314
+ nav: { href: actionHref }
315
+ });
316
+ };
317
+ var collectEntityField = (push, field, entityId, entityTitle, ctx, prefix = "") => {
318
+ const path = prefix ? `${prefix}.${field.name}` : field.name;
319
+ push({
320
+ id: `entity-field:${ctx.featureId}:${entityId}:${path}`,
321
+ kind: "entity-field",
322
+ title: field.name,
323
+ subtitle: [
324
+ field.type,
325
+ entityTitle,
326
+ field.description
327
+ ].filter(Boolean).join(" · "),
328
+ ...featureCrumb(ctx),
329
+ haystack: corpus(field.name, field.type, entityTitle, field.description, field.path),
330
+ nav: { href: featureHref(ctx.featureId, { tab: "data" }) }
331
+ });
332
+ for (const child of field.fields ?? []) collectEntityField(push, child, entityId, entityTitle, ctx, path);
333
+ if (field.items) collectEntityField(push, field.items, entityId, entityTitle, ctx, `${path}[]`);
334
+ };
335
+
336
+ export { buildSearchDocs as b };
337
+ //# sourceMappingURL=buildSearchDocs-Cyfrnw9G.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildSearchDocs-Cyfrnw9G.js","sources":["../../../.svelte-kit/adapter-node/chunks/buildSearchDocs.js"],"sourcesContent":["import { A as ruleCategoryLabel, et as tagLabel } from \"./TagPalette.js\";\nimport { n as effectTypeLabel, r as surfaceTypeLabel } from \"./Effect.js\";\nimport { t as humanizeStatePath } from \"./humanize.js\";\n//#region src/features/global-search/domain/searchNav.ts\n/** Build a feature-editor deep link, omitting params left at their defaults. */\nvar featureHref = (featureId, options = {}) => {\n\tconst params = new URLSearchParams();\n\tif (options.tab && options.tab !== \"build\") params.set(\"tab\", options.tab);\n\tif (options.surface) params.set(\"surface\", options.surface);\n\tif (options.panel && options.panel !== \"actions\") params.set(\"panel\", options.panel);\n\tif (options.focus) params.set(\"focus\", options.focus);\n\tconst qs = params.toString();\n\treturn `/features/${encodeURIComponent(featureId)}${qs ? `?${qs}` : \"\"}`;\n};\nvar projectHref = (projectId) => `/projects/${encodeURIComponent(projectId)}`;\nvar domainHref = (domainId) => `/domains/${encodeURIComponent(domainId)}`;\n/** Focus token for an action's editor card (`data-focus-target` in ActionEditor). */\nvar actionFocus = (actionId) => `action:${actionId}`;\n/** Focus token for a surface-panel tab body (`data-focus-target` in SurfacePanel). */\nvar surfaceTabFocus = (surfaceId, panel) => `tab:${surfaceId}:${panel}`;\n//#endregion\n//#region src/features/global-search/domain/buildSearchDocs.ts\n/** Join defined, non-empty parts into one lowercased corpus string. */\nvar corpus = (...parts) => parts.filter((p) => typeof p === \"string\" && p.trim().length > 0).join(\" \").toLowerCase();\nvar tagsCorpus = (tags) => (tags ?? []).map(tagLabel).join(\" \");\n/** A short, human label for a state/parameter value or expression. */\nvar valueText = (value) => {\n\tif (value === null || value === void 0) return \"\";\n\tif (typeof value === \"object\") try {\n\t\treturn JSON.stringify(value);\n\t} catch {\n\t\treturn \"\";\n\t}\n\treturn String(value);\n};\n/** One-line summary of an effect, for both display and matching. */\nvar effectSummary = (effect) => {\n\tswitch (effect.type) {\n\t\tcase \"set_state\": return `Set ${effect.path} = ${valueText(effect.value)}`.trim();\n\t\tcase \"show_message\": return `“${effect.message}”`;\n\t\tcase \"emit_event\": return `Emit ${effect.event}`;\n\t\tcase \"block_action\": return `Block: ${effect.reason}`;\n\t\tcase \"allow_action\": return \"Allow action\";\n\t\tcase \"transition_surface\": return \"Transition surface\";\n\t\tcase \"append_to_list\": return `Append to ${effect.path}`;\n\t\tcase \"remove_from_list\": return `Remove from ${effect.path}`;\n\t\tcase \"update_list_item\": return `Update ${effect.field} in ${effect.path}`;\n\t\tcase \"advance_time\": return \"Advance time\";\n\t}\n};\nvar ruleTitle = (rule) => rule.description?.trim() || `${ruleCategoryLabel(rule.category)} rule`;\n/**\n* Walk the entire behavior model and emit one {@link SearchDoc} per element.\n* Pure and total: the single source of truth for \"what is searchable\". Order\n* is stable (domains, projects, then each feature's full sub-tree) so the\n* scorer's index tiebreak is deterministic.\n*/\nvar buildSearchDocs = (input) => {\n\tconst docs = [];\n\tconst featureToProject = /* @__PURE__ */ new Map();\n\tfor (const project of input.projects) for (const fid of project.featureIds) if (!featureToProject.has(fid)) featureToProject.set(fid, {\n\t\tid: project.id,\n\t\tname: project.name\n\t});\n\tconst push = (doc) => {\n\t\tdocs.push(doc);\n\t};\n\tfor (const domain of input.domains) push({\n\t\tid: `domain:${domain.id}`,\n\t\tkind: \"domain\",\n\t\ttitle: domain.name,\n\t\tsubtitle: domain.description,\n\t\thaystack: corpus(domain.name, domain.description),\n\t\tnav: { href: domainHref(domain.id) }\n\t});\n\tfor (const project of input.projects) push({\n\t\tid: `project:${project.id}`,\n\t\tkind: \"project\",\n\t\ttitle: project.name,\n\t\tsubtitle: project.description,\n\t\tprojectId: project.id,\n\t\tprojectName: project.name,\n\t\thaystack: corpus(project.name, project.description, tagsCorpus(project.tags)),\n\t\tnav: { href: projectHref(project.id) }\n\t});\n\tfor (const feature of input.features) {\n\t\tconst owner = featureToProject.get(String(feature.id));\n\t\tconst ctx = {\n\t\t\tfeatureId: String(feature.id),\n\t\t\tfeatureName: feature.name,\n\t\t\tprojectId: owner?.id,\n\t\t\tprojectName: owner?.name\n\t\t};\n\t\tpush({\n\t\t\tid: `feature:${ctx.featureId}`,\n\t\t\tkind: \"feature\",\n\t\t\ttitle: feature.name,\n\t\t\tsubtitle: feature.description,\n\t\t\tprojectId: ctx.projectId,\n\t\t\tprojectName: ctx.projectName,\n\t\t\tfeatureId: ctx.featureId,\n\t\t\tfeatureName: feature.name,\n\t\t\thaystack: corpus(feature.name, feature.description, tagsCorpus(feature.tags)),\n\t\t\tnav: { href: featureHref(ctx.featureId) }\n\t\t});\n\t\tfor (const surface of feature.surfaces) collectSurface(push, surface, ctx);\n\t\tfor (const persona of feature.personas) {\n\t\t\tconst firstSurfaceId = feature.surfaces[0]?.id;\n\t\t\tpush({\n\t\t\t\tid: `persona:${ctx.featureId}:${persona.id}`,\n\t\t\t\tkind: \"persona\",\n\t\t\t\ttitle: persona.name,\n\t\t\t\tsubtitle: persona.description,\n\t\t\t\t...featureCrumb(ctx),\n\t\t\t\thaystack: corpus(persona.name, persona.description),\n\t\t\t\tnav: { href: firstSurfaceId ? featureHref(ctx.featureId, {\n\t\t\t\t\tsurface: String(firstSurfaceId),\n\t\t\t\t\tpanel: \"personas\"\n\t\t\t\t}) : featureHref(ctx.featureId) }\n\t\t\t});\n\t\t}\n\t\tfor (const resource of feature.resources) push({\n\t\t\tid: `resource:${ctx.featureId}:${resource.id}`,\n\t\t\tkind: \"resource\",\n\t\t\ttitle: resource.name,\n\t\t\tsubtitle: [resource.kind, resource.provider].filter(Boolean).join(\" · \"),\n\t\t\t...featureCrumb(ctx),\n\t\t\thaystack: corpus(resource.name, resource.description, resource.provider, resource.location, resource.complianceTags?.join(\" \")),\n\t\t\tnav: { href: featureHref(ctx.featureId, { tab: \"resources\" }) }\n\t\t});\n\t\tfor (const entity of feature.entities) {\n\t\t\tconst entityTitle = humanizeStatePath(entity.namespace);\n\t\t\tpush({\n\t\t\t\tid: `entity:${ctx.featureId}:${entity.id}`,\n\t\t\t\tkind: \"entity\",\n\t\t\t\ttitle: entityTitle,\n\t\t\t\tsubtitle: entity.description,\n\t\t\t\t...featureCrumb(ctx),\n\t\t\t\thaystack: corpus(entityTitle, entity.namespace, entity.description),\n\t\t\t\tnav: { href: featureHref(ctx.featureId, { tab: \"data\" }) }\n\t\t\t});\n\t\t\tfor (const field of entity.fields) collectEntityField(push, field, entity.id, entityTitle, ctx);\n\t\t}\n\t\tfor (const event of feature.events ?? []) push({\n\t\t\tid: `event:${ctx.featureId}:${event.id}`,\n\t\t\tkind: \"event\",\n\t\t\ttitle: String(event.name),\n\t\t\tsubtitle: event.description,\n\t\t\t...featureCrumb(ctx),\n\t\t\thaystack: corpus(String(event.name), event.description, (event.payloadSchema ?? []).map((f) => f.name).join(\" \")),\n\t\t\tnav: { href: featureHref(ctx.featureId, { tab: \"events\" }) }\n\t\t});\n\t\tfor (const valueSet of feature.valueSets ?? []) push({\n\t\t\tid: `value-set:${ctx.featureId}:${valueSet.id}`,\n\t\t\tkind: \"value-set\",\n\t\t\ttitle: valueSet.name,\n\t\t\tsubtitle: valueSet.values.join(\", \"),\n\t\t\t...featureCrumb(ctx),\n\t\t\thaystack: corpus(valueSet.name, valueSet.description, valueSet.values.join(\" \")),\n\t\t\tnav: { href: featureHref(ctx.featureId, { tab: \"data\" }) }\n\t\t});\n\t\tfor (const invariant of feature.featureInvariants ?? []) push({\n\t\t\tid: `invariant:${ctx.featureId}:feature:${invariant.id}`,\n\t\t\tkind: \"invariant\",\n\t\t\ttitle: invariant.name,\n\t\t\tsubtitle: invariant.message || invariant.description,\n\t\t\t...featureCrumb(ctx),\n\t\t\thaystack: corpus(invariant.name, invariant.message, invariant.description),\n\t\t\tnav: { href: featureHref(ctx.featureId, { tab: \"invariants\" }) }\n\t\t});\n\t}\n\treturn docs;\n};\nvar featureCrumb = (ctx) => ({\n\tprojectId: ctx.projectId,\n\tprojectName: ctx.projectName,\n\tfeatureId: ctx.featureId,\n\tfeatureName: ctx.featureName\n});\nvar surfaceCrumb = (ctx, surface) => ({\n\t...featureCrumb(ctx),\n\tsurfaceId: String(surface.id),\n\tsurfaceName: surface.name\n});\nvar collectSurface = (push, surface, ctx) => {\n\tconst surfaceId = String(surface.id);\n\tpush({\n\t\tid: `surface:${ctx.featureId}:${surfaceId}`,\n\t\tkind: \"surface\",\n\t\ttitle: surface.name,\n\t\tsubtitle: [surfaceTypeLabel(surface.type), surface.description].filter(Boolean).join(\" · \"),\n\t\t...surfaceCrumb(ctx, surface),\n\t\thaystack: corpus(surface.name, surfaceTypeLabel(surface.type), surface.description),\n\t\tnav: { href: featureHref(ctx.featureId, { surface: surfaceId }) }\n\t});\n\tfor (const def of surface.stateDefinitions) {\n\t\tconst title = humanizeStatePath(def.path);\n\t\tpush({\n\t\t\tid: `state:${ctx.featureId}:${surfaceId}:${def.id}`,\n\t\t\tkind: \"state\",\n\t\t\ttitle,\n\t\t\tsubtitle: [def.type, def.description].filter(Boolean).join(\" · \"),\n\t\t\t...surfaceCrumb(ctx, surface),\n\t\t\thaystack: corpus(title, String(def.path), def.type, def.description),\n\t\t\tnav: { href: featureHref(ctx.featureId, {\n\t\t\t\tsurface: surfaceId,\n\t\t\t\tpanel: \"state\",\n\t\t\t\tfocus: surfaceTabFocus(surfaceId, \"state\")\n\t\t\t}) }\n\t\t});\n\t}\n\tfor (const rule of surface.rules) push({\n\t\tid: `rule:${ctx.featureId}:${surfaceId}:${rule.id}`,\n\t\tkind: \"rule\",\n\t\ttitle: ruleTitle(rule),\n\t\tsubtitle: `${ruleCategoryLabel(rule.category)} · ${effectSummary(rule.effect)}`,\n\t\t...surfaceCrumb(ctx, surface),\n\t\thaystack: corpus(rule.description, ruleCategoryLabel(rule.category), effectSummary(rule.effect)),\n\t\tnav: { href: featureHref(ctx.featureId, {\n\t\t\tsurface: surfaceId,\n\t\t\tpanel: \"rules\",\n\t\t\tfocus: surfaceTabFocus(surfaceId, \"rules\")\n\t\t}) }\n\t});\n\tfor (const invariant of surface.invariants) push({\n\t\tid: `invariant:${ctx.featureId}:${surfaceId}:${invariant.id}`,\n\t\tkind: \"invariant\",\n\t\ttitle: invariant.name,\n\t\tsubtitle: invariant.message || invariant.description,\n\t\t...surfaceCrumb(ctx, surface),\n\t\thaystack: corpus(invariant.name, invariant.message, invariant.description),\n\t\tnav: { href: featureHref(ctx.featureId, {\n\t\t\tsurface: surfaceId,\n\t\t\tpanel: \"invariants\",\n\t\t\tfocus: surfaceTabFocus(surfaceId, \"invariants\")\n\t\t}) }\n\t});\n\tfor (const transition of surface.transitions) {\n\t\tconst title = transition.label?.trim() || \"Transition\";\n\t\tpush({\n\t\t\tid: `transition:${ctx.featureId}:${surfaceId}:${transition.id}`,\n\t\t\tkind: \"transition\",\n\t\t\ttitle,\n\t\t\tsubtitle: transition.description,\n\t\t\t...surfaceCrumb(ctx, surface),\n\t\t\thaystack: corpus(transition.label, transition.description),\n\t\t\tnav: { href: featureHref(ctx.featureId, { tab: \"transitions\" }) }\n\t\t});\n\t}\n\tfor (const action of surface.actions) collectAction(push, action, surface, ctx);\n};\nvar collectAction = (push, action, surface, ctx) => {\n\tconst surfaceId = String(surface.id);\n\tconst actionId = String(action.id);\n\tconst actionHref = featureHref(ctx.featureId, {\n\t\tsurface: surfaceId,\n\t\tpanel: \"actions\",\n\t\tfocus: actionFocus(actionId)\n\t});\n\tpush({\n\t\tid: `action:${ctx.featureId}:${actionId}`,\n\t\tkind: \"action\",\n\t\ttitle: action.name,\n\t\tsubtitle: action.intent,\n\t\t...surfaceCrumb(ctx, surface),\n\t\thaystack: corpus(action.name, action.intent, (action.roles ?? []).join(\" \")),\n\t\tnav: { href: actionHref }\n\t});\n\tfor (const parameter of action.parameters) push({\n\t\tid: `parameter:${ctx.featureId}:${actionId}:${parameter.id}`,\n\t\tkind: \"parameter\",\n\t\ttitle: parameter.name,\n\t\tsubtitle: [parameter.type, parameter.description].filter(Boolean).join(\" · \"),\n\t\t...surfaceCrumb(ctx, surface),\n\t\thaystack: corpus(parameter.name, parameter.type, parameter.description),\n\t\tnav: { href: actionHref }\n\t});\n\tfor (const rule of action.rules) push({\n\t\tid: `rule:${ctx.featureId}:${actionId}:${rule.id}`,\n\t\tkind: \"rule\",\n\t\ttitle: ruleTitle(rule),\n\t\tsubtitle: `${ruleCategoryLabel(rule.category)} · ${effectSummary(rule.effect)}`,\n\t\t...surfaceCrumb(ctx, surface),\n\t\thaystack: corpus(rule.description, ruleCategoryLabel(rule.category), effectSummary(rule.effect)),\n\t\tnav: { href: actionHref }\n\t});\n\tconst effects = [...action.effects, ...action.onBlockedEffects ?? []];\n\tfor (const effect of effects) push({\n\t\tid: `effect:${ctx.featureId}:${actionId}:${effect.id}`,\n\t\tkind: \"effect\",\n\t\ttitle: effectSummary(effect),\n\t\tsubtitle: `${effectTypeLabel(effect.type)} · ${action.name}`,\n\t\t...surfaceCrumb(ctx, surface),\n\t\thaystack: corpus(effectSummary(effect), effectTypeLabel(effect.type), effect.description),\n\t\tnav: { href: actionHref }\n\t});\n\tfor (const invariant of action.invariants) push({\n\t\tid: `invariant:${ctx.featureId}:${actionId}:${invariant.id}`,\n\t\tkind: \"invariant\",\n\t\ttitle: invariant.name,\n\t\tsubtitle: invariant.message || invariant.description,\n\t\t...surfaceCrumb(ctx, surface),\n\t\thaystack: corpus(invariant.name, invariant.message, invariant.description),\n\t\tnav: { href: actionHref }\n\t});\n\tfor (const scenario of action.scenarios ?? []) push({\n\t\tid: `scenario:${ctx.featureId}:${actionId}:${scenario.id}`,\n\t\tkind: \"scenario\",\n\t\ttitle: scenario.name,\n\t\tsubtitle: [scenario.description, `${action.name} scenario`].filter(Boolean).join(\" · \"),\n\t\t...surfaceCrumb(ctx, surface),\n\t\thaystack: corpus(scenario.name, scenario.description, action.name),\n\t\tnav: { href: actionHref }\n\t});\n};\nvar collectEntityField = (push, field, entityId, entityTitle, ctx, prefix = \"\") => {\n\tconst path = prefix ? `${prefix}.${field.name}` : field.name;\n\tpush({\n\t\tid: `entity-field:${ctx.featureId}:${entityId}:${path}`,\n\t\tkind: \"entity-field\",\n\t\ttitle: field.name,\n\t\tsubtitle: [\n\t\t\tfield.type,\n\t\t\tentityTitle,\n\t\t\tfield.description\n\t\t].filter(Boolean).join(\" · \"),\n\t\t...featureCrumb(ctx),\n\t\thaystack: corpus(field.name, field.type, entityTitle, field.description, field.path),\n\t\tnav: { href: featureHref(ctx.featureId, { tab: \"data\" }) }\n\t});\n\tfor (const child of field.fields ?? []) collectEntityField(push, child, entityId, entityTitle, ctx, path);\n\tif (field.items) collectEntityField(push, field.items, entityId, entityTitle, ctx, `${path}[]`);\n};\n//#endregion\nexport { buildSearchDocs as t };\n"],"names":[],"mappings":"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"}