feat: native lazy load imports#3201
Conversation
🦋 Changeset detectedLatest commit: 8333afd The changes in this PR will be included in the next version bump. This PR includes changesets to release 3 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
3e50baf to
430d49f
Compare
WalkthroughThis PR implements a native lazy import API for Marko by introducing compiler configuration options ( 🚥 Pre-merge checks | ✅ 3 | ❌ 2❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 ESLint
packages/runtime-class/src/runtime/helpers/lazy-tag.jsOops! Something went wrong! :( ESLint: 10.3.0 /packages/runtime-class/src/runtime/.eslintrc:2 SyntaxError: Unexpected token ':' packages/runtime-class/src/runtime/helpers/with-entry.jsOops! Something went wrong! :( ESLint: 10.3.0 /packages/runtime-class/src/runtime/.eslintrc:2 SyntaxError: Unexpected token ':' Comment |
There was a problem hiding this comment.
Actionable comments posted: 6
🧹 Nitpick comments (4)
packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/test.ts (1)
4-13: ⚡ Quick winPlace exported
configbefore helper declarations for top-down structure.Move
export const configaboveclickto keep public API first, then helper details.As per coding guidelines,
**/*.{js,ts,jsx,tsx}: Organize file contents from most important to least important: Public API (exports), High-level orchestration logic, Helper functions, Low-level implementation details.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/test.ts` around lines 4 - 13, Move the exported TestConfig declaration above the helper function to follow the "public API first" guideline: place "export const config" before the "function click(container: Element)" declaration, keeping the steps array unchanged (it can still reference click) and ensuring any top-level comments about the scenario remain with the config for clarity.packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/test.ts (1)
4-13: ⚡ Quick winReorder exports before helpers for guideline compliance.
Keep
configfirst and moveclickbelow it; no runtime change.Proposed reorder
import type { TestConfig } from "../../main.test"; import { wait } from "../../utils/resolve"; -function click(container: Element) { - container.querySelector("button")!.click(); -} - // Two attr updates land before the lazy module resolves; both are buffered // and the final value is applied correctly once setup runs. export const config: TestConfig = { steps: [{}, click, click, wait, click], equivalent: false, }; + +function click(container: Element) { + container.querySelector("button")!.click(); +}As per coding guidelines:
**/*.{js,ts,jsx,tsx}: Organize file contents from most important to least important: Public API (exports), High-level orchestration logic, Helper functions, Low-level implementation details.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/test.ts` around lines 4 - 13, Move the exported TestConfig object before helper functions to follow the file ordering guideline: put export const config: TestConfig = { ... } at the top of the file, then define the click(container: Element) helper (and any other helpers) below it; ensure you keep the same contents and step ordering so there is no runtime change and all references to config and click remain intact.packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/test.ts (1)
4-11: ⚡ Quick winMove
configabove helper to match top-down test file structure.Place the exported
configfirst, then local helper declarations. Behavior stays the same due function hoisting.Proposed reorder
import type { TestConfig } from "../../main.test"; import { wait } from "../../utils/resolve"; -function toggle(container: Element) { - (container.querySelector("`#toggle`") as HTMLButtonElement).click(); -} - export const config: TestConfig = { steps: [{}, toggle, wait, {}, toggle], equivalent: false, }; + +function toggle(container: Element) { + (container.querySelector("`#toggle`") as HTMLButtonElement).click(); +}As per coding guidelines:
**/*.{js,ts,jsx,tsx}: Organize file contents from most important to least important: Public API (exports), High-level orchestration logic, Helper functions, Low-level implementation details.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/test.ts` around lines 4 - 11, Move the exported TestConfig named "config" to appear above the helper function "toggle" so the file reads with public exports first; leave the existing "toggle" and any referenced symbols like "wait" unchanged (behavior relies on hoisting), and ensure the exported "config: TestConfig" still references the same steps array [{}, toggle, wait, {}, toggle] with equivalent: false.packages/runtime-class/src/runtime/helpers/with-entry.js (1)
28-31: ⚡ Quick winUse triple-underscore for internal template marker fields.
template._hasAssetsshould follow runtime internal naming conventions so it can be treated as an internal manglable field.Suggested fix
exports.withAssets = function withAssets(template, assetId) { - if (template._hasAssets) return template; + if (template.___hasAssets) return template; var render = template._; - template._hasAssets = 1; + template.___hasAssets = 1; template._ = function renderWithAssets(input, out) {As per coding guidelines, "
packages/runtime-class/src/runtime/**/*.js: Use triple-underscore prefix (___name) for all internal properties and methods on runtime objects to enable name mangling by the build step".🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-class/src/runtime/helpers/with-entry.js` around lines 28 - 31, The code uses runtime-internal fields template._hasAssets and template._; update these to use the triple-underscore convention so they can be mangled: rename template._hasAssets to template.___hasAssets and template._ (the render function) to template.___ (and update the local variable render accordingly), then update every reference in with-entry.js (including the assignment template._ = function renderWithAssets(...) and the early-return check) to use the new ___-prefixed names; ensure behavior is unchanged by preserving the same assignments and wrapping logic but with the triple-underscore internal property names.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.changeset/bold-groups-dance.md:
- Around line 2-4: Update the changeset to use a minor version bump for the new
feature: change the entries for "marko", "`@marko/runtime-tags`", and
"`@marko/compiler`" from "patch" to "minor" so the release correctly reflects the
new native lazy import API feature.
In @.sizes/dom.js:
- Around line 2242-2257: The loop currently decrements remaining only in the
fulfillment handler inside promise.then, which means rejections block the
buffered-signal replay; update the handlers so remaining is decremented for both
fulfillment and rejection. Concretely, in the promise.then call that sets
entry.b and triggers the (--remaining || ...) logic, ensure the rejection branch
also performs the same remaining decrement and fallback trigger (and set entry.b
to a safe no-op or appropriate fallback value on rejection) so
pendingScopes/queueAsyncRender for child is invoked whether a promise resolves
or rejects.
In `@packages/compiler/config.d.ts`:
- Around line 6-9: The exported type for linkAssets currently allows only an
object but the runtime default is null; update the type of linkAssets to accept
null as well (e.g. change the declaration for linkAssets to allow the object
shape or null) so TypeScript reflects the runtime default, keeping the existing
onAsset(kind: EntryKind, file: string, id: string) signature unchanged.
In `@packages/runtime-class/src/runtime/helpers/with-entry.js`:
- Around line 8-12: The module-scoped mutable assetFlush is overwritten by each
call to withEntry and causes flush() to use the last-initialized runtime;
instead make the runtime local to each wrapper by removing the module-level
assetFlush and capturing runtime in a closure or by attaching it to the returned
render (e.g., bind/assign a flush that closes over the runtime). Update
withEntry (and the places that call flush) so flush reads the runtime from the
render-specific closure or property rather than the shared assetFlush variable;
reference the symbols withEntry, assetFlush, and flush to locate and change the
implementation.
In `@packages/runtime-class/src/translator/index.js`:
- Around line 236-241: The code unconditionally calls linkAssets.onAsset when
file.markoOpts.entry === "page", which can throw because linkAssets may be null;
update the branch in the translator (the block handling file.markoOpts.output
=== "html" && file.markoOpts.entry === "page") to check that linkAssets is
present before calling linkAssets.onAsset (e.g., if (!linkAssets) throw
path.buildCodeFrameError('linkAssets is required for page entry')); use
path.buildCodeFrameError to raise a compile-time error that includes source
location and reference the existing symbols linkAssets, linkAssets.onAsset,
templateId, resolveRelativePath, and path.buildCodeFrameError when implementing
the guard.
In `@packages/runtime-class/src/translator/tag/custom-tag.js`:
- Around line 62-64: The current code removes the entire import declaration via
importBinding.path.parentPath.remove(), which deletes other specifiers too;
instead remove only the specific import specifier for this binding (e.g., call
importBinding.path.remove() or remove importBinding.path.node from its parent
specifiers) and only remove the parent import declaration if, after removing
that specifier, the declaration has no remaining specifiers (check
parentPath.node.specifiers.length). Update the logic around importBinding,
importBinding.path, and importBinding.path.parentPath.isImportDeclaration() to
perform the targeted removal rather than deleting the whole declaration.
---
Nitpick comments:
In `@packages/runtime-class/src/runtime/helpers/with-entry.js`:
- Around line 28-31: The code uses runtime-internal fields template._hasAssets
and template._; update these to use the triple-underscore convention so they can
be mangled: rename template._hasAssets to template.___hasAssets and template._
(the render function) to template.___ (and update the local variable render
accordingly), then update every reference in with-entry.js (including the
assignment template._ = function renderWithAssets(...) and the early-return
check) to use the new ___-prefixed names; ensure behavior is unchanged by
preserving the same assignments and wrapping logic but with the
triple-underscore internal property names.
In
`@packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/test.ts`:
- Around line 4-13: Move the exported TestConfig declaration above the helper
function to follow the "public API first" guideline: place "export const config"
before the "function click(container: Element)" declaration, keeping the steps
array unchanged (it can still reference click) and ensuring any top-level
comments about the scenario remain with the config for clarity.
In
`@packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/test.ts`:
- Around line 4-11: Move the exported TestConfig named "config" to appear above
the helper function "toggle" so the file reads with public exports first; leave
the existing "toggle" and any referenced symbols like "wait" unchanged (behavior
relies on hoisting), and ensure the exported "config: TestConfig" still
references the same steps array [{}, toggle, wait, {}, toggle] with equivalent:
false.
In `@packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/test.ts`:
- Around line 4-13: Move the exported TestConfig object before helper functions
to follow the file ordering guideline: put export const config: TestConfig = {
... } at the top of the file, then define the click(container: Element) helper
(and any other helpers) below it; ensure you keep the same contents and step
ordering so there is no runtime change and all references to config and click
remain intact.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 6ad6d830-2b2e-42a6-b7d3-588a2e956019
⛔ Files ignored due to path filters (257)
packages/runtime-tags/src/__tests__/fixtures-interop/custom-tag-parameters-from-args/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-basic-class-to-tags/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-class-to-tags-import/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-event-handler-render-body-tags-to-class/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-events-tags-to-class/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-nested-attr-tags-class-to-tags/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-nested-class-to-tags/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-nested-tags-to-class/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-tag-params-class-to-tags/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-tag-params-tags-to-class/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/dom.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/dom.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/dom.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/let/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-destructured-increment/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-destructured-reduced/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-destructured/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-in-wrapped-function/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-live-read/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-to-owner-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-to-pruned-let-with-change-handler/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/async-multi-resolve-in-order-and-update/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/async-reject-then-resolve-before-and-after-isolated-boundaries/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/async-state/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/at-tags-dynamic-with-params/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/at-tags-for-loop-param-intersection-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/attr-boolean-dynamic/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/attr-value-with-dollar-brace/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-cleanup/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-closure-function/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-closure-in-order/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-closure-within/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-remove-parent/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-tag/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-update-after-resume/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-update-before-resume/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component-attrs/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component-input-alias/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component-input-same-source-alias-within-pattern/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component-input-same-source-alias/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component-input/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component-renderBody/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-conditional-counter-multiple-nodes/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-conditional-counter/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-counter-const-event-handler/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-counter-multiplier/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-counter/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-execution-order/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-fn-with-block/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-handler-multi-ref-nested/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-handler-refless/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-inert-collapsible-tree/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-member-expression-computed/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-member-expression-optional/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-merge-member-expression/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-for/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-params/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-custom-tag/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-dynamic-tag/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-for/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-if/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-push-pop-list/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-shared-node-ref/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-toggle-show/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-unused-ref/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/batched-updates-cleanup/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/batched-updates/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/bind-to-input/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/body-content/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-for-shallow/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-if-deep/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-if-same-scope/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-if-shallow/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-for-deep/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-for-shallow/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-if-deep/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-if-same-scope/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-if-shallow/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/closure-serialize-reason/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/component-attrs-import-value/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/component-attrs-intersection/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/component-attrs-static-code/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/conditional-dynamic-tag-in-loop-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/conditional-table-row/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/content-with-state/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-many/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-value-multiple-number/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-value-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-value/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-values-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-values/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-details-open/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-dialog-open/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-dynamic-checkbox-checked-value/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-input-number-member-modifier-value/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-input-number-modifier-value/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-input-value-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-select-dynamic-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-select-multiple-value-number/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-select-mutated-option/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-select-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-select-value-number/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-select/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-textarea-value-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/counter-intersection/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cross-tag-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-parameters-from-args/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-parameters-from-attributes/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-parameters-from-single-arg/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-assignment/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-in-body/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-intersection/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-var/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-for-attribute-tag/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-render-args/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-render-attr-signal/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-render-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-render-conditional/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-render/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/destructure-input-with-assignment/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/destructure-stateful-upstream-alias/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dollar-global-client/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-closure-multiple/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-closures/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-content-attr/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-event-handlers/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-native-dynamic-tag/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-native-tag-events/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-args-tag-var/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-args/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-attr-signal/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-custom-native/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-custom-tags/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-input-intersection/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-single-arg/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-var-assignment/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-var-in-body/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-with-updating-body/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/embed-counter/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/expression-statement-tag-var-assignment/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-by-use-index/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-destructure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-event-handler/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-loop-closure-remove-all-items/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-tag-single-node-only-child-in-parent/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-tag-single-text-node-with-text-before/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-tag-static-value-with-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-tag-with-state/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-attr-tag/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-from-dynamic/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-many/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-minimum-scope/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-same-scope-calls-only/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-same-scope/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-dynamic-tag-var-from-dynamic/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-dynamic-tag-var-many/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-dynamic-tag-var/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-return-ref/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/html-comment-counter/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/html-script-nonce/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/html-script/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/html-style-nonce/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/html-style/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/id-tag-default/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/if-default-false/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/if-member-expression-intersection/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/if-no-content-script/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/inert-control-flow-only-child-event/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/inert-control-flow-only-child-select-event/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/inert-if-closure-update-active/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/inert-if-closure-update-inactive/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/known-define-tag-empty-section-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/dom.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/dom.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-csr-only/__snapshots__/dom.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-csr-only/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-csr-only/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-csr-only/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-csr-only/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/dom.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**
📒 Files selected for processing (43)
.changeset/bold-groups-dance.md.sizes.json.sizes/comments.csr/runtime.js.sizes/comments.ssr/runtime.js.sizes/counter.csr/runtime.js.sizes/counter.ssr/runtime.js.sizes/dom.jspackages/compiler/config.d.tspackages/compiler/src/config.jspackages/runtime-class/src/runtime/helpers/lazy-tag.jspackages/runtime-class/src/runtime/helpers/with-entry.jspackages/runtime-class/src/translator/index.jspackages/runtime-class/src/translator/tag/custom-tag.jspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/test.tspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/test.tspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/test.tspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/test.tspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/test.tspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/test.tspackages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/child.markopackages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/template.markopackages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/test.tspackages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/child.markopackages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/template.markopackages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/test.tspackages/runtime-tags/src/__tests__/fixtures/lazy-tag-csr-only/child.markopackages/runtime-tags/src/__tests__/fixtures/lazy-tag-csr-only/template.markopackages/runtime-tags/src/__tests__/fixtures/lazy-tag-csr-only/test.tspackages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/child.markopackages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/template.markopackages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/test.ts
| "marko": patch | ||
| "@marko/runtime-tags": patch | ||
| "@marko/compiler": patch |
There was a problem hiding this comment.
Use a minor bump for this feature changeset.
This PR introduces new functionality (“native lazy import API”), so patch under-signals the release impact. Please bump these entries to minor to align semver with a feature release.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In @.changeset/bold-groups-dance.md around lines 2 - 4, Update the changeset to
use a minor version bump for the new feature: change the entries for "marko",
"`@marko/runtime-tags`", and "`@marko/compiler`" from "patch" to "minor" so the
release correctly reflects the new native lazy import API feature.
| if (importBinding?.path?.parentPath?.isImportDeclaration()) { | ||
| importBinding.path.parentPath.remove(); | ||
| } |
There was a problem hiding this comment.
Removing the whole import declaration can drop unrelated specifiers
At Line 63, removing importBinding.path.parentPath deletes the full import ... from statement. If that declaration includes other specifiers, they are accidentally removed too.
Suggested fix
const importBinding = path.scope.getBinding(tagName);
if (importBinding?.path?.parentPath?.isImportDeclaration()) {
- importBinding.path.parentPath.remove();
+ const importDeclPath = importBinding.path.parentPath;
+ importBinding.path.remove();
+ if (!importDeclPath.node.specifiers.length) {
+ importDeclPath.remove();
+ }
}🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@packages/runtime-class/src/translator/tag/custom-tag.js` around lines 62 -
64, The current code removes the entire import declaration via
importBinding.path.parentPath.remove(), which deletes other specifiers too;
instead remove only the specific import specifier for this binding (e.g., call
importBinding.path.remove() or remove importBinding.path.node from its parent
specifiers) and only remove the parent import declaration if, after removing
that specifier, the declaration has no remaining specifiers (check
parentPath.node.specifiers.length). Update the logic around importBinding,
importBinding.path, and importBinding.path.parentPath.isImportDeclaration() to
perform the targeted removal rather than deleting the whole declaration.
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #3201 +/- ##
==========================================
+ Coverage 92.78% 92.91% +0.12%
==========================================
Files 372 376 +4
Lines 47322 48333 +1011
Branches 3387 3424 +37
==========================================
+ Hits 43909 44908 +999
- Misses 3380 3392 +12
Partials 33 33 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Actionable comments posted: 3
🧹 Nitpick comments (2)
packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/test.ts (1)
4-13: ⚡ Quick winReorder file so exported
configcomes beforeclickhelper.Keep
clickas a hoisted function declaration, but place it after the exported config to match the expected top-down layout.As per coding guidelines, "
**/*.{js,ts,jsx,tsx}: Organize file contents from most important to least important: Public API (exports), High-level orchestration logic, Helper functions, Low-level implementation details" and "Use function declaration hoisting to enable top-down file structure with progressive disclosure".🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/test.ts` around lines 4 - 13, Move the exported config declaration above the helper function: keep the click helper as a hoisted function declaration named click but place it after the exported const config (export const config: TestConfig = {...}), so the file reads top-down with the public export first, then the click helper and any lower-level details; ensure you preserve the existing function signature and usages (steps array referencing click) and do not convert the helper to an expression.packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/test.ts (1)
4-11: ⚡ Quick winPlace exported
configbefore helper functions for top-down structure.Move
export const configabovetoggleso the public API appears first and helper details follow.As per coding guidelines, "
**/*.{js,ts,jsx,tsx}: Organize file contents from most important to least important: Public API (exports), High-level orchestration logic, Helper functions, Low-level implementation details" and "Use function declaration hoisting to enable top-down file structure with progressive disclosure".🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/test.ts` around lines 4 - 11, Move the public export above helper details: place the exported symbol `export const config` before the helper `function toggle(container: Element) { ... }` so the file reads top-down (public API first, helpers after); keep the `config.steps` referencing `toggle` as-is because `toggle` is a function declaration and is hoisted, and ensure no other helper order changes break imports or test wiring.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@packages/runtime-class/src/runtime/helpers/lazy-tag.js`:
- Around line 23-31: Wrap the load() promise chain with a rejection handler so a
failed lazy load doesn't leave pending set and waiting components stuck: add a
.catch on the load().then(...) branch that captures the error, resets pending to
null, optionally sets a load error marker (or template = null) so renderers can
show a failure/fallback path, clears waiting into a local components array and
calls forceUpdate() on each component (same pattern as the success branch), and
log the error; update references in this handler to the existing identifiers
pending, load(), waiting, template, and components[i].forceUpdate() so waiting
components are re-rendered after rejection.
In `@packages/runtime-class/src/runtime/helpers/with-entry.js`:
- Around line 28-31: The runtime internal flag template._hasAssets must use the
triple-underscore naming convention; change all reads and writes of
template._hasAssets to template.___hasAssets in with-entry.js (and update any
other modules that reference this property) so the internal marker matches
mangling assumptions; ensure the code still returns early on the new flag, sets
template.___hasAssets = 1 where it currently sets template._hasAssets, and
adjust any tests or consumers that inspect this internal property.
In
`@packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/test.ts`:
- Around line 4-6: The click helper currently assumes querySelector("`#inc`")
returns an element and casts it to HTMLButtonElement which can throw a null
error; in the click(container: Element) function, first assign the result of
container.querySelector("`#inc`") to a local variable (e.g., const btn =
container.querySelector("`#inc`")), check that btn is non-null and is an
HTMLButtonElement, and if not throw or assert with a clear message like
"increment button (`#inc`) not found" before calling btn.click(); update any
existing cast to use the checked variable to avoid an unhelpful null error.
---
Nitpick comments:
In
`@packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/test.ts`:
- Around line 4-11: Move the public export above helper details: place the
exported symbol `export const config` before the helper `function
toggle(container: Element) { ... }` so the file reads top-down (public API
first, helpers after); keep the `config.steps` referencing `toggle` as-is
because `toggle` is a function declaration and is hoisted, and ensure no other
helper order changes break imports or test wiring.
In `@packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/test.ts`:
- Around line 4-13: Move the exported config declaration above the helper
function: keep the click helper as a hoisted function declaration named click
but place it after the exported const config (export const config: TestConfig =
{...}), so the file reads top-down with the public export first, then the click
helper and any lower-level details; ensure you preserve the existing function
signature and usages (steps array referencing click) and do not convert the
helper to an expression.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 2502f63e-434e-4f28-a011-5d545dcb60e1
⛔ Files ignored due to path filters (240)
packages/runtime-tags/src/__tests__/fixtures-interop/custom-tag-parameters-from-args/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-basic-class-to-tags/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-basic-tags-to-class/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-class-to-tags-import/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-event-handler-render-body-tags-to-class/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-events-tags-to-class/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-nested-attr-tags-class-to-tags/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-nested-class-to-tags/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-nested-tags-to-class/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-tag-params-class-to-tags/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-tag-params-tags-to-class/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/dom.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/dom.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/dom.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/let/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-destructured-increment/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-destructured-reduced/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-destructured/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-in-wrapped-function/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-live-read/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-to-owner-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-to-pruned-let-with-change-handler/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/async-multi-resolve-in-order-and-update/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/async-reject-then-resolve-before-and-after-isolated-boundaries/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/async-state/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/at-tags-dynamic-with-params/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/at-tags-for-loop-param-intersection-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/attr-boolean-dynamic/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/attr-value-with-dollar-brace/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-cleanup/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-closure-function/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-closure-in-order/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-closure-within/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-remove-parent/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-tag/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-update-after-resume/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-update-before-resume/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component-attrs/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component-input-alias/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component-input-same-source-alias-within-pattern/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component-input-same-source-alias/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component-input/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component-renderBody/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-conditional-counter-multiple-nodes/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-conditional-counter/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-counter-const-event-handler/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-counter-multiplier/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-counter/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-execution-order/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-fn-with-block/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-handler-multi-ref-nested/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-handler-refless/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-inert-collapsible-tree/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-member-expression-computed/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-member-expression-optional/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-merge-member-expression/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-for/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-params/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-custom-tag/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-dynamic-tag/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-for/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-if/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-push-pop-list/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-shared-node-ref/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-toggle-show/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-unused-ref/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/batched-updates-cleanup/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/batched-updates/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/bind-to-input/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/body-content/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-for-shallow/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-if-deep/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-if-same-scope/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-if-shallow/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-for-deep/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-for-shallow/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-if-deep/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-if-same-scope/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-if-shallow/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/closure-serialize-reason/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/component-attrs-import-value/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/component-attrs-intersection/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/component-attrs-static-code/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/conditional-dynamic-tag-in-loop-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/conditional-table-row/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/content-with-state/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-many/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-value-multiple-number/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-value-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-value/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-values-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-values/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-details-open/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-dialog-open/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-dynamic-checkbox-checked-value/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-input-number-member-modifier-value/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-input-number-modifier-value/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-input-value-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-select-dynamic-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-select-multiple-value-number/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-select-mutated-option/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-select-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-select-value-number/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-select/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-textarea-value-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/counter-intersection/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cross-tag-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-parameters-from-attributes/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-parameters-from-single-arg/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-assignment/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-in-body/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-intersection/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-var/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-for-attribute-tag/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-render-args/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-render-attr-signal/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-render-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-render-conditional/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-render/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/destructure-input-with-assignment/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/destructure-stateful-upstream-alias/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dollar-global-client/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-closure-multiple/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-closures/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-content-attr/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-event-handlers/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-native-dynamic-tag/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-args-tag-var/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-args/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-custom-native/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-input-intersection/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-single-arg/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-sometimes-null/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-var-assignment/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-var-in-body/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-with-updating-body/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/embed-counter/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/expression-statement-tag-var-assignment/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-by-use-index/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-destructure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-event-handler/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-loop-closure-remove-all-items/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-tag-single-node-only-child-in-parent/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-tag-single-text-node-with-text-before/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-tag-static-value-with-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-tag-with-state/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-attr-tag/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-from-dynamic/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-many/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-minimum-scope/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-same-scope-calls-only/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-same-scope/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-dynamic-tag-var-from-dynamic/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-dynamic-tag-var-many/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-dynamic-tag-var/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-return-ref/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/html-comment-counter/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/html-script-nonce/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/html-script/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/html-style-nonce/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/html-style/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/id-tag-default/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/if-default-false/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/if-member-expression-intersection/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/if-no-content-script/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/inert-control-flow-only-child-event/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/inert-control-flow-only-child-select-event/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/inert-if-closure-update-active/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/inert-if-closure-update-inactive/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/known-define-tag-empty-section-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/dom.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/dom.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**
📒 Files selected for processing (37)
.changeset/bold-groups-dance.md.sizes.json.sizes/comments.csr/runtime.js.sizes/comments.ssr/runtime.js.sizes/counter.csr/runtime.js.sizes/counter.ssr/runtime.js.sizes/dom.jspackages/compiler/config.d.tspackages/compiler/src/config.jspackages/runtime-class/src/runtime/helpers/lazy-tag.jspackages/runtime-class/src/runtime/helpers/with-entry.jspackages/runtime-class/src/translator/index.jspackages/runtime-class/src/translator/tag/custom-tag.jspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/test.tspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/test.tspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/test.tspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/test.tspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/test.tspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/test.tspackages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/child.markopackages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/template.markopackages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/test.tspackages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/child.markopackages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/template.markopackages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/test.ts
✅ Files skipped from review due to trivial changes (10)
- packages/runtime-tags/src/tests/fixtures-interop/lazy-class-child-unmount-before-load/child.marko
- packages/runtime-tags/src/tests/fixtures-interop/lazy-class-child-csr-only/test.ts
- packages/runtime-tags/src/tests/fixtures-interop/lazy-class-child-unmount-before-load/test.ts
- packages/runtime-tags/src/tests/fixtures-interop/lazy-class-child-basic/test.ts
- packages/runtime-tags/src/tests/fixtures-interop/lazy-class-child-csr-only/template.marko
- packages/runtime-tags/src/tests/fixtures-interop/lazy-class-child-basic/template.marko
- packages/runtime-tags/src/tests/fixtures/lazy-tag-conditional/child.marko
- packages/runtime-tags/src/tests/fixtures-interop/lazy-class-child-ssr-only/template.marko
- .changeset/bold-groups-dance.md
- packages/runtime-tags/src/tests/fixtures-interop/lazy-class-child-attrs-update/child.marko
430d49f to
c54f32a
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
♻️ Duplicate comments (7)
packages/runtime-class/src/runtime/helpers/lazy-tag.js (1)
23-31:⚠️ Potential issue | 🟠 Major | ⚡ Quick winHandle lazy loader rejection so placeholders don’t get stuck.
Line 24 only handles fulfillment. On rejection,
pendingis never recovered and waiting components are never re-rendered to a failure path.Proposed fix
module.exports = function lazyTag(load) { var template; + var error; var pending; var waiting = []; return { _: function lazyRenderer(input, out) { if (template) { template._(input, out); return; } + if (error) throw error; var componentDef = out.___assignedComponentDef; var component = componentDef && componentDef.___component; out.bf(out.___assignedKey, component).ef(); if (component && waiting.indexOf(component) === -1) { waiting.push(component); } if (!pending) { - pending = load().then(function (mod) { - var components = waiting; - template = mod.default || mod; - waiting = []; - for (var i = 0; i < components.length; i++) { - components[i].forceUpdate(); - } - }); + pending = load().then( + function (mod) { + var components = waiting; + template = mod.default || mod; + waiting = []; + pending = undefined; + for (var i = 0; i < components.length; i++) { + components[i].forceUpdate(); + } + }, + function (err) { + var components = waiting; + waiting = []; + pending = undefined; + error = err; + for (var i = 0; i < components.length; i++) { + components[i].forceUpdate(); + } + }, + ); } }, }; };🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-class/src/runtime/helpers/lazy-tag.js` around lines 23 - 31, The lazy loader only handles fulfillment; on rejection you must reset pending and re-render waiting placeholders so they can show a failure state. In the promise returned by load() (where pending is assigned), add a .catch handler that sets pending = null, optionally sets template to a failure sentinel (or leaves it null), clears waiting into a local array, and calls forceUpdate() on each component in that array (same as the success path) so placeholders are not stuck; ensure this logic lives alongside the existing then handler that references pending, load(), waiting, template, and forceUpdate.packages/runtime-class/src/runtime/helpers/with-entry.js (2)
28-31: 🛠️ Refactor suggestion | 🟠 Major | ⚡ Quick winUse triple-underscore for internal runtime marker.
template._hasAssetsshould betemplate.___hasAssetsto match runtime internal naming/mangling conventions.As per coding guidelines, “Use triple-underscore prefix (
___name) for all internal properties and methods on runtime objects to enable name mangling by the build step”.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-class/src/runtime/helpers/with-entry.js` around lines 28 - 31, The code uses template._hasAssets as the internal marker but the runtime convention requires triple-underscore names; change all uses of template._hasAssets to template.___hasAssets (including the initial check, the assignment template._hasAssets = 1, and any later reads/writes) and ensure the rest of the wrapper logic that references template._ (and sets template._ = function renderWithAssets...) continues to operate the same while using the new template.___hasAssets marker.
8-12:⚠️ Potential issue | 🟠 Major | ⚡ Quick winAvoid module-scoped
assetFlush; it couples unrelated entries.Line 11 mutates shared module state, and
flushreads that shared value later. Multiple wrappers can overwrite each other’s runtime callback.Proposed fix
var kAssets = Symbol(); var kBlockIndex = Symbol(); var kDeferIndex = Symbol(); -var assetFlush; +var kAssetFlush = Symbol(); exports.withEntry = function withEntry(template, runtime, assetId) { - assetFlush = runtime; var render = template._; var flushBeforeInput = { renderBody: flush }; template._ = function renderWithEntry(input, out) { + out.global[kAssetFlush] = runtime; var hasAssets = !!out.global[kAssets]; addAsset(out.global, assetId); if (hasAssets) { flush(out); @@ function flush(out) { var g = out.global; + var flushAsset = g[kAssetFlush]; + if (!flushAsset) return; var result = ""; var assets = g[kAssets]; var length = assets.length; @@ for (; bi < length; bi++) { - result += assetFlush(g, "block", assets[bi]); + result += flushAsset(g, "block", assets[bi]); } for (; di < length; di++) { - result += assetFlush(g, "defer", assets[di]); + result += flushAsset(g, "defer", assets[di]); }Also applies to: 39-53
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-class/src/runtime/helpers/with-entry.js` around lines 8 - 12, The module-scoped variable assetFlush is being mutated in withEntry causing cross-request coupling; remove the module-level assetFlush and capture the runtime callback per-wrapper instead (e.g., make assetFlush a local/closure variable or attach it to the returned render function/template) so each call to withEntry stores its own runtime; update the code paths that read it (the flush consumer referenced as flush) to read the per-instance value (from the render/template closure or property) rather than a shared module variable; ensure references to template._, withEntry, assetFlush, and flush are adjusted so the runtime callback is instance-scoped and not overwritten by subsequent withEntry calls.packages/runtime-class/src/translator/index.js (1)
236-241:⚠️ Potential issue | 🟠 Major | ⚡ Quick winGuard
entry: "page"whenlinkAssetsis missing.Line 240 calls
linkAssets.onAsset(...)unconditionally. IflinkAssetsis unset, compilation crashes with a generic TypeError instead of a compile-time diagnostic.Proposed fix
if (file.markoOpts.output === "html" && file.markoOpts.entry === "page") { const { linkAssets } = file.markoOpts; + if (!linkAssets) { + throw path.buildCodeFrameError( + 'The "entry: \\"page\\"" mode requires "linkAssets" to be configured.', + ); + } const templateId = file.metadata.marko.id; const relPath = resolveRelativePath(file, file.opts.filename); linkAssets.onAsset("page", file.opts.filename, templateId);As per coding guidelines, “Use Babel's
path.buildCodeFrameError(message)for compile-time errors to include source locations in error output”.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-class/src/translator/index.js` around lines 236 - 241, Guard the use of linkAssets before calling linkAssets.onAsset: inside the block that checks file.markoOpts.output === "html" && file.markoOpts.entry === "page", read const { linkAssets } = file.markoOpts and if (!linkAssets) throw path.buildCodeFrameError("Missing linkAssets for page entry"); otherwise continue to call linkAssets.onAsset(file.opts.filename, templateId) and build path.node.body as before; this ensures resolveRelativePath, templateId and linkAssets.onAsset are only used when linkAssets exists and produces a compile-time diagnostic via path.buildCodeFrameError.packages/runtime-class/src/translator/tag/custom-tag.js (1)
62-64:⚠️ Potential issue | 🟠 Major | ⚡ Quick winRemove only the lazy tag’s import specifier, not the whole declaration.
Line 63 deletes the full import declaration, which can drop unrelated specifiers from the same statement.
Proposed fix
const importBinding = path.scope.getBinding(tagName); if (importBinding?.path?.parentPath?.isImportDeclaration()) { - importBinding.path.parentPath.remove(); + const importDeclPath = importBinding.path.parentPath; + importBinding.path.remove(); + if (!importDeclPath.node.specifiers.length) { + importDeclPath.remove(); + } }🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-class/src/translator/tag/custom-tag.js` around lines 62 - 64, The current code removes the entire import declaration via importBinding.path.parentPath.remove(), which can drop other specifiers; change it to remove only the specific import specifier for the lazy tag: if importBinding?.path?.isImportSpecifier() then call importBinding.path.remove(); otherwise (for safety) if the parent import declaration has exactly one specifier you may remove the parent (importBinding.path.parentPath), but do not unconditionally remove the whole declaration. Update the logic around importBinding and its path checks in custom-tag.js accordingly.packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/test.ts (1)
4-6:⚠️ Potential issue | 🟡 Minor | ⚡ Quick winGuard the
#inclookup before clicking.The querySelector can return null if the button is missing, causing an unhelpful cast error. Add an explicit null check for clearer failure messages.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/test.ts` around lines 4 - 6, The click helper currently casts the result of container.querySelector("`#inc`") to HTMLButtonElement without checking for null, which can produce an unhelpful cast error; update the click(container: Element) function to first call container.querySelector("`#inc`"), check whether the result is non-null and is an HTMLButtonElement, and only then call .click() (otherwise throw or fail with a clear error message referencing "`#inc`") so failures are explicit and informative..sizes/dom.js (1)
2239-2254:⚠️ Potential issue | 🟠 Major | ⚡ Quick winHandle rejected lazy-signal promises in the
remainingcountdown.Line 2243 decrements
remainingonly on fulfillment. If any buffered promise rejects (Line 2253), replay never triggers and buffered entries can be stranded.Suggested fix
- for (let [promise, entry] of values) - promise.then( - (signal) => { - ((entry.b = signal), - --remaining || - ((child.H = 1), - pendingScopes.push(child), - queueAsyncRender( - child, - (scope, buf) => buf.forEach((e) => e.b(scope, e.a)), - -1, - values, - ))); - }, - () => 0, - ); + let done = () => + --remaining || + ((child.H = 1), + pendingScopes.push(child), + queueAsyncRender( + child, + (scope, buf) => buf.forEach((e) => e.b(scope, e.a)), + -1, + values, + )); + for (let [promise, entry] of values) + promise.then( + (signal) => ((entry.b = signal || (() => 0)), done()), + () => ((entry.b = () => 0), done()), + );🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In @.sizes/dom.js around lines 2239 - 2254, The rejection handler for the promise in the for-loop only returns 0 and never decrements the shared remaining counter, which can leave buffered entries stranded; in the rejection arm (the second argument to promise.then) decrement remaining and run the same completion logic as the fulfillment path (set entry.b appropriately or to a no-op signal, check --remaining, set child.H = 1, push child to pendingScopes and call queueAsyncRender with the same callback and arguments) so rejections advance the countdown and trigger replay exactly like fulfillments.
🧹 Nitpick comments (2)
packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/test.ts (1)
4-13: ⚡ Quick winReorder declarations to follow file organization guideline.
The
clickhelper function is declared before the exportedconfig. According to the guideline, exports (public API) should appear before helper functions, relying on function declaration hoisting for top-down structure with progressive disclosure.♻️ Reorder to put export first
-function click(container: Element) { - container.querySelector("button")!.click(); -} - // Two attr updates land before the lazy module resolves; both are buffered // and the final value is applied correctly once setup runs. export const config: TestConfig = { steps: [{}, click, click, wait, click], equivalent: false, }; + +function click(container: Element) { + container.querySelector("button")!.click(); +}As per coding guidelines,
**/*.{js,ts,jsx,tsx}files should organize contents from most important to least important: Public API (exports), then helper functions, using function declaration hoisting to enable top-down file structure.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/test.ts` around lines 4 - 13, Move the exported TestConfig `config` declaration above the helper `click` function so public API appears first; leave `click` as a function declaration (not an expression) so hoisting keeps top-down readability, i.e., export `config` before the `click` function and ensure any references to `click` inside `config.steps` still resolve via hoisting.packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/test.ts (1)
4-4: 💤 Low valueConsider adding an explanatory comment.
The test steps alternate between
waitandclickoperations, but there's no comment explaining what scenario this validates. Adding a brief comment similar to the one inlazy-tag-attrs-update/test.tswould improve maintainability.📝 Example comment
+// Tests conditional rendering: lazy tag loads, then toggles visibility +// through repeated clicks while ensuring consistent state updates. export const config: TestConfig = {🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/test.ts` at line 4, Add a brief explanatory comment above the export const config: TestConfig = { that describes the test scenario (why the steps alternate between wait and click and what behavior is being validated), mirroring the style used in lazy-tag-attrs-update/test.ts; mention the sequence intent (e.g., ensuring lazy tag toggles/render timing) and any important expectations so future readers understand the purpose of the alternating wait/click steps.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In
`@packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/test.ts`:
- Around line 4-11: Move the public export above the helper: place the export
const config definition before the toggle helper so the file lists public API
first; keep toggle as a function declaration (function toggle(container:
Element) {...}) so hoisting still works and update any local references if
needed (config.steps should still reference toggle by name).
---
Duplicate comments:
In @.sizes/dom.js:
- Around line 2239-2254: The rejection handler for the promise in the for-loop
only returns 0 and never decrements the shared remaining counter, which can
leave buffered entries stranded; in the rejection arm (the second argument to
promise.then) decrement remaining and run the same completion logic as the
fulfillment path (set entry.b appropriately or to a no-op signal, check
--remaining, set child.H = 1, push child to pendingScopes and call
queueAsyncRender with the same callback and arguments) so rejections advance the
countdown and trigger replay exactly like fulfillments.
In `@packages/runtime-class/src/runtime/helpers/lazy-tag.js`:
- Around line 23-31: The lazy loader only handles fulfillment; on rejection you
must reset pending and re-render waiting placeholders so they can show a failure
state. In the promise returned by load() (where pending is assigned), add a
.catch handler that sets pending = null, optionally sets template to a failure
sentinel (or leaves it null), clears waiting into a local array, and calls
forceUpdate() on each component in that array (same as the success path) so
placeholders are not stuck; ensure this logic lives alongside the existing then
handler that references pending, load(), waiting, template, and forceUpdate.
In `@packages/runtime-class/src/runtime/helpers/with-entry.js`:
- Around line 28-31: The code uses template._hasAssets as the internal marker
but the runtime convention requires triple-underscore names; change all uses of
template._hasAssets to template.___hasAssets (including the initial check, the
assignment template._hasAssets = 1, and any later reads/writes) and ensure the
rest of the wrapper logic that references template._ (and sets template._ =
function renderWithAssets...) continues to operate the same while using the new
template.___hasAssets marker.
- Around line 8-12: The module-scoped variable assetFlush is being mutated in
withEntry causing cross-request coupling; remove the module-level assetFlush and
capture the runtime callback per-wrapper instead (e.g., make assetFlush a
local/closure variable or attach it to the returned render function/template) so
each call to withEntry stores its own runtime; update the code paths that read
it (the flush consumer referenced as flush) to read the per-instance value (from
the render/template closure or property) rather than a shared module variable;
ensure references to template._, withEntry, assetFlush, and flush are adjusted
so the runtime callback is instance-scoped and not overwritten by subsequent
withEntry calls.
In `@packages/runtime-class/src/translator/index.js`:
- Around line 236-241: Guard the use of linkAssets before calling
linkAssets.onAsset: inside the block that checks file.markoOpts.output ===
"html" && file.markoOpts.entry === "page", read const { linkAssets } =
file.markoOpts and if (!linkAssets) throw path.buildCodeFrameError("Missing
linkAssets for page entry"); otherwise continue to call
linkAssets.onAsset(file.opts.filename, templateId) and build path.node.body as
before; this ensures resolveRelativePath, templateId and linkAssets.onAsset are
only used when linkAssets exists and produces a compile-time diagnostic via
path.buildCodeFrameError.
In `@packages/runtime-class/src/translator/tag/custom-tag.js`:
- Around line 62-64: The current code removes the entire import declaration via
importBinding.path.parentPath.remove(), which can drop other specifiers; change
it to remove only the specific import specifier for the lazy tag: if
importBinding?.path?.isImportSpecifier() then call importBinding.path.remove();
otherwise (for safety) if the parent import declaration has exactly one
specifier you may remove the parent (importBinding.path.parentPath), but do not
unconditionally remove the whole declaration. Update the logic around
importBinding and its path checks in custom-tag.js accordingly.
In
`@packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/test.ts`:
- Around line 4-6: The click helper currently casts the result of
container.querySelector("`#inc`") to HTMLButtonElement without checking for null,
which can produce an unhelpful cast error; update the click(container: Element)
function to first call container.querySelector("`#inc`"), check whether the result
is non-null and is an HTMLButtonElement, and only then call .click() (otherwise
throw or fail with a clear error message referencing "`#inc`") so failures are
explicit and informative.
---
Nitpick comments:
In `@packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/test.ts`:
- Around line 4-13: Move the exported TestConfig `config` declaration above the
helper `click` function so public API appears first; leave `click` as a function
declaration (not an expression) so hoisting keeps top-down readability, i.e.,
export `config` before the `click` function and ensure any references to `click`
inside `config.steps` still resolve via hoisting.
In `@packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/test.ts`:
- Line 4: Add a brief explanatory comment above the export const config:
TestConfig = { that describes the test scenario (why the steps alternate between
wait and click and what behavior is being validated), mirroring the style used
in lazy-tag-attrs-update/test.ts; mention the sequence intent (e.g., ensuring
lazy tag toggles/render timing) and any important expectations so future readers
understand the purpose of the alternating wait/click steps.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
c54f32a to
8333afd
Compare
There was a problem hiding this comment.
♻️ Duplicate comments (5)
packages/runtime-class/src/runtime/helpers/lazy-tag.js (1)
23-31:⚠️ Potential issue | 🟠 Major | ⚡ Quick winHandle loader rejection so lazy placeholders don’t get stuck.
At Line 24,
load()failures leavependingin a rejected state and waiting components never recover/re-render.Suggested fix
module.exports = function lazyTag(load) { var template; + var error; var pending; var waiting = []; @@ _: function lazyRenderer(input, out) { if (template) { template._(input, out); return; } + if (error) throw error; @@ if (!pending) { - pending = load().then(function (mod) { - var components = waiting; - template = mod.default || mod; - waiting = []; - for (var i = 0; i < components.length; i++) { - components[i].forceUpdate(); - } - }); + pending = load().then( + function (mod) { + var components = waiting; + template = mod.default || mod; + waiting = []; + pending = undefined; + for (var i = 0; i < components.length; i++) { + components[i].forceUpdate(); + } + }, + function (err) { + var components = waiting; + waiting = []; + pending = undefined; + error = err; + for (var i = 0; i < components.length; i++) { + components[i].forceUpdate(); + } + }, + ); }🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-class/src/runtime/helpers/lazy-tag.js` around lines 23 - 31, The loader promise returned by load() is not handling rejections, which leaves pending rejected and prevents waiting components from recovering; update the pending handling in the lazy loader (the pending variable set from load(), the load() call, and the waiting array of components using forceUpdate()) to attach a .catch handler that clears or resets pending, optionally sets an error state (or template to null), and calls forceUpdate() on each component in waiting so placeholders re-render and can retry; ensure waiting is cleared after notifying components to avoid leaks.packages/runtime-class/src/translator/index.js (1)
236-245:⚠️ Potential issue | 🟠 Major | ⚡ Quick winGuard
linkAssetsbefore page-entry rewrite.At Line 240,
linkAssets.onAsset(...)is unconditional;entry: "page"with nolinkAssetswill throw instead of producing a compile-time diagnostic.As per coding guidelines, “Use Babel's `path.buildCodeFrameError(message)` for compile-time errors to include source locations in error output”.Suggested fix
if (file.markoOpts.output === "html" && file.markoOpts.entry === "page") { const { linkAssets } = file.markoOpts; + if (!linkAssets) { + throw path.buildCodeFrameError( + 'The "entry: \\"page\\"" mode requires "linkAssets".', + ); + } const templateId = file.metadata.marko.id; const relPath = resolveRelativePath(file, file.opts.filename); linkAssets.onAsset("page", file.opts.filename, templateId);🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-class/src/translator/index.js` around lines 236 - 245, The page-entry rewrite currently calls linkAssets.onAsset(...) without checking linkAssets; update the block handling file.markoOpts.entry === "page" (the code around the templateId/relPath/linkAssets usage) to first guard that file.markoOpts.linkAssets exists and, if missing, throw a compile-time diagnostic using path.buildCodeFrameError("...") with a clear message; otherwise proceed to call linkAssets.onAsset and the importDeclaration as before. Ensure you reference linkAssets and onAsset exactly as used so the missing-case is detected and reported with the source location.packages/runtime-class/src/runtime/helpers/with-entry.js (1)
8-12:⚠️ Potential issue | 🟠 Major | ⚡ Quick winAvoid module-scoped
assetFlush; it leaks runtime state across entries.At Line 11, assigning
assetFlushglobally makesflush()depend on whicheverwithEntryran last, not the current render context.Suggested fix
var kAssets = Symbol(); var kBlockIndex = Symbol(); var kDeferIndex = Symbol(); -var assetFlush; +var kAssetFlush = Symbol(); exports.withEntry = function withEntry(template, runtime, assetId) { - assetFlush = runtime; var render = template._; var flushBeforeInput = { renderBody: flush }; template._ = function renderWithEntry(input, out) { + out.global[kAssetFlush] = runtime; var hasAssets = !!out.global[kAssets]; addAsset(out.global, assetId); @@ function flush(out) { var g = out.global; + var flushAsset = g[kAssetFlush]; + if (!flushAsset) return; var result = ""; var assets = g[kAssets]; @@ for (; bi < length; bi++) { - result += assetFlush(g, "block", assets[bi]); + result += flushAsset(g, "block", assets[bi]); } @@ for (; di < length; di++) { - result += assetFlush(g, "defer", assets[di]); + result += flushAsset(g, "defer", assets[di]); }Also applies to: 44-58
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-class/src/runtime/helpers/with-entry.js` around lines 8 - 12, The module-scoped assetFlush leaks runtime state between calls to withEntry; instead, stop using the top-level assetFlush variable and capture the runtime in a local/closure-bound flush implementation: inside withEntry (which sets var render = template._) create a flush function that closes over the local runtime (or attach a bound flush to render, e.g., render.flush = () => { /* use runtime here */ }) and update any references to the module assetFlush (used later in flush() logic around lines 44-58) to call this closure-bound/attached flush so each render uses its own runtime instance rather than the last one assigned to the global assetFlush.packages/runtime-class/src/translator/tag/custom-tag.js (1)
62-64:⚠️ Potential issue | 🟠 Major | ⚡ Quick winRemove only the lazy tag specifier, not the whole import declaration.
At Line 63, deleting
parentPathcan drop unrelated specifiers imported from the same module.Suggested fix
const importBinding = path.scope.getBinding(tagName); if (importBinding?.path?.parentPath?.isImportDeclaration()) { - importBinding.path.parentPath.remove(); + const importDeclPath = importBinding.path.parentPath; + importBinding.path.remove(); + if (!importDeclPath.node.specifiers.length) { + importDeclPath.remove(); + } }🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-class/src/translator/tag/custom-tag.js` around lines 62 - 64, The current code removes the whole ImportDeclaration via importBinding.path.parentPath.remove(), which can drop other specifiers; instead detect if importBinding.path.parentPath.isImportSpecifier() and remove that ImportSpecifier node (importBinding.path.parentPath.remove()); if the parent is an ImportDeclaration, only remove the specifier (e.g., importBinding.path.remove()) and, after removal, if the ImportDeclaration has no remaining specifiers then remove the ImportDeclaration; use the existing importBinding and its path to target the specific specifier rather than unconditionally calling parentPath.remove().packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/test.ts (1)
4-11: 🛠️ Refactor suggestion | 🟠 Major | ⚡ Quick winReorder to place export before helper function.
The helper function
toggleis defined before theconfigexport, which violates the guideline to organize file contents from most important to least important (exports first). As per coding guidelines, use function declaration hoisting to enable top-down file structure with the public API (exports) appearing first, followed by helper functions.♻️ Proposed reordering
import type { TestConfig } from "../../main.test"; import { wait } from "../../utils/resolve"; -function toggle(container: Element) { - (container.querySelector("`#toggle`") as HTMLButtonElement).click(); -} - export const config: TestConfig = { steps: [{}, toggle, wait, {}, toggle], equivalent: false, }; + +function toggle(container: Element) { + (container.querySelector("`#toggle`") as HTMLButtonElement).click(); +}As per coding guidelines: "Organize file contents from most important to least important: Public API (exports), High-level orchestration logic, Helper functions, Low-level implementation details. Use function declaration hoisting to enable top-down file structure with progressive disclosure."
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/test.ts` around lines 4 - 11, Move the export so the public API appears first: place the export const config declaration before the helper function declaration for toggle; since toggle is a function declaration (not an expression) it can remain below and be referenced in config.steps (ensure the steps array still contains toggle, wait, etc.), keeping the TestConfig type and equivalent field unchanged.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Duplicate comments:
In `@packages/runtime-class/src/runtime/helpers/lazy-tag.js`:
- Around line 23-31: The loader promise returned by load() is not handling
rejections, which leaves pending rejected and prevents waiting components from
recovering; update the pending handling in the lazy loader (the pending variable
set from load(), the load() call, and the waiting array of components using
forceUpdate()) to attach a .catch handler that clears or resets pending,
optionally sets an error state (or template to null), and calls forceUpdate() on
each component in waiting so placeholders re-render and can retry; ensure
waiting is cleared after notifying components to avoid leaks.
In `@packages/runtime-class/src/runtime/helpers/with-entry.js`:
- Around line 8-12: The module-scoped assetFlush leaks runtime state between
calls to withEntry; instead, stop using the top-level assetFlush variable and
capture the runtime in a local/closure-bound flush implementation: inside
withEntry (which sets var render = template._) create a flush function that
closes over the local runtime (or attach a bound flush to render, e.g.,
render.flush = () => { /* use runtime here */ }) and update any references to
the module assetFlush (used later in flush() logic around lines 44-58) to call
this closure-bound/attached flush so each render uses its own runtime instance
rather than the last one assigned to the global assetFlush.
In `@packages/runtime-class/src/translator/index.js`:
- Around line 236-245: The page-entry rewrite currently calls
linkAssets.onAsset(...) without checking linkAssets; update the block handling
file.markoOpts.entry === "page" (the code around the
templateId/relPath/linkAssets usage) to first guard that
file.markoOpts.linkAssets exists and, if missing, throw a compile-time
diagnostic using path.buildCodeFrameError("...") with a clear message; otherwise
proceed to call linkAssets.onAsset and the importDeclaration as before. Ensure
you reference linkAssets and onAsset exactly as used so the missing-case is
detected and reported with the source location.
In `@packages/runtime-class/src/translator/tag/custom-tag.js`:
- Around line 62-64: The current code removes the whole ImportDeclaration via
importBinding.path.parentPath.remove(), which can drop other specifiers; instead
detect if importBinding.path.parentPath.isImportSpecifier() and remove that
ImportSpecifier node (importBinding.path.parentPath.remove()); if the parent is
an ImportDeclaration, only remove the specifier (e.g.,
importBinding.path.remove()) and, after removal, if the ImportDeclaration has no
remaining specifiers then remove the ImportDeclaration; use the existing
importBinding and its path to target the specific specifier rather than
unconditionally calling parentPath.remove().
In
`@packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/test.ts`:
- Around line 4-11: Move the export so the public API appears first: place the
export const config declaration before the helper function declaration for
toggle; since toggle is a function declaration (not an expression) it can remain
below and be referenced in config.steps (ensure the steps array still contains
toggle, wait, etc.), keeping the TestConfig type and equivalent field unchanged.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 8621d0da-81aa-4941-b276-4c5b352ec963
⛔ Files ignored due to path filters (261)
package-lock.jsonis excluded by!**/package-lock.jsonand included by**packages/runtime-tags/src/__tests__/fixtures-interop/class/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/custom-tag-parameters-from-args/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-basic-class-to-tags/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-basic-tags-to-class/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-class-in-components-in-tags-dir/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-class-to-tags-import/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-event-handler-render-body-tags-to-class/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-events-tags-to-class/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-nested-attr-tags-class-to-tags/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-nested-class-to-tags/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-nested-tags-to-class/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-stateless-tags-to-class/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-tag-params-class-to-tags/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/interop-tag-params-tags-to-class/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/dom.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/dom.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/dom.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-head/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-head/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-head/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-head/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-head/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-head/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures-interop/let/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-destructured-increment/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-destructured-reduced/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-destructured/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-in-wrapped-function/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-live-read/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-to-owner-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/assign-to-pruned-let-with-change-handler/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/async-multi-resolve-in-order-and-update/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/async-reject-then-resolve-before-and-after-isolated-boundaries/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/async-state/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/at-tags-dynamic-with-params/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/at-tags-for-loop-param-intersection-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/attr-boolean-dynamic/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/attr-value-with-dollar-brace/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-cleanup/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-closure-function/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-closure-in-order/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-closure-within/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-closure-within/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-remove-parent/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-tag/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-update-after-resume/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/await-update-before-resume/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component-attrs/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component-input-alias/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component-input-same-source-alias-within-pattern/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component-input-same-source-alias/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component-input/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component-renderBody/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-component/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-conditional-counter-multiple-nodes/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-conditional-counter/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-converge-in-if/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-counter-const-event-handler/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-counter-multiplier/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-counter/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-execution-order/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-fn-with-block/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-handler-multi-ref-nested/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-handler-refless/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-inert-collapsible-tree/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-member-expression-computed/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-member-expression-optional/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-member-expression-optional/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-merge-member-expression/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-for/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-params/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-custom-tag/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-dynamic-tag/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-for/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-if/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-if/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-push-pop-list/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-shared-node-ref/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-toggle-show/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/basic-unused-ref/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/batched-updates-cleanup/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/batched-updates/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/batched-updates/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/bind-to-input/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/body-content/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-for-shallow/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-if-deep/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-if-same-scope/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-if-shallow/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-for-deep/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-for-shallow/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-if-deep/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-if-same-scope/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-if-shallow/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/closure-serialize-reason/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/component-attrs-import-value/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/component-attrs-intersection/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/component-attrs-static-code/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/conditional-dynamic-tag-in-loop-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/conditional-table-row/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/content-with-state/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-many/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-value-multiple-number/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-value-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-value/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-values-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked-values/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-checked/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-details-open/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-dialog-open/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-dynamic-checkbox-checked-value/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-input-number-member-modifier-value/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-input-number-modifier-value/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-input-value-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-select-dynamic-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-select-multiple-value-number/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-select-mutated-option/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-select-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-select-value-number/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-select/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/controllable-textarea-value-spread/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/counter-intersection/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/counter-intersection/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/cross-tag-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-parameters-from-attributes/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-parameters-from-single-arg/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-assignment/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-expression/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-in-body/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-intersection/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-multiple/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/custom-tag-var/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/declared-alias-closure/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-for-attribute-tag/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-object/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-render-args/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-render-attr-signal/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-render-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-render-conditional/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/define-tag-render/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/destructure-input-with-assignment/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/destructure-stateful-upstream-alias/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/doctype/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/doctype/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dollar-global-client/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-closure-multiple/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-closures/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-content-attr/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-event-handlers/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-native-dynamic-tag/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-args-tag-var/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-args/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-custom-native/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-input-intersection/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-name/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-single-arg/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-sometimes-null/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-var-assignment/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-var-in-body/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-with-updating-body/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/embed-counter/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/expression-statement-tag-var-assignment/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-by-use-index/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-by-use-index/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-destructure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-event-handler/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-loop-closure-remove-all-items/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-tag-single-node-only-child-in-parent/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-tag-single-text-node-with-text-before/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-tag-static-value-with-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/for-tag-with-state/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/function-references-optional-member-normalize/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-attr-tag/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-from-dynamic/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-many/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-minimum-scope/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-same-scope-calls-only/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-same-scope/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-dynamic-tag-var-from-dynamic/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-dynamic-tag-var-many/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-dynamic-tag-var/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/hoist-return-ref/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/html-comment-counter/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/html-comment-counter/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/html-comment-var/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/html-script-nonce/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/html-script/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/html-style-nonce/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/html-style/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/id-tag-default/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/if-default-false/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/if-member-expression-intersection/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/if-member-expression-intersection/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/if-no-content-script/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/inert-control-flow-only-child-event/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/inert-control-flow-only-child-select-event/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/inert-if-closure-update-active/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/inert-if-closure-update-inactive/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/known-define-tag-empty-section-closure/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/dom.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/html.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-csr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-csr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-ssr.debug.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-ssr.mdis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/writes.debug.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/writes.htmlis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/dom.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/dom.bundle.jsis excluded by!**/__snapshots__/**and included by**packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/html.bundle.debug.jsis excluded by!**/__snapshots__/**and included by**
📒 Files selected for processing (39)
.changeset/bold-groups-dance.md.sizes.json.sizes/comments.csr/runtime.js.sizes/comments.ssr/runtime.js.sizes/counter.csr/runtime.js.sizes/counter.ssr/runtime.js.sizes/dom.jspackage.jsonpackages/compiler/config.d.tspackages/compiler/src/config.jspackages/runtime-class/src/runtime/helpers/lazy-tag.jspackages/runtime-class/src/runtime/helpers/with-entry.jspackages/runtime-class/src/translator/index.jspackages/runtime-class/src/translator/tag/custom-tag.jspackages/runtime-class/src/translator/tag/native-tag[html]/index.jspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/test.tspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/test.tspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/test.tspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/test.tspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/test.tspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/test.tspackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-head/child.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-head/template.markopackages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-head/test.tspackages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/child.markopackages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/template.markopackages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/test.ts
✅ Files skipped from review due to trivial changes (8)
- packages/runtime-tags/src/tests/fixtures-interop/lazy-class-head/child.marko
- packages/runtime-tags/src/tests/fixtures-interop/lazy-class-head/template.marko
- .sizes/comments.ssr/runtime.js
- packages/runtime-tags/src/tests/fixtures-interop/lazy-class-child-ssr-only/child.marko
- package.json
- .changeset/bold-groups-dance.md
- packages/runtime-tags/src/tests/fixtures-interop/lazy-class-child/child.marko
- .sizes.json
No description provided.