@cardstack/boxel-cli 0.13.0-unstable.5 → 0.13.0-unstable.6

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 (130) hide show
  1. package/bundled-test-harness/assets/{ai-module-creation-test-EsOoJpQ1.js → ai-module-creation-test-C4zhhxaZ.js} +1 -1
  2. package/bundled-test-harness/assets/{aibot-message-uGaCPn5o.js → aibot-message-BShcljQ9.js} +1 -1
  3. package/bundled-test-harness/assets/{app-pIzBYfiZ.js → app-DiEYqT6T.js} +4 -4
  4. package/bundled-test-harness/assets/{binary-upload-dedupe-test-Dnxlbbu6.js → binary-upload-dedupe-test-C0RFmHma.js} +1 -1
  5. package/bundled-test-harness/assets/{can-invoke-test-DJi7jMaU.js → can-invoke-test-CVfE1l1V.js} +1 -1
  6. package/bundled-test-harness/assets/{card-chooser-paging-test-BoUyFMEw.js → card-chooser-paging-test-BN21sDpP.js} +1 -1
  7. package/bundled-test-harness/assets/{card-chooser-test-7ZwhxxkH.js → card-chooser-test-C9jDiIgM.js} +1 -1
  8. package/bundled-test-harness/assets/{card-def-field-def-relationships-test-ByPl5n55.js → card-def-field-def-relationships-test-D_30xak6.js} +1 -1
  9. package/bundled-test-harness/assets/{card-delete-test-Be971b-V.js → card-delete-test-BlsD9Xw4.js} +1 -1
  10. package/bundled-test-harness/assets/{choreo-D1K9RyjM.js → choreo-CZUXQKjf.js} +81 -2
  11. package/bundled-test-harness/assets/choreo-D8RcLuoq.js +2 -0
  12. package/bundled-test-harness/assets/{choreo-feature-reel-test-vzmW-SFd.js → choreo-feature-reel-test-DRGloCAJ.js} +1 -1
  13. package/bundled-test-harness/assets/{choreo-gallery-build-order-test-J6n0_PKm.js → choreo-gallery-build-order-test-BR-r7gaw.js} +1 -1
  14. package/bundled-test-harness/assets/{choreo-gallery-compositor-test-DSi1N9bi.js → choreo-gallery-compositor-test-CWRLfcNT.js} +1 -1
  15. package/bundled-test-harness/assets/{choreo-gallery-crossing-stage-test-BIuLOZH6.js → choreo-gallery-crossing-stage-test-WJ7FmjYi.js} +2 -2
  16. package/bundled-test-harness/assets/{choreo-gallery-demos-alive-test-ClGjpnj6.js → choreo-gallery-demos-alive-test-C-yxdVT_.js} +1 -1
  17. package/bundled-test-harness/assets/{choreo-gallery-drift-test-OjxMXV0Y.js → choreo-gallery-drift-test-HX1mK3od.js} +1 -1
  18. package/bundled-test-harness/assets/{choreo-gallery-escort-test-D6VL4FfT.js → choreo-gallery-escort-test-jZEVk_V4.js} +1 -1
  19. package/bundled-test-harness/assets/{choreo-gallery-films-test-DBcDHGx8.js → choreo-gallery-films-test-DLDQzsxb.js} +1 -1
  20. package/bundled-test-harness/assets/{choreo-gallery-filter-test-BUghtJZe.js → choreo-gallery-filter-test-BJv8KEeP.js} +1 -1
  21. package/bundled-test-harness/assets/{choreo-gallery-fold-test-0D9-_h_I.js → choreo-gallery-fold-test-BssKC8A8.js} +1 -1
  22. package/bundled-test-harness/assets/{choreo-gallery-guides-test-CZnaxUNJ.js → choreo-gallery-guides-test-DTj7yEKp.js} +2 -2
  23. package/bundled-test-harness/assets/{choreo-gallery-hang-test-WFvsJ-MJ.js → choreo-gallery-hang-test-BqJLmeFF.js} +1 -1
  24. package/bundled-test-harness/assets/{choreo-gallery-highlight-test-Dn0hYPLC.js → choreo-gallery-highlight-test-B1Q7-ICm.js} +1 -1
  25. package/bundled-test-harness/assets/{choreo-gallery-inline-edit-test-C5WvS67s.js → choreo-gallery-inline-edit-test-7My9lVam.js} +1 -1
  26. package/bundled-test-harness/assets/{choreo-gallery-interruption-test-CgT9RKTe.js → choreo-gallery-interruption-test-BlIAaGrw.js} +2 -2
  27. package/bundled-test-harness/assets/{choreo-gallery-lone-stack-test-BZgqbTJd.js → choreo-gallery-lone-stack-test-C9NnYIP8.js} +1 -1
  28. package/bundled-test-harness/assets/{choreo-gallery-playhead-transport-test-Dt71t4CU.js → choreo-gallery-playhead-transport-test-CwdiZWeI.js} +1 -1
  29. package/bundled-test-harness/assets/{choreo-gallery-poplayout-subtree-test-B_rDq4em.js → choreo-gallery-poplayout-subtree-test-D55fxwTn.js} +1 -1
  30. package/bundled-test-harness/assets/{choreo-gallery-presence-modes-test-j_cZ9cAM.js → choreo-gallery-presence-modes-test-D8Wxv0lb.js} +1 -1
  31. package/bundled-test-harness/assets/{choreo-gallery-presentation-test-CIFKR65J.js → choreo-gallery-presentation-test-BLoWfp6G.js} +1 -1
  32. package/bundled-test-harness/assets/{choreo-gallery-reduced-motion-test-BvRCiCvB.js → choreo-gallery-reduced-motion-test-D5XxTBDS.js} +2 -2
  33. package/bundled-test-harness/assets/{choreo-gallery-sheet-standalone-test-DgO2MBzU.js → choreo-gallery-sheet-standalone-test-DrHTTvss.js} +1 -1
  34. package/bundled-test-harness/assets/{choreo-gallery-sheet-test-BntUKT_P.js → choreo-gallery-sheet-test-BFVdnM_b.js} +1 -1
  35. package/bundled-test-harness/assets/{choreo-gallery-site-test-CvSE6Jyq.js → choreo-gallery-site-test-BhEBHdvI.js} +2 -2
  36. package/bundled-test-harness/assets/{choreo-gallery-stage-Dj6tFzon.js → choreo-gallery-stage-DcKKsdcu.js} +1 -1
  37. package/bundled-test-harness/assets/{choreo-gallery-stage-keyboard-test-CkDrAPA8.js → choreo-gallery-stage-keyboard-test-Fcc6SC3F.js} +1 -1
  38. package/bundled-test-harness/assets/{choreo-gallery-stages-test-DHUmzoRW.js → choreo-gallery-stages-test-Cb-ADpxK.js} +1 -1
  39. package/bundled-test-harness/assets/{choreo-gallery-subdivision-test-BZ9-cDFh.js → choreo-gallery-subdivision-test-DMJ6C9FW.js} +1 -1
  40. package/bundled-test-harness/assets/{choreo-gallery-table-plan-test-7uP6mZpo.js → choreo-gallery-table-plan-test-CAjSUdLJ.js} +1 -1
  41. package/bundled-test-harness/assets/{choreo-gallery-theater-test-DgEue9FD.js → choreo-gallery-theater-test-B-3IZMj9.js} +2 -2
  42. package/bundled-test-harness/assets/{choreo-gallery-tuning-test-CfPx5iCp.js → choreo-gallery-tuning-test-BVxK5Ry_.js} +1 -1
  43. package/bundled-test-harness/assets/{choreo-gallery-widget-room-test-o9T2EFKq.js → choreo-gallery-widget-room-test-uWBH1EKE.js} +1 -1
  44. package/bundled-test-harness/assets/{choreo-gallery-wires-test-73JLkxn6.js → choreo-gallery-wires-test-Bo4Sd1Vn.js} +1 -1
  45. package/bundled-test-harness/assets/{clip-CsRtHZiN.js → clip-DY6N6K67.js} +1 -1
  46. package/bundled-test-harness/assets/clip-DzXoPdp-.js +2 -0
  47. package/bundled-test-harness/assets/{codeblocks-test-D9pbJMK8.js → codeblocks-test-D6ijVvEL.js} +1 -1
  48. package/bundled-test-harness/assets/{compaction-test-BSqAGv4g.js → compaction-test-CjEsY0uG.js} +1 -1
  49. package/bundled-test-harness/assets/{container-h3Wc26qn.css → container-BYGZImLU.css} +73 -69
  50. package/bundled-test-harness/assets/{container-CEslVSTe.js → container-CBZZ8uFw.js} +73 -32
  51. package/bundled-test-harness/assets/{create-listing-modal-test-DyGlGMWu.js → create-listing-modal-test-De7b4vu3.js} +1 -1
  52. package/bundled-test-harness/assets/{debug-message-test-0hv0RwE_.js → debug-message-test-Ck3BfFv3.js} +1 -1
  53. package/bundled-test-harness/assets/{externals-CDQm-Lm7.js → externals-k-2ZBepK.js} +11 -11
  54. package/bundled-test-harness/assets/{fallback-banner-live-delete-test-DQSiTzvj.js → fallback-banner-live-delete-test-CuFiH1D8.js} +1 -1
  55. package/bundled-test-harness/assets/{fallback-banner-test-CJFKLpOy.js → fallback-banner-test-CqSRN7D8.js} +1 -1
  56. package/bundled-test-harness/assets/{fallback-models-test-CiWfmxaB.js → fallback-models-test-BWekNxC0.js} +1 -1
  57. package/bundled-test-harness/assets/{file-attachment-test-m72-VerW.js → file-attachment-test-LwZf-BSY.js} +1 -1
  58. package/bundled-test-harness/assets/{film-D97U-ydx.js → film-Bf73ypzi.js} +6 -6
  59. package/bundled-test-harness/assets/film-C54lhaiU.js +2 -0
  60. package/bundled-test-harness/assets/{film-D1E-odYG.js → film-DPcMEHYu.js} +6 -6
  61. package/bundled-test-harness/assets/{formatted-aibot-message-test-Bdx_-Ktn.js → formatted-aibot-message-test-BahBj3x8.js} +1 -1
  62. package/bundled-test-harness/assets/{general-test-DQuxDvXK.js → general-test-DKZPBtSb.js} +1 -1
  63. package/bundled-test-harness/assets/{glimmer-motion-and-choreo-in-cards-test-DzPKH76g.js → glimmer-motion-and-choreo-in-cards-test-BkUDjiTs.js} +14 -14
  64. package/bundled-test-harness/assets/{glimmer-motion-and-choreo-test-D9mlcQuN.js → glimmer-motion-and-choreo-test-DsFWCzTs.js} +3 -3
  65. package/bundled-test-harness/assets/{index-query-engine-test-BOvxkx07.js → index-query-engine-test-BETfoYOK.js} +1 -1
  66. package/bundled-test-harness/assets/{instance-filter-matcher-test-COAlkUed.js → instance-filter-matcher-test-BSVCg59b.js} +1 -1
  67. package/bundled-test-harness/assets/{main-DUKPWRts.js → main-bXHwJ0CN.js} +1 -1
  68. package/bundled-test-harness/assets/{markdown-preview-Df5fp1SY.js → markdown-preview-lOh-MyqF.js} +1 -1
  69. package/bundled-test-harness/assets/{markdown-preview-test-DDaPzsVs.js → markdown-preview-test-B8w0fFIy.js} +1 -1
  70. package/bundled-test-harness/assets/{model-cost-tier-test-CZlu1zww.js → model-cost-tier-test-BGg-sJML.js} +1 -1
  71. package/bundled-test-harness/assets/{operation-lowering-test-CKkamOQt.js → operation-lowering-test-omU66bkJ.js} +1 -1
  72. package/bundled-test-harness/assets/{operator-mode-card-chooser-test-CQ1v8med.js → operator-mode-card-chooser-test-DjTQgizt.js} +1 -1
  73. package/bundled-test-harness/assets/{operator-mode-links-test-BMHEauS3.js → operator-mode-links-test-DSEqy5Db.js} +5 -5
  74. package/bundled-test-harness/assets/{operator-mode-test-blL_JVF8.js → operator-mode-test-CB7BNDNE.js} +1 -1
  75. package/bundled-test-harness/assets/{operator-mode-ui-test-BG6I7-Hc.js → operator-mode-ui-test-C1OhF1il.js} +1 -1
  76. package/bundled-test-harness/assets/{overlay-menu-items-test-D-zmRQQ0.js → overlay-menu-items-test-CPN31yBJ.js} +1 -1
  77. package/bundled-test-harness/assets/{overlays-COinwHCP.js → overlays-B-qMEPhY.js} +1 -1
  78. package/bundled-test-harness/assets/{overlays-nTqcu69K.js → overlays-DSf2je0c.js} +1 -1
  79. package/bundled-test-harness/assets/{panel-D9SEMehG.js → panel-DjrC7DxA.js} +4 -4
  80. package/bundled-test-harness/assets/{past-sessions-test-De9N4wVX.js → past-sessions-test-BSIS2Hlq.js} +1 -1
  81. package/bundled-test-harness/assets/{permission-checking-realm-test-OBzvhDB_.js → permission-checking-realm-test-BD4O0nen.js} +1 -1
  82. package/bundled-test-harness/assets/{plate-DAr_pvwC.js → plate-CJq1veVA.js} +1 -1
  83. package/bundled-test-harness/assets/plate-CwAvOUfL.js +2 -0
  84. package/bundled-test-harness/assets/player-Digk7omr.js +2 -0
  85. package/bundled-test-harness/assets/{player-CAVQUyKk.js → player-vsjosoN_.js} +1 -1
  86. package/bundled-test-harness/assets/{quick-look-test-icQwb1NJ.js → quick-look-test-CE0o6lJ4.js} +1 -1
  87. package/bundled-test-harness/assets/{realm-api-keys-test-gtJ8XZCE.js → realm-api-keys-test-BVs7f5Dz.js} +1 -1
  88. package/bundled-test-harness/assets/{realm-config-policy-standing-test-CXJ4ZMde.js → realm-config-policy-standing-test-Ber-IXpc.js} +1 -1
  89. package/bundled-test-harness/assets/{realm-config-routing-rule-edit-test-DoEunShH.js → realm-config-routing-rule-edit-test-3Xqt5VlM.js} +1 -1
  90. package/bundled-test-harness/assets/{realm-config-settings-test-BYi9i4O6.js → realm-config-settings-test-CkalhbDF.js} +1 -1
  91. package/bundled-test-harness/assets/{reasoning-test-WUx-4agu.js → reasoning-test-BV49AYg2.js} +1 -1
  92. package/bundled-test-harness/assets/{rendered-markdown-B_jWmDrK.js → rendered-markdown-DXiDN91F.js} +1 -1
  93. package/bundled-test-harness/assets/{rendered-markdown-test-sdWhU0NA.js → rendered-markdown-test-n3MlXmmu.js} +1 -1
  94. package/bundled-test-harness/assets/{room-message-test-BYNhZ39n.js → room-message-test-BrjJ2wMs.js} +1 -1
  95. package/bundled-test-harness/assets/{run-FzaqmBEl.js → run-P_7TsreC.js} +65 -7
  96. package/bundled-test-harness/assets/{scrolling-test-Dd4gv_fj.js → scrolling-test-B0GNYGYc.js} +2 -2
  97. package/bundled-test-harness/assets/{searchable-option-test-eJaIPH_L.js → searchable-option-test-CcbfMqIL.js} +1 -1
  98. package/bundled-test-harness/assets/{sending-test-Dt9Dh2wW.js → sending-test-H0AaBSgi.js} +1 -1
  99. package/bundled-test-harness/assets/{skills-test-BP8QNesE.js → skills-test-ChmKhADX.js} +1 -1
  100. package/bundled-test-harness/assets/{src-a4d10Hra.js → src-C1hYFgVl.js} +2 -2
  101. package/bundled-test-harness/assets/{src-LqENIikj.js → src-CIlLx7Lu.js} +3 -3
  102. package/bundled-test-harness/assets/{stick-to-bottom-resize-test-BBLiCR3X.js → stick-to-bottom-resize-test-DMHsAG0v.js} +4 -4
  103. package/bundled-test-harness/assets/{store-test-Dd4WQp7L.js → store-test-BiKKDqqW.js} +1 -1
  104. package/bundled-test-harness/assets/{test-support-QTh6wGxu.js → test-support-BGl3rthw.js} +1 -1
  105. package/bundled-test-harness/assets/{test-support-Tr-PYFgc.js → test-support-BcBv__98.js} +1 -1
  106. package/bundled-test-harness/assets/{tests-zLlwPutr.js → tests-CmM9imwB.js} +84 -84
  107. package/bundled-test-harness/assets/{text-input-validator-test-C1uDVZU7.js → text-input-validator-test-DBj7TaM_.js} +1 -1
  108. package/bundled-test-harness/assets/{titles-0a1luoTq.js → titles-DCvAhECF.js} +1 -1
  109. package/bundled-test-harness/assets/titles-ZPeArtS1.js +2 -0
  110. package/bundled-test-harness/assets/{to-device-streaming-test-3A6jI0_r.js → to-device-streaming-test-BJ4J1cXe.js} +1 -1
  111. package/bundled-test-harness/assets/{token-usage-test-33ovcqPk.js → token-usage-test-WUf4r4fQ.js} +1 -1
  112. package/bundled-test-harness/assets/{tools-test-DtUQp5ez.js → tools-test-Cvau5219.js} +1 -1
  113. package/bundled-test-harness/assets/{turn-settling-test-DqYk312r.js → turn-settling-test-DZoL2mRT.js} +1 -1
  114. package/bundled-test-harness/index.html +13 -13
  115. package/bundled-test-harness/tests/index.html +13 -13
  116. package/bundled-types/choreo/choreo.gts +45 -1
  117. package/bundled-types/choreo/compile.ts +5 -0
  118. package/bundled-types/choreo/layout-probe.ts +100 -0
  119. package/bundled-types/choreo/run.ts +80 -4
  120. package/bundled-types/host-app/components/operator-mode/motion/stack-motion.gts +92 -33
  121. package/bundled-types/host-app/components/operator-mode/stack-item.gts +2 -2
  122. package/bundled-types/host-app/components/operator-mode/stack.gts +36 -25
  123. package/bundled-types/host-app/components/operator-mode/submode-layout.gts +2 -2
  124. package/package.json +1 -1
  125. package/bundled-test-harness/assets/choreo-Ci5dG5fv.js +0 -2
  126. package/bundled-test-harness/assets/clip-CycGr0Lf.js +0 -2
  127. package/bundled-test-harness/assets/film-D25Y0ED6.js +0 -2
  128. package/bundled-test-harness/assets/plate-DeoQd99m.js +0 -2
  129. package/bundled-test-harness/assets/player-BvXGBItd.js +0 -2
  130. package/bundled-test-harness/assets/titles-DKHNLVwC.js +0 -2
