Skip to content

feat: native lazy load imports#3201

Open
DylanPiercey wants to merge 1 commit into
mainfrom
lazy-imports
Open

feat: native lazy load imports#3201
DylanPiercey wants to merge 1 commit into
mainfrom
lazy-imports

Conversation

@DylanPiercey
Copy link
Copy Markdown
Contributor

No description provided.

@changeset-bot
Copy link
Copy Markdown

changeset-bot Bot commented May 24, 2026

🦋 Changeset detected

Latest commit: 8333afd

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 3 packages
Name Type
marko Patch
@marko/runtime-tags Patch
@marko/compiler Patch

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

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 24, 2026

Review Change Stack

Walkthrough

This PR implements a native lazy import API for Marko by introducing compiler configuration options (entry and linkAssets), runtime helpers (lazyTag, withEntry, withAssets) for deferred template loading and asset management, and translator updates to detect and compile lazy-marked imports. The DOM runtime is refactored with centralized async rendering helpers (queueAsyncRender, addAwaitCounter) to coordinate placeholder lifecycle, effect flushing, and lazy resolution. Frame scheduling is adjusted to call requestAnimationFrame before run() across all runtime outputs. Extensive test fixtures validate lazy rendering, attribute buffering, interop scenarios, and edge cases. Build metrics and changeset metadata are updated accordingly.

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Description check ❓ Inconclusive No pull request description was provided by the author; the description field is empty. Add a description explaining the purpose, scope, and impact of the native lazy import feature implementation.
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The PR title 'feat: native lazy load imports' directly summarizes the main change—implementing native lazy import functionality across the codebase.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch lazy-imports

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

If the error stems from missing dependencies, add them to the package.json file. For unrecoverable errors (e.g., due to private dependencies), disable the tool in the CodeRabbit configuration.

packages/runtime-class/src/runtime/helpers/lazy-tag.js

