@openpalm/ui 0.12.0-rc.6 → 0.12.0-rc.7

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 (312) hide show
  1. package/build/.openpalm-ui-version +1 -1
  2. package/build/client/_app/immutable/chunks/{RdJLMCQn.js → 5BMpZHAs.js} +1 -1
  3. package/build/client/_app/immutable/chunks/5BMpZHAs.js.br +0 -0
  4. package/build/client/_app/immutable/chunks/5BMpZHAs.js.gz +0 -0
  5. package/build/client/_app/immutable/chunks/BEftex7t.js +1 -0
  6. package/build/client/_app/immutable/chunks/BEftex7t.js.br +2 -0
  7. package/build/client/_app/immutable/chunks/BEftex7t.js.gz +0 -0
  8. package/build/client/_app/immutable/chunks/{DVcQKE3j.js → Bcya9nj3.js} +1 -1
  9. package/build/client/_app/immutable/chunks/Bcya9nj3.js.br +0 -0
  10. package/build/client/_app/immutable/chunks/Bcya9nj3.js.gz +0 -0
  11. package/build/client/_app/immutable/chunks/{CE531wHb.js → DEBpD4po.js} +1 -1
  12. package/build/client/_app/immutable/chunks/DEBpD4po.js.br +0 -0
  13. package/build/client/_app/immutable/chunks/DEBpD4po.js.gz +0 -0
  14. package/build/client/_app/immutable/chunks/rDI4bIpX.js +3 -0
  15. package/build/client/_app/immutable/chunks/rDI4bIpX.js.br +0 -0
  16. package/build/client/_app/immutable/chunks/rDI4bIpX.js.gz +0 -0
  17. package/build/client/_app/immutable/entry/{app.CUn29SZU.js → app.DFQGhmyM.js} +2 -2
  18. package/build/client/_app/immutable/entry/app.DFQGhmyM.js.br +0 -0
  19. package/build/client/_app/immutable/entry/app.DFQGhmyM.js.gz +0 -0
  20. package/build/client/_app/immutable/entry/start.B6JcTP5e.js +1 -0
  21. package/build/client/_app/immutable/entry/start.B6JcTP5e.js.br +0 -0
  22. package/build/client/_app/immutable/entry/start.B6JcTP5e.js.gz +0 -0
  23. package/build/client/_app/immutable/nodes/{1.mardR1GM.js → 1.BXWidUif.js} +1 -1
  24. package/build/client/_app/immutable/nodes/1.BXWidUif.js.br +0 -0
  25. package/build/client/_app/immutable/nodes/1.BXWidUif.js.gz +0 -0
  26. package/build/client/_app/immutable/nodes/{4.Xwy82DBw.js → 4.Dw5Q4nOr.js} +1 -1
  27. package/build/client/_app/immutable/nodes/4.Dw5Q4nOr.js.br +0 -0
  28. package/build/client/_app/immutable/nodes/4.Dw5Q4nOr.js.gz +0 -0
  29. package/build/client/_app/immutable/nodes/{5.BzSSj_Jb.js → 5.PnPlEX57.js} +1 -1
  30. package/build/client/_app/immutable/nodes/5.PnPlEX57.js.br +0 -0
  31. package/build/client/_app/immutable/nodes/5.PnPlEX57.js.gz +0 -0
  32. package/build/client/_app/immutable/nodes/{6.DTZkqQeu.js → 6.B6ILluB-.js} +1 -1
  33. package/build/client/_app/immutable/nodes/6.B6ILluB-.js.br +0 -0
  34. package/build/client/_app/immutable/nodes/6.B6ILluB-.js.gz +0 -0
  35. package/build/client/_app/immutable/nodes/{7.bM3nkvkD.js → 7.CCy2vH83.js} +1 -1
  36. package/build/client/_app/immutable/nodes/7.CCy2vH83.js.br +0 -0
  37. package/build/client/_app/immutable/nodes/7.CCy2vH83.js.gz +0 -0
  38. package/build/client/_app/immutable/nodes/{8.CQzqLUid.js → 8.DF0SDD7S.js} +1 -1
  39. package/build/client/_app/immutable/nodes/8.DF0SDD7S.js.br +0 -0
  40. package/build/client/_app/immutable/nodes/8.DF0SDD7S.js.gz +0 -0
  41. package/build/client/_app/version.json +1 -1
  42. package/build/client/_app/version.json.br +1 -1
  43. package/build/client/_app/version.json.gz +0 -0
  44. package/build/server/chunks/1-DCycfbgI.js +9 -0
  45. package/build/server/chunks/{1-Bgq_vafP.js.map → 1-DCycfbgI.js.map} +1 -1
  46. package/build/server/chunks/{10-DPX0mmNG.js → 10-BNTNl_8A.js} +4 -4
  47. package/build/server/chunks/{10-DPX0mmNG.js.map → 10-BNTNl_8A.js.map} +1 -1
  48. package/build/server/chunks/4-CZO-DYB_.js +9 -0
  49. package/build/server/chunks/{4-DFf3P2Yi.js.map → 4-CZO-DYB_.js.map} +1 -1
  50. package/build/server/chunks/{5-DRtZiNh5.js → 5-DDQgFoHm.js} +3 -3
  51. package/build/server/chunks/{5-DRtZiNh5.js.map → 5-DDQgFoHm.js.map} +1 -1
  52. package/build/server/chunks/{6-Czgmkfyy.js → 6-ClJAXBKe.js} +3 -3
  53. package/build/server/chunks/{6-Czgmkfyy.js.map → 6-ClJAXBKe.js.map} +1 -1
  54. package/build/server/chunks/7-Cc7zFraB.js +9 -0
  55. package/build/server/chunks/{7-Ds6TGWHp.js.map → 7-Cc7zFraB.js.map} +1 -1
  56. package/build/server/chunks/{8-BG329mWx.js → 8-CxRlct4z.js} +3 -3
  57. package/build/server/chunks/{8-BG329mWx.js.map → 8-CxRlct4z.js.map} +1 -1
  58. package/build/server/chunks/{ChatMessage-CoLKsCtm.js → ChatMessage-DtV3FzvL.js} +2 -2
  59. package/build/server/chunks/{ChatMessage-CoLKsCtm.js.map → ChatMessage-DtV3FzvL.js.map} +1 -1
  60. package/build/server/chunks/{Navbar-C7H4bpuo.js → Navbar-HA9zLgjN.js} +3 -3
  61. package/build/server/chunks/{Navbar-C7H4bpuo.js.map → Navbar-HA9zLgjN.js.map} +1 -1
  62. package/build/server/chunks/{_page.svelte-BRyfaVSC.js → _page.svelte-DKGbw9Mh.js} +3 -3
  63. package/build/server/chunks/{_page.svelte-BRyfaVSC.js.map → _page.svelte-DKGbw9Mh.js.map} +1 -1
  64. package/build/server/chunks/{_page.svelte-24LtM_Ph.js → _page.svelte-DVTpa1X1.js} +6 -6
  65. package/build/server/chunks/{_page.svelte-24LtM_Ph.js.map → _page.svelte-DVTpa1X1.js.map} +1 -1
  66. package/build/server/chunks/{_page.svelte-UytzKp_f.js → _page.svelte-DyvNXlN2.js} +5 -5
  67. package/build/server/chunks/{_page.svelte-UytzKp_f.js.map → _page.svelte-DyvNXlN2.js.map} +1 -1
  68. package/build/server/chunks/{_page.svelte-CflmZoJB.js → _page.svelte-G5onUila.js} +5 -5
  69. package/build/server/chunks/{_page.svelte-CflmZoJB.js.map → _page.svelte-G5onUila.js.map} +1 -1
  70. package/build/server/chunks/{_page.svelte-5acOKeXz.js → _page.svelte-n-kbA9NX.js} +7 -7
  71. package/build/server/chunks/{_page.svelte-5acOKeXz.js.map → _page.svelte-n-kbA9NX.js.map} +1 -1
  72. package/build/server/chunks/{_server.ts-fno6Bp-R.js → _server.ts-01PTKnRO.js} +6 -6
  73. package/build/server/chunks/{_server.ts-fno6Bp-R.js.map → _server.ts-01PTKnRO.js.map} +1 -1
  74. package/build/server/chunks/{_server.ts-Cim4q3sY.js → _server.ts-0a4AwkaF.js} +6 -6
  75. package/build/server/chunks/{_server.ts-Cim4q3sY.js.map → _server.ts-0a4AwkaF.js.map} +1 -1
  76. package/build/server/chunks/{_server.ts-D3kltYEu.js → _server.ts-6uzhllSd.js} +5 -5
  77. package/build/server/chunks/{_server.ts-D3kltYEu.js.map → _server.ts-6uzhllSd.js.map} +1 -1
  78. package/build/server/chunks/{_server.ts-BVO0Yol7.js → _server.ts-8aBvlUTu.js} +5 -5
  79. package/build/server/chunks/{_server.ts-BVO0Yol7.js.map → _server.ts-8aBvlUTu.js.map} +1 -1
  80. package/build/server/chunks/{_server.ts-BDAKItPQ.js → _server.ts-BA54VwUJ.js} +5 -5
  81. package/build/server/chunks/{_server.ts-BDAKItPQ.js.map → _server.ts-BA54VwUJ.js.map} +1 -1
  82. package/build/server/chunks/{_server.ts-qCZQFS1u.js → _server.ts-BH8iEseN.js} +6 -6
  83. package/build/server/chunks/{_server.ts-qCZQFS1u.js.map → _server.ts-BH8iEseN.js.map} +1 -1
  84. package/build/server/chunks/{_server.ts-CqgauHdh.js → _server.ts-BJH5nKih.js} +6 -6
  85. package/build/server/chunks/{_server.ts-CqgauHdh.js.map → _server.ts-BJH5nKih.js.map} +1 -1
  86. package/build/server/chunks/{_server.ts-exjcgHcx.js → _server.ts-BKj-eCBS.js} +5 -5
  87. package/build/server/chunks/{_server.ts-exjcgHcx.js.map → _server.ts-BKj-eCBS.js.map} +1 -1
  88. package/build/server/chunks/{_server.ts-CXoUy8_a.js → _server.ts-BLyiuWbx.js} +5 -5
  89. package/build/server/chunks/{_server.ts-CXoUy8_a.js.map → _server.ts-BLyiuWbx.js.map} +1 -1
  90. package/build/server/chunks/{_server.ts-CdJjgY-9.js → _server.ts-BNDHKRt-.js} +7 -7
  91. package/build/server/chunks/{_server.ts-CdJjgY-9.js.map → _server.ts-BNDHKRt-.js.map} +1 -1
  92. package/build/server/chunks/{_server.ts-BbCeMqh-.js → _server.ts-BRxFZ16U.js} +7 -7
  93. package/build/server/chunks/{_server.ts-BbCeMqh-.js.map → _server.ts-BRxFZ16U.js.map} +1 -1
  94. package/build/server/chunks/{_server.ts-BPwqOO4-.js → _server.ts-BSaMEgcx.js} +5 -5
  95. package/build/server/chunks/{_server.ts-BPwqOO4-.js.map → _server.ts-BSaMEgcx.js.map} +1 -1
  96. package/build/server/chunks/{_server.ts-BXRAnxcH.js → _server.ts-BT_2L60n.js} +2 -2
  97. package/build/server/chunks/{_server.ts-BXRAnxcH.js.map → _server.ts-BT_2L60n.js.map} +1 -1
  98. package/build/server/chunks/{_server.ts-CfnP0sNc.js → _server.ts-BVclIxW7.js} +5 -5
  99. package/build/server/chunks/{_server.ts-CfnP0sNc.js.map → _server.ts-BVclIxW7.js.map} +1 -1
  100. package/build/server/chunks/{_server.ts-BW49vDCi.js → _server.ts-BXdWVdTM.js} +5 -5
  101. package/build/server/chunks/{_server.ts-BW49vDCi.js.map → _server.ts-BXdWVdTM.js.map} +1 -1
  102. package/build/server/chunks/{_server.ts-DyAJhT1b.js → _server.ts-BdmSuYj9.js} +5 -5
  103. package/build/server/chunks/{_server.ts-DyAJhT1b.js.map → _server.ts-BdmSuYj9.js.map} +1 -1
  104. package/build/server/chunks/{_server.ts-pTtmfXKk.js → _server.ts-BicGfd2U.js} +5 -5
  105. package/build/server/chunks/{_server.ts-pTtmfXKk.js.map → _server.ts-BicGfd2U.js.map} +1 -1
  106. package/build/server/chunks/{_server.ts-nqctHWXr.js → _server.ts-BjQt9uz8.js} +8 -8
  107. package/build/server/chunks/{_server.ts-nqctHWXr.js.map → _server.ts-BjQt9uz8.js.map} +1 -1
  108. package/build/server/chunks/{_server.ts-C0MTCoLM.js → _server.ts-Bj_eH9Qa.js} +5 -5
  109. package/build/server/chunks/{_server.ts-C0MTCoLM.js.map → _server.ts-Bj_eH9Qa.js.map} +1 -1
  110. package/build/server/chunks/{_server.ts-DQheOBhy.js → _server.ts-BmCoOLej.js} +5 -5
  111. package/build/server/chunks/{_server.ts-DQheOBhy.js.map → _server.ts-BmCoOLej.js.map} +1 -1
  112. package/build/server/chunks/{_server.ts-Dg-8_3wX.js → _server.ts-Bmmja8qD.js} +5 -5
  113. package/build/server/chunks/{_server.ts-Dg-8_3wX.js.map → _server.ts-Bmmja8qD.js.map} +1 -1
  114. package/build/server/chunks/{_server.ts-EyMefJJx.js → _server.ts-BnxUjr8D.js} +5 -5
  115. package/build/server/chunks/{_server.ts-EyMefJJx.js.map → _server.ts-BnxUjr8D.js.map} +1 -1
  116. package/build/server/chunks/{_server.ts-EIHeR8z5.js → _server.ts-BpEdvvxd.js} +5 -5
  117. package/build/server/chunks/{_server.ts-EIHeR8z5.js.map → _server.ts-BpEdvvxd.js.map} +1 -1
  118. package/build/server/chunks/{_server.ts-BBmhASZm.js → _server.ts-BzPza22T.js} +5 -5
  119. package/build/server/chunks/{_server.ts-BBmhASZm.js.map → _server.ts-BzPza22T.js.map} +1 -1
  120. package/build/server/chunks/{_server.ts-LOOZjElz.js → _server.ts-C0pjE31l.js} +6 -6
  121. package/build/server/chunks/{_server.ts-LOOZjElz.js.map → _server.ts-C0pjE31l.js.map} +1 -1
  122. package/build/server/chunks/{_server.ts-DZV8BgXt.js → _server.ts-C3UG4lwF.js} +2 -2
  123. package/build/server/chunks/{_server.ts-DZV8BgXt.js.map → _server.ts-C3UG4lwF.js.map} +1 -1
  124. package/build/server/chunks/{_server.ts-BhMLOvjx.js → _server.ts-C3f75zDF.js} +5 -5
  125. package/build/server/chunks/{_server.ts-BhMLOvjx.js.map → _server.ts-C3f75zDF.js.map} +1 -1
  126. package/build/server/chunks/{_server.ts-CMLrUC4c.js → _server.ts-C7hNVePN.js} +7 -7
  127. package/build/server/chunks/{_server.ts-CMLrUC4c.js.map → _server.ts-C7hNVePN.js.map} +1 -1
  128. package/build/server/chunks/{_server.ts-BonrT-tF.js → _server.ts-C7xr14FX.js} +5 -5
  129. package/build/server/chunks/{_server.ts-BonrT-tF.js.map → _server.ts-C7xr14FX.js.map} +1 -1
  130. package/build/server/chunks/{_server.ts-Cr1s8-Uv.js → _server.ts-C8-9Bs1B.js} +6 -6
  131. package/build/server/chunks/{_server.ts-Cr1s8-Uv.js.map → _server.ts-C8-9Bs1B.js.map} +1 -1
  132. package/build/server/chunks/{_server.ts-B5p6VVd9.js → _server.ts-CAqoT7gS.js} +5 -5
  133. package/build/server/chunks/{_server.ts-B5p6VVd9.js.map → _server.ts-CAqoT7gS.js.map} +1 -1
  134. package/build/server/chunks/{_server.ts-Cep7l0CV.js → _server.ts-CDE3FzBc.js} +5 -5
  135. package/build/server/chunks/{_server.ts-Cep7l0CV.js.map → _server.ts-CDE3FzBc.js.map} +1 -1
  136. package/build/server/chunks/{_server.ts-BMrKyS_V.js → _server.ts-CGo5LDLj.js} +6 -6
  137. package/build/server/chunks/{_server.ts-BMrKyS_V.js.map → _server.ts-CGo5LDLj.js.map} +1 -1
  138. package/build/server/chunks/{_server.ts-DUiDX6lM.js → _server.ts-CH2wcNv2.js} +5 -5
  139. package/build/server/chunks/{_server.ts-DUiDX6lM.js.map → _server.ts-CH2wcNv2.js.map} +1 -1
  140. package/build/server/chunks/{_server.ts-CFwVQnBv.js → _server.ts-CL2B70h7.js} +5 -5
  141. package/build/server/chunks/{_server.ts-CFwVQnBv.js.map → _server.ts-CL2B70h7.js.map} +1 -1
  142. package/build/server/chunks/{_server.ts-D_5-bNGX.js → _server.ts-CLWP9IQb.js} +5 -5
  143. package/build/server/chunks/{_server.ts-D_5-bNGX.js.map → _server.ts-CLWP9IQb.js.map} +1 -1
  144. package/build/server/chunks/{_server.ts-DoWV0K2g.js → _server.ts-CNVRGyub.js} +5 -5
  145. package/build/server/chunks/{_server.ts-DoWV0K2g.js.map → _server.ts-CNVRGyub.js.map} +1 -1
  146. package/build/server/chunks/{_server.ts-CvsbHKGz.js → _server.ts-CONBqas-.js} +6 -6
  147. package/build/server/chunks/{_server.ts-CvsbHKGz.js.map → _server.ts-CONBqas-.js.map} +1 -1
  148. package/build/server/chunks/{_server.ts-UzZ3dMCF.js → _server.ts-COVP-rCw.js} +5 -5
  149. package/build/server/chunks/{_server.ts-UzZ3dMCF.js.map → _server.ts-COVP-rCw.js.map} +1 -1
  150. package/build/server/chunks/{_server.ts-BpZDUZ1B.js → _server.ts-CQqnPA_u.js} +6 -6
  151. package/build/server/chunks/{_server.ts-BpZDUZ1B.js.map → _server.ts-CQqnPA_u.js.map} +1 -1
  152. package/build/server/chunks/{_server.ts-CyaMkyLz.js → _server.ts-CRomWVzx.js} +2 -2
  153. package/build/server/chunks/{_server.ts-CyaMkyLz.js.map → _server.ts-CRomWVzx.js.map} +1 -1
  154. package/build/server/chunks/{_server.ts-CPJjZl13.js → _server.ts-CUqsT6le.js} +7 -7
  155. package/build/server/chunks/{_server.ts-CPJjZl13.js.map → _server.ts-CUqsT6le.js.map} +1 -1
  156. package/build/server/chunks/{_server.ts-CtSgvAWi.js → _server.ts-CWjIBYQE.js} +5 -5
  157. package/build/server/chunks/{_server.ts-CtSgvAWi.js.map → _server.ts-CWjIBYQE.js.map} +1 -1
  158. package/build/server/chunks/{_server.ts-5rSY6kcV.js → _server.ts-Cdc1j_g9.js} +5 -5
  159. package/build/server/chunks/{_server.ts-5rSY6kcV.js.map → _server.ts-Cdc1j_g9.js.map} +1 -1
  160. package/build/server/chunks/{_server.ts-DVhvk9G_.js → _server.ts-Ce902Hul.js} +5 -5
  161. package/build/server/chunks/{_server.ts-DVhvk9G_.js.map → _server.ts-Ce902Hul.js.map} +1 -1
  162. package/build/server/chunks/{_server.ts-GPe9IVMm.js → _server.ts-CkPdrldr.js} +5 -5
  163. package/build/server/chunks/{_server.ts-GPe9IVMm.js.map → _server.ts-CkPdrldr.js.map} +1 -1
  164. package/build/server/chunks/{_server.ts-k5ZKZRei.js → _server.ts-Cl7761Fp.js} +5 -5
  165. package/build/server/chunks/{_server.ts-k5ZKZRei.js.map → _server.ts-Cl7761Fp.js.map} +1 -1
  166. package/build/server/chunks/{_server.ts-DtRz-OCw.js → _server.ts-CsmO7uEe.js} +5 -5
  167. package/build/server/chunks/{_server.ts-DtRz-OCw.js.map → _server.ts-CsmO7uEe.js.map} +1 -1
  168. package/build/server/chunks/{_server.ts-CVTAtHX9.js → _server.ts-CuJPxE8W.js} +5 -5
  169. package/build/server/chunks/{_server.ts-CVTAtHX9.js.map → _server.ts-CuJPxE8W.js.map} +1 -1
  170. package/build/server/chunks/{_server.ts-2wVF7FpZ.js → _server.ts-D0kV95da.js} +2 -2
  171. package/build/server/chunks/{_server.ts-2wVF7FpZ.js.map → _server.ts-D0kV95da.js.map} +1 -1
  172. package/build/server/chunks/{_server.ts-BPsg50PW.js → _server.ts-D0xO5dva.js} +5 -5
  173. package/build/server/chunks/{_server.ts-BPsg50PW.js.map → _server.ts-D0xO5dva.js.map} +1 -1
  174. package/build/server/chunks/{_server.ts-DY9z68KY.js → _server.ts-DCOJFhtC.js} +2 -2
  175. package/build/server/chunks/{_server.ts-DY9z68KY.js.map → _server.ts-DCOJFhtC.js.map} +1 -1
  176. package/build/server/chunks/{_server.ts-BDYhzVaF.js → _server.ts-DF941T5f.js} +6 -6
  177. package/build/server/chunks/{_server.ts-BDYhzVaF.js.map → _server.ts-DF941T5f.js.map} +1 -1
  178. package/build/server/chunks/{_server.ts-CpF2GT0D.js → _server.ts-DIfIRxdi.js} +6 -6
  179. package/build/server/chunks/{_server.ts-CpF2GT0D.js.map → _server.ts-DIfIRxdi.js.map} +1 -1
  180. package/build/server/chunks/{_server.ts-CJPkb7Cp.js → _server.ts-DOI8yVWA.js} +5 -5
  181. package/build/server/chunks/{_server.ts-CJPkb7Cp.js.map → _server.ts-DOI8yVWA.js.map} +1 -1
  182. package/build/server/chunks/{_server.ts-DWBP1iw2.js → _server.ts-DRPR97B9.js} +4 -4
  183. package/build/server/chunks/{_server.ts-DWBP1iw2.js.map → _server.ts-DRPR97B9.js.map} +1 -1
  184. package/build/server/chunks/{_server.ts-CwLvZSeH.js → _server.ts-DRaQFXYb.js} +5 -5
  185. package/build/server/chunks/{_server.ts-CwLvZSeH.js.map → _server.ts-DRaQFXYb.js.map} +1 -1
  186. package/build/server/chunks/{_server.ts-7KVXn0LX.js → _server.ts-DRl8LhH_.js} +7 -7
  187. package/build/server/chunks/{_server.ts-7KVXn0LX.js.map → _server.ts-DRl8LhH_.js.map} +1 -1
  188. package/build/server/chunks/{_server.ts-DddQZDAT.js → _server.ts-DRxWRGbe.js} +5 -5
  189. package/build/server/chunks/{_server.ts-DddQZDAT.js.map → _server.ts-DRxWRGbe.js.map} +1 -1
  190. package/build/server/chunks/{_server.ts-DhZXxVkd.js → _server.ts-DZMFW3YG.js} +6 -6
  191. package/build/server/chunks/{_server.ts-DhZXxVkd.js.map → _server.ts-DZMFW3YG.js.map} +1 -1
  192. package/build/server/chunks/{_server.ts-BGFmBQYr.js → _server.ts-Dkc8Fk_E.js} +5 -5
  193. package/build/server/chunks/{_server.ts-BGFmBQYr.js.map → _server.ts-Dkc8Fk_E.js.map} +1 -1
  194. package/build/server/chunks/{_server.ts-8y4-PWDZ.js → _server.ts-DnD7x2u1.js} +6 -6
  195. package/build/server/chunks/{_server.ts-8y4-PWDZ.js.map → _server.ts-DnD7x2u1.js.map} +1 -1
  196. package/build/server/chunks/{_server.ts-CibIFxKC.js → _server.ts-DpJU6BJ_.js} +5 -5
  197. package/build/server/chunks/{_server.ts-CibIFxKC.js.map → _server.ts-DpJU6BJ_.js.map} +1 -1
  198. package/build/server/chunks/{_server.ts-CdM79rMA.js → _server.ts-Dr_BpdoB.js} +5 -5
  199. package/build/server/chunks/{_server.ts-CdM79rMA.js.map → _server.ts-Dr_BpdoB.js.map} +1 -1
  200. package/build/server/chunks/{_server.ts-BHJD2IX2.js → _server.ts-DvoDGebd.js} +5 -5
  201. package/build/server/chunks/{_server.ts-BHJD2IX2.js.map → _server.ts-DvoDGebd.js.map} +1 -1
  202. package/build/server/chunks/{_server.ts-5GBOytkR.js → _server.ts-DyDnENLl.js} +5 -5
  203. package/build/server/chunks/{_server.ts-5GBOytkR.js.map → _server.ts-DyDnENLl.js.map} +1 -1
  204. package/build/server/chunks/{_server.ts-CXN_ttOv.js → _server.ts-EzBC5iQF.js} +5 -5
  205. package/build/server/chunks/{_server.ts-CXN_ttOv.js.map → _server.ts-EzBC5iQF.js.map} +1 -1
  206. package/build/server/chunks/{_server.ts-LEZrSJ43.js → _server.ts-GwdEeHnv.js} +5 -5
  207. package/build/server/chunks/{_server.ts-LEZrSJ43.js.map → _server.ts-GwdEeHnv.js.map} +1 -1
  208. package/build/server/chunks/{_server.ts-C-BNYdGr.js → _server.ts-HqaWKbAQ.js} +6 -6
  209. package/build/server/chunks/{_server.ts-C-BNYdGr.js.map → _server.ts-HqaWKbAQ.js.map} +1 -1
  210. package/build/server/chunks/{_server.ts-4-3LZ4Pl.js → _server.ts-LaXE_tpn.js} +5 -5
  211. package/build/server/chunks/{_server.ts-4-3LZ4Pl.js.map → _server.ts-LaXE_tpn.js.map} +1 -1
  212. package/build/server/chunks/{_server.ts-p_KcE65x.js → _server.ts-Lq8lwYNz.js} +5 -5
  213. package/build/server/chunks/{_server.ts-p_KcE65x.js.map → _server.ts-Lq8lwYNz.js.map} +1 -1
  214. package/build/server/chunks/{_server.ts-C0aieTg0.js → _server.ts-N5aoiMFG.js} +5 -5
  215. package/build/server/chunks/{_server.ts-C0aieTg0.js.map → _server.ts-N5aoiMFG.js.map} +1 -1
  216. package/build/server/chunks/{_server.ts-CkktuHhi.js → _server.ts-QHe8q16B.js} +5 -5
  217. package/build/server/chunks/{_server.ts-CkktuHhi.js.map → _server.ts-QHe8q16B.js.map} +1 -1
  218. package/build/server/chunks/{_server.ts-CqIpvxzK.js → _server.ts-RXDzWbJJ.js} +5 -5
  219. package/build/server/chunks/{_server.ts-CqIpvxzK.js.map → _server.ts-RXDzWbJJ.js.map} +1 -1
  220. package/build/server/chunks/{_server.ts-Ck9qdttH.js → _server.ts-T3cpJIfp.js} +5 -5
  221. package/build/server/chunks/{_server.ts-Ck9qdttH.js.map → _server.ts-T3cpJIfp.js.map} +1 -1
  222. package/build/server/chunks/{_server.ts-DLgPi_kd.js → _server.ts-TMzhwYe3.js} +5 -5
  223. package/build/server/chunks/{_server.ts-DLgPi_kd.js.map → _server.ts-TMzhwYe3.js.map} +1 -1
  224. package/build/server/chunks/{_server.ts-DvqaH1vF.js → _server.ts-WoMwVPlf.js} +5 -5
  225. package/build/server/chunks/{_server.ts-DvqaH1vF.js.map → _server.ts-WoMwVPlf.js.map} +1 -1
  226. package/build/server/chunks/{_server.ts-CipMkzSd.js → _server.ts-YjtMP9d6.js} +5 -5
  227. package/build/server/chunks/{_server.ts-CipMkzSd.js.map → _server.ts-YjtMP9d6.js.map} +1 -1
  228. package/build/server/chunks/{_server.ts-DpJjiPl_.js → _server.ts-fx4cEsD-.js} +5 -5
  229. package/build/server/chunks/{_server.ts-DpJjiPl_.js.map → _server.ts-fx4cEsD-.js.map} +1 -1
  230. package/build/server/chunks/{_server.ts-jTqD5BwW.js → _server.ts-oIszVYoi.js} +7 -7
  231. package/build/server/chunks/{_server.ts-jTqD5BwW.js.map → _server.ts-oIszVYoi.js.map} +1 -1
  232. package/build/server/chunks/{_server.ts-DD6pe7se.js → _server.ts-tMQQqP2n.js} +5 -5
  233. package/build/server/chunks/{_server.ts-DD6pe7se.js.map → _server.ts-tMQQqP2n.js.map} +1 -1
  234. package/build/server/chunks/{_server.ts-DXNRDGZl.js → _server.ts-wKZpMHme.js} +4 -4
  235. package/build/server/chunks/{_server.ts-DXNRDGZl.js.map → _server.ts-wKZpMHme.js.map} +1 -1
  236. package/build/server/chunks/{_server.ts-PwCREReL.js → _server.ts-xDSMFKe7.js} +5 -5
  237. package/build/server/chunks/{_server.ts-PwCREReL.js.map → _server.ts-xDSMFKe7.js.map} +1 -1
  238. package/build/server/chunks/{_server.ts-BRaG2rbs.js → _server.ts-zvQ4fAkC.js} +5 -5
  239. package/build/server/chunks/{_server.ts-BRaG2rbs.js.map → _server.ts-zvQ4fAkC.js.map} +1 -1
  240. package/build/server/chunks/{addon-helpers-Uxv9F26c.js → addon-helpers-CeDX5bZ9.js} +3 -3
  241. package/build/server/chunks/{addon-helpers-Uxv9F26c.js.map → addon-helpers-CeDX5bZ9.js.map} +1 -1
  242. package/build/server/chunks/{akm-DTz9cZzF.js → akm-CvZqb7iz.js} +2 -2
  243. package/build/server/chunks/{akm-DTz9cZzF.js.map → akm-CvZqb7iz.js.map} +1 -1
  244. package/build/server/chunks/{catalog-CHbys4Tk.js → catalog-J4jGV1ME.js} +5 -5
  245. package/build/server/chunks/{catalog-CHbys4Tk.js.map → catalog-J4jGV1ME.js.map} +1 -1
  246. package/build/server/chunks/{client-D6zzvHQ9.js → client-C2HOBXSd.js} +2 -2
  247. package/build/server/chunks/{client-D6zzvHQ9.js.map → client-C2HOBXSd.js.map} +1 -1
  248. package/build/server/chunks/{config-BAcgI5t9.js → config-Cw8EMEVB.js} +2 -2
  249. package/build/server/chunks/{config-BAcgI5t9.js.map → config-Cw8EMEVB.js.map} +1 -1
  250. package/build/server/chunks/{docker-3ZzOguqL.js → docker-WrnGoqQU.js} +2 -2
  251. package/build/server/chunks/{docker-3ZzOguqL.js.map → docker-WrnGoqQU.js.map} +1 -1
  252. package/build/server/chunks/{endpoints-47SGUFNp.js → endpoints-WrI_CAyN.js} +2 -2
  253. package/build/server/chunks/{endpoints-47SGUFNp.js.map → endpoints-WrI_CAyN.js.map} +1 -1
  254. package/build/server/chunks/{environment-Cc6sGJCR.js → environment-CUfrybyR.js} +2 -2
  255. package/build/server/chunks/{environment-Cc6sGJCR.js.map → environment-CUfrybyR.js.map} +1 -1
  256. package/build/server/chunks/{error.svelte-B1GoHE7X.js → error.svelte-C8jTByGq.js} +4 -4
  257. package/build/server/chunks/{error.svelte-B1GoHE7X.js.map → error.svelte-C8jTByGq.js.map} +1 -1
  258. package/build/server/chunks/{helpers-CQ9v-UhX.js → helpers-CP7AZ3nK.js} +3 -3
  259. package/build/server/chunks/{helpers-CQ9v-UhX.js.map → helpers-CP7AZ3nK.js.map} +1 -1
  260. package/build/server/chunks/{hooks.server-BoYMuqyN.js → hooks.server-B0ckBH8o.js} +6 -6
  261. package/build/server/chunks/{hooks.server-BoYMuqyN.js.map → hooks.server-B0ckBH8o.js.map} +1 -1
  262. package/build/server/chunks/{http-DfcMgAxH.js → http-CnUOhPlp.js} +2 -2
  263. package/build/server/chunks/{http-DfcMgAxH.js.map → http-CnUOhPlp.js.map} +1 -1
  264. package/build/server/chunks/{internal-BQcxRlh1.js → internal-DJeFlRO1.js} +3 -3
  265. package/build/server/chunks/{internal-BQcxRlh1.js.map → internal-DJeFlRO1.js.map} +1 -1
  266. package/build/server/chunks/{session-cookie-Deh3JNKY.js → session-cookie-BllUKraw.js} +2 -2
  267. package/build/server/chunks/{session-cookie-Deh3JNKY.js.map → session-cookie-BllUKraw.js.map} +1 -1
  268. package/build/server/chunks/{setup-deploy-C-SGDhqa.js → setup-deploy-D7oh1PDA.js} +2 -2
  269. package/build/server/chunks/{setup-deploy-C-SGDhqa.js.map → setup-deploy-D7oh1PDA.js.map} +1 -1
  270. package/build/server/chunks/{src-HnR-W6qI.js → src-DnDbWIue.js} +100 -14
  271. package/build/server/chunks/src-DnDbWIue.js.map +1 -0
  272. package/build/server/chunks/{state-gOzmaumW.js → state-BD-ji75A.js} +2 -2
  273. package/build/server/chunks/{state-gOzmaumW.js.map → state-BD-ji75A.js.map} +1 -1
  274. package/build/server/chunks/{state2-DjPjSdq1.js → state2-DqEm7XC0.js} +2 -2
  275. package/build/server/chunks/{state2-DjPjSdq1.js.map → state2-DqEm7XC0.js.map} +1 -1
  276. package/build/server/index.js +2 -2
  277. package/build/server/manifest.js +92 -92
  278. package/build/server/manifest.js.map +1 -1
  279. package/package.json +2 -2
  280. package/build/client/_app/immutable/chunks/CE531wHb.js.br +0 -0
  281. package/build/client/_app/immutable/chunks/CE531wHb.js.gz +0 -0
  282. package/build/client/_app/immutable/chunks/CTTeWCFR.js +0 -3
  283. package/build/client/_app/immutable/chunks/CTTeWCFR.js.br +0 -0
  284. package/build/client/_app/immutable/chunks/CTTeWCFR.js.gz +0 -0
  285. package/build/client/_app/immutable/chunks/DVcQKE3j.js.br +0 -0
  286. package/build/client/_app/immutable/chunks/DVcQKE3j.js.gz +0 -0
  287. package/build/client/_app/immutable/chunks/RdJLMCQn.js.br +0 -0
  288. package/build/client/_app/immutable/chunks/RdJLMCQn.js.gz +0 -0
  289. package/build/client/_app/immutable/chunks/VcQ_AJeM.js +0 -1
  290. package/build/client/_app/immutable/chunks/VcQ_AJeM.js.br +0 -2
  291. package/build/client/_app/immutable/chunks/VcQ_AJeM.js.gz +0 -0
  292. package/build/client/_app/immutable/entry/app.CUn29SZU.js.br +0 -0
  293. package/build/client/_app/immutable/entry/app.CUn29SZU.js.gz +0 -0
  294. package/build/client/_app/immutable/entry/start.DRqSiJM4.js +0 -1
  295. package/build/client/_app/immutable/entry/start.DRqSiJM4.js.br +0 -1
  296. package/build/client/_app/immutable/entry/start.DRqSiJM4.js.gz +0 -0
  297. package/build/client/_app/immutable/nodes/1.mardR1GM.js.br +0 -1
  298. package/build/client/_app/immutable/nodes/1.mardR1GM.js.gz +0 -0
  299. package/build/client/_app/immutable/nodes/4.Xwy82DBw.js.br +0 -0
  300. package/build/client/_app/immutable/nodes/4.Xwy82DBw.js.gz +0 -0
  301. package/build/client/_app/immutable/nodes/5.BzSSj_Jb.js.br +0 -0
  302. package/build/client/_app/immutable/nodes/5.BzSSj_Jb.js.gz +0 -0
  303. package/build/client/_app/immutable/nodes/6.DTZkqQeu.js.br +0 -0
  304. package/build/client/_app/immutable/nodes/6.DTZkqQeu.js.gz +0 -0
  305. package/build/client/_app/immutable/nodes/7.bM3nkvkD.js.br +0 -0
  306. package/build/client/_app/immutable/nodes/7.bM3nkvkD.js.gz +0 -0
  307. package/build/client/_app/immutable/nodes/8.CQzqLUid.js.br +0 -0
  308. package/build/client/_app/immutable/nodes/8.CQzqLUid.js.gz +0 -0
  309. package/build/server/chunks/1-Bgq_vafP.js +0 -9
  310. package/build/server/chunks/4-DFf3P2Yi.js +0 -9
  311. package/build/server/chunks/7-Ds6TGWHp.js +0 -9
  312. package/build/server/chunks/src-HnR-W6qI.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"session-cookie-Deh3JNKY.js","sources":["../../../.svelte-kit/adapter-node/chunks/session-cookie.js"],"sourcesContent":["import { m as SESSION_TTL_SECONDS } from \"./helpers.js\";\n//#region src/lib/server/session-cookie.ts\n/**\n* Single source of truth for the `op_session` cookie's Set-Cookie attributes.\n*\n* Every issuer (login, session, setup/complete) and the sliding-renewal path in\n* hooks.server.ts builds the cookie through these helpers so the attributes can\n* never drift apart. Logout uses `clearSessionCookie()` with the SAME path so\n* the browser actually drops the cookie.\n*\n* Attribute rationale:\n* - HttpOnly — the cookie is the only credential the browser holds; XSS\n* must not be able to read it.\n* - SameSite=Lax — the cookie must ride along on top-level GET navigations\n* (typing the admin URL, following a bookmark) so a valid\n* session loads admin with no prompt. SameSite=Strict drops\n* the cookie on cross-site top-level GETs (e.g. opening the\n* console from a link in another app on the LAN), which\n* would force a needless re-prompt. State-mutating requests\n* are independently CSRF-guarded by the Origin check\n* (SEC-2) in hooks.server.ts, so Lax is safe here.\n* - Secure — set ONLY when the request arrived over HTTPS. LAN installs\n* are commonly plain HTTP; hardcoding Secure would make the\n* browser refuse to send the cookie and break login entirely\n* on those deployments. We honour `x-forwarded-proto` first\n* (reverse-proxy TLS termination) then the request URL.\n* - Path=/ — valid for the whole app; matched by the clear on logout.\n* - Max-Age — SESSION_TTL_SECONDS (14 days), in lockstep with the token expiry.\n*/\nvar SESSION_COOKIE_NAME = \"op_session\";\n/** True when the request reached us over HTTPS (direct or via TLS-terminating proxy). */\nfunction isSecureRequest(request) {\n\tconst forwarded = request.headers.get(\"x-forwarded-proto\");\n\tif (forwarded) return forwarded.split(\",\")[0].trim().toLowerCase() === \"https\";\n\ttry {\n\t\treturn new URL(request.url).protocol === \"https:\";\n\t} catch {\n\t\treturn false;\n\t}\n}\n/**\n* Build the `Set-Cookie` value that issues/renews the session cookie.\n* `secure` is derived from the request so LAN-over-HTTP installs still work.\n*/\nfunction sessionCookieHeader(token, request) {\n\tconst parts = [\n\t\t`${SESSION_COOKIE_NAME}=${token}`,\n\t\t\"HttpOnly\",\n\t\t\"SameSite=Lax\",\n\t\t\"Path=/\",\n\t\t`Max-Age=${SESSION_TTL_SECONDS}`\n\t];\n\tif (isSecureRequest(request)) parts.push(\"Secure\");\n\treturn parts.join(\"; \");\n}\n/**\n* Build the `Set-Cookie` value that clears the session cookie (logout).\n* Must mirror name/path/attributes of the issued cookie so the browser deletes it.\n*/\nfunction clearSessionCookieHeader(request) {\n\tconst parts = [\n\t\t`${SESSION_COOKIE_NAME}=`,\n\t\t\"HttpOnly\",\n\t\t\"SameSite=Lax\",\n\t\t\"Path=/\",\n\t\t\"Max-Age=0\"\n\t];\n\tif (isSecureRequest(request)) parts.push(\"Secure\");\n\treturn parts.join(\"; \");\n}\n//#endregion\nexport { clearSessionCookieHeader as n, sessionCookieHeader as r, SESSION_COOKIE_NAME as t };\n"],"names":[],"mappings":";;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACG,IAAC,mBAAmB,GAAG;AAC1B;AACA,SAAS,eAAe,CAAC,OAAO,EAAE;AAClC,CAAC,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;AAC3D,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,OAAO;AAC/E,CAAC,IAAI;AACL,EAAE,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAK,QAAQ;AACnD,CAAC,CAAC,CAAC,MAAM;AACT,EAAE,OAAO,KAAK;AACd,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,SAAS,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE;AAC7C,CAAC,MAAM,KAAK,GAAG;AACf,EAAE,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AACnC,EAAE,UAAU;AACZ,EAAE,cAAc;AAChB,EAAE,QAAQ;AACV,EAAE,CAAC,QAAQ,EAAE,mBAAmB,CAAC;AACjC,EAAE;AACF,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;AACnD,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB;AACA;AACA;AACA;AACA;AACA,SAAS,wBAAwB,CAAC,OAAO,EAAE;AAC3C,CAAC,MAAM,KAAK,GAAG;AACf,EAAE,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAC3B,EAAE,UAAU;AACZ,EAAE,cAAc;AAChB,EAAE,QAAQ;AACV,EAAE;AACF,EAAE;AACF,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;AACnD,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB;;;;"}
1
+ {"version":3,"file":"session-cookie-BllUKraw.js","sources":["../../../.svelte-kit/adapter-node/chunks/session-cookie.js"],"sourcesContent":["import { m as SESSION_TTL_SECONDS } from \"./helpers.js\";\n//#region src/lib/server/session-cookie.ts\n/**\n* Single source of truth for the `op_session` cookie's Set-Cookie attributes.\n*\n* Every issuer (login, session, setup/complete) and the sliding-renewal path in\n* hooks.server.ts builds the cookie through these helpers so the attributes can\n* never drift apart. Logout uses `clearSessionCookie()` with the SAME path so\n* the browser actually drops the cookie.\n*\n* Attribute rationale:\n* - HttpOnly — the cookie is the only credential the browser holds; XSS\n* must not be able to read it.\n* - SameSite=Lax — the cookie must ride along on top-level GET navigations\n* (typing the admin URL, following a bookmark) so a valid\n* session loads admin with no prompt. SameSite=Strict drops\n* the cookie on cross-site top-level GETs (e.g. opening the\n* console from a link in another app on the LAN), which\n* would force a needless re-prompt. State-mutating requests\n* are independently CSRF-guarded by the Origin check\n* (SEC-2) in hooks.server.ts, so Lax is safe here.\n* - Secure — set ONLY when the request arrived over HTTPS. LAN installs\n* are commonly plain HTTP; hardcoding Secure would make the\n* browser refuse to send the cookie and break login entirely\n* on those deployments. We honour `x-forwarded-proto` first\n* (reverse-proxy TLS termination) then the request URL.\n* - Path=/ — valid for the whole app; matched by the clear on logout.\n* - Max-Age — SESSION_TTL_SECONDS (14 days), in lockstep with the token expiry.\n*/\nvar SESSION_COOKIE_NAME = \"op_session\";\n/** True when the request reached us over HTTPS (direct or via TLS-terminating proxy). */\nfunction isSecureRequest(request) {\n\tconst forwarded = request.headers.get(\"x-forwarded-proto\");\n\tif (forwarded) return forwarded.split(\",\")[0].trim().toLowerCase() === \"https\";\n\ttry {\n\t\treturn new URL(request.url).protocol === \"https:\";\n\t} catch {\n\t\treturn false;\n\t}\n}\n/**\n* Build the `Set-Cookie` value that issues/renews the session cookie.\n* `secure` is derived from the request so LAN-over-HTTP installs still work.\n*/\nfunction sessionCookieHeader(token, request) {\n\tconst parts = [\n\t\t`${SESSION_COOKIE_NAME}=${token}`,\n\t\t\"HttpOnly\",\n\t\t\"SameSite=Lax\",\n\t\t\"Path=/\",\n\t\t`Max-Age=${SESSION_TTL_SECONDS}`\n\t];\n\tif (isSecureRequest(request)) parts.push(\"Secure\");\n\treturn parts.join(\"; \");\n}\n/**\n* Build the `Set-Cookie` value that clears the session cookie (logout).\n* Must mirror name/path/attributes of the issued cookie so the browser deletes it.\n*/\nfunction clearSessionCookieHeader(request) {\n\tconst parts = [\n\t\t`${SESSION_COOKIE_NAME}=`,\n\t\t\"HttpOnly\",\n\t\t\"SameSite=Lax\",\n\t\t\"Path=/\",\n\t\t\"Max-Age=0\"\n\t];\n\tif (isSecureRequest(request)) parts.push(\"Secure\");\n\treturn parts.join(\"; \");\n}\n//#endregion\nexport { clearSessionCookieHeader as n, sessionCookieHeader as r, SESSION_COOKIE_NAME as t };\n"],"names":[],"mappings":";;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACG,IAAC,mBAAmB,GAAG;AAC1B;AACA,SAAS,eAAe,CAAC,OAAO,EAAE;AAClC,CAAC,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;AAC3D,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,OAAO;AAC/E,CAAC,IAAI;AACL,EAAE,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAK,QAAQ;AACnD,CAAC,CAAC,CAAC,MAAM;AACT,EAAE,OAAO,KAAK;AACd,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,SAAS,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE;AAC7C,CAAC,MAAM,KAAK,GAAG;AACf,EAAE,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AACnC,EAAE,UAAU;AACZ,EAAE,cAAc;AAChB,EAAE,QAAQ;AACV,EAAE,CAAC,QAAQ,EAAE,mBAAmB,CAAC;AACjC,EAAE;AACF,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;AACnD,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB;AACA;AACA;AACA;AACA;AACA,SAAS,wBAAwB,CAAC,OAAO,EAAE;AAC3C,CAAC,MAAM,KAAK,GAAG;AACf,EAAE,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAC3B,EAAE,UAAU;AACZ,EAAE,cAAc;AAChB,EAAE,QAAQ;AACV,EAAE;AACF,EAAE;AACF,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;AACnD,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB;;;;"}
@@ -1,4 +1,4 @@
1
- import { j as backupSetupInputs, aT as runDeploy, aP as resolveDeployJournalPath, ak as isSetupComplete, aS as resolveStackDir, aA as readDeployJournal, as as markSetupComplete } from './src-HnR-W6qI.js';
1
+ import { j as backupSetupInputs, aT as runDeploy, aP as resolveDeployJournalPath, ak as isSetupComplete, aS as resolveStackDir, aA as readDeployJournal, as as markSetupComplete } from './src-DnDbWIue.js';
2
2
 
3
3
  //#region src/lib/server/setup-deploy.ts
4
4
  var _state = {
@@ -72,4 +72,4 @@ function prepareSetupRestorePoint(state) {
72
72
  }
73
73
 
74
74
  export { getDeployState as g, prepareSetupRestorePoint as p, resetDeployState as r, startDeploy as s };
75
- //# sourceMappingURL=setup-deploy-C-SGDhqa.js.map
75
+ //# sourceMappingURL=setup-deploy-D7oh1PDA.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setup-deploy-C-SGDhqa.js","sources":["../../../.svelte-kit/adapter-node/chunks/setup-deploy.js"],"sourcesContent":["import { $t as resolveStackDir, A as readDeployJournal, M as runDeploy, O as backupSetupInputs, ft as isSetupComplete, j as resolveDeployJournalPath, k as markSetupComplete } from \"./src.js\";\n//#region src/lib/server/setup-deploy.ts\nvar _state = {\n\tdeploying: false,\n\tsetupComplete: false,\n\tdeployStatus: [],\n\tdeployError: null,\n\timageWarning: null,\n\tphase: \"writing-config\"\n};\nvar _deployPromise = null;\nfunction deployStateFromJournal(state) {\n\tconst journal = readDeployJournal(resolveDeployJournalPath(state));\n\treturn {\n\t\tdeploying: journal.deploying,\n\t\tinterrupted: journal.interrupted,\n\t\tsetupComplete: journal.setupComplete || isSetupComplete(resolveStackDir()),\n\t\tdeployStatus: journal.deployStatus,\n\t\tdeployError: journal.deployError,\n\t\timageWarning: journal.imageWarning,\n\t\tphase: journal.phase\n\t};\n}\nfunction getDeployState(state) {\n\tif (state) _state = deployStateFromJournal(state);\n\telse if (!_state.setupComplete && !_state.deploying && isSetupComplete(resolveStackDir())) _state.setupComplete = true;\n\treturn {\n\t\t..._state,\n\t\tdeployStatus: _state.deployStatus.map((entry) => ({ ...entry }))\n\t};\n}\nfunction resetDeployState() {\n\t_state = {\n\t\tdeploying: false,\n\t\tsetupComplete: false,\n\t\tdeployStatus: [],\n\t\tdeployError: null,\n\t\timageWarning: null,\n\t\tphase: \"writing-config\"\n\t};\n}\nfunction startDeploy(state) {\n\tif (_deployPromise) {\n\t\t_state.deployError = \"install_in_progress: A deploy is already running. Wait for it to finish.\";\n\t\treturn;\n\t}\n\t_deployPromise = (async () => {\n\t\tawait runDeploy(state, {\n\t\t\tjournalPath: resolveDeployJournalPath(state),\n\t\t\tonUpdate(progress) {\n\t\t\t\t_state = {\n\t\t\t\t\tdeploying: progress.deploying,\n\t\t\t\t\tinterrupted: progress.interrupted,\n\t\t\t\t\tsetupComplete: progress.setupComplete,\n\t\t\t\t\tdeployStatus: progress.deployStatus,\n\t\t\t\t\tdeployError: progress.deployError,\n\t\t\t\t\timageWarning: progress.imageWarning,\n\t\t\t\t\tphase: progress.phase\n\t\t\t\t};\n\t\t\t},\n\t\t\tmarkSetupComplete() {\n\t\t\t\tmarkSetupComplete(state);\n\t\t\t}\n\t\t});\n\t})().finally(() => {\n\t\t_deployPromise = null;\n\t});\n}\nfunction prepareSetupRestorePoint(state) {\n\treturn backupSetupInputs(state);\n}\n//#endregion\nexport { startDeploy as i, prepareSetupRestorePoint as n, resetDeployState as r, getDeployState as t };\n"],"names":[],"mappings":";;AACA;AACA,IAAI,MAAM,GAAG;AACb,CAAC,SAAS,EAAE,KAAK;AACjB,CAAC,aAAa,EAAE,KAAK;AACrB,CAAC,YAAY,EAAE,EAAE;AACjB,CAAC,WAAW,EAAE,IAAI;AAClB,CAAC,YAAY,EAAE,IAAI;AACnB,CAAC,KAAK,EAAE;AACR,CAAC;AACD,IAAI,cAAc,GAAG,IAAI;AACzB,SAAS,sBAAsB,CAAC,KAAK,EAAE;AACvC,CAAC,MAAM,OAAO,GAAG,iBAAiB,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;AACnE,CAAC,OAAO;AACR,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS;AAC9B,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW;AAClC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC;AAC5E,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY;AACpC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW;AAClC,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY;AACpC,EAAE,KAAK,EAAE,OAAO,CAAC;AACjB,EAAE;AACF;AACA,SAAS,cAAc,CAAC,KAAK,EAAE;AAC/B,CAAC,IAAI,KAAK,EAAE,MAAM,GAAG,sBAAsB,CAAC,KAAK,CAAC;AAClD,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC,EAAE,MAAM,CAAC,aAAa,GAAG,IAAI;AACvH,CAAC,OAAO;AACR,EAAE,GAAG,MAAM;AACX,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;AACjE,EAAE;AACF;AACA,SAAS,gBAAgB,GAAG;AAC5B,CAAC,MAAM,GAAG;AACV,EAAE,SAAS,EAAE,KAAK;AAClB,EAAE,aAAa,EAAE,KAAK;AACtB,EAAE,YAAY,EAAE,EAAE;AAClB,EAAE,WAAW,EAAE,IAAI;AACnB,EAAE,YAAY,EAAE,IAAI;AACpB,EAAE,KAAK,EAAE;AACT,EAAE;AACF;AACA,SAAS,WAAW,CAAC,KAAK,EAAE;AAC5B,CAAC,IAAI,cAAc,EAAE;AACrB,EAAE,MAAM,CAAC,WAAW,GAAG,0EAA0E;AACjG,EAAE;AACF,CAAC;AACD,CAAC,cAAc,GAAG,CAAC,YAAY;AAC/B,EAAE,MAAM,SAAS,CAAC,KAAK,EAAE;AACzB,GAAG,WAAW,EAAE,wBAAwB,CAAC,KAAK,CAAC;AAC/C,GAAG,QAAQ,CAAC,QAAQ,EAAE;AACtB,IAAI,MAAM,GAAG;AACb,KAAK,SAAS,EAAE,QAAQ,CAAC,SAAS;AAClC,KAAK,WAAW,EAAE,QAAQ,CAAC,WAAW;AACtC,KAAK,aAAa,EAAE,QAAQ,CAAC,aAAa;AAC1C,KAAK,YAAY,EAAE,QAAQ,CAAC,YAAY;AACxC,KAAK,WAAW,EAAE,QAAQ,CAAC,WAAW;AACtC,KAAK,YAAY,EAAE,QAAQ,CAAC,YAAY;AACxC,KAAK,KAAK,EAAE,QAAQ,CAAC;AACrB,KAAK;AACL,GAAG,CAAC;AACJ,GAAG,iBAAiB,GAAG;AACvB,IAAI,iBAAiB,CAAC,KAAK,CAAC;AAC5B,GAAG;AACH,GAAG,CAAC;AACJ,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM;AACpB,EAAE,cAAc,GAAG,IAAI;AACvB,CAAC,CAAC,CAAC;AACH;AACA,SAAS,wBAAwB,CAAC,KAAK,EAAE;AACzC,CAAC,OAAO,iBAAiB,CAAC,KAAK,CAAC;AAChC;;;;"}
1
+ {"version":3,"file":"setup-deploy-D7oh1PDA.js","sources":["../../../.svelte-kit/adapter-node/chunks/setup-deploy.js"],"sourcesContent":["import { $t as resolveStackDir, A as readDeployJournal, M as runDeploy, O as backupSetupInputs, ft as isSetupComplete, j as resolveDeployJournalPath, k as markSetupComplete } from \"./src.js\";\n//#region src/lib/server/setup-deploy.ts\nvar _state = {\n\tdeploying: false,\n\tsetupComplete: false,\n\tdeployStatus: [],\n\tdeployError: null,\n\timageWarning: null,\n\tphase: \"writing-config\"\n};\nvar _deployPromise = null;\nfunction deployStateFromJournal(state) {\n\tconst journal = readDeployJournal(resolveDeployJournalPath(state));\n\treturn {\n\t\tdeploying: journal.deploying,\n\t\tinterrupted: journal.interrupted,\n\t\tsetupComplete: journal.setupComplete || isSetupComplete(resolveStackDir()),\n\t\tdeployStatus: journal.deployStatus,\n\t\tdeployError: journal.deployError,\n\t\timageWarning: journal.imageWarning,\n\t\tphase: journal.phase\n\t};\n}\nfunction getDeployState(state) {\n\tif (state) _state = deployStateFromJournal(state);\n\telse if (!_state.setupComplete && !_state.deploying && isSetupComplete(resolveStackDir())) _state.setupComplete = true;\n\treturn {\n\t\t..._state,\n\t\tdeployStatus: _state.deployStatus.map((entry) => ({ ...entry }))\n\t};\n}\nfunction resetDeployState() {\n\t_state = {\n\t\tdeploying: false,\n\t\tsetupComplete: false,\n\t\tdeployStatus: [],\n\t\tdeployError: null,\n\t\timageWarning: null,\n\t\tphase: \"writing-config\"\n\t};\n}\nfunction startDeploy(state) {\n\tif (_deployPromise) {\n\t\t_state.deployError = \"install_in_progress: A deploy is already running. Wait for it to finish.\";\n\t\treturn;\n\t}\n\t_deployPromise = (async () => {\n\t\tawait runDeploy(state, {\n\t\t\tjournalPath: resolveDeployJournalPath(state),\n\t\t\tonUpdate(progress) {\n\t\t\t\t_state = {\n\t\t\t\t\tdeploying: progress.deploying,\n\t\t\t\t\tinterrupted: progress.interrupted,\n\t\t\t\t\tsetupComplete: progress.setupComplete,\n\t\t\t\t\tdeployStatus: progress.deployStatus,\n\t\t\t\t\tdeployError: progress.deployError,\n\t\t\t\t\timageWarning: progress.imageWarning,\n\t\t\t\t\tphase: progress.phase\n\t\t\t\t};\n\t\t\t},\n\t\t\tmarkSetupComplete() {\n\t\t\t\tmarkSetupComplete(state);\n\t\t\t}\n\t\t});\n\t})().finally(() => {\n\t\t_deployPromise = null;\n\t});\n}\nfunction prepareSetupRestorePoint(state) {\n\treturn backupSetupInputs(state);\n}\n//#endregion\nexport { startDeploy as i, prepareSetupRestorePoint as n, resetDeployState as r, getDeployState as t };\n"],"names":[],"mappings":";;AACA;AACA,IAAI,MAAM,GAAG;AACb,CAAC,SAAS,EAAE,KAAK;AACjB,CAAC,aAAa,EAAE,KAAK;AACrB,CAAC,YAAY,EAAE,EAAE;AACjB,CAAC,WAAW,EAAE,IAAI;AAClB,CAAC,YAAY,EAAE,IAAI;AACnB,CAAC,KAAK,EAAE;AACR,CAAC;AACD,IAAI,cAAc,GAAG,IAAI;AACzB,SAAS,sBAAsB,CAAC,KAAK,EAAE;AACvC,CAAC,MAAM,OAAO,GAAG,iBAAiB,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;AACnE,CAAC,OAAO;AACR,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS;AAC9B,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW;AAClC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC;AAC5E,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY;AACpC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW;AAClC,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY;AACpC,EAAE,KAAK,EAAE,OAAO,CAAC;AACjB,EAAE;AACF;AACA,SAAS,cAAc,CAAC,KAAK,EAAE;AAC/B,CAAC,IAAI,KAAK,EAAE,MAAM,GAAG,sBAAsB,CAAC,KAAK,CAAC;AAClD,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC,EAAE,MAAM,CAAC,aAAa,GAAG,IAAI;AACvH,CAAC,OAAO;AACR,EAAE,GAAG,MAAM;AACX,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;AACjE,EAAE;AACF;AACA,SAAS,gBAAgB,GAAG;AAC5B,CAAC,MAAM,GAAG;AACV,EAAE,SAAS,EAAE,KAAK;AAClB,EAAE,aAAa,EAAE,KAAK;AACtB,EAAE,YAAY,EAAE,EAAE;AAClB,EAAE,WAAW,EAAE,IAAI;AACnB,EAAE,YAAY,EAAE,IAAI;AACpB,EAAE,KAAK,EAAE;AACT,EAAE;AACF;AACA,SAAS,WAAW,CAAC,KAAK,EAAE;AAC5B,CAAC,IAAI,cAAc,EAAE;AACrB,EAAE,MAAM,CAAC,WAAW,GAAG,0EAA0E;AACjG,EAAE;AACF,CAAC;AACD,CAAC,cAAc,GAAG,CAAC,YAAY;AAC/B,EAAE,MAAM,SAAS,CAAC,KAAK,EAAE;AACzB,GAAG,WAAW,EAAE,wBAAwB,CAAC,KAAK,CAAC;AAC/C,GAAG,QAAQ,CAAC,QAAQ,EAAE;AACtB,IAAI,MAAM,GAAG;AACb,KAAK,SAAS,EAAE,QAAQ,CAAC,SAAS;AAClC,KAAK,WAAW,EAAE,QAAQ,CAAC,WAAW;AACtC,KAAK,aAAa,EAAE,QAAQ,CAAC,aAAa;AAC1C,KAAK,YAAY,EAAE,QAAQ,CAAC,YAAY;AACxC,KAAK,WAAW,EAAE,QAAQ,CAAC,WAAW;AACtC,KAAK,YAAY,EAAE,QAAQ,CAAC,YAAY;AACxC,KAAK,KAAK,EAAE,QAAQ,CAAC;AACrB,KAAK;AACL,GAAG,CAAC;AACJ,GAAG,iBAAiB,GAAG;AACvB,IAAI,iBAAiB,CAAC,KAAK,CAAC;AAC5B,GAAG;AACH,GAAG,CAAC;AACJ,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM;AACpB,EAAE,cAAc,GAAG,IAAI;AACvB,CAAC,CAAC,CAAC;AACH;AACA,SAAS,wBAAwB,CAAC,KAAK,EAAE;AACzC,CAAC,OAAO,iBAAiB,CAAC,KAAK,CAAC;AAChC;;;;"}
@@ -737,7 +737,7 @@ var import_main = (/* @__PURE__ */ __commonJSMin(((exports, module) => {
737
737
  module.exports = DotenvModule;
738
738
  })))();
739
739
  var package_default = {
740
- version: "0.12.0-rc.6"};
740
+ version: "0.12.0-rc.7"};
741
741
  //#endregion
742
742
  //#region ../lib/src/control-plane/versioning.ts
743
743
  var SEMVER_RE = /^v?\d+\.\d+\.\d+(?:[-+].*)?$/;
@@ -1188,6 +1188,23 @@ var BackupSpaceError = class extends MigrationError {
1188
1188
  this.name = "BackupSpaceError";
1189
1189
  }
1190
1190
  };
1191
+ /**
1192
+ * Thrown when a home directory has data but matches NO known layout — no
1193
+ * OP_LAYOUT_VERSION stamp, no vault/ (0.10.x), no config/system.env (0.9.x), and
1194
+ * no knowledge/env/stack.env (0.11+). Rather than silently declaring it "already
1195
+ * current" (which skips all migrations and permanently mislabels it — the failure
1196
+ * mode that hid the 0.9.x gap for a release), detection refuses BEFORE touching
1197
+ * anything. Surfaced as a MigrationError so existing CLI/UI handlers present the
1198
+ * guidance and exit cleanly. Nothing has been modified when this throws.
1199
+ */
1200
+ var UnrecognizedLayoutError = class extends MigrationError {
1201
+ homeDir;
1202
+ constructor(homeDir) {
1203
+ super(`Unrecognized OpenPalm home layout at ${homeDir}: it contains data but matches no known version (no OP_LAYOUT_VERSION stamp, no vault/, no config/system.env, no knowledge/env/stack.env).`, "No changes were made to your home. This directory may be from an unsupported or newer version of OpenPalm. Make a manual backup, then either upgrade through the version that created it, or — if you know the layout — set OP_LAYOUT_VERSION in knowledge/env/stack.env to force detection. If this is unexpected, open an issue with a listing of the directory.", null);
1204
+ this.homeDir = homeDir;
1205
+ this.name = "UnrecognizedLayoutError";
1206
+ }
1207
+ };
1191
1208
  var RELEASE_VERSION_KEY = "OP_RELEASE_VERSION";
1192
1209
  function resolveMigrationPaths(homeDir) {
1193
1210
  return {
@@ -1198,9 +1215,21 @@ function resolveMigrationPaths(homeDir) {
1198
1215
  configDir: join(homeDir, "config")
1199
1216
  };
1200
1217
  }
1201
- function selectPendingReleaseMigrations(releaseFrom, targetVersion) {
1218
+ /**
1219
+ * Pick the release migrations to run for an upgrade to `targetVersion`: every
1220
+ * migration pinned to a version in the half-open range (releaseFrom, targetVersion]
1221
+ * — i.e. NEWER than the home's recorded version, up to and INCLUDING the target.
1222
+ * `releaseFrom === null` (no recorded version) runs them all (they are idempotent).
1223
+ *
1224
+ * This is what makes adding a release migration a one-line, version-local change:
1225
+ * a developer pins their migration to the release that introduced it and the range
1226
+ * selector includes it for every older home automatically — they never touch, or
1227
+ * even read, the migrations for prior releases. `migrations` is injectable so the
1228
+ * forward-compat property can be proven against a hypothetical future set.
1229
+ */
1230
+ function selectPendingReleaseMigrations(releaseFrom, targetVersion, migrations = RELEASE_MIGRATIONS) {
1202
1231
  if (!isComparableSemver(targetVersion)) return [];
1203
- return RELEASE_MIGRATIONS.filter((migration) => {
1232
+ return migrations.filter((migration) => {
1204
1233
  if (!isComparableSemver(migration.version)) return false;
1205
1234
  if (compareComparableVersions(migration.version, targetVersion) > 0) return false;
1206
1235
  if (releaseFrom === null || !isComparableSemver(releaseFrom)) return true;
@@ -1219,23 +1248,56 @@ function readStackEnvValue(stashDir, key) {
1219
1248
  }
1220
1249
  return null;
1221
1250
  }
1222
- /**
1223
- * Resolve the current on-disk layout version.
1224
- * - explicit OP_LAYOUT_VERSION in knowledge/env/stack.env wins
1225
- * - else a top-level `vault/` directory ⇒ 0.10.x layout (version 0)
1226
- * - else a `config/system.env` file ⇒ 0.9.x layout (pre-vault; also version 0 —
1227
- * the 0→1 migration relocates both old shapes into the knowledge/ layout)
1228
- * - else assume the current layout (a pre-marker 0.11 install) — caller stamps it
1251
+ /** OpenPalm-shaped directories whose content marks a home as "an install of SOME
1252
+ * version" (vs. an empty/fresh home or a directory full of unrelated junk). */
1253
+ var OPENPALM_CONTENT_DIRS = [
1254
+ "config",
1255
+ "data",
1256
+ "knowledge",
1257
+ "logs",
1258
+ "backups"
1259
+ ];
1260
+ /** True if `dir` exists and contains at least one regular file (recursively). */
1261
+ function dirHasAnyFile(dir) {
1262
+ if (!existsSync(dir)) return false;
1263
+ for (const entry of readdirSync(dir, { withFileTypes: true })) {
1264
+ if (entry.isFile()) return true;
1265
+ if (entry.isDirectory() && dirHasAnyFile(join(dir, entry.name))) return true;
1266
+ }
1267
+ return false;
1268
+ }
1269
+ /** True if the home holds any OpenPalm-shaped content (i.e. is not fresh/empty). */
1270
+ function hasOpenPalmContent(homeDir) {
1271
+ return OPENPALM_CONTENT_DIRS.some((d) => dirHasAnyFile(join(homeDir, d)));
1272
+ }
1273
+ /**
1274
+ * Resolve the current on-disk layout version. Ordered so that an AUTHORITATIVE
1275
+ * stamp wins, legacy markers handle both old installs and crash-recovery, and an
1276
+ * unrecognized home fails LOUD instead of being silently declared current:
1277
+ * 1. explicit OP_LAYOUT_VERSION in knowledge/env/stack.env ⇒ that version
1278
+ * (a completed migration is stamped, so this short-circuits everything below)
1279
+ * 2. a top-level `vault/` directory ⇒ 0.10.x layout (version 0). Checked before
1280
+ * the pre-stamp shortcut so a crash mid-migration (knowledge/ written, not yet
1281
+ * stamped, vault/ still present) re-runs the idempotent 0→1 migration.
1282
+ * 3. a `config/system.env` file ⇒ 0.9.x layout (pre-vault; also version 0)
1283
+ * 4. a `knowledge/env/stack.env` with no stamp ⇒ current layout (a 0.11.0 install
1284
+ * made before OP_LAYOUT_VERSION existed) — caller stamps it
1285
+ * 5. no OpenPalm-shaped content ⇒ a fresh install ⇒ current
1286
+ * 6. otherwise: data present but no known layout ⇒ throw UnrecognizedLayoutError
1287
+ * (refuse rather than silently skip migrations and mislabel the home)
1229
1288
  */
1230
1289
  function readLayoutVersion(ctx) {
1231
1290
  const envPath = stackEnvFile(ctx.stashDir);
1232
- if (existsSync(envPath)) for (const line of readFileSync(envPath, "utf-8").split("\n")) {
1291
+ const envExists = existsSync(envPath);
1292
+ if (envExists) for (const line of readFileSync(envPath, "utf-8").split("\n")) {
1233
1293
  const m = line.match(/^OP_LAYOUT_VERSION=(\d+)\s*$/);
1234
1294
  if (m) return Number(m[1]);
1235
1295
  }
1236
1296
  if (existsSync(join(ctx.homeDir, "vault"))) return 0;
1237
1297
  if (existsSync(join(ctx.homeDir, "config", "system.env"))) return 0;
1238
- return 2;
1298
+ if (envExists) return 2;
1299
+ if (!hasOpenPalmContent(ctx.homeDir)) return 2;
1300
+ throw new UnrecognizedLayoutError(ctx.homeDir);
1239
1301
  }
1240
1302
  function readStampedLayoutVersion(stashDir) {
1241
1303
  const raw = readStackEnvValue(stashDir, LAYOUT_VERSION_KEY);
@@ -1760,6 +1822,30 @@ var MIGRATIONS = [{
1760
1822
  for (const rel of INERT_LAYOUT_V2_FILES) if (existsSync(join(ctx.homeDir, rel))) throw new Error(`post-migration check failed: inert ${rel} still present`);
1761
1823
  }
1762
1824
  }];
1825
+ /**
1826
+ * Select the layout migrations to run, by WALKING the chain from `from` up to
1827
+ * CURRENT_LAYOUT_VERSION — correct-by-construction for multi-version jumps and a
1828
+ * loud guard against a broken chain (the forward-compat footgun). A plain
1829
+ * `filter(m.from in [from, ceiling))` would silently skip a missing step or run a
1830
+ * migration whose precondition isn't met; here a gap throws immediately so the
1831
+ * mistake surfaces at the structural test, never on a user's disk.
1832
+ *
1833
+ * Forward-only: a home at or beyond the current layout (e.g. ran on a newer app,
1834
+ * then downgraded) returns [] — there are no backward migrations.
1835
+ */
1836
+ function selectPendingLayoutMigrations(from, migrations = MIGRATIONS, ceiling = 2) {
1837
+ if (from >= ceiling) return [];
1838
+ const chain = [];
1839
+ let cursor = from;
1840
+ while (cursor < ceiling) {
1841
+ const next = migrations.find((m) => m.from === cursor);
1842
+ if (!next) throw new Error(`Layout migration chain is broken: no migration with from:${cursor} (home is at layout ${from}, target is ${ceiling}). Add a Migration { from:${cursor}, to:${cursor + 1}, … } to MIGRATIONS.`);
1843
+ chain.push(next);
1844
+ cursor = next.to;
1845
+ }
1846
+ if (cursor !== ceiling) throw new Error(`Layout migration chain overshoots the target: reached ${cursor}, expected ${ceiling}. Migrations must advance one layout step at a time.`);
1847
+ return chain;
1848
+ }
1763
1849
  var RELEASE_MIGRATIONS = [
1764
1850
  {
1765
1851
  version: "v0.11.5-rc.1",
@@ -1858,7 +1944,7 @@ function ensureMigrated(opts = {}) {
1858
1944
  releaseTo: comparableReleaseTarget ?? releaseFrom ?? "",
1859
1945
  releaseApplied: []
1860
1946
  };
1861
- const pending = MIGRATIONS.filter((m) => m.from >= from && m.from < 2).sort((a, b) => a.from - b.from);
1947
+ const pending = selectPendingLayoutMigrations(from);
1862
1948
  const pendingRelease = comparableReleaseTarget ? selectPendingReleaseMigrations(releaseFrom, comparableReleaseTarget) : [];
1863
1949
  if (pending.length === 0 && pendingRelease.length === 0 && !needsLayoutStamp && !needsReleaseStamp) return {
1864
1950
  ...empty,
@@ -10393,4 +10479,4 @@ function collectBindAddressWarnings(env) {
10393
10479
  }
10394
10480
 
10395
10481
  export { ensureReleaseMigrated as $, AKM_USER_ENV_REF as A, composeStats as B, CORE_SERVICES as C, DowngradeConfirmationRequired as D, composeStop as E, composeUp as F, createLogger as G, createOpenCodeClient as H, INSTALL_LOCK_STALE_AFTER_MS as I, createState as J, deleteUserEnvKey as K, deriveLaunchStatus as L, MigrationError as M, deriveLocalStackState as N, detectGpu as O, PLATFORM_VERSION as P, detectHostOpenCode as Q, detectLocalProviders as R, detectRuntime as S, disableHostAkmSharing as T, dismissSecretStripNotice as U, enableHostAkmSharing as V, ensureAkmUserEnv as W, ensureHomeDirs as X, ensureMigrated as Y, ensureOpenCodeConfig as Z, ensureOpenCodeSystemConfig as _, addonProfileId as a, validateProposedState as a$, ensureSecrets as a0, executeAutomation as a1, fetchProviderModels as a2, formatForDisplay as a3, getAddonProfileAvailability as a4, getAddonProfileSelection as a5, getAddonProfiles as a6, getAddonServiceNames as a7, getAkmStats as a8, getDockerEvents as a9, readDeployJournal as aA, readSecret as aB, readSecretFile as aC, readSecretStripNotice as aD, readStackEnv as aE, readStackRuntimeEnv as aF, readStackSecretEnv as aG, readTaskFile as aH, readUserEnvFile as aI, recommendSetup as aJ, removeSecretFile as aK, removeTaskFile as aL, resolveComposeProjectName as aM, resolveDataDir as aN, resolveDefaultMigrateTarget as aO, resolveDeployJournalPath as aP, resolveEffectivePlatformImageTag as aQ, resolveRuntimeFiles as aR, resolveStackDir as aS, runDeploy as aT, seedUiBuild as aU, setAddonEnabled as aV, setAddonProfileSelection as aW, summarizeBackups as aX, summarizeComposeStderr as aY, unlockInstallLock as aZ, useExistingProviderForAssistantCli as a_, getHostAkmSharingStatus as aa, getRegistryAddonConfig as ab, hostAkmStashPath as ac, importHostOpenCode as ad, initializeStateSecrets as ae, inspectInstallLock as af, isAllowedService as ag, isComparableSemver as ah, isHostAkmAvailable as ai, isPrerelease as aj, isSetupComplete as ak, listAssistantCliTools as al, listAvailableAddonIds as am, listBackupDirs as an, listEnabledAddonIds as ao, listSecretFiles as ap, loadAutomations as aq, mapDockerError as ar, markSetupComplete as as, parseComposeStderr as at, parseEnvFile as au, patchSecretsEnvFile as av, performSetup as aw, performUpgrade as ax, pruneBackupDirs as ay, readAutomationLogs as az, annotateAddonProfileAvailability as b, writeFileAtomic as b0, writeRuntimeFiles as b1, writeSecretFile as b2, writeStackSecretEnv as b3, writeTaskFile as b4, writeUserEnvKey as b5, writeVoiceVars as b6, applyInstall as c, applyTagChange as d, applyUninstall as e, applyUpdate as f, assertSafeSecretFilename as g, assertSafeTaskFilename as h, authJsonPath as i, backupSetupInputs as j, buildAkmEndpoint as k, buildAkmEnv as l, buildComposeOptions as m, buildManagedServices as n, checkDocker as o, checkDockerCompose as p, classifyLocalInstall as q, collectBindAddressWarnings as r, compareComparableVersions as s, composeDown as t, composeLogs as u, composePreflight as v, composePs as w, composePull as x, composeRestart as y, composeStart as z };
10396
- //# sourceMappingURL=src-HnR-W6qI.js.map
10482
+ //# sourceMappingURL=src-DnDbWIue.js.map