@@ -6,7 +6,7 @@ import { H as templateFactory } from "./index-DaCZcoCY-CgzbilMy.js";
6
6
  import "./component-BJO47HTh.js";
7
7
  import { t as Component } from "./dist-CkA1rgqO.js";
8
8
  import "./template-factory-ds9s0u8l.js";
9
- import { t as OperatorModeContainer } from "./container-CEslVSTe.js";
9
+ import { t as OperatorModeContainer } from "./container-CBZZ8uFw.js";
10
10
  import { T as settled, f as focus, r as typeIn, s as fillIn } from "./dist-BOAdzfkP.js";
11
11
  import { t as require_qunit } from "./qunit-C-Foo4Nd.js";
12
12
  import { F as setupLocalIndexing, I as setupOnSave, L as setupRealmCacheTeardown, P as setupIntegrationTestRealm, Z as withCachedRealmSetup, lt as setupRenderingTest, ot as setupOperatorModeStateCleanup, t as setupMockMatrix } from "./mock-matrix-FjsXmU7-.js";
@@ -6,7 +6,7 @@ import { t as Component } from "./dist-CkA1rgqO.js";
6
6
  import "./template-factory-ds9s0u8l.js";
7
7
  import "./src-CbBcj3xm.js";
8
8
  import { t as MotionModifier } from "./motion-BiMvMS08.js";
9
- import { t as Choreo } from "./choreo-D1K9RyjM.js";
9
+ import { t as Choreo } from "./choreo-CZUXQKjf.js";
10
10
  //#region ../choreo/src/film/titles.gts
11
11
  /**
12
12
  * THE GATE — the front door. The film is narrated, so the door asks; and
@@ -0,0 +1,2 @@
1
+ import { n as Gate, t as EndCard } from "./titles-DCvAhECF.js";
2
+ export { EndCard, Gate };
@@ -5,7 +5,7 @@ import { H as templateFactory } from "./index-DaCZcoCY-CgzbilMy.js";
5
5
  import "./component-BJO47HTh.js";
6
6
  import { t as Component } from "./dist-CkA1rgqO.js";
7
7
  import "./template-factory-ds9s0u8l.js";
8
- import { t as OperatorModeContainer } from "./container-CEslVSTe.js";
8
+ import { t as OperatorModeContainer } from "./container-CBZZ8uFw.js";
9
9
  import { M as waitUntil, T as settled, d as click, o as waitFor } from "./dist-BOAdzfkP.js";
10
10
  import { t as require_qunit } from "./qunit-C-Foo4Nd.js";
11
11
  import { D as realmConfigCardJSON, F as setupLocalIndexing, I as setupOnSave, L as setupRealmCacheTeardown, M as setupCardLogs, P as setupIntegrationTestRealm, Z as withCachedRealmSetup, lt as setupRenderingTest, ot as setupOperatorModeStateCleanup, t as setupMockMatrix } from "./mock-matrix-FjsXmU7-.js";
@@ -5,7 +5,7 @@ import { H as templateFactory } from "./index-DaCZcoCY-CgzbilMy.js";
5
5
  import "./component-BJO47HTh.js";
6
6
  import { t as Component } from "./dist-CkA1rgqO.js";
7
7
  import "./template-factory-ds9s0u8l.js";
8
- import { t as OperatorModeContainer } from "./container-CEslVSTe.js";
8
+ import { t as OperatorModeContainer } from "./container-CBZZ8uFw.js";
9
9
  import { M as waitUntil, d as click, o as waitFor } from "./dist-BOAdzfkP.js";
10
10
  import { t as require_qunit } from "./qunit-C-Foo4Nd.js";
11
11
  import { D as realmConfigCardJSON, F as setupLocalIndexing, I as setupOnSave, L as setupRealmCacheTeardown, M as setupCardLogs, P as setupIntegrationTestRealm, Z as withCachedRealmSetup, lt as setupRenderingTest, ot as setupOperatorModeStateCleanup, t as setupMockMatrix } from "./mock-matrix-FjsXmU7-.js";
@@ -10,7 +10,7 @@ import { n as Submodes } from "./submode-switcher-BpDa9Rui.js";
10
10
  import "./component-BJO47HTh.js";
11
11
  import { t as Component } from "./dist-CkA1rgqO.js";
12
12
  import "./template-factory-ds9s0u8l.js";
13
- import { t as OperatorModeContainer } from "./container-CEslVSTe.js";
13
+ import { t as OperatorModeContainer } from "./container-CBZZ8uFw.js";
14
14
  import { t as STOPPED_TOOL_CALL_REASON } from "./stop-lrhqMDul.js";
15
15
  import { M as waitUntil, T as settled, a as find, d as click, o as waitFor, s as fillIn } from "./dist-BOAdzfkP.js";
16
16
  import { t as require_qunit } from "./qunit-C-Foo4Nd.js";
@@ -5,7 +5,7 @@ import { H as templateFactory } from "./index-DaCZcoCY-CgzbilMy.js";
5
5
  import "./component-BJO47HTh.js";
6
6
  import { t as Component } from "./dist-CkA1rgqO.js";
7
7
  import "./template-factory-ds9s0u8l.js";
8
- import { t as OperatorModeContainer } from "./container-CEslVSTe.js";
8
+ import { t as OperatorModeContainer } from "./container-CBZZ8uFw.js";
9
9
  import { T as settled, d as click, o as waitFor } from "./dist-BOAdzfkP.js";
10
10
  import { t as require_qunit } from "./qunit-C-Foo4Nd.js";
11
11
  import { D as realmConfigCardJSON, F as setupLocalIndexing, I as setupOnSave, L as setupRealmCacheTeardown, M as setupCardLogs, P as setupIntegrationTestRealm, Z as withCachedRealmSetup, lt as setupRenderingTest, ot as setupOperatorModeStateCleanup, t as setupMockMatrix } from "./mock-matrix-FjsXmU7-.js";
@@ -12,7 +12,7 @@
12
12
  boxelComponentL3, boxelComponentL4;
13
13
  </style>
14
14
 
15
- <meta name="@cardstack/host/config/environment" content="%7B%22modulePrefix%22%3A%22%40cardstack%2Fhost%22%2C%22environment%22%3A%22development%22%2C%22hostedEnvironment%22%3A%22local%22%2C%22rootURL%22%3A%22%2F%22%2C%22locationType%22%3A%22history%22%2C%22EmberENV%22%3A%7B%22EXTEND_PROTOTYPES%22%3Afalse%2C%22FEATURES%22%3A%7B%7D%2C%22_APPLICATION_TEMPLATE_WRAPPER%22%3Afalse%2C%22_DEFAULT_ASYNC_OBSERVERS%22%3Atrue%2C%22_JQUERY_INTEGRATION%22%3Afalse%2C%22_TEMPLATE_ONLY_GLIMMER_COMPONENTS%22%3Atrue%7D%2C%22APP%22%3A%7B%22version%22%3A%220.0.0%2B53c935ad%22%7D%2C%22ember-cli-mirage%22%3A%7B%22enabled%22%3Afalse%7D%2C%22logLevels%22%3A%22*%3Dinfo%2Cmatrix%3Dinfo%2Crealm%3Aevents%3Ddebug%22%2C%22matrixURL%22%3A%22http%3A%2F%2Flocalhost%3A8008%22%2C%22matrixServerName%22%3A%22localhost%22%2C%22autoSaveDelayMs%22%3A500%2C%22autoSaveQuietPeriodMs%22%3A1500%2C%22autoSaveMaxWaitMs%22%3A10000%2C%22monacoDebounceMs%22%3A500%2C%22monacoCursorDebounceMs%22%3A200%2C%22loginMessageTimeoutMs%22%3A1000%2C%22minSaveTaskDurationMs%22%3A1000%2C%22cardRenderTimeout%22%3A30000%2C%22cardSizeLimitBytes%22%3A524288%2C%22fileSizeLimitBytes%22%3A5242880%2C%22audioSizeLimitBytes%22%3A20971520%2C%22videoSizeLimitBytes%22%3A52428800%2C%22iconsURL%22%3A%22http%3A%2F%2Flocalhost%3A4206%22%2C%22secureOriginURL%22%3A%22https%3A%2F%2Flocalhost%3A4208%2Fsecure%22%2C%22publishedRealmBoxelSpaceDomain%22%3A%22localhost%3A4201%22%2C%22publishedRealmBoxelSiteDomain%22%3A%22localhost%3A4201%22%2C%22hostsOwnAssets%22%3Atrue%2C%22hostRoutingMap%22%3A%5B%5D%2C%22realmServerURL%22%3A%22https%3A%2F%2Flocalhost%3A4201%2F%22%2C%22resolvedBaseRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fbase%2F%22%2C%22resolvedCatalogRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fcatalog%2F%22%2C%22resolvedSkillsRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fskills%2F%22%2C%22resolvedOpenRouterRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fopenrouter%2F%22%2C%22resolvedPretuiRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fpretui%2F%22%2C%22resolvedTestRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4202%2Ftest%2F%22%2C%22featureFlags%22%3A%7B%7D%2C%22prefixRealmURLs%22%3A%7B%22%40cardstack%2Fbase%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fbase%2F%22%2C%22%40cardstack%2Fcatalog%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fcatalog%2F%22%2C%22%40cardstack%2Fskills%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fskills%2F%22%2C%22%40cardstack%2Fopenrouter%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fopenrouter%2F%22%2C%22%40cardstack%2Fpretui%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fpretui%2F%22%7D%2C%22defaultSystemCardId%22%3A%22%40cardstack%2Fcatalog%2FSystemCard%2Fdefault%22%2C%22defaultFieldSpecId%22%3A%22%40cardstack%2Fcatalog%2FSpec%2Ffields%2Ffield%22%7D">
15
+ <meta name="@cardstack/host/config/environment" content="%7B%22modulePrefix%22%3A%22%40cardstack%2Fhost%22%2C%22environment%22%3A%22development%22%2C%22hostedEnvironment%22%3A%22local%22%2C%22rootURL%22%3A%22%2F%22%2C%22locationType%22%3A%22history%22%2C%22EmberENV%22%3A%7B%22EXTEND_PROTOTYPES%22%3Afalse%2C%22FEATURES%22%3A%7B%7D%2C%22_APPLICATION_TEMPLATE_WRAPPER%22%3Afalse%2C%22_DEFAULT_ASYNC_OBSERVERS%22%3Atrue%2C%22_JQUERY_INTEGRATION%22%3Afalse%2C%22_TEMPLATE_ONLY_GLIMMER_COMPONENTS%22%3Atrue%7D%2C%22APP%22%3A%7B%22version%22%3A%220.0.0%2B1aea8376%22%7D%2C%22ember-cli-mirage%22%3A%7B%22enabled%22%3Afalse%7D%2C%22logLevels%22%3A%22*%3Dinfo%2Cmatrix%3Dinfo%2Crealm%3Aevents%3Ddebug%22%2C%22matrixURL%22%3A%22http%3A%2F%2Flocalhost%3A8008%22%2C%22matrixServerName%22%3A%22localhost%22%2C%22autoSaveDelayMs%22%3A500%2C%22autoSaveQuietPeriodMs%22%3A1500%2C%22autoSaveMaxWaitMs%22%3A10000%2C%22monacoDebounceMs%22%3A500%2C%22monacoCursorDebounceMs%22%3A200%2C%22loginMessageTimeoutMs%22%3A1000%2C%22minSaveTaskDurationMs%22%3A1000%2C%22cardRenderTimeout%22%3A30000%2C%22cardSizeLimitBytes%22%3A524288%2C%22fileSizeLimitBytes%22%3A5242880%2C%22audioSizeLimitBytes%22%3A20971520%2C%22videoSizeLimitBytes%22%3A52428800%2C%22iconsURL%22%3A%22http%3A%2F%2Flocalhost%3A4206%22%2C%22secureOriginURL%22%3A%22https%3A%2F%2Flocalhost%3A4208%2Fsecure%22%2C%22publishedRealmBoxelSpaceDomain%22%3A%22localhost%3A4201%22%2C%22publishedRealmBoxelSiteDomain%22%3A%22localhost%3A4201%22%2C%22hostsOwnAssets%22%3Atrue%2C%22hostRoutingMap%22%3A%5B%5D%2C%22realmServerURL%22%3A%22https%3A%2F%2Flocalhost%3A4201%2F%22%2C%22resolvedBaseRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fbase%2F%22%2C%22resolvedCatalogRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fcatalog%2F%22%2C%22resolvedSkillsRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fskills%2F%22%2C%22resolvedOpenRouterRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fopenrouter%2F%22%2C%22resolvedPretuiRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fpretui%2F%22%2C%22resolvedTestRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4202%2Ftest%2F%22%2C%22featureFlags%22%3A%7B%7D%2C%22prefixRealmURLs%22%3A%7B%22%40cardstack%2Fbase%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fbase%2F%22%2C%22%40cardstack%2Fcatalog%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fcatalog%2F%22%2C%22%40cardstack%2Fskills%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fskills%2F%22%2C%22%40cardstack%2Fopenrouter%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fopenrouter%2F%22%2C%22%40cardstack%2Fpretui%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fpretui%2F%22%7D%2C%22defaultSystemCardId%22%3A%22%40cardstack%2Fcatalog%2FSystemCard%2Fdefault%22%2C%22defaultFieldSpecId%22%3A%22%40cardstack%2Fcatalog%2FSpec%2Ffields%2Ffield%22%7D">
16
16
 
17
17
  <script>
18
18
  // Resolve dynamic-import chunk URLs against the host's distURL rather
@@ -121,7 +121,7 @@
121
121
  <meta data-boxel-head-start="">
122
122
  <title>Boxel</title>
123
123
  <meta data-boxel-head-end="">
124
- <script type="module" crossorigin="" src="/assets/main-DUKPWRts.js"></script>
124
+ <script type="module" crossorigin="" src="/assets/main-bXHwJ0CN.js"></script>
125
125
  <link rel="modulepreload" crossorigin="" href="/assets/chunk-Rp0pCe6z.js">
126
126
  <link rel="modulepreload" crossorigin="" href="/assets/preload-helper-CKDH5-7N.js">
127
127
  <link rel="modulepreload" crossorigin="" href="/assets/index-esm-CUymiD6S.js">
@@ -347,7 +347,7 @@
347
347
  <link rel="modulepreload" crossorigin="" href="/assets/validate-realm-C2Tcb2X4.js">
348
348
  <link rel="modulepreload" crossorigin="" href="/assets/view-visually-QMl0ypqH.js">
349
349
  <link rel="modulepreload" crossorigin="" href="/assets/tools-J_Knr_W6.js">
350
- <link rel="modulepreload" crossorigin="" href="/assets/externals-CDQm-Lm7.js">
350
+ <link rel="modulepreload" crossorigin="" href="/assets/externals-k-2ZBepK.js">
351
351
  <link rel="modulepreload" crossorigin="" href="/assets/render-service-Bc0F9vjl.js">
352
352
  <link rel="modulepreload" crossorigin="" href="/assets/perform-g9ba6YNZ.js">
353
353
  <link rel="modulepreload" crossorigin="" href="/assets/on-key-BPurx6Kh.js">
@@ -404,15 +404,15 @@
404
404
  <link rel="modulepreload" crossorigin="" href="/assets/dots-BQKA2CMP.js">
405
405
  <link rel="modulepreload" crossorigin="" href="/assets/history-OSRPoD0l.js">
406
406
  <link rel="modulepreload" crossorigin="" href="/assets/steps-D0xobKkB.js">
407
- <link rel="modulepreload" crossorigin="" href="/assets/run-FzaqmBEl.js">
408
- <link rel="modulepreload" crossorigin="" href="/assets/choreo-D1K9RyjM.js">
409
- <link rel="modulepreload" crossorigin="" href="/assets/src-a4d10Hra.js">
407
+ <link rel="modulepreload" crossorigin="" href="/assets/run-P_7TsreC.js">
408
+ <link rel="modulepreload" crossorigin="" href="/assets/choreo-CZUXQKjf.js">
409
+ <link rel="modulepreload" crossorigin="" href="/assets/src-C1hYFgVl.js">
410
410
  <link rel="modulepreload" crossorigin="" href="/assets/card-renderer-DO8Cy2V7.js">
411
411
  <link rel="modulepreload" crossorigin="" href="/assets/realm-url-tooltip-D2wwSzyR.js">
412
412
  <link rel="modulepreload" crossorigin="" href="/assets/reply-furniture-Cu7OoDDn.js">
413
- <link rel="modulepreload" crossorigin="" href="/assets/rendered-markdown-B_jWmDrK.js">
413
+ <link rel="modulepreload" crossorigin="" href="/assets/rendered-markdown-DXiDN91F.js">
414
414
  <link rel="modulepreload" crossorigin="" href="/assets/monaco-test-waiter-lvFEYpFj.js">
415
- <link rel="modulepreload" crossorigin="" href="/assets/aibot-message-uGaCPn5o.js">
415
+ <link rel="modulepreload" crossorigin="" href="/assets/aibot-message-BShcljQ9.js">
416
416
  <link rel="modulepreload" crossorigin="" href="/assets/segmented-control-DxJdoJ4Z.js">
417
417
  <link rel="modulepreload" crossorigin="" href="/assets/fallback-banner--S1OU8ox.js">
418
418
  <link rel="modulepreload" crossorigin="" href="/assets/user-message-BAOt1hS3.js">
@@ -427,7 +427,7 @@
427
427
  <link rel="modulepreload" crossorigin="" href="/assets/file-def-attributes-extractor-Dg_reo87.js">
428
428
  <link rel="modulepreload" crossorigin="" href="/assets/to-elsewhere-MFFftJ0J.js">
429
429
  <link rel="modulepreload" crossorigin="" href="/assets/stick-to-bottom-CPppJpG4.js">
430
- <link rel="modulepreload" crossorigin="" href="/assets/panel-D9SEMehG.js">
430
+ <link rel="modulepreload" crossorigin="" href="/assets/panel-DjrC7DxA.js">
431
431
  <link rel="modulepreload" crossorigin="" href="/assets/buffer-DQZcL7h7.js">
432
432
  <link rel="modulepreload" crossorigin="" href="/assets/definition-lookup-DMn82NCQ.js">
433
433
  <link rel="modulepreload" crossorigin="" href="/assets/auth-error-guard-Ap0Pu9mz.js">
@@ -483,7 +483,7 @@
483
483
  <link rel="modulepreload" crossorigin="" href="/assets/overlays-CdktEUsQ.js">
484
484
  <link rel="modulepreload" crossorigin="" href="/assets/section-rail-CNFCebtT.js">
485
485
  <link rel="modulepreload" crossorigin="" href="/assets/sections-BIWI0V21.js">
486
- <link rel="modulepreload" crossorigin="" href="/assets/markdown-preview-Df5fp1SY.js">
486
+ <link rel="modulepreload" crossorigin="" href="/assets/markdown-preview-lOh-MyqF.js">
487
487
  <link rel="modulepreload" crossorigin="" href="/assets/card-context-search-results-KmkXJbmC.js">
488
488
  <link rel="modulepreload" crossorigin="" href="/assets/monaco-AbHCoDJY.js">
489
489
  <link rel="modulepreload" crossorigin="" href="/assets/card-collection-BQMglA2Y.js">
@@ -492,7 +492,7 @@
492
492
  <link rel="modulepreload" crossorigin="" href="/assets/last-modified-date-CXdzIs8j.js">
493
493
  <link rel="modulepreload" crossorigin="" href="/assets/boxel-formatter-CRWFXHNL.js">
494
494
  <link rel="modulepreload" crossorigin="" href="/assets/from-elsewhere-ChxbtsBa.js">
495
- <link rel="modulepreload" crossorigin="" href="/assets/container-CEslVSTe.js">
495
+ <link rel="modulepreload" crossorigin="" href="/assets/container-CBZZ8uFw.js">
496
496
  <link rel="modulepreload" crossorigin="" href="/assets/browser-queue-DxpeoHld.js">
497
497
  <link rel="modulepreload" crossorigin="" href="/assets/gc-card-store-yOsxGgxR.js">
498
498
  <link rel="modulepreload" crossorigin="" href="/assets/search-cache-key-DrjFmmJt.js">
@@ -508,7 +508,7 @@
508
508
  <link rel="modulepreload" crossorigin="" href="/assets/operation-ledger-_YzHqeqF.js">
509
509
  <link rel="modulepreload" crossorigin="" href="/assets/operations-CqhkXcje.js">
510
510
  <link rel="modulepreload" crossorigin="" href="/assets/render-diagnostics-CztktD_I.js">
511
- <link rel="modulepreload" crossorigin="" href="/assets/app-pIzBYfiZ.js">
511
+ <link rel="modulepreload" crossorigin="" href="/assets/app-DiEYqT6T.js">
512
512
  <link rel="stylesheet" crossorigin="" href="/assets/components-Db_cO0eK.css">
513
513
  <link rel="stylesheet" crossorigin="" href="/assets/signed-capture-BzA7ETjL.css">
514
514
  <link rel="stylesheet" crossorigin="" href="/assets/visually-hidden-Db-usFcG.css">
@@ -565,7 +565,7 @@
565
565
  <link rel="stylesheet" crossorigin="" href="/assets/overlays-tUJGreBw.css">
566
566
  <link rel="stylesheet" crossorigin="" href="/assets/section-rail-CLtMQjQ9.css">
567
567
  <link rel="stylesheet" crossorigin="" href="/assets/markdown-preview-Cnd4Qwna.css">
568
- <link rel="stylesheet" crossorigin="" href="/assets/container-h3Wc26qn.css">
568
+ <link rel="stylesheet" crossorigin="" href="/assets/container-BYGZImLU.css">
569
569
  <link rel="stylesheet" crossorigin="" href="/assets/app-Qgooycf0.css">
570
570
  </head>
571
571
  <body>
@@ -13,12 +13,12 @@
13
13
  boxelComponentL3, boxelComponentL4;
14
14
  </style>
15
15
 
16
- <meta name="@cardstack/host/config/environment" content="%7B%22modulePrefix%22%3A%22%40cardstack%2Fhost%22%2C%22environment%22%3A%22test%22%2C%22hostedEnvironment%22%3A%22local%22%2C%22rootURL%22%3A%22%2F%22%2C%22locationType%22%3A%22none%22%2C%22EmberENV%22%3A%7B%22EXTEND_PROTOTYPES%22%3Afalse%2C%22FEATURES%22%3A%7B%7D%2C%22_APPLICATION_TEMPLATE_WRAPPER%22%3Afalse%2C%22_DEFAULT_ASYNC_OBSERVERS%22%3Atrue%2C%22_JQUERY_INTEGRATION%22%3Afalse%2C%22_TEMPLATE_ONLY_GLIMMER_COMPONENTS%22%3Atrue%7D%2C%22APP%22%3A%7B%22version%22%3A%220.0.0%2B53c935ad%22%2C%22LOG_ACTIVE_GENERATION%22%3Afalse%2C%22LOG_VIEW_LOOKUPS%22%3Afalse%2C%22rootElement%22%3A%22%23ember-testing%22%2C%22autoboot%22%3Afalse%7D%2C%22ember-cli-mirage%22%3A%7B%22enabled%22%3Afalse%7D%2C%22logLevels%22%3A%22*%3Dinfo%2Cmatrix%3Dinfo%2Crealm%3Aevents%3Ddebug%22%2C%22matrixURL%22%3A%22http%3A%2F%2Flocalhost%3A8008%22%2C%22matrixServerName%22%3A%22localhost%22%2C%22autoSaveDelayMs%22%3A0%2C%22autoSaveQuietPeriodMs%22%3A0%2C%22autoSaveMaxWaitMs%22%3A10000%2C%22monacoDebounceMs%22%3A0%2C%22monacoCursorDebounceMs%22%3A0%2C%22loginMessageTimeoutMs%22%3A0%2C%22minSaveTaskDurationMs%22%3A0%2C%22cardRenderTimeout%22%3A30000%2C%22cardSizeLimitBytes%22%3A524288%2C%22fileSizeLimitBytes%22%3A5242880%2C%22audioSizeLimitBytes%22%3A20971520%2C%22videoSizeLimitBytes%22%3A52428800%2C%22iconsURL%22%3A%22http%3A%2F%2Flocalhost%3A4206%22%2C%22secureOriginURL%22%3A%22https%3A%2F%2Flocalhost%3A4208%2Fsecure%22%2C%22publishedRealmBoxelSpaceDomain%22%3A%22localhost%3A4201%22%2C%22publishedRealmBoxelSiteDomain%22%3A%22localhost%3A4201%22%2C%22hostsOwnAssets%22%3Atrue%2C%22hostRoutingMap%22%3A%5B%5D%2C%22realmServerURL%22%3A%22http%3A%2F%2Ftest-realm%22%2C%22resolvedBaseRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fbase%2F%22%2C%22resolvedSkillsRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fskills%2F%22%2C%22resolvedPretuiRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fpretui%2F%22%2C%22resolvedTestRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4202%2Ftest%2F%22%2C%22featureFlags%22%3A%7B%7D%2C%22prefixRealmURLs%22%3A%7B%22%40cardstack%2Fbase%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fbase%2F%22%2C%22%40cardstack%2Fcatalog%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fcatalog%2F%22%2C%22%40cardstack%2Fskills%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fskills%2F%22%2C%22%40cardstack%2Fopenrouter%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fopenrouter%2F%22%2C%22%40cardstack%2Fpretui%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fpretui%2F%22%7D%2C%22sqlSchema%22%3A%22--%20This%20is%20auto-generated%20by%20packages%2Frealm-server%2Fscripts%2Fconvert-to-sqlite.ts%5Cn--%20Please%20don't%20directly%20modify%20this%20file%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20anonymous_grant_rate_limits%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20grant_id%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20client_ip%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20window_start%20NOT%20NULL%2C%5Cn%20%20%20window_seconds%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20count%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20expires_at%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20grant_id%2C%20client_ip%2C%20window_start%2C%20window_seconds%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20bot_commands%20(%5Cn%20%20%20id%20NOT%20NULL%2C%5Cn%20%20%20bot_id%20NOT%20NULL%2C%5Cn%20%20%20command%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20command_filter%20BLOB%20NOT%20NULL%2C%5Cn%20%20%20created_at%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20id%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20bot_registrations%20(%5Cn%20%20%20id%20NOT%20NULL%2C%5Cn%20%20%20username%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20created_at%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20id%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20boxel_index%20(%5Cn%20%20%20url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20file_alias%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20type%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20generation%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20pristine_doc%20BLOB%2C%5Cn%20%20%20search_doc%20BLOB%2C%5Cn%20%20%20error_doc%20BLOB%2C%5Cn%20%20%20deps%20BLOB%20DEFAULT%20'%5B%5D'%2C%5Cn%20%20%20types%20BLOB%2C%5Cn%20%20%20indexed_at%2C%5Cn%20%20%20is_deleted%20BOOLEAN%2C%5Cn%20%20%20last_modified%2C%5Cn%20%20%20display_names%20BLOB%2C%5Cn%20%20%20resource_created_at%2C%5Cn%20%20%20icon_html%20TEXT%2C%5Cn%20%20%20has_error%20BOOLEAN%20DEFAULT%20false%20NOT%20NULL%2C%5Cn%20%20%20last_known_good_deps%20BLOB%2C%5Cn%20%20%20diagnostics%20BLOB%2C%5Cn%20%20%20host_shell_generation%20INTEGER%2C%5Cn%20%20%20source_content_hash%20TEXT%2C%5Cn%20%20%20relationship_deps%20BLOB%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20url%2C%20realm_url%2C%20type%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20boxel_index_pending%20(%5Cn%20%20%20url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20file_alias%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20type%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20generation%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20pristine_doc%20BLOB%2C%5Cn%20%20%20search_doc%20BLOB%2C%5Cn%20%20%20error_doc%20BLOB%2C%5Cn%20%20%20deps%20BLOB%20DEFAULT%20'%5B%5D'%2C%5Cn%20%20%20types%20BLOB%2C%5Cn%20%20%20indexed_at%2C%5Cn%20%20%20is_deleted%20BOOLEAN%2C%5Cn%20%20%20last_modified%2C%5Cn%20%20%20display_names%20BLOB%2C%5Cn%20%20%20resource_created_at%2C%5Cn%20%20%20icon_html%20TEXT%2C%5Cn%20%20%20has_error%20BOOLEAN%20DEFAULT%20false%20NOT%20NULL%2C%5Cn%20%20%20last_known_good_deps%20BLOB%2C%5Cn%20%20%20diagnostics%20BLOB%2C%5Cn%20%20%20host_shell_generation%20INTEGER%2C%5Cn%20%20%20source_content_hash%20TEXT%2C%5Cn%20%20%20job_id%20INTEGER%2C%5Cn%20%20%20staging_id%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20relationship_deps%20BLOB%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20staging_id%2C%20url%2C%20type%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20incoming_webhooks%20(%5Cn%20%20%20id%20NOT%20NULL%2C%5Cn%20%20%20username%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20webhook_path%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20verification_type%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20verification_config%20BLOB%20NOT%20NULL%2C%5Cn%20%20%20created_at%20NOT%20NULL%2C%5Cn%20%20%20updated_at%20NOT%20NULL%2C%5Cn%20%20%20signing_secret_ciphertext%2C%5Cn%20%20%20signing_secret_nonce%2C%5Cn%20%20%20signing_secret_tag%2C%5Cn%20%20%20signing_secret_key_id%20TEXT%2C%5Cn%20%20%20signing_secret_created_at%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20id%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20media_cache_ledger%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20source_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20capture_spec_hash%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20source_generation%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20object_key%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20source_content_hash%20TEXT%2C%5Cn%20%20%20lane%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20content_type%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20size_bytes%20NOT%20NULL%2C%5Cn%20%20%20created_at%20NOT%20NULL%2C%5Cn%20%20%20last_accessed_at%20NOT%20NULL%2C%5Cn%20%20%20width%20INTEGER%2C%5Cn%20%20%20height%20INTEGER%2C%5Cn%20%20%20diagnostics%20BLOB%2C%5Cn%20%20%20rendered_as%20TEXT%20DEFAULT%20''%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20source_url%2C%20capture_spec_hash%2C%20source_generation%2C%20rendered_as%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20module_transpile_cache%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20canonical_path%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20body%20TEXT%2C%5Cn%20%20%20headers%20BLOB%2C%5Cn%20%20%20dependency_keys%20BLOB%2C%5Cn%20%20%20generation%20DEFAULT%200%20NOT%20NULL%2C%5Cn%20%20%20created_at%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20canonical_path%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20modules%20(%5Cn%20%20%20url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20cache_scope%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20auth_user_id%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20resolved_realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20definitions%20BLOB%2C%5Cn%20%20%20deps%20BLOB%2C%5Cn%20%20%20error_doc%20BLOB%2C%5Cn%20%20%20created_at%2C%5Cn%20%20%20file_alias%20TEXT%2C%5Cn%20%20%20url_hash%20TEXT%20GENERATED%20ALWAYS%20AS%20(url)%20STORED%20NOT%20NULL%2C%5Cn%20%20%20diagnostics%20BLOB%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20url%2C%20cache_scope%2C%20auth_user_id%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20prerendered_html%20(%5Cn%20%20%20url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20file_alias%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20type%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20fitted_html%20BLOB%2C%5Cn%20%20%20embedded_html%20BLOB%2C%5Cn%20%20%20atom_html%20TEXT%2C%5Cn%20%20%20head_html%20TEXT%2C%5Cn%20%20%20isolated_html%20TEXT%2C%5Cn%20%20%20markdown%20TEXT%2C%5Cn%20%20%20deps%20BLOB%2C%5Cn%20%20%20last_known_good_deps%20BLOB%2C%5Cn%20%20%20generation%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20is_deleted%20BOOLEAN%2C%5Cn%20%20%20error_doc%20BLOB%2C%5Cn%20%20%20rendered_at%2C%5Cn%20%20%20diagnostics%20BLOB%2C%5Cn%20%20%20captures%20BLOB%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20url%2C%20realm_url%2C%20type%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20prerendered_html_pending%20(%5Cn%20%20%20url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20file_alias%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20type%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20fitted_html%20BLOB%2C%5Cn%20%20%20embedded_html%20BLOB%2C%5Cn%20%20%20atom_html%20TEXT%2C%5Cn%20%20%20head_html%20TEXT%2C%5Cn%20%20%20isolated_html%20TEXT%2C%5Cn%20%20%20markdown%20TEXT%2C%5Cn%20%20%20deps%20BLOB%2C%5Cn%20%20%20last_known_good_deps%20BLOB%2C%5Cn%20%20%20generation%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20is_deleted%20BOOLEAN%2C%5Cn%20%20%20error_doc%20BLOB%2C%5Cn%20%20%20rendered_at%2C%5Cn%20%20%20diagnostics%20BLOB%2C%5Cn%20%20%20captures%20BLOB%2C%5Cn%20%20%20job_id%20INTEGER%2C%5Cn%20%20%20staging_id%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20staging_id%2C%20url%2C%20type%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20rate_limit_buckets%20(%5Cn%20%20%20bucket_key%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20tokens%20NOT%20NULL%2C%5Cn%20%20%20refilled_at%20NOT%20NULL%2C%5Cn%20%20%20expires_at%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20bucket_key%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20rate_limit_budgets%20(%5Cn%20%20%20budget_key%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20period%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20period_start%20NOT%20NULL%2C%5Cn%20%20%20count%20NOT%20NULL%2C%5Cn%20%20%20expires_at%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20budget_key%2C%20period%2C%20period_start%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20realm_file_meta%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20file_path%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20created_at%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20content_hash%20TEXT%2C%5Cn%20%20%20content_size%20INTEGER%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20file_path%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20realm_generations%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20current_generation%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20loader_epoch%20TEXT%20DEFAULT%20'0'%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20realm_index_commits%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20generation%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20base_generation%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20pass_id%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20job_id%20INTEGER%2C%5Cn%20%20%20urls%20BLOB%2C%5Cn%20%20%20render_only_urls%20BLOB%2C%5Cn%20%20%20full_realm%20BOOLEAN%20DEFAULT%20false%20NOT%20NULL%2C%5Cn%20%20%20committed_at%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20generation%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20realm_meta%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20generation%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20value%20BLOB%20NOT%20NULL%2C%5Cn%20%20%20indexed_at%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20generation%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20realm_metadata%20(%5Cn%20%20%20url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20show_as_catalog%20BOOLEAN%2C%5Cn%20%20%20publishable%20BOOLEAN%2C%5Cn%20%20%20created_at%20DEFAULT%20CURRENT_TIMESTAMP%20NOT%20NULL%2C%5Cn%20%20%20updated_at%20DEFAULT%20CURRENT_TIMESTAMP%20NOT%20NULL%2C%5Cn%20%20%20archived_at%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20url%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20realm_registry%20(%5Cn%20%20%20id%20DEFAULT%20(hex(randomblob(16)))%20NOT%20NULL%2C%5Cn%20%20%20url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20kind%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20disk_id%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20owner_username%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20source_url%20TEXT%2C%5Cn%20%20%20last_published_at%2C%5Cn%20%20%20pinned%20BOOLEAN%20DEFAULT%20false%20NOT%20NULL%2C%5Cn%20%20%20created_at%20DEFAULT%20CURRENT_TIMESTAMP%20NOT%20NULL%2C%5Cn%20%20%20updated_at%20DEFAULT%20CURRENT_TIMESTAMP%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20id%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20realm_type_generations%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20type_key%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20index_generation%20INTEGER%20DEFAULT%200%20NOT%20NULL%2C%5Cn%20%20%20html_generation%20INTEGER%20DEFAULT%200%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20type_key%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20realm_user_permissions%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20username%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20read%20BOOLEAN%20NOT%20NULL%2C%5Cn%20%20%20write%20BOOLEAN%20NOT%20NULL%2C%5Cn%20%20%20realm_owner%20BOOLEAN%20DEFAULT%20false%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20username%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20scoped_css%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20hash%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20css%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20last_interned_at%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20hash%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20unlisted_realm_paths%20(%5Cn%20%20%20id%20DEFAULT%20(hex(randomblob(16)))%20NOT%20NULL%2C%5Cn%20%20%20source_realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20slug%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20owner_user_id%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20created_at%20DEFAULT%20CURRENT_TIMESTAMP%20NOT%20NULL%2C%5Cn%20%20%20updated_at%20DEFAULT%20CURRENT_TIMESTAMP%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20id%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20webhook_commands%20(%5Cn%20%20%20id%20NOT%20NULL%2C%5Cn%20%20%20incoming_webhook_id%20NOT%20NULL%2C%5Cn%20%20%20command%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20command_filter%20BLOB%2C%5Cn%20%20%20created_at%20NOT%20NULL%2C%5Cn%20%20%20updated_at%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20id%20)%20%5Cn)%3B%22%2C%22defaultSystemCardId%22%3A%22http%3A%2F%2Ftest-realm%2Ftest%2FSystemCard%2Fdefault%22%2C%22defaultFieldSpecId%22%3A%22http%3A%2F%2Ftest-realm%2Ftest%2Ffields%2Ffield%22%7D">
16
+ <meta name="@cardstack/host/config/environment" content="%7B%22modulePrefix%22%3A%22%40cardstack%2Fhost%22%2C%22environment%22%3A%22test%22%2C%22hostedEnvironment%22%3A%22local%22%2C%22rootURL%22%3A%22%2F%22%2C%22locationType%22%3A%22none%22%2C%22EmberENV%22%3A%7B%22EXTEND_PROTOTYPES%22%3Afalse%2C%22FEATURES%22%3A%7B%7D%2C%22_APPLICATION_TEMPLATE_WRAPPER%22%3Afalse%2C%22_DEFAULT_ASYNC_OBSERVERS%22%3Atrue%2C%22_JQUERY_INTEGRATION%22%3Afalse%2C%22_TEMPLATE_ONLY_GLIMMER_COMPONENTS%22%3Atrue%7D%2C%22APP%22%3A%7B%22version%22%3A%220.0.0%2B1aea8376%22%2C%22LOG_ACTIVE_GENERATION%22%3Afalse%2C%22LOG_VIEW_LOOKUPS%22%3Afalse%2C%22rootElement%22%3A%22%23ember-testing%22%2C%22autoboot%22%3Afalse%7D%2C%22ember-cli-mirage%22%3A%7B%22enabled%22%3Afalse%7D%2C%22logLevels%22%3A%22*%3Dinfo%2Cmatrix%3Dinfo%2Crealm%3Aevents%3Ddebug%22%2C%22matrixURL%22%3A%22http%3A%2F%2Flocalhost%3A8008%22%2C%22matrixServerName%22%3A%22localhost%22%2C%22autoSaveDelayMs%22%3A0%2C%22autoSaveQuietPeriodMs%22%3A0%2C%22autoSaveMaxWaitMs%22%3A10000%2C%22monacoDebounceMs%22%3A0%2C%22monacoCursorDebounceMs%22%3A0%2C%22loginMessageTimeoutMs%22%3A0%2C%22minSaveTaskDurationMs%22%3A0%2C%22cardRenderTimeout%22%3A30000%2C%22cardSizeLimitBytes%22%3A524288%2C%22fileSizeLimitBytes%22%3A5242880%2C%22audioSizeLimitBytes%22%3A20971520%2C%22videoSizeLimitBytes%22%3A52428800%2C%22iconsURL%22%3A%22http%3A%2F%2Flocalhost%3A4206%22%2C%22secureOriginURL%22%3A%22https%3A%2F%2Flocalhost%3A4208%2Fsecure%22%2C%22publishedRealmBoxelSpaceDomain%22%3A%22localhost%3A4201%22%2C%22publishedRealmBoxelSiteDomain%22%3A%22localhost%3A4201%22%2C%22hostsOwnAssets%22%3Atrue%2C%22hostRoutingMap%22%3A%5B%5D%2C%22realmServerURL%22%3A%22http%3A%2F%2Ftest-realm%22%2C%22resolvedBaseRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fbase%2F%22%2C%22resolvedSkillsRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fskills%2F%22%2C%22resolvedPretuiRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fpretui%2F%22%2C%22resolvedTestRealmURL%22%3A%22https%3A%2F%2Flocalhost%3A4202%2Ftest%2F%22%2C%22featureFlags%22%3A%7B%7D%2C%22prefixRealmURLs%22%3A%7B%22%40cardstack%2Fbase%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fbase%2F%22%2C%22%40cardstack%2Fcatalog%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fcatalog%2F%22%2C%22%40cardstack%2Fskills%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fskills%2F%22%2C%22%40cardstack%2Fopenrouter%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fopenrouter%2F%22%2C%22%40cardstack%2Fpretui%2F%22%3A%22https%3A%2F%2Flocalhost%3A4201%2Fpretui%2F%22%7D%2C%22sqlSchema%22%3A%22--%20This%20is%20auto-generated%20by%20packages%2Frealm-server%2Fscripts%2Fconvert-to-sqlite.ts%5Cn--%20Please%20don't%20directly%20modify%20this%20file%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20anonymous_grant_rate_limits%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20grant_id%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20client_ip%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20window_start%20NOT%20NULL%2C%5Cn%20%20%20window_seconds%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20count%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20expires_at%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20grant_id%2C%20client_ip%2C%20window_start%2C%20window_seconds%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20bot_commands%20(%5Cn%20%20%20id%20NOT%20NULL%2C%5Cn%20%20%20bot_id%20NOT%20NULL%2C%5Cn%20%20%20command%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20command_filter%20BLOB%20NOT%20NULL%2C%5Cn%20%20%20created_at%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20id%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20bot_registrations%20(%5Cn%20%20%20id%20NOT%20NULL%2C%5Cn%20%20%20username%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20created_at%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20id%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20boxel_index%20(%5Cn%20%20%20url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20file_alias%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20type%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20generation%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20pristine_doc%20BLOB%2C%5Cn%20%20%20search_doc%20BLOB%2C%5Cn%20%20%20error_doc%20BLOB%2C%5Cn%20%20%20deps%20BLOB%20DEFAULT%20'%5B%5D'%2C%5Cn%20%20%20types%20BLOB%2C%5Cn%20%20%20indexed_at%2C%5Cn%20%20%20is_deleted%20BOOLEAN%2C%5Cn%20%20%20last_modified%2C%5Cn%20%20%20display_names%20BLOB%2C%5Cn%20%20%20resource_created_at%2C%5Cn%20%20%20icon_html%20TEXT%2C%5Cn%20%20%20has_error%20BOOLEAN%20DEFAULT%20false%20NOT%20NULL%2C%5Cn%20%20%20last_known_good_deps%20BLOB%2C%5Cn%20%20%20diagnostics%20BLOB%2C%5Cn%20%20%20host_shell_generation%20INTEGER%2C%5Cn%20%20%20source_content_hash%20TEXT%2C%5Cn%20%20%20relationship_deps%20BLOB%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20url%2C%20realm_url%2C%20type%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20boxel_index_pending%20(%5Cn%20%20%20url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20file_alias%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20type%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20generation%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20pristine_doc%20BLOB%2C%5Cn%20%20%20search_doc%20BLOB%2C%5Cn%20%20%20error_doc%20BLOB%2C%5Cn%20%20%20deps%20BLOB%20DEFAULT%20'%5B%5D'%2C%5Cn%20%20%20types%20BLOB%2C%5Cn%20%20%20indexed_at%2C%5Cn%20%20%20is_deleted%20BOOLEAN%2C%5Cn%20%20%20last_modified%2C%5Cn%20%20%20display_names%20BLOB%2C%5Cn%20%20%20resource_created_at%2C%5Cn%20%20%20icon_html%20TEXT%2C%5Cn%20%20%20has_error%20BOOLEAN%20DEFAULT%20false%20NOT%20NULL%2C%5Cn%20%20%20last_known_good_deps%20BLOB%2C%5Cn%20%20%20diagnostics%20BLOB%2C%5Cn%20%20%20host_shell_generation%20INTEGER%2C%5Cn%20%20%20source_content_hash%20TEXT%2C%5Cn%20%20%20job_id%20INTEGER%2C%5Cn%20%20%20staging_id%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20relationship_deps%20BLOB%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20staging_id%2C%20url%2C%20type%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20incoming_webhooks%20(%5Cn%20%20%20id%20NOT%20NULL%2C%5Cn%20%20%20username%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20webhook_path%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20verification_type%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20verification_config%20BLOB%20NOT%20NULL%2C%5Cn%20%20%20created_at%20NOT%20NULL%2C%5Cn%20%20%20updated_at%20NOT%20NULL%2C%5Cn%20%20%20signing_secret_ciphertext%2C%5Cn%20%20%20signing_secret_nonce%2C%5Cn%20%20%20signing_secret_tag%2C%5Cn%20%20%20signing_secret_key_id%20TEXT%2C%5Cn%20%20%20signing_secret_created_at%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20id%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20media_cache_ledger%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20source_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20capture_spec_hash%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20source_generation%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20object_key%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20source_content_hash%20TEXT%2C%5Cn%20%20%20lane%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20content_type%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20size_bytes%20NOT%20NULL%2C%5Cn%20%20%20created_at%20NOT%20NULL%2C%5Cn%20%20%20last_accessed_at%20NOT%20NULL%2C%5Cn%20%20%20width%20INTEGER%2C%5Cn%20%20%20height%20INTEGER%2C%5Cn%20%20%20diagnostics%20BLOB%2C%5Cn%20%20%20rendered_as%20TEXT%20DEFAULT%20''%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20source_url%2C%20capture_spec_hash%2C%20source_generation%2C%20rendered_as%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20module_transpile_cache%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20canonical_path%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20body%20TEXT%2C%5Cn%20%20%20headers%20BLOB%2C%5Cn%20%20%20dependency_keys%20BLOB%2C%5Cn%20%20%20generation%20DEFAULT%200%20NOT%20NULL%2C%5Cn%20%20%20created_at%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20canonical_path%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20modules%20(%5Cn%20%20%20url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20cache_scope%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20auth_user_id%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20resolved_realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20definitions%20BLOB%2C%5Cn%20%20%20deps%20BLOB%2C%5Cn%20%20%20error_doc%20BLOB%2C%5Cn%20%20%20created_at%2C%5Cn%20%20%20file_alias%20TEXT%2C%5Cn%20%20%20url_hash%20TEXT%20GENERATED%20ALWAYS%20AS%20(url)%20STORED%20NOT%20NULL%2C%5Cn%20%20%20diagnostics%20BLOB%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20url%2C%20cache_scope%2C%20auth_user_id%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20prerendered_html%20(%5Cn%20%20%20url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20file_alias%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20type%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20fitted_html%20BLOB%2C%5Cn%20%20%20embedded_html%20BLOB%2C%5Cn%20%20%20atom_html%20TEXT%2C%5Cn%20%20%20head_html%20TEXT%2C%5Cn%20%20%20isolated_html%20TEXT%2C%5Cn%20%20%20markdown%20TEXT%2C%5Cn%20%20%20deps%20BLOB%2C%5Cn%20%20%20last_known_good_deps%20BLOB%2C%5Cn%20%20%20generation%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20is_deleted%20BOOLEAN%2C%5Cn%20%20%20error_doc%20BLOB%2C%5Cn%20%20%20rendered_at%2C%5Cn%20%20%20diagnostics%20BLOB%2C%5Cn%20%20%20captures%20BLOB%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20url%2C%20realm_url%2C%20type%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20prerendered_html_pending%20(%5Cn%20%20%20url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20file_alias%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20type%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20fitted_html%20BLOB%2C%5Cn%20%20%20embedded_html%20BLOB%2C%5Cn%20%20%20atom_html%20TEXT%2C%5Cn%20%20%20head_html%20TEXT%2C%5Cn%20%20%20isolated_html%20TEXT%2C%5Cn%20%20%20markdown%20TEXT%2C%5Cn%20%20%20deps%20BLOB%2C%5Cn%20%20%20last_known_good_deps%20BLOB%2C%5Cn%20%20%20generation%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20is_deleted%20BOOLEAN%2C%5Cn%20%20%20error_doc%20BLOB%2C%5Cn%20%20%20rendered_at%2C%5Cn%20%20%20diagnostics%20BLOB%2C%5Cn%20%20%20captures%20BLOB%2C%5Cn%20%20%20job_id%20INTEGER%2C%5Cn%20%20%20staging_id%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20staging_id%2C%20url%2C%20type%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20rate_limit_buckets%20(%5Cn%20%20%20bucket_key%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20tokens%20NOT%20NULL%2C%5Cn%20%20%20refilled_at%20NOT%20NULL%2C%5Cn%20%20%20expires_at%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20bucket_key%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20rate_limit_budgets%20(%5Cn%20%20%20budget_key%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20period%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20period_start%20NOT%20NULL%2C%5Cn%20%20%20count%20NOT%20NULL%2C%5Cn%20%20%20expires_at%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20budget_key%2C%20period%2C%20period_start%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20realm_file_meta%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20file_path%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20created_at%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20content_hash%20TEXT%2C%5Cn%20%20%20content_size%20INTEGER%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20file_path%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20realm_generations%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20current_generation%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20loader_epoch%20TEXT%20DEFAULT%20'0'%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20realm_index_commits%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20generation%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20base_generation%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20pass_id%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20job_id%20INTEGER%2C%5Cn%20%20%20urls%20BLOB%2C%5Cn%20%20%20render_only_urls%20BLOB%2C%5Cn%20%20%20full_realm%20BOOLEAN%20DEFAULT%20false%20NOT%20NULL%2C%5Cn%20%20%20committed_at%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20generation%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20realm_meta%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20generation%20INTEGER%20NOT%20NULL%2C%5Cn%20%20%20value%20BLOB%20NOT%20NULL%2C%5Cn%20%20%20indexed_at%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20generation%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20realm_metadata%20(%5Cn%20%20%20url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20show_as_catalog%20BOOLEAN%2C%5Cn%20%20%20publishable%20BOOLEAN%2C%5Cn%20%20%20created_at%20DEFAULT%20CURRENT_TIMESTAMP%20NOT%20NULL%2C%5Cn%20%20%20updated_at%20DEFAULT%20CURRENT_TIMESTAMP%20NOT%20NULL%2C%5Cn%20%20%20archived_at%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20url%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20realm_registry%20(%5Cn%20%20%20id%20DEFAULT%20(hex(randomblob(16)))%20NOT%20NULL%2C%5Cn%20%20%20url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20kind%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20disk_id%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20owner_username%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20source_url%20TEXT%2C%5Cn%20%20%20last_published_at%2C%5Cn%20%20%20pinned%20BOOLEAN%20DEFAULT%20false%20NOT%20NULL%2C%5Cn%20%20%20created_at%20DEFAULT%20CURRENT_TIMESTAMP%20NOT%20NULL%2C%5Cn%20%20%20updated_at%20DEFAULT%20CURRENT_TIMESTAMP%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20id%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20realm_type_generations%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20type_key%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20index_generation%20INTEGER%20DEFAULT%200%20NOT%20NULL%2C%5Cn%20%20%20html_generation%20INTEGER%20DEFAULT%200%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20type_key%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20realm_user_permissions%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20username%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20read%20BOOLEAN%20NOT%20NULL%2C%5Cn%20%20%20write%20BOOLEAN%20NOT%20NULL%2C%5Cn%20%20%20realm_owner%20BOOLEAN%20DEFAULT%20false%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20username%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20scoped_css%20(%5Cn%20%20%20realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20hash%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20css%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20last_interned_at%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20realm_url%2C%20hash%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20unlisted_realm_paths%20(%5Cn%20%20%20id%20DEFAULT%20(hex(randomblob(16)))%20NOT%20NULL%2C%5Cn%20%20%20source_realm_url%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20slug%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20owner_user_id%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20created_at%20DEFAULT%20CURRENT_TIMESTAMP%20NOT%20NULL%2C%5Cn%20%20%20updated_at%20DEFAULT%20CURRENT_TIMESTAMP%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20id%20)%20%5Cn)%3B%5Cn%5Cn%20CREATE%20TABLE%20IF%20NOT%20EXISTS%20webhook_commands%20(%5Cn%20%20%20id%20NOT%20NULL%2C%5Cn%20%20%20incoming_webhook_id%20NOT%20NULL%2C%5Cn%20%20%20command%20TEXT%20NOT%20NULL%2C%5Cn%20%20%20command_filter%20BLOB%2C%5Cn%20%20%20created_at%20NOT%20NULL%2C%5Cn%20%20%20updated_at%20NOT%20NULL%2C%5Cn%20%20%20PRIMARY%20KEY%20(%20id%20)%20%5Cn)%3B%22%2C%22defaultSystemCardId%22%3A%22http%3A%2F%2Ftest-realm%2Ftest%2FSystemCard%2Fdefault%22%2C%22defaultFieldSpecId%22%3A%22http%3A%2F%2Ftest-realm%2Ftest%2Ffields%2Ffield%22%7D">
17
17
 
18
18
  <link rel="stylesheet" href="/@embroider/virtual/app.css">
19
19
 
20
20
 
21
- <script type="module" crossorigin="" src="/assets/tests-zLlwPutr.js"></script>
21
+ <script type="module" crossorigin="" src="/assets/tests-CmM9imwB.js"></script>
22
22
  <link rel="modulepreload" crossorigin="" href="/assets/chunk-Rp0pCe6z.js">
23
23
  <link rel="modulepreload" crossorigin="" href="/assets/preload-helper-CKDH5-7N.js">
24
24
  <link rel="modulepreload" crossorigin="" href="/assets/index-esm-CUymiD6S.js">
@@ -244,7 +244,7 @@
244
244
  <link rel="modulepreload" crossorigin="" href="/assets/validate-realm-C2Tcb2X4.js">
245
245
  <link rel="modulepreload" crossorigin="" href="/assets/view-visually-QMl0ypqH.js">
246
246
  <link rel="modulepreload" crossorigin="" href="/assets/tools-J_Knr_W6.js">
247
- <link rel="modulepreload" crossorigin="" href="/assets/externals-CDQm-Lm7.js">
247
+ <link rel="modulepreload" crossorigin="" href="/assets/externals-k-2ZBepK.js">
248
248
  <link rel="modulepreload" crossorigin="" href="/assets/render-service-Bc0F9vjl.js">
249
249
  <link rel="modulepreload" crossorigin="" href="/assets/perform-g9ba6YNZ.js">
250
250
  <link rel="modulepreload" crossorigin="" href="/assets/on-key-BPurx6Kh.js">
@@ -301,15 +301,15 @@
301
301
  <link rel="modulepreload" crossorigin="" href="/assets/dots-BQKA2CMP.js">
302
302
  <link rel="modulepreload" crossorigin="" href="/assets/history-OSRPoD0l.js">
303
303
  <link rel="modulepreload" crossorigin="" href="/assets/steps-D0xobKkB.js">
304
- <link rel="modulepreload" crossorigin="" href="/assets/run-FzaqmBEl.js">
305
- <link rel="modulepreload" crossorigin="" href="/assets/choreo-D1K9RyjM.js">
306
- <link rel="modulepreload" crossorigin="" href="/assets/src-a4d10Hra.js">
304
+ <link rel="modulepreload" crossorigin="" href="/assets/run-P_7TsreC.js">
305
+ <link rel="modulepreload" crossorigin="" href="/assets/choreo-CZUXQKjf.js">
306
+ <link rel="modulepreload" crossorigin="" href="/assets/src-C1hYFgVl.js">
307
307
  <link rel="modulepreload" crossorigin="" href="/assets/card-renderer-DO8Cy2V7.js">
308
308
  <link rel="modulepreload" crossorigin="" href="/assets/realm-url-tooltip-D2wwSzyR.js">
309
309
  <link rel="modulepreload" crossorigin="" href="/assets/reply-furniture-Cu7OoDDn.js">
310
- <link rel="modulepreload" crossorigin="" href="/assets/rendered-markdown-B_jWmDrK.js">
310
+ <link rel="modulepreload" crossorigin="" href="/assets/rendered-markdown-DXiDN91F.js">
311
311
  <link rel="modulepreload" crossorigin="" href="/assets/monaco-test-waiter-lvFEYpFj.js">
312
- <link rel="modulepreload" crossorigin="" href="/assets/aibot-message-uGaCPn5o.js">
312
+ <link rel="modulepreload" crossorigin="" href="/assets/aibot-message-BShcljQ9.js">
313
313
  <link rel="modulepreload" crossorigin="" href="/assets/segmented-control-DxJdoJ4Z.js">
314
314
  <link rel="modulepreload" crossorigin="" href="/assets/fallback-banner--S1OU8ox.js">
315
315
  <link rel="modulepreload" crossorigin="" href="/assets/user-message-BAOt1hS3.js">
@@ -324,7 +324,7 @@
324
324
  <link rel="modulepreload" crossorigin="" href="/assets/file-def-attributes-extractor-Dg_reo87.js">
325
325
  <link rel="modulepreload" crossorigin="" href="/assets/to-elsewhere-MFFftJ0J.js">
326
326
  <link rel="modulepreload" crossorigin="" href="/assets/stick-to-bottom-CPppJpG4.js">
327
- <link rel="modulepreload" crossorigin="" href="/assets/panel-D9SEMehG.js">
327
+ <link rel="modulepreload" crossorigin="" href="/assets/panel-DjrC7DxA.js">
328
328
  <link rel="modulepreload" crossorigin="" href="/assets/buffer-DQZcL7h7.js">
329
329
  <link rel="modulepreload" crossorigin="" href="/assets/definition-lookup-DMn82NCQ.js">
330
330
  <link rel="modulepreload" crossorigin="" href="/assets/auth-error-guard-Ap0Pu9mz.js">
@@ -380,7 +380,7 @@
380
380
  <link rel="modulepreload" crossorigin="" href="/assets/overlays-CdktEUsQ.js">
381
381
  <link rel="modulepreload" crossorigin="" href="/assets/section-rail-CNFCebtT.js">
382
382
  <link rel="modulepreload" crossorigin="" href="/assets/sections-BIWI0V21.js">
383
- <link rel="modulepreload" crossorigin="" href="/assets/markdown-preview-Df5fp1SY.js">
383
+ <link rel="modulepreload" crossorigin="" href="/assets/markdown-preview-lOh-MyqF.js">
384
384
  <link rel="modulepreload" crossorigin="" href="/assets/card-context-search-results-KmkXJbmC.js">
385
385
  <link rel="modulepreload" crossorigin="" href="/assets/monaco-AbHCoDJY.js">
386
386
  <link rel="modulepreload" crossorigin="" href="/assets/card-collection-BQMglA2Y.js">
@@ -389,7 +389,7 @@
389
389
  <link rel="modulepreload" crossorigin="" href="/assets/last-modified-date-CXdzIs8j.js">
390
390
  <link rel="modulepreload" crossorigin="" href="/assets/boxel-formatter-CRWFXHNL.js">
391
391
  <link rel="modulepreload" crossorigin="" href="/assets/from-elsewhere-ChxbtsBa.js">
392
- <link rel="modulepreload" crossorigin="" href="/assets/container-CEslVSTe.js">
392
+ <link rel="modulepreload" crossorigin="" href="/assets/container-CBZZ8uFw.js">
393
393
  <link rel="modulepreload" crossorigin="" href="/assets/browser-queue-DxpeoHld.js">
394
394
  <link rel="modulepreload" crossorigin="" href="/assets/gc-card-store-yOsxGgxR.js">
395
395
  <link rel="modulepreload" crossorigin="" href="/assets/search-cache-key-DrjFmmJt.js">
@@ -405,7 +405,7 @@
405
405
  <link rel="modulepreload" crossorigin="" href="/assets/operation-ledger-_YzHqeqF.js">
406
406
  <link rel="modulepreload" crossorigin="" href="/assets/operations-CqhkXcje.js">
407
407
  <link rel="modulepreload" crossorigin="" href="/assets/render-diagnostics-CztktD_I.js">
408
- <link rel="modulepreload" crossorigin="" href="/assets/app-pIzBYfiZ.js">
408
+ <link rel="modulepreload" crossorigin="" href="/assets/app-DiEYqT6T.js">
409
409
  <link rel="modulepreload" crossorigin="" href="/assets/qunit-C-Foo4Nd.js">
410
410
  <link rel="modulepreload" crossorigin="" href="/assets/dist-CPfIHBla.js">
411
411
  <link rel="modulepreload" crossorigin="" href="/assets/dist-Ds4JDBNZ.js">
@@ -470,7 +470,7 @@
470
470
  <link rel="stylesheet" crossorigin="" href="/assets/overlays-tUJGreBw.css">
471
471
  <link rel="stylesheet" crossorigin="" href="/assets/section-rail-CLtMQjQ9.css">
472
472
  <link rel="stylesheet" crossorigin="" href="/assets/markdown-preview-Cnd4Qwna.css">
473
- <link rel="stylesheet" crossorigin="" href="/assets/container-h3Wc26qn.css">
473
+ <link rel="stylesheet" crossorigin="" href="/assets/container-BYGZImLU.css">
474
474
  <link rel="stylesheet" crossorigin="" href="/assets/app-Qgooycf0.css">
475
475
  <link rel="stylesheet" crossorigin="" href="/assets/dist-74yZvkE9.css">
476
476
  <link rel="stylesheet" crossorigin="" href="/assets/tests-tn0RQdqM.css">
@@ -44,6 +44,7 @@ import {
44
44
  setPassScheduler,
45
45
  } from './far.ts';
46
46
  import { GESTURE, type GestureRef, trackGestures } from './gesture.ts';
47
+ import { correctMovesForLayout } from './layout-probe.ts';
47
48
  import {
48
49
  boundsOf as bounds,
49
50
  isRendered,
@@ -95,6 +96,18 @@ import type {
95
96
 
96
97
  /** `{{c.kept 'card'}}` narrows by role; bare `{{c.kept}}` is handed over uncalled, so the function is a Query too */
97
98
  type Selector = ((role?: string) => Query) & Query;
99
+ /** the values that carry a sprite through space: what a move writes */
100
+ const MOVED_KEYS = new Set([
101
+ 'height',
102
+ 'scale',
103
+ 'scaleX',
104
+ 'scaleY',
105
+ 'transform',
106
+ 'width',
107
+ 'x',
108
+ 'y',
109
+ ]);
110
+
98
111
  const selector = (type?: Query['type']): Selector =>
99
112
  Object.assign(
100
113
  (role?: string): Query => (role === undefined ? { type } : { role, type }),
@@ -1050,7 +1063,24 @@ export class Choreo extends Component<Signature> implements ChoreoHost {
1050
1063
  // nor reasserts the world: the release itself was the snap. A sprite
1051
1064
  // that merely REFLOWED is untouched — it was never driven.
1052
1065
  if (this.run && !this.run.isDone()) {
1053
- const scored = new Set(cues.map((c) => c.sprite.node));
1066
+ // A sprite the new score already MOVES or HOLDS in place needs no
1067
+ // continuation: its move starts from the painted box, and its hold
1068
+ // decides where it stands. One the score names only for something
1069
+ // else (a fade, a hold on opacity) still needs carrying through space,
1070
+ // or a transform the prior run was tweening (an entrance's scale)
1071
+ // would be left where the release put it.
1072
+ const scored = new Set(
1073
+ cues
1074
+ .filter(
1075
+ (c) =>
1076
+ c.flight !== undefined ||
1077
+ [
1078
+ ...Object.keys(c.target ?? {}),
1079
+ ...Object.keys(c.hold?.values ?? {}),
1080
+ ].some((key) => MOVED_KEYS.has(key)),
1081
+ )
1082
+ .map((c) => c.sprite.node),
1083
+ );
1054
1084
  for (const [node, transition] of this.run.midflight()) {
1055
1085
  if (scored.has(node)) {
1056
1086
  continue;
@@ -1089,6 +1119,20 @@ export class Choreo extends Component<Signature> implements ChoreoHost {
1089
1119
  }
1090
1120
  }
1091
1121
  }
1122
+ // a Move that animates sizes translates from where layout puts each
1123
+ // box at the flight's start sizes, not from its final box
1124
+ correctMovesForLayout(cues, measureZoom);
1125
+ // a value a new tween or spring takes over carries on from where it is
1126
+ // painted: stand it back up where the measure rested it
1127
+ this.run?.restoreRested((ve, key) =>
1128
+ cues.some(
1129
+ (c) =>
1130
+ (c.kind === 'tween' || c.kind === 'spring') &&
1131
+ c.sprite.node.visualElement === ve &&
1132
+ c.target !== undefined &&
1133
+ key in c.target,
1134
+ ),
1135
+ );
1092
1136
  if (!cues.length) {
1093
1137
  // nothing to play: let every leaver go now
1094
1138
  for (const node of claimed) {
@@ -425,6 +425,9 @@ function resolveMove(
425
425
  if (crop) {
426
426
  if (fx !== 1) {
427
427
  target['scale'] = holdsStart ? [1, fx] : [fx, 1];
428
+ // a spring's length is read from every value it carries: a match
429
+ // that only scales (its centers already agree) still has a flight to time
430
+ pairs.push(holdsStart ? [1, fx] : [fx, 1]);
428
431
  }
429
432
  // the crop window at the FAR pose: the other end's SUBJECT sets
430
433
  // the floor — anything of this element that runs past that
@@ -445,9 +448,11 @@ function resolveMove(
445
448
  } else {
446
449
  if (fx !== 1) {
447
450
  target['scaleX'] = holdsStart ? [1, fx] : [fx, 1];
451
+ pairs.push(holdsStart ? [1, fx] : [fx, 1]);
448
452
  }
449
453
  if (fy !== 1) {
450
454
  target['scaleY'] = holdsStart ? [1, fy] : [fy, 1];
455
+ pairs.push(holdsStart ? [1, fy] : [fy, 1]);
451
456
  }
452
457
  }
453
458
  } else {
@@ -0,0 +1,100 @@
1
+ import type { Cue } from './types.ts';
2
+
3
+ /**
4
+ * Where layout puts a moving element while a Move animates sizes.
5
+ *
6
+ * A Move that animates real width and height FLIPs against the final box:
7
+ * it translates by `initial − final` and lets the size run alongside. That
8
+ * holds only while the element's layout position does not depend on the
9
+ * sizes in flight. It does wherever layout places a box by its size: a
10
+ * card centered by its parent (`justify-content: center`, auto margins), a
11
+ * box aligned to the right, a sibling pushed along by a box growing before
12
+ * it. Mid-flight the size is not the final one, so layout puts the box
13
+ * somewhere else, and the translate is added on top: a centered card that
14
+ * narrows starts out by half the change. A replacement pass then takes the
15
+ * painted box as its start and adds the same error again, so a run
16
+ * re-passed every frame drives the card off the screen.
17
+ *
18
+ * So the translate is taken from where layout puts each element at the
19
+ * START of the flight: every size the moves animate stands at its first
20
+ * value, the boxes are read, and every move's start translate is corrected
21
+ * by the difference from its final box. Layout is affine in the sizes for
22
+ * the usual cases (left, centered, right, flowed after), and every value of
23
+ * the moves runs on the same progress, so the correction holds for the
24
+ * whole flight, not just its first frame.
25
+ *
26
+ * Runs on the world at rest (after releaseForMeasure), before the run
27
+ * stands anything up. Moves the cue targets in place.
28
+ */
29
+ export function correctMovesForLayout(cues: Cue[], zoom = 1): void {
30
+ const moves = cues.filter(
31
+ (c) =>
32
+ c.kind === 'move' &&
33
+ !c.flight &&
34
+ c.target &&
35
+ c.sprite.type !== 'removed' &&
36
+ c.sprite.element.isConnected,
37
+ );
38
+ const sized = moves.filter(
39
+ (c) =>
40
+ startOf(c, 'width') !== undefined || startOf(c, 'height') !== undefined,
41
+ );
42
+ if (!sized.length) {
43
+ return;
44
+ }
45
+ const subjects = [...new Set(moves.map((c) => c.sprite.element))];
46
+ const atRest = new Map(
47
+ subjects.map((el) => [el, el.getBoundingClientRect()]),
48
+ );
49
+ const restore: (() => void)[] = [];
50
+ for (const cue of sized) {
51
+ const el = cue.sprite.element;
52
+ for (const key of ['width', 'height'] as const) {
53
+ const start = startOf(cue, key);
54
+ if (start === undefined) {
55
+ continue;
56
+ }
57
+ const prior = el.style.getPropertyValue(key);
58
+ const priority = el.style.getPropertyPriority(key);
59
+ restore.push(() =>
60
+ prior
61
+ ? el.style.setProperty(key, prior, priority)
62
+ : el.style.removeProperty(key),
63
+ );
64
+ el.style.setProperty(key, `${start}px`);
65
+ }
66
+ }
67
+ const atStart = new Map(
68
+ subjects.map((el) => [el, el.getBoundingClientRect()]),
69
+ );
70
+ restore.reverse().forEach((put) => put());
71
+ for (const cue of moves) {
72
+ const el = cue.sprite.element;
73
+ const rest = atRest.get(el)!;
74
+ const start = atStart.get(el)!;
75
+ // descaled like the move's own boxes: the values are local pixels
76
+ shift(cue, 'x', (rest.x - start.x) / zoom);
77
+ shift(cue, 'y', (rest.y - start.y) / zoom);
78
+ }
79
+ }
80
+
81
+ function startOf(cue: Cue, key: string): number | undefined {
82
+ const value = cue.target?.[key];
83
+ return Array.isArray(value) && typeof value[0] === 'number'
84
+ ? value[0]
85
+ : undefined;
86
+ }
87
+
88
+ function shift(cue: Cue, key: 'x' | 'y', by: number) {
89
+ if (Math.abs(by) < 0.5) {
90
+ return;
91
+ }
92
+ const target = cue.target!;
93
+ const value = target[key];
94
+ if (Array.isArray(value) && typeof value[0] === 'number') {
95
+ target[key] = [value[0] + by, ...value.slice(1)];
96
+ } else if (value === undefined) {
97
+ // the box ends where it began, and layout moves it on the way
98
+ target[key] = [by, 0];
99
+ }
100
+ }