Oops! Something went wrong! :(

ESLint: 10.3.0

/packages/runtime-class/src/runtime/.eslintrc:2
"env": {
^

SyntaxError: Unexpected token ':'
at wrapSafe (node:internal/modules/cjs/loader:1763:18)
at Module._compile (node:internal/modules/cjs/loader:1804:20)
at Object..js (node:internal/modules/cjs/loader:1961:10)
at Module.load (node:internal/modules/cjs/loader:1553:32)
at Module._load (node:internal/modules/cjs/loader:1355:12)
at wrapModuleLoad (node:internal/modules/cjs/loader:255:19)
at loadCJSModuleWithModuleLoad (node:internal/modules/esm/translators:326:3)
at ModuleWrap. (node:internal/modules/esm/translators:231:7)
at ModuleJob.run (node:internal/modules/esm/module_job:437:25)
at async node:internal/modules/esm/loader:639:26

packages/runtime-class/src/runtime/helpers/with-entry.js

Oops! Something went wrong! :(

ESLint: 10.3.0

/packages/runtime-class/src/runtime/.eslintrc:2
"env": {
^

SyntaxError: Unexpected token ':'
at wrapSafe (node:internal/modules/cjs/loader:1763:18)
at Module._compile (node:internal/modules/cjs/loader:1804:20)
at Object..js (node:internal/modules/cjs/loader:1961:10)
at Module.load (node:internal/modules/cjs/loader:1553:32)
at Module._load (node:internal/modules/cjs/loader:1355:12)
at wrapModuleLoad (node:internal/modules/cjs/loader:255:19)
at loadCJSModuleWithModuleLoad (node:internal/modules/esm/translators:326:3)
at ModuleWrap. (node:internal/modules/esm/translators:231:7)
at ModuleJob.run (node:internal/modules/esm/module_job:437:25)
at async node:internal/modules/esm/loader:639:26


Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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 win

Place exported config before helper declarations for top-down structure.

Move export const config above click to 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 win

Reorder exports before helpers for guideline compliance.

Keep config first and move click below 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 win

Move config above helper to match top-down test file structure.

Place the exported config first, 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 win

Use triple-underscore for internal template marker fields.

template._hasAssets should 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

📥 Commits

Reviewing files that changed from the base of the PR and between f7b067e and 3e50baf.

⛔ Files ignored due to path filters (257)
  • packages/runtime-tags/src/__tests__/fixtures-interop/custom-tag-parameters-from-args/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-basic-class-to-tags/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-class-to-tags-import/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-event-handler-render-body-tags-to-class/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-events-tags-to-class/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-nested-attr-tags-class-to-tags/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-nested-class-to-tags/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-nested-tags-to-class/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-tag-params-class-to-tags/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-tag-params-tags-to-class/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/dom.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/dom.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/dom.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/let/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-destructured-increment/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-destructured-reduced/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-destructured/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-in-wrapped-function/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-live-read/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-to-owner-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-to-pruned-let-with-change-handler/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/async-multi-resolve-in-order-and-update/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/async-reject-then-resolve-before-and-after-isolated-boundaries/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/async-state/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/at-tags-dynamic-with-params/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/at-tags-for-loop-param-intersection-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/attr-boolean-dynamic/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/attr-value-with-dollar-brace/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-cleanup/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-closure-function/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-closure-in-order/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-closure-within/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-remove-parent/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-tag/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-update-after-resume/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-update-before-resume/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component-attrs/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component-input-alias/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component-input-same-source-alias-within-pattern/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component-input-same-source-alias/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component-input/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component-renderBody/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-conditional-counter-multiple-nodes/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-conditional-counter/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-counter-const-event-handler/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-counter-multiplier/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-counter/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-execution-order/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-fn-with-block/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-handler-multi-ref-nested/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-handler-refless/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-inert-collapsible-tree/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-member-expression-computed/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-member-expression-optional/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-merge-member-expression/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-for/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-params/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-custom-tag/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-dynamic-tag/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-for/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-if/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-push-pop-list/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-shared-node-ref/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-toggle-show/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-unused-ref/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/batched-updates-cleanup/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/batched-updates/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/bind-to-input/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/body-content/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-for-shallow/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-if-deep/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-if-same-scope/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-if-shallow/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-for-deep/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-for-shallow/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-if-deep/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-if-same-scope/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-if-shallow/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/closure-serialize-reason/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/component-attrs-import-value/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/component-attrs-intersection/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/component-attrs-static-code/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/conditional-dynamic-tag-in-loop-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/conditional-table-row/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/content-with-state/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-many/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-value-multiple-number/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-value-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-value/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-values-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-values/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-details-open/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-dialog-open/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-dynamic-checkbox-checked-value/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-input-number-member-modifier-value/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-input-number-modifier-value/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-input-value-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-select-dynamic-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-select-multiple-value-number/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-select-mutated-option/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-select-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-select-value-number/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-select/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-textarea-value-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/counter-intersection/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cross-tag-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-parameters-from-args/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-parameters-from-attributes/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-parameters-from-single-arg/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-assignment/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-in-body/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-intersection/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-var/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-for-attribute-tag/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-render-args/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-render-attr-signal/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-render-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-render-conditional/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-render/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/destructure-input-with-assignment/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/destructure-stateful-upstream-alias/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dollar-global-client/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-closure-multiple/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-closures/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-content-attr/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-event-handlers/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-native-dynamic-tag/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-native-tag-events/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-args-tag-var/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-args/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-attr-signal/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-custom-native/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-custom-tags/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-input-intersection/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-single-arg/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-var-assignment/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-var-in-body/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-with-updating-body/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/embed-counter/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/expression-statement-tag-var-assignment/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-by-use-index/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-destructure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-event-handler/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-loop-closure-remove-all-items/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-tag-single-node-only-child-in-parent/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-tag-single-text-node-with-text-before/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-tag-static-value-with-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-tag-with-state/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-attr-tag/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-from-dynamic/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-many/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-minimum-scope/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-same-scope-calls-only/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-same-scope/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-dynamic-tag-var-from-dynamic/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-dynamic-tag-var-many/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-dynamic-tag-var/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-return-ref/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/html-comment-counter/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/html-script-nonce/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/html-script/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/html-style-nonce/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/html-style/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/id-tag-default/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/if-default-false/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/if-member-expression-intersection/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/if-no-content-script/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/inert-control-flow-only-child-event/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/inert-control-flow-only-child-select-event/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/inert-if-closure-update-active/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/inert-if-closure-update-inactive/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/known-define-tag-empty-section-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/dom.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/dom.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-csr-only/__snapshots__/dom.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-csr-only/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-csr-only/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-csr-only/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-csr-only/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/dom.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/__snapshots__/writes.html is 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.js
  • packages/compiler/config.d.ts
  • packages/compiler/src/config.js
  • packages/runtime-class/src/runtime/helpers/lazy-tag.js
  • packages/runtime-class/src/runtime/helpers/with-entry.js
  • packages/runtime-class/src/translator/index.js
  • packages/runtime-class/src/translator/tag/custom-tag.js
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/child.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/template.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/test.ts
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/child.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/template.marko
  • 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/child.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/template.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-ssr-only/child.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/template.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/test.ts
  • 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-unmount-before-load/template.marko
  • 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/child.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/template.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/test.ts
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/child.marko
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/template.marko
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/test.ts
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/child.marko
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/template.marko
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/test.ts
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-csr-only/child.marko
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-csr-only/template.marko
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-csr-only/test.ts
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/child.marko
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/template.marko
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-dynamic-attrs-update/test.ts

Comment on lines +2 to +4
"marko": patch
"@marko/runtime-tags": patch
"@marko/compiler": patch
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major | ⚡ Quick win

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.

Comment thread .sizes/dom.js
Comment thread packages/compiler/config.d.ts
Comment thread packages/runtime-class/src/runtime/helpers/with-entry.js
Comment thread packages/runtime-class/src/translator/index.js
Comment on lines +62 to +64
if (importBinding?.path?.parentPath?.isImportDeclaration()) {
importBinding.path.parentPath.remove();
}
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major | ⚡ Quick win

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
Copy link
Copy Markdown

codecov Bot commented May 24, 2026

Codecov Report

❌ Patch coverage is 99.33333% with 2 lines in your changes missing coverage. Please review.
✅ Project coverage is 92.91%. Comparing base (f7b067e) to head (8333afd).

Files with missing lines Patch % Lines
...ges/runtime-class/src/translator/tag/custom-tag.js 97.77% 2 Missing ⚠️
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.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🧹 Nitpick comments (2)
packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/test.ts (1)

4-13: ⚡ Quick win

Reorder file so exported config comes before click helper.

Keep click as 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 win

Place exported config before helper functions for top-down structure.

Move export const config above toggle so 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

📥 Commits

Reviewing files that changed from the base of the PR and between 3e50baf and 430d49f.

⛔ Files ignored due to path filters (240)
  • packages/runtime-tags/src/__tests__/fixtures-interop/custom-tag-parameters-from-args/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-basic-class-to-tags/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-basic-tags-to-class/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-class-to-tags-import/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-event-handler-render-body-tags-to-class/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-events-tags-to-class/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-nested-attr-tags-class-to-tags/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-nested-class-to-tags/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-nested-tags-to-class/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-tag-params-class-to-tags/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-tag-params-tags-to-class/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/dom.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/dom.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/dom.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/let/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-destructured-increment/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-destructured-reduced/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-destructured/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-in-wrapped-function/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-live-read/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-to-owner-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-to-pruned-let-with-change-handler/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/async-multi-resolve-in-order-and-update/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/async-reject-then-resolve-before-and-after-isolated-boundaries/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/async-state/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/at-tags-dynamic-with-params/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/at-tags-for-loop-param-intersection-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/attr-boolean-dynamic/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/attr-value-with-dollar-brace/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-cleanup/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-closure-function/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-closure-in-order/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-closure-within/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-remove-parent/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-tag/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-update-after-resume/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-update-before-resume/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component-attrs/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component-input-alias/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component-input-same-source-alias-within-pattern/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component-input-same-source-alias/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component-input/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component-renderBody/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-conditional-counter-multiple-nodes/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-conditional-counter/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-counter-const-event-handler/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-counter-multiplier/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-counter/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-execution-order/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-fn-with-block/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-handler-multi-ref-nested/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-handler-refless/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-inert-collapsible-tree/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-member-expression-computed/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-member-expression-optional/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-merge-member-expression/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-for/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-params/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-custom-tag/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-dynamic-tag/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-for/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-if/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-push-pop-list/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-shared-node-ref/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-toggle-show/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-unused-ref/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/batched-updates-cleanup/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/batched-updates/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/bind-to-input/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/body-content/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-for-shallow/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-if-deep/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-if-same-scope/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-if-shallow/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-for-deep/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-for-shallow/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-if-deep/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-if-same-scope/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-if-shallow/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/closure-serialize-reason/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/component-attrs-import-value/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/component-attrs-intersection/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/component-attrs-static-code/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/conditional-dynamic-tag-in-loop-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/conditional-table-row/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/content-with-state/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-many/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-value-multiple-number/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-value-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-value/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-values-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-values/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-details-open/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-dialog-open/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-dynamic-checkbox-checked-value/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-input-number-member-modifier-value/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-input-number-modifier-value/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-input-value-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-select-dynamic-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-select-multiple-value-number/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-select-mutated-option/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-select-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-select-value-number/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-select/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-textarea-value-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/counter-intersection/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cross-tag-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-parameters-from-attributes/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-parameters-from-single-arg/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-assignment/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-in-body/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-intersection/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-var/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-for-attribute-tag/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-render-args/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-render-attr-signal/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-render-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-render-conditional/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-render/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/destructure-input-with-assignment/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/destructure-stateful-upstream-alias/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dollar-global-client/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-closure-multiple/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-closures/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-content-attr/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-event-handlers/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-native-dynamic-tag/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-args-tag-var/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-args/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-custom-native/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-input-intersection/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-single-arg/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-sometimes-null/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-var-assignment/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-var-in-body/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-with-updating-body/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/embed-counter/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/expression-statement-tag-var-assignment/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-by-use-index/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-destructure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-event-handler/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-loop-closure-remove-all-items/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-tag-single-node-only-child-in-parent/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-tag-single-text-node-with-text-before/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-tag-static-value-with-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-tag-with-state/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-attr-tag/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-from-dynamic/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-many/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-minimum-scope/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-same-scope-calls-only/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-same-scope/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-dynamic-tag-var-from-dynamic/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-dynamic-tag-var-many/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-dynamic-tag-var/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-return-ref/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/html-comment-counter/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/html-script-nonce/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/html-script/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/html-style-nonce/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/html-style/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/id-tag-default/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/if-default-false/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/if-member-expression-intersection/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/if-no-content-script/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/inert-control-flow-only-child-event/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/inert-control-flow-only-child-select-event/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/inert-if-closure-update-active/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/inert-if-closure-update-inactive/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/known-define-tag-empty-section-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/dom.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/dom.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/writes.html is 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.js
  • packages/compiler/config.d.ts
  • packages/compiler/src/config.js
  • packages/runtime-class/src/runtime/helpers/lazy-tag.js
  • packages/runtime-class/src/runtime/helpers/with-entry.js
  • packages/runtime-class/src/translator/index.js
  • packages/runtime-class/src/translator/tag/custom-tag.js
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/child.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/template.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/test.ts
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/child.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/template.marko
  • 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/child.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/template.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-ssr-only/child.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/template.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/test.ts
  • 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-unmount-before-load/template.marko
  • 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/child.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/template.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/test.ts
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/child.marko
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/template.marko
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/test.ts
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/child.marko
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/template.marko
  • packages/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

Comment thread packages/runtime-class/src/runtime/helpers/lazy-tag.js
Comment thread packages/runtime-class/src/runtime/helpers/with-entry.js Outdated
Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

♻️ Duplicate comments (7)
packages/runtime-class/src/runtime/helpers/lazy-tag.js (1)

23-31: ⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Handle lazy loader rejection so placeholders don’t get stuck.

Line 24 only handles fulfillment. On rejection, pending is 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 win

Use triple-underscore for internal runtime marker.

template._hasAssets should be template.___hasAssets to 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 win

Avoid module-scoped assetFlush; it couples unrelated entries.

Line 11 mutates shared module state, and flush reads 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 win

Guard entry: "page" when linkAssets is missing.

Line 240 calls linkAssets.onAsset(...) unconditionally. If linkAssets is 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 win

Remove 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 win

Guard the #inc lookup 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 win

Handle rejected lazy-signal promises in the remaining countdown.

Line 2243 decrements remaining only 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 win

Reorder declarations to follow file organization guideline.

The click helper function is declared before the exported config. 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 value

Consider adding an explanatory comment.

The test steps alternate between wait and click operations, but there's no comment explaining what scenario this validates. Adding a brief comment similar to the one in lazy-tag-attrs-update/test.ts would 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

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

♻️ Duplicate comments (5)
packages/runtime-class/src/runtime/helpers/lazy-tag.js (1)

23-31: ⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Handle loader rejection so lazy placeholders don’t get stuck.

At Line 24, load() failures leave pending in 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 win

Guard linkAssets before page-entry rewrite.

At Line 240, linkAssets.onAsset(...) is unconditional; entry: "page" with no linkAssets will throw instead of producing a compile-time diagnostic.

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);
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 - 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 win

Avoid module-scoped assetFlush; it leaks runtime state across entries.

At Line 11, assigning assetFlush globally makes flush() depend on whichever withEntry ran 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 win

Remove only the lazy tag specifier, not the whole import declaration.

At Line 63, deleting parentPath can 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 win

Reorder to place export before helper function.

The helper function toggle is defined before the config export, 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

📥 Commits

Reviewing files that changed from the base of the PR and between c54f32a and 8333afd.

⛔ Files ignored due to path filters (261)
  • package-lock.json is excluded by !**/package-lock.json and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/class/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/custom-tag-parameters-from-args/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-basic-class-to-tags/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-basic-tags-to-class/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-class-in-components-in-tags-dir/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-class-to-tags-import/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-event-handler-render-body-tags-to-class/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-events-tags-to-class/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-nested-attr-tags-class-to-tags/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-nested-class-to-tags/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-nested-tags-to-class/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-stateless-tags-to-class/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-tag-params-class-to-tags/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/interop-tag-params-tags-to-class/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/dom.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/dom.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-unmount-before-load/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/dom.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-head/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-head/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-head/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-head/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-head/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-head/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures-interop/let/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-destructured-increment/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-destructured-reduced/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-destructured/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-in-wrapped-function/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-live-read/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-to-owner-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/assign-to-pruned-let-with-change-handler/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/async-multi-resolve-in-order-and-update/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/async-reject-then-resolve-before-and-after-isolated-boundaries/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/async-state/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/at-tags-dynamic-with-params/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/at-tags-for-loop-param-intersection-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/attr-boolean-dynamic/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/attr-value-with-dollar-brace/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-cleanup/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-closure-function/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-closure-in-order/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-closure-within/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-closure-within/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-remove-parent/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-tag/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-update-after-resume/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/await-update-before-resume/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component-attrs/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component-input-alias/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component-input-same-source-alias-within-pattern/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component-input-same-source-alias/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component-input/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component-renderBody/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-component/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-conditional-counter-multiple-nodes/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-conditional-counter/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-converge-in-if/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-counter-const-event-handler/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-counter-multiplier/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-counter/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-execution-order/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-fn-with-block/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-handler-multi-ref-nested/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-handler-refless/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-inert-collapsible-tree/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-member-expression-computed/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-member-expression-optional/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-member-expression-optional/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-merge-member-expression/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-for/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-params/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-custom-tag/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-dynamic-tag/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-for/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-if/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-nested-scope-if/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-push-pop-list/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-shared-node-ref/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-toggle-show/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/basic-unused-ref/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/batched-updates-cleanup/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/batched-updates/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/batched-updates/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/bind-to-input/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/body-content/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-for-shallow/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-if-deep/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-if-same-scope/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-n-child-if-shallow/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-for-deep/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-for-shallow/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-if-deep/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-if-same-scope/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cleanup-single-child-if-shallow/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/closure-serialize-reason/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/component-attrs-import-value/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/component-attrs-intersection/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/component-attrs-static-code/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/conditional-dynamic-tag-in-loop-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/conditional-table-row/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/content-with-state/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-many/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-value-multiple-number/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-value-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-value/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-values-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked-values/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-checked/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-details-open/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-dialog-open/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-dynamic-checkbox-checked-value/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-input-number-member-modifier-value/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-input-number-modifier-value/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-input-value-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-select-dynamic-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-select-multiple-value-number/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-select-mutated-option/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-select-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-select-value-number/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-select/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/controllable-textarea-value-spread/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/counter-intersection/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/counter-intersection/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/cross-tag-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-parameters-from-attributes/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-parameters-from-single-arg/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-assignment/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-expression/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-in-body/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-intersection/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-var-multiple/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/custom-tag-var/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/declared-alias-closure/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-for-attribute-tag/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-object/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-render-args/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-render-attr-signal/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-render-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-render-conditional/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/define-tag-render/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/destructure-input-with-assignment/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/destructure-stateful-upstream-alias/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/doctype/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/doctype/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dollar-global-client/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-closure-multiple/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-closures/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-content-attr/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-event-handlers/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-native-dynamic-tag/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-args-tag-var/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-args/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-custom-native/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-input-intersection/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-name/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-single-arg/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-sometimes-null/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-var-assignment/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-var-in-body/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/dynamic-tag-with-updating-body/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/embed-counter/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/expression-statement-tag-var-assignment/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-by-use-index/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-by-use-index/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-destructure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-event-handler/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-loop-closure-remove-all-items/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-tag-single-node-only-child-in-parent/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-tag-single-text-node-with-text-before/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-tag-static-value-with-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/for-tag-with-state/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/function-references-optional-member-normalize/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-attr-tag/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-from-dynamic/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-many/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-minimum-scope/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-same-scope-calls-only/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var-same-scope/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-custom-tag-var/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-dynamic-tag-var-from-dynamic/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-dynamic-tag-var-many/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-dynamic-tag-var/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/hoist-return-ref/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/html-comment-counter/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/html-comment-counter/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/html-comment-var/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/html-script-nonce/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/html-script/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/html-style-nonce/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/html-style/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/id-tag-default/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/if-default-false/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/if-member-expression-intersection/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/if-member-expression-intersection/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/if-no-content-script/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/inert-control-flow-only-child-event/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/inert-control-flow-only-child-select-event/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/inert-if-closure-update-active/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/inert-if-closure-update-inactive/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/known-define-tag-empty-section-closure/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/dom.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/html.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/html.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-csr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-csr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-ssr.debug.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/render-ssr.md is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/writes.debug.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/__snapshots__/writes.html is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/dom.bundle.debug.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/dom.bundle.js is excluded by !**/__snapshots__/** and included by **
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-conditional/__snapshots__/html.bundle.debug.js is 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.js
  • package.json
  • packages/compiler/config.d.ts
  • packages/compiler/src/config.js
  • packages/runtime-class/src/runtime/helpers/lazy-tag.js
  • packages/runtime-class/src/runtime/helpers/with-entry.js
  • packages/runtime-class/src/translator/index.js
  • packages/runtime-class/src/translator/tag/custom-tag.js
  • packages/runtime-class/src/translator/tag/native-tag[html]/index.js
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/child.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/template.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-attrs-update/test.ts
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/child.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-basic/template.marko
  • 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/child.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-csr-only/template.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-ssr-only/child.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/template.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child-ssr-only/test.ts
  • 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-unmount-before-load/template.marko
  • 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/child.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/template.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-child/test.ts
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-head/child.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-head/template.marko
  • packages/runtime-tags/src/__tests__/fixtures-interop/lazy-class-head/test.ts
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/child.marko
  • packages/runtime-tags/src/__tests__/fixtures/lazy-tag-attrs-update/template.marko
  • packages/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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant