Skip to content

perf(patina): prefilter prop destructure scan#2730

Merged
ubugeeei merged 1 commit into
mainfrom
agent/patina-prop-destructure-prefilter
Jul 8, 2026
Merged

perf(patina): prefilter prop destructure scan#2730
ubugeeei merged 1 commit into
mainfrom
agent/patina-prop-destructure-prefilter

Conversation

@ubugeeei

@ubugeeei ubugeeei commented Jul 8, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • skip no-deep-destructure traversal when source has no defineProps object binding
  • keep AST-based detection for actual defineProps destructuring
  • cover comment trivia before the object binding in an invalid case

Refs #2703

Validation

  • cargo fmt --check
  • cargo test -p vize_patina no_deep_destructure_in_props
  • cargo clippy -p vize_patina -- -D warnings -D clippy::wildcard_imports
  • SOURCE_LENGTH_BASE_REF=origin/main node --test tests/tooling/source-file-lengths.test.ts
  • git diff --check

View with Codesmith Autofix with Codesmith
Need help on this PR? Tag /codesmith with what you need. Autofix is disabled.

Summary by CodeRabbit

  • Performance Improvements

    • Improved rule scanning so files without relevant prop-destructuring patterns are skipped sooner.
    • Reduced unnecessary analysis work, which should make checks faster in many cases.
  • Bug Fixes

    • Preserved existing warning behavior for deeply nested destructuring, including cases with comments inside the pattern.

@ubugeeei ubugeeei enabled auto-merge (squash) July 8, 2026 17:42
@pkg-pr-new

pkg-pr-new Bot commented Jul 8, 2026

Copy link
Copy Markdown

Open in StackBlitz

vize

pnpm add https://pkg.pr.new/vize@2730

@vizejs/fresco

pnpm add https://pkg.pr.new/@vizejs/fresco@2730

@vizejs/musea-mcp-server

pnpm add https://pkg.pr.new/@vizejs/musea-mcp-server@2730

oxlint-plugin-vize

pnpm add https://pkg.pr.new/oxlint-plugin-vize@2730

@vizejs/rspack-plugin

pnpm add https://pkg.pr.new/@vizejs/rspack-plugin@2730

@vizejs/unplugin

pnpm add https://pkg.pr.new/@vizejs/unplugin@2730

@vizejs/vite-plugin

pnpm add https://pkg.pr.new/@vizejs/vite-plugin@2730

@vizejs/vite-plugin-musea

pnpm add https://pkg.pr.new/@vizejs/vite-plugin-musea@2730

@vizejs/musea-nuxt

pnpm add https://pkg.pr.new/@vizejs/musea-nuxt@2730

@vizejs/nuxt

pnpm add https://pkg.pr.new/@vizejs/nuxt@2730

commit: 0087d82

@coderabbitai

coderabbitai Bot commented Jul 8, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

Adds a heuristic source-text prefilter to the no-deep-destructure-in-props rule so the AST visitor only runs when defineProps and an object-binding declaration are likely present. Adds several helper functions for this scan and updates one test's input string with an inline comment.

Changes

Deep Destructure Prefilter

Layer / File(s) Summary
Source-text scanning helpers and early-return guard
crates/vize_patina/src/rules/script/no_deep_destructure_in_props.rs
Adds may_contain_define_props_object_binding, contains_object_binding_declaration, declaration_keyword_at, skip_javascript_trivia, has_keyword_boundaries, and is_identifier_byte helpers to heuristically scan raw source text, and wires an early return into check_program that skips the AST visitor when the prefilter fails.
Test input update for comment handling
crates/vize_patina/src/rules/script/no_deep_destructure_in_props.rs
Updates the test_invalid_very_deep_destructure test input to include an inline block comment before the destructuring pattern, keeping the same expected warning count and snapshot.

Estimated code review effort: 3 (Moderate) | ~20 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title is concise and clearly matches the main change: adding a prefilter for prop destructure scanning.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
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.
✨ 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 agent/patina-prop-destructure-prefilter

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

@github-actions

github-actions Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

PR Benchmark

Base: 6d79c677ee6cd41b66f3beed3deb7a6417f2d419 Head: 0087d82d4229ac667f0df4679dbef973f317098e Input: 1,000 generated SFC files
Median of 10 measured run(s) after 2 warmup run(s). Times are shown in milliseconds to 0.001ms. Rate is head/base, so below 1.000x is faster. Regression threshold: 5%.
Budget: passed.

Task Base Head Rate Result
Compile SFC 189.895ms 198.037ms 1.043x stable
Lint 123.923ms 124.052ms 1.001x stable
Format 152.023ms 153.895ms 1.012x stable
Type check (1T) 772.100ms 777.513ms 1.007x stable
Type check (max) 774.798ms 782.359ms 1.010x stable
Raw run times

Compile SFC

  • Base: 193.125ms, 185.597ms, 190.279ms, 192.718ms, 191.021ms, 185.600ms, 188.380ms, 184.254ms, 198.106ms, 189.510ms
  • Head: 205.005ms, 199.408ms, 197.688ms, 201.611ms, 205.994ms, 181.864ms, 198.386ms, 196.000ms, 197.355ms, 197.054ms

Lint

  • Base: 122.625ms, 122.857ms, 123.531ms, 122.541ms, 122.017ms, 130.003ms, 135.597ms, 124.940ms, 124.315ms, 124.855ms
  • Head: 122.199ms, 121.773ms, 124.857ms, 130.185ms, 122.653ms, 124.154ms, 132.548ms, 138.043ms, 123.951ms, 122.681ms

Format

  • Base: 151.399ms, 158.312ms, 150.172ms, 155.877ms, 152.758ms, 161.073ms, 150.314ms, 152.647ms, 148.791ms, 148.280ms
  • Head: 155.288ms, 154.762ms, 155.675ms, 153.027ms, 156.667ms, 155.582ms, 151.897ms, 148.423ms, 147.210ms, 148.858ms

Type check (1T)

  • Base: 776.345ms, 788.202ms, 777.729ms, 771.888ms, 773.336ms, 768.302ms, 772.312ms, 754.930ms, 760.915ms, 770.394ms
  • Head: 788.835ms, 768.273ms, 780.056ms, 791.399ms, 798.733ms, 766.775ms, 774.971ms, 781.338ms, 764.925ms, 755.142ms

Type check (max)

  • Base: 781.299ms, 771.219ms, 751.391ms, 813.205ms, 816.342ms, 768.735ms, 774.717ms, 771.415ms, 789.946ms, 774.879ms
  • Head: 784.229ms, 762.669ms, 761.296ms, 809.734ms, 794.264ms, 801.126ms, 775.467ms, 769.460ms, 785.319ms, 780.490ms

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 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 `@crates/vize_patina/src/rules/script/no_deep_destructure_in_props.rs`:
- Around line 211-215: Avoid slicing source by byte index in
declaration_keyword_at, because contains_object_binding_declaration can pass a
non-char-boundary index and panic on UTF-8 input. Update declaration_keyword_at
to work on source.as_bytes() (or otherwise avoid source[index..]) while still
checking the same keyword matches and boundaries, and keep the logic aligned
with has_keyword_boundaries and the existing contains_object_binding_declaration
flow.
🪄 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: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: f035c801-1d60-406b-b5f6-4be291e017ad

📥 Commits

Reviewing files that changed from the base of the PR and between 6d79c67 and 0087d82.

📒 Files selected for processing (1)
  • crates/vize_patina/src/rules/script/no_deep_destructure_in_props.rs
📜 Review details
⏰ Context from checks skipped due to timeout. (16)
  • GitHub Check: pr-benchmark
  • GitHub Check: dialect-guard
  • GitHub Check: criterion-ab
  • GitHub Check: cargo-semver-checks (vize_fresco)
  • GitHub Check: cargo-semver-checks (vize_atelier_vapor)
  • GitHub Check: cargo-semver-checks (vize_atelier_core)
  • GitHub Check: cargo-semver-checks (vize_atelier_dom)
  • GitHub Check: editor-extensions
  • GitHub Check: clippy-and-test
  • GitHub Check: vue-parity
  • GitHub Check: test-scripts
  • GitHub Check: test-js-packages
  • GitHub Check: build-js-packages
  • GitHub Check: cargo-semver-checks (vize_carton)
  • GitHub Check: tool-benchmark
  • GitHub Check: Analyze (javascript-typescript)
🧰 Additional context used
📓 Path-based instructions (1)
crates/**

⚙️ CodeRabbit configuration file

crates/**: Focus on parser/compiler correctness, source locations, UTF-8/UTF-16 offset handling, and panic-free LSP behavior. Flag changes that only work for small fixtures but break real Vue/Nuxt projects.

Files:

  • crates/vize_patina/src/rules/script/no_deep_destructure_in_props.rs
🔇 Additional comments (2)
crates/vize_patina/src/rules/script/no_deep_destructure_in_props.rs (2)

73-80: LGTM!


303-303: LGTM!

Comment on lines +211 to +215
fn declaration_keyword_at(source: &str, index: usize) -> Option<&'static str> {
["const", "let", "var"].into_iter().find(|keyword| {
source[index..].starts_with(keyword) && has_keyword_boundaries(source, index, keyword)
})
}

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🩺 Stability & Availability | 🔴 Critical | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Reproduce the mid-char slice panic path: any multi-byte char makes `index` land off-boundary.
rg -nP 'source\[index\.\.\]|index \+= 1' crates/vize_patina/src/rules/script/no_deep_destructure_in_props.rs

Repository: ubugeeei-prod/vize

Length of output: 283


🏁 Script executed:

#!/bin/bash
set -euo pipefail

# Inspect the relevant functions with line numbers.
sed -n '175,225p' crates/vize_patina/src/rules/script/no_deep_destructure_in_props.rs

# Run a small read-only probe to see whether the current `declaration_keyword_at`
# pattern panics when `index` lands inside a multi-byte UTF-8 character.
python3 - <<'PY'
source = "aéconst"
for i in range(len(source.encode("utf-8"))):
    try:
        _ = source[i:]
        ok = True
    except Exception as e:
        ok = False
    print(i, ok)
PY

Repository: ubugeeei-prod/vize

Length of output: 1623


🏁 Script executed:

#!/bin/bash
set -euo pipefail

# Show whether Rust slicing panics on a non-char boundary and whether byte-by-byte
# scanning can hit such a boundary for a multibyte string.
cat >/tmp/utf8_slice_probe.rs <<'RS'
fn main() {
    let s = "aéconst"; // "é" is two bytes in UTF-8
    let bytes = s.as_bytes();

    for i in 0..bytes.len() {
        let res = std::panic::catch_unwind(|| {
            let _ = &s[i..];
        });
        println!("{i}: {}", if res.is_ok() { "ok" } else { "panic" });
    }
}
RS

if command -v rustc >/dev/null 2>&1; then
    rustc /tmp/utf8_slice_probe.rs -O -o /tmp/utf8_slice_probe
    /tmp/utf8_slice_probe
else
    echo "rustc unavailable"
fi

Repository: ubugeeei-prod/vize

Length of output: 174


Avoid slicing source by byte index here contains_object_binding_declaration advances index one byte at a time, but declaration_keyword_at does source[index..]. Any multibyte UTF-8 character can put index on a non-char boundary and panic the linter/LSP; compare against source.as_bytes() instead.

🤖 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 `@crates/vize_patina/src/rules/script/no_deep_destructure_in_props.rs` around
lines 211 - 215, Avoid slicing source by byte index in declaration_keyword_at,
because contains_object_binding_declaration can pass a non-char-boundary index
and panic on UTF-8 input. Update declaration_keyword_at to work on
source.as_bytes() (or otherwise avoid source[index..]) while still checking the
same keyword matches and boundaries, and keep the logic aligned with
has_keyword_boundaries and the existing contains_object_binding_declaration
flow.

Source: Path instructions

@github-actions

github-actions Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Detailed Test Report

Commit: 0087d82d4229
Workflow: Check #28963421367
Attempt: 1
Overall: in_progress (1 in_progress, 3 skipped, 25 success)
Wall Time: 5m 45s

Area Summary

Area Jobs Result Runner Time
JS / TS 1 success 48s
Rust 3 success 4m 59s
E2E / VRT 1 success 3m 4s
Infra 1 skipped 0s
Other 23 in_progress 24m 52s

Test Inventory

Total tracked cases: 8620 across 1212 files.

Area Files Cases
Compiler Fixtures 43 1270
E2E 16 149
JS / TS 254 1064
Rust 894 6126
VRT 5 11
Files
Area File Cases
Compiler Fixtures tests/fixtures/errors/parse-errors.pkl 38
Compiler Fixtures tests/fixtures/errors/transform-errors.pkl 44
Compiler Fixtures tests/fixtures/parser/attribute.pkl 16
Compiler Fixtures tests/fixtures/parser/comment.pkl 55
Compiler Fixtures tests/fixtures/parser/directive.pkl 143
Compiler Fixtures tests/fixtures/parser/element.pkl 35
Compiler Fixtures tests/fixtures/parser/interpolation.pkl 85
Compiler Fixtures tests/fixtures/parser/text.pkl 68
Compiler Fixtures tests/fixtures/sfc/basic.pkl 13
Compiler Fixtures tests/fixtures/sfc/define-model.pkl 17
Compiler Fixtures tests/fixtures/sfc/directives.pkl 5
Compiler Fixtures tests/fixtures/sfc/options-api.pkl 39
Compiler Fixtures tests/fixtures/sfc/patches.pkl 58
Compiler Fixtures tests/fixtures/sfc/props-destructure.pkl 4
Compiler Fixtures tests/fixtures/sfc/script-setup-advanced.pkl 6
Compiler Fixtures tests/fixtures/sfc/script-setup.pkl 69
Compiler Fixtures tests/fixtures/vapor/component.pkl 17
Compiler Fixtures tests/fixtures/vapor/edge-cases.pkl 4
Compiler Fixtures tests/fixtures/vapor/element.pkl 16
Compiler Fixtures tests/fixtures/vapor/parity-core-directives.pkl 8
Compiler Fixtures tests/fixtures/vapor/v-bind.pkl 12
Compiler Fixtures tests/fixtures/vapor/v-for.pkl 10
Compiler Fixtures tests/fixtures/vapor/v-if.pkl 7
Compiler Fixtures tests/fixtures/vapor/v-model.pkl 13
Compiler Fixtures tests/fixtures/vapor/v-on.pkl 14
Compiler Fixtures tests/fixtures/vapor/v-show.pkl 6
Compiler Fixtures tests/fixtures/vapor/v-slot.pkl 10
Compiler Fixtures tests/fixtures/vdom/component.pkl 45
Compiler Fixtures tests/fixtures/vdom/directives.pkl 24
Compiler Fixtures tests/fixtures/vdom/dynamic-component.pkl 9
Compiler Fixtures tests/fixtures/vdom/element.pkl 44
Compiler Fixtures tests/fixtures/vdom/hoisting.pkl 20
Compiler Fixtures tests/fixtures/vdom/html-entities.pkl 9
Compiler Fixtures tests/fixtures/vdom/parity-core-directives.pkl 8
Compiler Fixtures tests/fixtures/vdom/patch-flags.pkl 32
Compiler Fixtures tests/fixtures/vdom/v-bind.pkl 56
Compiler Fixtures tests/fixtures/vdom/v-for.pkl 28
Compiler Fixtures tests/fixtures/vdom/v-if.pkl 25
Compiler Fixtures tests/fixtures/vdom/v-model.pkl 31
Compiler Fixtures tests/fixtures/vdom/v-on.pkl 62
Compiler Fixtures tests/fixtures/vdom/v-once.pkl 16
Compiler Fixtures tests/fixtures/vdom/v-show.pkl 19
Compiler Fixtures tests/fixtures/vdom/v-slot.pkl 30
E2E playground/e2e/atelier-output-tabs.test.ts 1
E2E playground/e2e/components.test.ts 16
E2E playground/e2e/css-compile.test.ts 17
E2E playground/e2e/edge-cases.test.ts 26
E2E playground/e2e/sfc-compile.test.ts 21
E2E playground/e2e/vite-plugin-vapor.test.ts 12
E2E playground/e2e/wasm.test.ts 12
E2E tests/app/dev/elk.spec.ts 9
E2E tests/app/dev/misskey.spec.ts 7
E2E tests/app/dev/npmx.spec.ts 14
E2E tests/app/dev/nuxt-ui.spec.ts 3
E2E tests/app/dev/vuefes.spec.ts 7
E2E tests/app/preview/elk.ts 1
E2E tests/app/preview/misskey.ts 1
E2E tests/app/preview/npmx.ts 1
E2E tests/app/preview/vuefes.ts 1
JS / TS docs/theme/background.test.ts 2
JS / TS docs/theme/navigation.test.js 4
JS / TS docs/theme/syntax-highlight.test.js 8
JS / TS npm/builder/rspack/src/integration.test.ts 2
JS / TS npm/builder/rspack/src/jsx.test.ts 3
JS / TS npm/builder/rspack/src/plugin/index.test.ts 8
JS / TS npm/builder/rspack/src/plugin/ruleCloning.test.ts 15
JS / TS npm/builder/rspack/src/scoped-css.test.ts 5
JS / TS npm/builder/rspack/src/shared/jsx-compile.test.ts 4
JS / TS npm/builder/rspack/src/shared/nativeCss.test.ts 10
JS / TS npm/builder/rspack/src/shared/output.test.ts 4
JS / TS npm/builder/rspack/src/shared/utils.test.ts 35
JS / TS npm/builder/rspack/src/vapor.test.ts 3
JS / TS npm/builder/unplugin/src/core.test.ts 1
JS / TS npm/builder/unplugin/src/css-preprocessors.test.ts 5
JS / TS npm/builder/unplugin/src/esbuild-hooks.test.ts 13
JS / TS npm/builder/unplugin/src/esbuild.test.ts 1
JS / TS npm/builder/unplugin/src/filter-edge.test.ts 10
JS / TS npm/builder/unplugin/src/filter.test.ts 3
JS / TS npm/builder/unplugin/src/jsx.test.ts 6
JS / TS npm/builder/unplugin/src/normalize-options.test.ts 15
JS / TS npm/builder/unplugin/src/plugin-hooks.test.ts 11
JS / TS npm/builder/unplugin/src/request.test.ts 16
JS / TS npm/builder/unplugin/src/rolldown.test.ts 6
JS / TS npm/builder/unplugin/src/rollup.test.ts 1
JS / TS npm/builder/unplugin/src/strip-types-edge.test.ts 9
JS / TS npm/builder/unplugin/src/strip-types.test.ts 1
JS / TS npm/builder/unplugin/src/style-output.test.ts 18
JS / TS npm/builder/unplugin/src/style.test.ts 1
JS / TS npm/builder/unplugin/src/template-preprocessors.test.ts 4
JS / TS npm/builder/unplugin/src/vapor.test.ts 3
JS / TS npm/builder/unplugin/src/webpack-cjs.test.ts 3
JS / TS npm/builder/unplugin/src/webpack-defines-edge.test.ts 11
JS / TS npm/builder/unplugin/src/webpack.test.ts 2
JS / TS npm/builder/vite-musea/src/api-routes/arts-order.test.ts 1
JS / TS npm/builder/vite-musea/src/api-routes/handler-palette.test.ts 1
JS / TS npm/builder/vite-musea/src/api-routes/index.projectroot.test.ts 2
JS / TS npm/builder/vite-musea/src/api-routes/index.test.ts 6
JS / TS npm/builder/vite-musea/src/art-module-helper-collisions.test.ts 1
JS / TS npm/builder/vite-musea/src/art-module.test.ts 10
JS / TS npm/builder/vite-musea/src/art-order.test.ts 1
JS / TS npm/builder/vite-musea/src/autogen/generate.test.ts 1
JS / TS npm/builder/vite-musea/src/autogen/native-shape.test.ts 1
JS / TS npm/builder/vite-musea/src/cli/commands.test.ts 4
JS / TS npm/builder/vite-musea/src/cli/utils.test.ts 1
JS / TS npm/builder/vite-musea/src/gallery/template.test.ts 2
JS / TS npm/builder/vite-musea/src/native-loader.test.ts 1
JS / TS npm/builder/vite-musea/src/palette-state.test.ts 2
JS / TS npm/builder/vite-musea/src/plugin/art-processing.test.ts 2
JS / TS npm/builder/vite-musea/src/plugin/index.test.ts 7
JS / TS npm/builder/vite-musea/src/plugin/storybook-inputs.test.ts 3
JS / TS npm/builder/vite-musea/src/plugin/virtual-transform.test.ts 2
JS / TS npm/builder/vite-musea/src/plugin/vue-alias.test.ts 3
JS / TS npm/builder/vite-musea/src/plugin/watch.test.ts 3
JS / TS npm/builder/vite-musea/src/preview-vue2.test.ts 2
JS / TS npm/builder/vite-musea/src/preview/html.test.ts 1
JS / TS npm/builder/vite-musea/src/security.test.ts 6
JS / TS npm/builder/vite-musea/src/server-middleware.test.ts 4
JS / TS npm/builder/vite-musea/src/static-build-vue2.test.ts 1
JS / TS npm/builder/vite-musea/src/static-build.test.ts 5
JS / TS npm/builder/vite-musea/src/static-export.test.ts 6
JS / TS npm/builder/vite-musea/src/tokens.test.ts 7
JS / TS npm/builder/vite-musea/src/tokens/css-length.test.ts 1
JS / TS npm/builder/vite-musea/src/tokens/preview.test.ts 4
JS / TS npm/builder/vite-musea/src/utils.test.ts 5
JS / TS npm/builder/vite/src/output-ast.test.ts 2
JS / TS npm/builder/vite/src/utils-filter.test.ts 4
JS / TS npm/builder/vite/src/utils.test.ts 17
JS / TS npm/framework/musea-nuxt/src/mocks.test.ts 5
JS / TS npm/framework/musea-nuxt/src/plugin.test.ts 3
JS / TS npm/framework/nuxt/src/components-edge.test.ts 18
JS / TS npm/framework/nuxt/src/components.test.ts 8
JS / TS npm/framework/nuxt/src/dev-html-edge.test.ts 11
JS / TS npm/framework/nuxt/src/i18n-edge.test.ts 10
JS / TS npm/framework/nuxt/src/index-nuxt2-musea.test.ts 1
JS / TS npm/framework/nuxt/src/index.test.ts 6
JS / TS npm/framework/nuxt/src/musea-components.test.ts 3
JS / TS npm/framework/nuxt/src/options-edge.test.ts 16
JS / TS npm/framework/nuxt/src/unocss-edge.test.ts 11
JS / TS npm/framework/nuxt/src/unocss.test.ts 3
JS / TS npm/framework/nuxt/src/utils-edge.test.ts 24
JS / TS npm/mcp-musea/src/musea.test.ts 1
JS / TS npm/mcp-musea/src/tools/handler/index.test.ts 2
JS / TS npm/oxint/src/cli/files.test.ts 3
JS / TS npm/oxint/src/cli/output.test.ts 3
JS / TS npm/oxint/src/configs.ts 5
JS / TS npm/oxint/src/native.ts 3
JS / TS npm/oxint/src/settings.ts 5
JS / TS npm/oxint/src/workaround.ts 3
JS / TS playground/src/features/atelier/codeOutputs.test.ts 4
JS / TS playground/src/features/atelier/formatters.test.ts 2
JS / TS playground/src/features/cross-file/utils.test.ts 3
JS / TS playground/src/features/inspector/compareCompilers.test.ts 2
JS / TS playground/src/features/inspector/diffRows.test.ts 4
JS / TS playground/src/features/inspector/share.test.ts 4
JS / TS playground/src/simple.test.ts 2
JS / TS playground/src/utils/position.test.ts 2
JS / TS tests/snapshots/build/elk.ts 2
JS / TS tests/snapshots/build/generic.ts 1
JS / TS tests/snapshots/build/misskey.ts 2
JS / TS tests/snapshots/build/npmx.ts 2
JS / TS tests/snapshots/build/vuefes.ts 2
JS / TS tests/snapshots/check/ant-design-vue.ts 1
JS / TS tests/snapshots/check/class-component.ts 2
JS / TS tests/snapshots/check/compiler-macros.ts 1
JS / TS tests/snapshots/check/directus.ts 1
JS / TS tests/snapshots/check/ecosystem-products.ts 1
JS / TS tests/snapshots/check/element-plus.ts 1
JS / TS tests/snapshots/check/elk.ts 1
JS / TS tests/snapshots/check/frontend-phpcon.ts 1
JS / TS tests/snapshots/check/generic-build.ts 1
JS / TS tests/snapshots/check/hoppscotch.ts 1
JS / TS tests/snapshots/check/misskey.ts 1
JS / TS tests/snapshots/check/naive-ui.ts 1
JS / TS tests/snapshots/check/npmx.ts 1
JS / TS tests/snapshots/check/nuxt-parity.ts 4
JS / TS tests/snapshots/check/nuxt-ui.ts 1
JS / TS tests/snapshots/check/options-api.ts 3
JS / TS tests/snapshots/check/primevue.ts 1
JS / TS tests/snapshots/check/reka-ui.ts 1
JS / TS tests/snapshots/check/style-preprocessors.ts 1
JS / TS tests/snapshots/check/toolchain-parity.ts 2
JS / TS tests/snapshots/check/typecheck-errors.ts 1
JS / TS tests/snapshots/check/typecheck-vue-imports.ts 1
JS / TS tests/snapshots/check/voicevox.ts 1
JS / TS tests/snapshots/check/vue-vben-admin.ts 1
JS / TS tests/snapshots/check/vuefes.ts 1
JS / TS tests/snapshots/check/vuetify.ts 1
JS / TS tests/snapshots/check/zz-intentional-errors-fixtures.ts 1
JS / TS tests/snapshots/check/zz-intentional-errors-realworld.ts 2
JS / TS tests/snapshots/inspect/elk.ts 1
JS / TS tests/snapshots/inspect/npmx.ts 1
JS / TS tests/snapshots/inspect/vuefes.ts 1
JS / TS tests/snapshots/lint/ant-design-vue.ts 1
JS / TS tests/snapshots/lint/directus.ts 1
JS / TS tests/snapshots/lint/element-plus.ts 1
JS / TS tests/snapshots/lint/elk.ts 1
JS / TS tests/snapshots/lint/hoppscotch.ts 1
JS / TS tests/snapshots/lint/misskey.ts 1
JS / TS tests/snapshots/lint/naive-ui.ts 1
JS / TS tests/snapshots/lint/npmx.ts 1
JS / TS tests/snapshots/lint/nuxt-ui.ts 1
JS / TS tests/snapshots/lint/primevue.ts 1
JS / TS tests/snapshots/lint/reka-ui.ts 1
JS / TS tests/snapshots/lint/voicevox.ts 1
JS / TS tests/snapshots/lint/vue-vben-admin.ts 1
JS / TS tests/snapshots/lint/vuefes.ts 1
JS / TS tests/snapshots/lint/vuetify.ts 1
JS / TS tests/tooling/benchmark-budget.test.ts 6
JS / TS tests/tooling/benchmark-generator.test.ts 2
JS / TS tests/tooling/bundler-plugin-manifests.test.ts 5
JS / TS tests/tooling/cli-check-args.test.ts 6
JS / TS tests/tooling/cli-check-collection.test.ts 4
JS / TS tests/tooling/cli-check-contract.test.ts 6
JS / TS tests/tooling/cli-check-diagnostics.test.ts 8
JS / TS tests/tooling/cli-check-json-shape.test.ts 5
JS / TS tests/tooling/cli-fmt-contract.test.ts 5
JS / TS tests/tooling/cli-lint-contract.test.ts 7
JS / TS tests/tooling/cli-top-level.test.ts 5
JS / TS tests/tooling/compiler-fixture-diff-report.test.ts 2
JS / TS tests/tooling/config-alias-entries.test.ts 6
JS / TS tests/tooling/config-json-errors.test.ts 4
JS / TS tests/tooling/config-json-shape.test.ts 7
JS / TS tests/tooling/config-loading.test.ts 4
JS / TS tests/tooling/config-resolution.test.ts 10
JS / TS tests/tooling/config-types.test.ts 1
JS / TS tests/tooling/dev-app.test.ts 4
JS / TS tests/tooling/docs-browser.test.ts 2
JS / TS tests/tooling/docs-stability.test.ts 1
JS / TS tests/tooling/e2e-binaries.test.ts 3
JS / TS tests/tooling/e2e-tasks.test.ts 2
JS / TS tests/tooling/e2e-workflow.test.ts 1
JS / TS tests/tooling/ecosystem-product-coverage.test.ts 2
JS / TS tests/tooling/editor-integrations-consistency.test.ts 2
JS / TS tests/tooling/editor-integrations-emacs.test.ts 5
JS / TS tests/tooling/editor-integrations-helix.test.ts 4
JS / TS tests/tooling/editor-integrations-neovim.test.ts 4
JS / TS tests/tooling/editor-integrations-vim.test.ts 4
JS / TS tests/tooling/editor-integrations-vscode-art.test.ts 2
JS / TS tests/tooling/editor-integrations-zed.test.ts 4
JS / TS tests/tooling/editor-integrations.test.ts 6
JS / TS tests/tooling/editor-language-configuration.test.ts 7
JS / TS tests/tooling/editor-lsp-adapters.test.ts 1
JS / TS tests/tooling/editor-profiles-consistency.test.ts 3
JS / TS tests/tooling/fuzz-setup.test.ts 4
JS / TS tests/tooling/github-comments.test.ts 2
JS / TS tests/tooling/github-workflows-benchmark.test.ts 4
JS / TS tests/tooling/github-workflows-check.test.ts 11
JS / TS tests/tooling/github-workflows-release-build.test.ts 12
JS / TS tests/tooling/github-workflows-release-publish.test.ts 8
JS / TS tests/tooling/github-workflows-setup.test.ts 11
JS / TS tests/tooling/github-workflows.test.ts 10
JS / TS tests/tooling/github-zig-musl-linkers.test.ts 2
JS / TS tests/tooling/issue-pr-title-policy.test.ts 3
JS / TS tests/tooling/jsx-ecosystem-fixtures.test.ts 4
JS / TS tests/tooling/language-engineering-practices.test.ts 3
JS / TS tests/tooling/lsp-authoring-core.test.ts 1
JS / TS tests/tooling/lsp-capabilities.test.ts 3
JS / TS tests/tooling/lsp-definition-navigation.test.ts 1
JS / TS tests/tooling/lsp-diagnostics-lifecycle.test.ts 4
JS / TS tests/tooling/lsp-document-features.test.ts 7
JS / TS tests/tooling/lsp-document-highlight.test.ts 4
JS / TS tests/tooling/lsp-document-link.test.ts 2
JS / TS tests/tooling/lsp-editor-feature-isolation.test.ts 15
JS / TS tests/tooling/lsp-editor-feature-matrix.test.ts 11
JS / TS tests/tooling/lsp-editor-feature-routing.test.ts 1
JS / TS tests/tooling/lsp-editor-production-gates.test.ts 1
JS / TS tests/tooling/lsp-file-rename-workspace.test.ts 4
JS / TS tests/tooling/lsp-hover-template.test.ts 1
JS / TS tests/tooling/lsp-inlay-codelens.test.ts 3
JS / TS tests/tooling/lsp-protocol-resilience.test.ts 5
JS / TS tests/tooling/lsp-rename-guards.test.ts 2
JS / TS tests/tooling/lsp-roadmap-completion.test.ts 1
JS / TS tests/tooling/lsp-smoke.test.ts 6
JS / TS tests/tooling/lsp-template-completion.test.ts 1
JS / TS tests/tooling/lsp-workspace-semantic.test.ts 3
JS / TS tests/tooling/moonbit-generate-rule-types.test.ts 1
JS / TS tests/tooling/moonbit-github-scripts.test.ts 9
JS / TS tests/tooling/moonbit-helper.test.ts 2
JS / TS tests/tooling/moonbit-postprocess-types.test.ts 1
JS / TS tests/tooling/moonbit-publish-crates.test.ts 6
JS / TS tests/tooling/moonbit-publish-open-vsx.test.ts 2
JS / TS tests/tooling/moonbit-publish.test.ts 11
JS / TS tests/tooling/moonbit-release.test.ts 6
JS / TS tests/tooling/moonbit-rust-source-coverage.test.ts 4
JS / TS tests/tooling/moonbit-warnings.test.ts 1
JS / TS tests/tooling/native-legacy-build.test.ts 2
JS / TS tests/tooling/native-loader.test.ts 2
JS / TS tests/tooling/native-smoke-workflow.test.ts 1
JS / TS tests/tooling/node-engine-matrix.test.ts 3
JS / TS tests/tooling/normalize-global-types.test.ts 4
JS / TS tests/tooling/package-manifests.test.ts 17
JS / TS tests/tooling/playwright-app-config.test.ts 1
JS / TS tests/tooling/playwright-vrt-config.test.ts 1
JS / TS tests/tooling/production-readiness.test.ts 3
JS / TS tests/tooling/readme-boundary.test.ts 2
JS / TS tests/tooling/realworld-snapshot-scripts.test.ts 1
JS / TS tests/tooling/release-changelog.test.ts 2
JS / TS tests/tooling/release-package-versions.test.ts 1
JS / TS tests/tooling/release-platforms.test.ts 3
JS / TS tests/tooling/release-readiness.test.ts 4
JS / TS tests/tooling/release-smoke-install.test.ts 6
JS / TS tests/tooling/repo-governance.test.ts 5
JS / TS tests/tooling/runtime-and-build-stack.test.ts 5
JS / TS tests/tooling/snapshot-baselines.test.ts 3
JS / TS tests/tooling/source-file-lengths.test.ts 3
JS / TS tests/tooling/task-shell.test.ts 13
JS / TS tests/tooling/tool-benchmark.test.ts 2
JS / TS tests/tooling/vscode-extension-core-behavior.test.ts 15
JS / TS tests/tooling/vscode-extension-manifest.test.ts 9
JS / TS tests/tooling/vscode-typescript-vue-plugin.test.ts 9
JS / TS tests/tooling/vscode-vize-template-grammar.test.ts 4
JS / TS tests/tooling/vue-ecosystem-fixtures.test.ts 6
JS / TS tests/tooling/wasm-package-smoke.test.ts 2
Rust crates/vize_armature/src/legacy.rs 7
Rust crates/vize_armature/src/parser/tests.rs 95
Rust crates/vize_armature/src/tokenizer/entity_decode.rs 11
Rust crates/vize_armature/src/tokenizer/tests.rs 72
Rust crates/vize_atelier_core/src/codegen/expression/generate.rs 6
Rust crates/vize_atelier_core/src/codegen/helpers.rs 5
Rust crates/vize_atelier_core/src/codegen/slots/tests.rs 7
Rust crates/vize_atelier_core/src/codegen/source_map.rs 9
Rust crates/vize_atelier_core/src/codegen/tests.rs 68
Rust crates/vize_atelier_core/src/codegen/v_for/helpers.rs 4
Rust crates/vize_atelier_core/src/lane/tests.rs 12
Rust crates/vize_atelier_core/src/runtime_helpers.rs 2
Rust crates/vize_atelier_core/src/test_macros.rs 9
Rust crates/vize_atelier_core/src/transform/element.rs 7
Rust crates/vize_atelier_core/src/transform/structural.rs 3
Rust crates/vize_atelier_core/src/transforms/hoist_static.rs 11
Rust crates/vize_atelier_core/src/transforms/legacy_filters.rs 15
Rust crates/vize_atelier_core/src/transforms/legacy.rs 16
Rust crates/vize_atelier_core/src/transforms/transform_element.rs 2
Rust crates/vize_atelier_core/src/transforms/transform_expression.rs 11
Rust crates/vize_atelier_core/src/transforms/transform_expression/inline_handler.rs 2
Rust crates/vize_atelier_core/src/transforms/transform_expression/prefix.rs 2
Rust crates/vize_atelier_core/src/transforms/transform_expression/typescript.rs 7
Rust crates/vize_atelier_core/src/transforms/transform_text.rs 3
Rust crates/vize_atelier_core/src/transforms/v_bind.rs 1
Rust crates/vize_atelier_core/src/transforms/v_for.rs 9
Rust crates/vize_atelier_core/src/transforms/v_if.rs 2
Rust crates/vize_atelier_core/src/transforms/v_memo.rs 2
Rust crates/vize_atelier_core/src/transforms/v_model.rs 2
Rust crates/vize_atelier_core/src/transforms/v_on.rs 4
Rust crates/vize_atelier_core/src/transforms/v_once.rs 2
Rust crates/vize_atelier_core/src/transforms/v_slot.rs 14
Rust crates/vize_atelier_core/tests/conditional_named_slots.rs 2
Rust crates/vize_atelier_core/tests/legacy_event_modifiers.rs 9
Rust crates/vize_atelier_core/tests/legacy_filters.rs 11
Rust crates/vize_atelier_core/tests/legacy_template_sugar.rs 10
Rust crates/vize_atelier_core/tests/scoped_slot_shadowing.rs 1
Rust crates/vize_atelier_dom/src/options.rs 7
Rust crates/vize_atelier_dom/src/steps/v_html.rs 5
Rust crates/vize_atelier_dom/src/steps/v_model.rs 7
Rust crates/vize_atelier_dom/src/steps/v_on.rs 10
Rust crates/vize_atelier_dom/src/steps/v_show.rs 5
Rust crates/vize_atelier_dom/src/steps/v_text.rs 6
Rust crates/vize_atelier_dom/src/tests.rs 27
Rust crates/vize_atelier_dom/tests/dom_snapshot.rs 24
Rust crates/vize_atelier_dom/tests/invalid_expression_diagnostics.rs 6
Rust crates/vize_atelier_dom/tests/setup_component_unref.rs 2
Rust crates/vize_atelier_jsx/src/compile.rs 5
Rust crates/vize_atelier_jsx/src/compile/render_exports.rs 2
Rust crates/vize_atelier_jsx/src/diagnostics.rs 1
Rust crates/vize_atelier_jsx/src/lang.rs 4
Rust crates/vize_atelier_jsx/src/lower/text.rs 5
Rust crates/vize_atelier_jsx/src/mode.rs 7
Rust crates/vize_atelier_jsx/src/parse.rs 7
Rust crates/vize_atelier_jsx/src/span.rs 4
Rust crates/vize_atelier_jsx/tests/adversarial_snapshots.rs 9
Rust crates/vize_atelier_jsx/tests/analysis.rs 5
Rust crates/vize_atelier_jsx/tests/attributes.rs 11
Rust crates/vize_atelier_jsx/tests/children.rs 8
Rust crates/vize_atelier_jsx/tests/compile.rs 11
Rust crates/vize_atelier_jsx/tests/components.rs 7
Rust crates/vize_atelier_jsx/tests/control_flow.rs 2
Rust crates/vize_atelier_jsx/tests/diagnostics.rs 6
Rust crates/vize_atelier_jsx/tests/directives.rs 8
Rust crates/vize_atelier_jsx/tests/ecosystem_smoke.rs 1
Rust crates/vize_atelier_jsx/tests/edge_cases.rs 5
Rust crates/vize_atelier_jsx/tests/elements.rs 10
Rust crates/vize_atelier_jsx/tests/events.rs 2
Rust crates/vize_atelier_jsx/tests/fragments.rs 4
Rust crates/vize_atelier_jsx/tests/modes.rs 13
Rust crates/vize_atelier_jsx/tests/parity_tsx.rs 7
Rust crates/vize_atelier_jsx/tests/parity_vapor.rs 3
Rust crates/vize_atelier_jsx/tests/parity_vdom.rs 1
Rust crates/vize_atelier_jsx/tests/slots.rs 4
Rust crates/vize_atelier_jsx/tests/ssr.rs 3
Rust crates/vize_atelier_jsx/tests/style.rs 9
Rust crates/vize_atelier_jsx/tests/tsx.rs 5
Rust crates/vize_atelier_jsx/tests/vapor_ssr.rs 5
Rust crates/vize_atelier_jsx/tests/vapor.rs 6
Rust crates/vize_atelier_jsx/tests/vdom.rs 5
Rust crates/vize_atelier_sfc/src/bundler/tests.rs 11
Rust crates/vize_atelier_sfc/src/compile_script/artifacts.rs 10
Rust crates/vize_atelier_sfc/src/compile_script/import_utils.rs 6
Rust crates/vize_atelier_sfc/src/compile_script/inline/compiler/props.rs 1
Rust crates/vize_atelier_sfc/src/compile_script/inline/compiler/setup_emit.rs 4
Rust crates/vize_atelier_sfc/src/compile_script/inline/define_model_tests.rs 1
Rust crates/vize_atelier_sfc/src/compile_script/inline/tests.rs 27
Rust crates/vize_atelier_sfc/src/compile_script/inline/type_handling.rs 3
Rust crates/vize_atelier_sfc/src/compile_script/lazy_hydration.rs 3
Rust crates/vize_atelier_sfc/src/compile_script/macros.rs 5
Rust crates/vize_atelier_sfc/src/compile_script/props/tests.rs 11
Rust crates/vize_atelier_sfc/src/compile_script/statement_sections.rs 6
Rust crates/vize_atelier_sfc/src/compile_script/tests.rs 47
Rust crates/vize_atelier_sfc/src/compile_template/tests.rs 27
Rust crates/vize_atelier_sfc/src/compile/tests.rs 88
Rust crates/vize_atelier_sfc/src/compile/tests/define_props_regressions.rs 4
Rust crates/vize_atelier_sfc/src/compile/tests/options_api_events.rs 2
Rust crates/vize_atelier_sfc/src/croquis.rs 1
Rust crates/vize_atelier_sfc/src/css/tests.rs 31
Rust crates/vize_atelier_sfc/src/css/tests/scoped_regressions.rs 5
Rust crates/vize_atelier_sfc/src/lib.rs 14
Rust crates/vize_atelier_sfc/src/parse/tests.rs 33
Rust crates/vize_atelier_sfc/src/rewrite_default.rs 6
Rust crates/vize_atelier_sfc/src/script/analyze_script_bindings.rs 10
Rust crates/vize_atelier_sfc/src/script/context.rs 12
Rust crates/vize_atelier_sfc/src/script/context/external_types.rs 14
Rust crates/vize_atelier_sfc/src/script/context/props.rs 1
Rust crates/vize_atelier_sfc/src/script/define_emits.rs 5
Rust crates/vize_atelier_sfc/src/script/define_expose.rs 1
Rust crates/vize_atelier_sfc/src/script/define_model.rs 3
Rust crates/vize_atelier_sfc/src/script/define_options.rs 1
Rust crates/vize_atelier_sfc/src/script/define_props_destructure/tests.rs 48
Rust crates/vize_atelier_sfc/src/script/define_props.rs 3
Rust crates/vize_atelier_sfc/src/script/define_slots.rs 2
Rust crates/vize_atelier_sfc/src/script/import_usage_check.rs 15
Rust crates/vize_atelier_sfc/src/script/type_resolution.rs 7
Rust crates/vize_atelier_sfc/src/script/utils.rs 4
Rust crates/vize_atelier_sfc/src/snapshot_tests.rs 8
Rust crates/vize_atelier_sfc/src/style.rs 26
Rust crates/vize_atelier_sfc/src/vite_plugin/css_scope.rs 12
Rust crates/vize_atelier_sfc/src/vite_plugin/css.rs 3
Rust crates/vize_atelier_sfc/src/vite_plugin/hmr.rs 2
Rust crates/vize_atelier_sfc/src/vite_plugin/js_string.rs 1
Rust crates/vize_atelier_sfc/src/vite_plugin/resolver.rs 6
Rust crates/vize_atelier_sfc/src/vite_plugin/tests.rs 10
Rust crates/vize_atelier_sfc/src/vite_plugin/tests/middleware.rs 2
Rust crates/vize_atelier_sfc/src/vite_plugin/tests/precompile.rs 1
Rust crates/vize_atelier_sfc/src/vite_plugin/transform.rs 7
Rust crates/vize_atelier_sfc/tests/allocation_budget.rs 1
Rust crates/vize_atelier_sfc/tests/empty_component.rs 1
Rust crates/vize_atelier_sfc/tests/scoped_slot_shadowing.rs 2
Rust crates/vize_atelier_sfc/tests/setup_component_unref.rs 1
Rust crates/vize_atelier_sfc/tests/vite_css_scope.rs 1
Rust crates/vize_atelier_ssr/src/codegen.rs 7
Rust crates/vize_atelier_ssr/src/errors.rs 1
Rust crates/vize_atelier_ssr/src/lib.rs 31
Rust crates/vize_atelier_ssr/src/options.rs 1
Rust crates/vize_atelier_ssr/src/steps.rs 11
Rust crates/vize_atelier_ssr/tests/setup_component_parity.rs 1
Rust crates/vize_atelier_ssr/tests/ssr_snapshot.rs 76
Rust crates/vize_atelier_vapor/src/generate.rs 3
Rust crates/vize_atelier_vapor/src/generate/destructure.rs 2
Rust crates/vize_atelier_vapor/src/generate/operations/for_loop.rs 1
Rust crates/vize_atelier_vapor/src/generators/block.rs 2
Rust crates/vize_atelier_vapor/src/generators/component.rs 3
Rust crates/vize_atelier_vapor/src/generators/directive.rs 4
Rust crates/vize_atelier_vapor/src/generators/event.rs 3
Rust crates/vize_atelier_vapor/src/generators/for_node.rs 3
Rust crates/vize_atelier_vapor/src/generators/generate_text.rs 5
Rust crates/vize_atelier_vapor/src/generators/if_node.rs 2
Rust crates/vize_atelier_vapor/src/generators/prop.rs 3
Rust crates/vize_atelier_vapor/src/lower.rs 2
Rust crates/vize_atelier_vapor/src/tests_dotted_slots.rs 1
Rust crates/vize_atelier_vapor/src/tests_setup_components.rs 2
Rust crates/vize_atelier_vapor/src/tests.rs 42
Rust crates/vize_atelier_vapor/src/transforms/element.rs 2
Rust crates/vize_atelier_vapor/src/transforms/transform_slot.rs 1
Rust crates/vize_atelier_vapor/src/transforms/transform_text.rs 3
Rust crates/vize_atelier_vapor/src/transforms/v_bind.rs 1
Rust crates/vize_atelier_vapor/src/transforms/v_for.rs 3
Rust crates/vize_atelier_vapor/src/transforms/v_if.rs 1
Rust crates/vize_atelier_vapor/src/transforms/v_model.rs 3
Rust crates/vize_atelier_vapor/src/transforms/v_on.rs 2
Rust crates/vize_atelier_vapor/src/transforms/v_show.rs 1
Rust crates/vize_canon/src/batch/error.rs 2
Rust crates/vize_canon/src/batch/executor/cli/import_resolution.rs 1
Rust crates/vize_canon/src/batch/executor/cli/tests.rs 7
Rust crates/vize_canon/src/batch/executor/declaration_maps.rs 1
Rust crates/vize_canon/src/batch/executor/diagnostics.rs 12
Rust crates/vize_canon/src/batch/executor/diagnostics/keyof_indexed_assignment.rs 2
Rust crates/vize_canon/src/batch/executor/diagnostics/line_index.rs 2
Rust crates/vize_canon/src/batch/executor/diagnostics/module_resolution.rs 1
Rust crates/vize_canon/src/batch/executor/tests.rs 12
Rust crates/vize_canon/src/batch/import_rewriter_dts_tests.rs 2
Rust crates/vize_canon/src/batch/import_rewriter_tests.rs 19
Rust crates/vize_canon/src/batch/import_rewriter_type_tests.rs 10
Rust crates/vize_canon/src/batch/import_rewriter_virtual_tests.rs 2
Rust crates/vize_canon/src/batch/import_rewriter_virtual.rs 1
Rust crates/vize_canon/src/batch/materialize_lock.rs 1
Rust crates/vize_canon/src/batch/runtime_deps/tests.rs 3
Rust crates/vize_canon/src/batch/source_map.rs 4
Rust crates/vize_canon/src/batch/type_checker/tests.rs 34
Rust crates/vize_canon/src/batch/type_checker/tests/camel_case_component_props.rs 5
Rust crates/vize_canon/src/batch/type_checker/tests/emit_object_recursion.rs 3
Rust crates/vize_canon/src/batch/type_checker/tests/generic_component_listener_payload.rs 4
Rust crates/vize_canon/src/batch/type_checker/tests/generic_props.rs 2
Rust crates/vize_canon/src/batch/type_checker/tests/no_check_props.rs 2
Rust crates/vize_canon/src/batch/type_checker/tests/no_unused.rs 5
Rust crates/vize_canon/src/batch/type_checker/tests/options_api_required_props.rs 3
Rust crates/vize_canon/src/batch/type_checker/tests/package_exports_types.rs 2
Rust crates/vize_canon/src/batch/type_checker/tests/recent_issues.rs 6
Rust crates/vize_canon/src/batch/type_checker/tests/scan.rs 1
Rust crates/vize_canon/src/batch/type_checker/tests/tsx_sfc.rs 2
Rust crates/vize_canon/src/batch/virtual_project/jsx_codegen.rs 3
Rust crates/vize_canon/src/batch/virtual_project/passthrough.rs 2
Rust crates/vize_canon/src/batch/virtual_project/tests.rs 33
Rust crates/vize_canon/src/batch/virtual_project/tests/graphql_generated.rs 1
Rust crates/vize_canon/src/batch/virtual_project/tests/module_augmentations.rs 2
Rust crates/vize_canon/src/batch/virtual_project/tests/ref_arity.rs 3
Rust crates/vize_canon/src/batch/virtual_project/tests/setup_props.rs 2
Rust crates/vize_canon/src/batch/virtual_project/tests/tsconfig_native_options.rs 1
Rust crates/vize_canon/src/batch/virtual_project/tests/windows_paths.rs 1
Rust crates/vize_canon/src/batch/virtual_ts.rs 1
Rust crates/vize_canon/src/checker.rs 19
Rust crates/vize_canon/src/context.rs 3
Rust crates/vize_canon/src/corsa_bridge.rs 4
Rust crates/vize_canon/src/corsa_bridge/vue_dependencies.rs 1
Rust crates/vize_canon/src/corsa_bridge/vue_dependency_specifiers.rs 1
Rust crates/vize_canon/src/corsa_bridge/vue_document_tests.rs 4
Rust crates/vize_canon/src/corsa_server.rs 6
Rust crates/vize_canon/src/corsa_session_cache.rs 2
Rust crates/vize_canon/src/diagnostic.rs 2
Rust crates/vize_canon/src/file_uri.rs 6
Rust crates/vize_canon/src/intelligence.rs 5
Rust crates/vize_canon/src/lsp_client/diagnostics_api.rs 3
Rust crates/vize_canon/src/lsp_client/diagnostics.rs 3
Rust crates/vize_canon/src/lsp_client/lifecycle.rs 1
Rust crates/vize_canon/src/lsp_client/session.rs 8
Rust crates/vize_canon/src/lsp_client/tests.rs 7
Rust crates/vize_canon/src/lsp_client/virtual_overlay.rs 1
Rust crates/vize_canon/src/script_parse.rs 5
Rust crates/vize_canon/src/sfc_typecheck/tests.rs 64
Rust crates/vize_canon/src/sfc_typecheck/tests/emit_props.rs 1
Rust crates/vize_canon/src/sfc_typecheck/tests/optional_chain_props.rs 2
Rust crates/vize_canon/src/sfc_typecheck/tests/options_api_required_props.rs 1
Rust crates/vize_canon/src/sfc_typecheck/tests/options_api_setup_spread.rs 1
Rust crates/vize_canon/src/source_map.rs 12
Rust crates/vize_canon/src/tests.rs 18
Rust crates/vize_canon/src/type_only_import_anchors.rs 1
Rust crates/vize_canon/src/typecheck_service.rs 2
Rust crates/vize_canon/src/types.rs 2
Rust crates/vize_canon/src/virtual_ts/expressions/component_props.rs 1
Rust crates/vize_canon/src/virtual_ts/expressions/tests.rs 9
Rust crates/vize_canon/src/virtual_ts/generator/legacy_vue2.rs 1
Rust crates/vize_canon/src/virtual_ts/generator/script_module.rs 3
Rust crates/vize_canon/src/virtual_ts/generator/setup_helpers/boolean_keys.rs 2
Rust crates/vize_canon/src/virtual_ts/generator/spans.rs 9
Rust crates/vize_canon/src/virtual_ts/helpers.rs 3
Rust crates/vize_canon/src/virtual_ts/incremental.rs 3
Rust crates/vize_canon/src/virtual_ts/interface_extends_tests.rs 1
Rust crates/vize_canon/src/virtual_ts/legacy_vue2_vuetify_tests.rs 7
Rust crates/vize_canon/src/virtual_ts/props.rs 4
Rust crates/vize_canon/src/virtual_ts/props/with_defaults.rs 2
Rust crates/vize_canon/src/virtual_ts/tests.rs 62
Rust crates/vize_canon/src/virtual_ts/tests/auto_import_shadowing.rs 1
Rust crates/vize_canon/src/virtual_ts/tests/component_navigation.rs 3
Rust crates/vize_canon/src/virtual_ts/tests/define_props_scope.rs 6
Rust crates/vize_canon/src/virtual_ts/tests/legacy_nuxt2_page_context.rs 1
Rust crates/vize_canon/src/virtual_ts/tests/no_check_template_bindings.rs 2
Rust crates/vize_canon/src/virtual_ts/tests/options_api_props_spread.rs 5
Rust crates/vize_canon/src/virtual_ts/tests/options_api_setup_spread.rs 1
Rust crates/vize_canon/src/virtual_ts/tests/unused_refs.rs 1
Rust crates/vize_canon/src/virtual_ts/tests/vif_chain.rs 2
Rust crates/vize_canon/src/virtual_ts/types.rs 1
Rust crates/vize_canon/tests/lsp_import_resolution.rs 1
Rust crates/vize_canon/tests/nuxt_false_positives.rs 4
Rust crates/vize_canon/tests/plain_script_named_exports.rs 2
Rust crates/vize_carton/src/allocator.rs 4
Rust crates/vize_carton/src/clone_in.rs 6
Rust crates/vize_carton/src/config/loader/tests.rs 22
Rust crates/vize_carton/src/config/model/linter_rule_options.rs 4
Rust crates/vize_carton/src/config/model/linter.rs 9
Rust crates/vize_carton/src/config/model/vue.rs 5
Rust crates/vize_carton/src/config/normalize.rs 4
Rust crates/vize_carton/src/corsa_resolver.rs 20
Rust crates/vize_carton/src/dialect.rs 12
Rust crates/vize_carton/src/directive.rs 18
Rust crates/vize_carton/src/dom_tag_config.rs 5
Rust crates/vize_carton/src/flags.rs 3
Rust crates/vize_carton/src/general.rs 7
Rust crates/vize_carton/src/hash.rs 4
Rust crates/vize_carton/src/i18n.rs 7
Rust crates/vize_carton/src/line_index.rs 7
Rust crates/vize_carton/src/lsp.rs 7
Rust crates/vize_carton/src/path.rs 4
Rust crates/vize_carton/src/profiler/tests.rs 10
Rust crates/vize_carton/src/source_range.rs 5
Rust crates/vize_carton/src/string_builder.rs 6
Rust crates/vize_carton/src/telegraph.rs 2
Rust crates/vize_carton/tests/linter_features.rs 3
Rust crates/vize_carton/tests/loading.rs 12
Rust crates/vize_carton/tests/pkl_compat.rs 1
Rust crates/vize_croquis_cf/src/analyzer/core/deps.rs 6
Rust crates/vize_croquis_cf/src/analyzer/tests_basic.rs 11
Rust crates/vize_croquis_cf/src/analyzer/tests_element_id.rs 6
Rust crates/vize_croquis_cf/src/analyzer/tests_provide_inject/basic.rs 6
Rust crates/vize_croquis_cf/src/analyzer/tests_provide_inject/patterns.rs 5
Rust crates/vize_croquis_cf/src/analyzer/tests_provide_inject/playground.rs 2
Rust crates/vize_croquis_cf/src/analyzer/tests_provide_inject/provider_context.rs 4
Rust crates/vize_croquis_cf/src/analyzer/tests_provide_inject/provider_reactivity.rs 3
Rust crates/vize_croquis_cf/src/analyzer/tests_provide_inject/tree.rs 4
Rust crates/vize_croquis_cf/src/analyzer/tests_race_conditions/advanced.rs 4
Rust crates/vize_croquis_cf/src/analyzer/tests_race_conditions/basic.rs 5
Rust crates/vize_croquis_cf/src/analyzer/tests_reactivity_props/direct.rs 9
Rust crates/vize_croquis_cf/src/analyzer/tests_reactivity_props/shared.rs 4
Rust crates/vize_croquis_cf/src/analyzer/tests_single_file.rs 10
Rust crates/vize_croquis_cf/src/analyzer/tests_snapshots/full.rs 1
Rust crates/vize_croquis_cf/src/analyzer/tests_snapshots/graph.rs 1
Rust crates/vize_croquis_cf/src/analyzer/tests_snapshots/reactivity.rs 2
Rust crates/vize_croquis_cf/src/diagnostics/diagnostics_tests/codes.rs 2
Rust crates/vize_croquis_cf/src/diagnostics/diagnostics_tests/markdown.rs 8
Rust crates/vize_croquis_cf/src/diagnostics/diagnostics_tests/snapshots.rs 3
Rust crates/vize_croquis_cf/src/graph.rs 3
Rust crates/vize_croquis_cf/src/registry.rs 5
Rust crates/vize_croquis_cf/src/rules/boundary.rs 1
Rust crates/vize_croquis_cf/src/rules/component_resolution/paths.rs 3
Rust crates/vize_croquis_cf/src/rules/component_resolution/tests.rs 3
Rust crates/vize_croquis_cf/src/rules/cross_file_reactivity_tests.rs 7
Rust crates/vize_croquis_cf/src/rules/cross_file_reactivity/path_helpers.rs 3
Rust crates/vize_croquis_cf/src/rules/cross_file_reactivity/store_detection.rs 7
Rust crates/vize_croquis_cf/src/rules/element_id.rs 1
Rust crates/vize_croquis_cf/src/rules/emit.rs 1
Rust crates/vize_croquis_cf/src/rules/event_bubbling/tests.rs 3
Rust crates/vize_croquis_cf/src/rules/fallthrough/tests.rs 3
Rust crates/vize_croquis_cf/src/rules/props_validation/helpers_tests.rs 4
Rust crates/vize_croquis_cf/src/rules/provide_inject/tests.rs 1
Rust crates/vize_croquis_cf/src/rules/reactivity/tests.rs 1
Rust crates/vize_croquis_cf/src/rules/setup_context.rs 1
Rust crates/vize_croquis_cf/src/suppression.rs 8
Rust crates/vize_croquis/src/builtins.rs 6
Rust crates/vize_croquis/src/call_graph/analysis.rs 6
Rust crates/vize_croquis/src/croquis.rs 2
Rust crates/vize_croquis/src/css.rs 1
Rust crates/vize_croquis/src/declaration_ts.rs 2
Rust crates/vize_croquis/src/drawer/helpers/identifiers/tests.rs 5
Rust crates/vize_croquis/src/drawer/helpers/keywords.rs 2
Rust crates/vize_croquis/src/drawer/helpers/slots/slot_props.rs 3
Rust crates/vize_croquis/src/drawer/helpers/v_for/tests.rs 4
Rust crates/vize_croquis/src/drawer/helpers/v_scope.rs 5
Rust crates/vize_croquis/src/drawer/template/tests.rs 11
Rust crates/vize_croquis/src/drawer/tests/script.rs 6
Rust crates/vize_croquis/src/drawer/tests/snapshots.rs 4
Rust crates/vize_croquis/src/effect_graph.rs 3
Rust crates/vize_croquis/src/hoist.rs 2
Rust crates/vize_croquis/src/import_resolver.rs 10
Rust crates/vize_croquis/src/macros.rs 3
Rust crates/vize_croquis/src/naming.rs 7
Rust crates/vize_croquis/src/optimization.rs 2
Rust crates/vize_croquis/src/provide.rs 2
Rust crates/vize_croquis/src/race.rs 1
Rust crates/vize_croquis/src/reactivity_tracking/tracker.rs 7
Rust crates/vize_croquis/src/reactivity.rs 5
Rust crates/vize_croquis/src/render_tree.rs 1
Rust crates/vize_croquis/src/scope/chain/chain_tests.rs 26
Rust crates/vize_croquis/src/scope/types.rs 7
Rust crates/vize_croquis/src/script_parser/interface_extends_tests.rs 2
Rust crates/vize_croquis/src/script_parser/options_api_emits_tests.rs 1
Rust crates/vize_croquis/src/script_parser/process/options_api.rs 4
Rust crates/vize_croquis/src/script_parser/props_destructure_tests.rs 2
Rust crates/vize_croquis/src/script_parser/tests.rs 52
Rust crates/vize_croquis/src/setup_context.rs 2
Rust crates/vize_croquis/src/symbol.rs 2
Rust crates/vize_croquis/src/types/tests.rs 8
Rust crates/vize_croquis/src/virtual_ts.rs 11
Rust crates/vize_croquis/src/virtual_ts/generator/script.rs 3
Rust crates/vize_curator/src/inspector/tests.rs 9
Rust crates/vize_curator/src/profile/tests.rs 1
Rust crates/vize_fresco/src/component/box_node.rs 4
Rust crates/vize_fresco/src/component/input_node.rs 4
Rust crates/vize_fresco/src/component/text_node.rs 4
Rust crates/vize_fresco/src/input/event.rs 2
Rust crates/vize_fresco/src/input/ime/candidate.rs 6
Rust crates/vize_fresco/src/input/ime/platform.rs 4
Rust crates/vize_fresco/src/input/ime/preedit.rs 7
Rust crates/vize_fresco/src/input/ime/state.rs 5
Rust crates/vize_fresco/src/input/keyboard.rs 5
Rust crates/vize_fresco/src/input/mouse.rs 3
Rust crates/vize_fresco/src/layout/engine.rs 6
Rust crates/vize_fresco/src/layout/flex_tests.rs 4
Rust crates/vize_fresco/src/layout/rect.rs 7
Rust crates/vize_fresco/src/napi/render_tests.rs 3
Rust crates/vize_fresco/src/render/diff.rs 4
Rust crates/vize_fresco/src/render/node.rs 4
Rust crates/vize_fresco/src/render/painter.rs 3
Rust crates/vize_fresco/src/render/tree.rs 4
Rust crates/vize_fresco/src/terminal/backend.rs 2
Rust crates/vize_fresco/src/terminal/buffer.rs 6
Rust crates/vize_fresco/src/terminal/cell.rs 4
Rust crates/vize_fresco/src/terminal/cursor.rs 3
Rust crates/vize_fresco/src/text/segment.rs 12
Rust crates/vize_fresco/src/text/width.rs 10
Rust crates/vize_fresco/src/text/wrap.rs 11
Rust crates/vize_glyph/src/json/tests.rs 22
Rust crates/vize_glyph/src/lib.rs 18
Rust crates/vize_glyph/src/script.rs 10
Rust crates/vize_glyph/src/style.rs 7
Rust crates/vize_glyph/src/template.rs 40
Rust crates/vize_glyph/src/template/attributes.rs 4
Rust crates/vize_glyph/tests/custom_blocks.rs 2
Rust crates/vize_glyph/tests/script_idempotence.rs 3
Rust crates/vize_glyph/tests/sfc_check_mode.rs 2
Rust crates/vize_glyph/tests/sfc_script_idempotence.rs 2
Rust crates/vize_glyph/tests/template_component_tags.rs 1
Rust crates/vize_glyph/tests/template_directive_attributes.rs 7
Rust crates/vize_glyph/tests/template_nested_component_indent.rs 1
Rust crates/vize_maestro/src/document/store/tests.rs 18
Rust crates/vize_maestro/src/ide/auto_import.rs 3
Rust crates/vize_maestro/src/ide/code_action.rs 6
Rust crates/vize_maestro/src/ide/code_lens.rs 4
Rust crates/vize_maestro/src/ide/completion/component_props_tests.rs 2
Rust crates/vize_maestro/src/ide/completion/dedup_tests.rs 2
Rust crates/vize_maestro/src/ide/completion/script/tests.rs 3
Rust crates/vize_maestro/src/ide/completion/template/bindings.rs 3
Rust crates/vize_maestro/src/ide/completion/template/component_meta.rs 3
Rust crates/vize_maestro/src/ide/completion/template/native_tests.rs 3
Rust crates/vize_maestro/src/ide/completion/template/slot_outlets.rs 3
Rust crates/vize_maestro/src/ide/completion/tests.rs 38
Rust crates/vize_maestro/src/ide/corsa_support/canonical_tests.rs 5
Rust crates/vize_maestro/src/ide/corsa_support/html_attribute_tests.rs 4
Rust crates/vize_maestro/src/ide/corsa_support/html_tag.rs 8
Rust crates/vize_maestro/src/ide/cursor_context.rs 9
Rust crates/vize_maestro/src/ide/definition.rs 26
Rust crates/vize_maestro/src/ide/definition/corsa_tests.rs 1
Rust crates/vize_maestro/src/ide/definition/html_tests.rs 6
Rust crates/vize_maestro/src/ide/diagnostics/corsa/message.rs 9
Rust crates/vize_maestro/src/ide/diagnostics/corsa/relative_import_tests.rs 1
Rust crates/vize_maestro/src/ide/diagnostics/corsa/tests.rs 7
Rust crates/vize_maestro/src/ide/diagnostics/editor_typecheck_tests.rs 5
Rust crates/vize_maestro/src/ide/diagnostics/tests.rs 32
Rust crates/vize_maestro/src/ide/document_highlight.rs 3
Rust crates/vize_maestro/src/ide/document_link.rs 3
Rust crates/vize_maestro/src/ide/ecosystem/context.rs 2
Rust crates/vize_maestro/src/ide/ecosystem/i18n.rs 3
Rust crates/vize_maestro/src/ide/ecosystem/router_extension_tests.rs 1
Rust crates/vize_maestro/src/ide/ecosystem/router.rs 4
Rust crates/vize_maestro/src/ide/ecosystem/void.rs 2
Rust crates/vize_maestro/src/ide/file_rename/declaration_index_tests.rs 1
Rust crates/vize_maestro/src/ide/file_rename/manual_tests.rs 3
Rust crates/vize_maestro/src/ide/file_rename/merge_tests.rs 3
Rust crates/vize_maestro/src/ide/file_rename/resources.rs 2
Rust crates/vize_maestro/src/ide/hover.rs 17
Rust crates/vize_maestro/src/ide/hover/component_prop.rs 1
Rust crates/vize_maestro/src/ide/hover/component_tag.rs 2
Rust crates/vize_maestro/src/ide/hover/corsa_tests.rs 1
Rust crates/vize_maestro/src/ide/hover/html.rs 6
Rust crates/vize_maestro/src/ide/inlay_hint.rs 10
Rust crates/vize_maestro/src/ide/jsx/code_action.rs 4
Rust crates/vize_maestro/src/ide/jsx/document_symbols.rs 4
Rust crates/vize_maestro/src/ide/jsx/position.rs 3
Rust crates/vize_maestro/src/ide/jsx/references.rs 1
Rust crates/vize_maestro/src/ide/jsx/rename.rs 3
Rust crates/vize_maestro/src/ide/jsx/scoped_style.rs 6
Rust crates/vize_maestro/src/ide/jsx/semantic_tokens.rs 4
Rust crates/vize_maestro/src/ide/jsx/service.rs 6
Rust crates/vize_maestro/src/ide/jsx/virtual_ts.rs 4
Rust crates/vize_maestro/src/ide/references.rs 6
Rust crates/vize_maestro/src/ide/rename.rs 6
Rust crates/vize_maestro/src/ide/semantic_tokens/tests.rs 25
Rust crates/vize_maestro/src/ide/tests.rs 13
Rust crates/vize_maestro/src/ide/type_service.rs 2
Rust crates/vize_maestro/src/ide/type_service/diagnostics.rs 4
Rust crates/vize_maestro/src/ide/workspace_symbols.rs 5
Rust crates/vize_maestro/src/runtime.rs 1
Rust crates/vize_maestro/src/server/capabilities/tests.rs 8
Rust crates/vize_maestro/src/server/format.rs 8
Rust crates/vize_maestro/src/server/handlers.rs 9
Rust crates/vize_maestro/src/server/handlers/tests/lifecycle.rs 6
Rust crates/vize_maestro/src/server/handlers/tests/requests.rs 2
Rust crates/vize_maestro/src/server/handlers/tests/requests/responses.rs 3
Rust crates/vize_maestro/src/server/state/config_tests.rs 2
Rust crates/vize_maestro/src/server/state/tests.rs 26
Rust crates/vize_maestro/src/utils/position.rs 8
Rust crates/vize_maestro/src/virtual_code/generator/tests.rs 10
Rust crates/vize_maestro/src/virtual_code/script_code.rs 2
Rust crates/vize_maestro/src/virtual_code/source_map.rs 6
Rust crates/vize_maestro/src/virtual_code/style_code.rs 2
Rust crates/vize_maestro/src/virtual_code/template_code.rs 4
Rust crates/vize_maestro/tests/file_rename_declarations.rs 3
Rust crates/vize_musea/src/autogen.rs 4
Rust crates/vize_musea/src/autogen/strategy.rs 8
Rust crates/vize_musea/src/docs.rs 2
Rust crates/vize_musea/src/docs/catalog.rs 3
Rust crates/vize_musea/src/docs/markdown.rs 2
Rust crates/vize_musea/src/lib.rs 4
Rust crates/vize_musea/src/palette/codegen.rs 4
Rust crates/vize_musea/src/palette/inference.rs 7
Rust crates/vize_musea/src/palette/types.rs 3
Rust crates/vize_musea/src/parse.rs 8
Rust crates/vize_musea/src/parse/art_block.rs 4
Rust crates/vize_musea/src/parse/variant.rs 7
Rust crates/vize_musea/src/tokens/tests.rs 3
Rust crates/vize_musea/src/transform/to_csf/tests.rs 7
Rust crates/vize_musea/src/transform/to_vue.rs 4
Rust crates/vize_musea/src/types.rs 3
Rust crates/vize_musea/src/vrt/config.rs 5
Rust crates/vize_musea/src/vrt/preset.rs 5
Rust crates/vize_musea/tests/define_art_metadata.rs 1
Rust crates/vize_patina/src/diagnostic.rs 19
Rust crates/vize_patina/src/lib.rs 2
Rust crates/vize_patina/src/linter/corsa_session/paths.rs 5
Rust crates/vize_patina/src/linter/corsa_session/session.rs 3
Rust crates/vize_patina/src/linter/corsa_session/tests.rs 2
Rust crates/vize_patina/src/linter/engine/ecosystem_hint.rs 2
Rust crates/vize_patina/src/linter/engine/template_extract.rs 10
Rust crates/vize_patina/src/linter/native_type_aware/template_queries/calls.rs 15
Rust crates/vize_patina/src/linter/native_type_aware/template_queries/collector.rs 1
Rust crates/vize_patina/src/linter/native_type_aware/tests.rs 47
Rust crates/vize_patina/src/linter/native_type_aware/tests/opt_in.rs 5
Rust crates/vize_patina/src/linter/native_type_aware/tests/options_api.rs 1
Rust crates/vize_patina/src/linter/script_rules/html_scripts.rs 1
Rust crates/vize_patina/src/linter/tests/basic.rs 29
Rust crates/vize_patina/src/linter/tests/css.rs 1
Rust crates/vize_patina/src/linter/tests/directives.rs 15
Rust crates/vize_patina/src/linter/tests/jsx_fallback.rs 3
Rust crates/vize_patina/src/linter/tests/jsx.rs 18
Rust crates/vize_patina/src/linter/tests/no_top_level_ref.rs 2
Rust crates/vize_patina/src/linter/tests/nuxt.rs 7
Rust crates/vize_patina/src/linter/tests/script.rs 2
Rust crates/vize_patina/src/linter/tests/severity_overrides.rs 2
Rust crates/vize_patina/src/linter/tests/sfc.rs 26
Rust crates/vize_patina/src/linter/tests/v_for_unused_vars.rs 2
Rust crates/vize_patina/src/markup.rs 10
Rust crates/vize_patina/src/output/tests.rs 13
Rust crates/vize_patina/src/preset.rs 4
Rust crates/vize_patina/src/rules/a11y/alt_text.rs 11
Rust crates/vize_patina/src/rules/a11y/anchor_has_content.rs 5
Rust crates/vize_patina/src/rules/a11y/anchor_is_valid.rs 11
Rust crates/vize_patina/src/rules/a11y/aria_props.rs 13
Rust crates/vize_patina/src/rules/a11y/aria_role.rs 18
Rust crates/vize_patina/src/rules/a11y/aria_unsupported_elements.rs 6
Rust crates/vize_patina/src/rules/a11y/click_events_have_key_events.rs 9
Rust crates/vize_patina/src/rules/a11y/form_control_has_label.rs 10
Rust crates/vize_patina/src/rules/a11y/heading_has_content.rs 8
Rust crates/vize_patina/src/rules/a11y/iframe_has_title.rs 4
Rust crates/vize_patina/src/rules/a11y/img_alt.rs 3
Rust crates/vize_patina/src/rules/a11y/interactive_supports_focus.rs 6
Rust crates/vize_patina/src/rules/a11y/label_has_for.rs 6
Rust crates/vize_patina/src/rules/a11y/media_has_caption.rs 6
Rust crates/vize_patina/src/rules/a11y/mouse_events_have_key_events.rs 8
Rust crates/vize_patina/src/rules/a11y/no_access_key.rs 4
Rust crates/vize_patina/src/rules/a11y/no_aria_hidden_on_focusable.rs 7
Rust crates/vize_patina/src/rules/a11y/no_autofocus.rs 4
Rust crates/vize_patina/src/rules/a11y/no_distracting_elements.rs 3
Rust crates/vize_patina/src/rules/a11y/no_i_for_icon.rs 13
Rust crates/vize_patina/src/rules/a11y/no_redundant_roles.rs 6
Rust crates/vize_patina/src/rules/a11y/no_refer_to_non_existent_id.rs 3
Rust crates/vize_patina/src/rules/a11y/no_role_presentation_on_focusable.rs 7
Rust crates/vize_patina/src/rules/a11y/no_static_element_interactions.rs 8
Rust crates/vize_patina/src/rules/a11y/role_has_required_aria_props.rs 8
Rust crates/vize_patina/src/rules/a11y/tabindex_no_positive.rs 4
Rust crates/vize_patina/src/rules/css.rs 6
Rust crates/vize_patina/src/rules/css/no_display_none.rs 3
Rust crates/vize_patina/src/rules/css/no_hardcoded_values.rs 7
Rust crates/vize_patina/src/rules/css/no_id_selectors.rs 3
Rust crates/vize_patina/src/rules/css/no_important.rs 2
Rust crates/vize_patina/src/rules/css/no_utility_classes.rs 4
Rust crates/vize_patina/src/rules/css/no_v_bind_performance.rs 4
Rust crates/vize_patina/src/rules/css/prefer_logical_properties.rs 3
Rust crates/vize_patina/src/rules/css/prefer_nested_selectors.rs 12
Rust crates/vize_patina/src/rules/css/prefer_slotted.rs 3
Rust crates/vize_patina/src/rules/css/require_font_display.rs 3
Rust crates/vize_patina/src/rules/ecosystem/i18n_no_missing_key.rs 4
Rust crates/vize_patina/src/rules/ecosystem/nuxt_prefer_nuxt_link.rs 3
Rust crates/vize_patina/src/rules/ecosystem/router_link_require_to.rs 4
Rust crates/vize_patina/src/rules/ecosystem/void_link_require_href.rs 4
Rust crates/vize_patina/src/rules/ecosystem/void_link_valid_method.rs 3
Rust crates/vize_patina/src/rules/ecosystem/vue_router_prefer_named_link.rs 4
Rust crates/vize_patina/src/rules/html/deprecated_attr.rs 8
Rust crates/vize_patina/src/rules/html/deprecated_element.rs 9
Rust crates/vize_patina/src/rules/html/id_duplication.rs 9
Rust crates/vize_patina/src/rules/html/no_consecutive_br.rs 6
Rust crates/vize_patina/src/rules/html/no_duplicate_dt.rs 5
Rust crates/vize_patina/src/rules/html/no_empty_palpable_content.rs 12
Rust crates/vize_patina/src/rules/html/require_datetime.rs 8
Rust crates/vize_patina/src/rules/musea.rs 5
Rust crates/vize_patina/src/rules/musea/no_empty_variant.rs 3
Rust crates/vize_patina/src/rules/musea/prefer_design_tokens.rs 8
Rust crates/vize_patina/src/rules/musea/require_component.rs 3
Rust crates/vize_patina/src/rules/musea/require_title.rs 4
Rust crates/vize_patina/src/rules/musea/unique_variant_names.rs 3
Rust crates/vize_patina/src/rules/musea/valid_variant.rs 3
Rust crates/vize_patina/src/rules/opinionated/a11y/heading_levels.rs 9
Rust crates/vize_patina/src/rules/opinionated/a11y/landmark_roles.rs 12
Rust crates/vize_patina/src/rules/opinionated/a11y/placeholder_label_option.rs 6
Rust crates/vize_patina/src/rules/opinionated/a11y/use_list.rs 10
Rust crates/vize_patina/src/rules/opinionated/html/no_dupe_style_properties.rs 8
Rust crates/vize_patina/src/rules/opinionated/html/no_duplicate_class.rs 8
Rust crates/vize_patina/src/rules/opinionated/type_aware/no_floating_promises.rs 1
Rust crates/vize_patina/src/rules/opinionated/type_aware/no_reactivity_loss.rs 1
Rust crates/vize_patina/src/rules/opinionated/type_aware/no_unsafe_template_binding.rs 1
Rust crates/vize_patina/src/rules/opinionated/vapor/no_inline_template.rs 3
Rust crates/vize_patina/src/rules/opinionated/vapor/prefer_static_class.rs 5
Rust crates/vize_patina/src/rules/opinionated/vapor/require_vapor_attribute.rs 1
Rust crates/vize_patina/src/rules/opinionated/vue/component_name_in_template_casing.rs 8
Rust crates/vize_patina/src/rules/opinionated/vue/html_button_has_type.rs 12
Rust crates/vize_patina/src/rules/opinionated/vue/html_self_closing.rs 9
Rust crates/vize_patina/src/rules/opinionated/vue/multi_word_component_names.rs 9
Rust crates/vize_patina/src/rules/opinionated/vue/no_array_index_key.rs 13
Rust crates/vize_patina/src/rules/opinionated/vue/no_boolean_attr_value.rs 10
Rust crates/vize_patina/src/rules/opinionated/vue/no_empty_component_block.rs 8
Rust crates/vize_patina/src/rules/opinionated/vue/no_inline_style.rs 4
Rust crates/vize_patina/src/rules/opinionated/vue/no_multiple_objects_in_class.rs 8
Rust crates/vize_patina/src/rules/opinionated/vue/no_negated_v_if_condition.rs 9
Rust crates/vize_patina/src/rules/opinionated/vue/no_root_v_if.rs 8
Rust crates/vize_patina/src/rules/opinionated/vue/no_template_shadow.rs 3
Rust crates/vize_patina/src/rules/opinionated/vue/no_unused_refs/tests.rs 18
Rust crates/vize_patina/src/rules/opinionated/vue/no_useless_mustaches.rs 6
Rust crates/vize_patina/src/rules/opinionated/vue/no_useless_v_bind.rs 5
Rust crates/vize_patina/src/rules/opinionated/vue/no_v_text.rs 4
Rust crates/vize_patina/src/rules/opinionated/vue/prefer_props_shorthand.rs 6
Rust crates/vize_patina/src/rules/opinionated/vue/prefer_true_attribute_shorthand.rs 6
Rust crates/vize_patina/src/rules/opinionated/vue/require_component_registration.rs 5
Rust crates/vize_patina/src/rules/opinionated/vue/scoped_event_names.rs 4
Rust crates/vize_patina/src/rules/opinionated/vue/slot_name_casing.rs 7
Rust crates/vize_patina/src/rules/opinionated/vue/this_in_template.rs 8
Rust crates/vize_patina/src/rules/opinionated/vue/use_unique_element_ids.rs 20
Rust crates/vize_patina/src/rules/opinionated/vue/use_v_on_exact.rs 6
Rust crates/vize_patina/src/rules/opinionated/vue/v_bind_style.rs 4
Rust crates/vize_patina/src/rules/opinionated/vue/v_on_event_hyphenation.rs 8
Rust crates/vize_patina/src/rules/opinionated/vue/v_on_handler_style.rs 12
Rust crates/vize_patina/src/rules/opinionated/vue/warn_custom_block.rs 2
Rust crates/vize_patina/src/rules/opinionated/vue/warn_custom_directive.rs 4
Rust crates/vize_patina/src/rules/petite_vue/no_unsupported_directive.rs 7
Rust crates/vize_patina/src/rules/petite_vue/valid_v_effect.rs 6
Rust crates/vize_patina/src/rules/petite_vue/valid_v_scope.rs 13
Rust crates/vize_patina/src/rules/script/component_options_name_casing/tests.rs 18
Rust crates/vize_patina/src/rules/script/custom_event_name_casing.rs 15
Rust crates/vize_patina/src/rules/script/define_emits_declaration.rs 9
Rust crates/vize_patina/src/rules/script/define_macros_order/tests.rs 19
Rust crates/vize_patina/src/rules/script/define_props_declaration.rs 9
Rust crates/vize_patina/src/rules/script/define_props_destructuring.rs 8
Rust crates/vize_patina/src/rules/script/no_arrow_functions_in_watch/tests.rs 18
Rust crates/vize_patina/src/rules/script/no_async_in_computed.rs 5
Rust crates/vize_patina/src/rules/script/no_boolean_default/tests.rs 15
Rust crates/vize_patina/src/rules/script/no_deep_destructure_in_props.rs 8
Rust crates/vize_patina/src/rules/script/no_deprecated_data_object_declaration/tests.rs 14
Rust crates/vize_patina/src/rules/script/no_deprecated_dollar_listeners_api.rs 10
Rust crates/vize_patina/src/rules/script/no_deprecated_dollar_scopedslots_api.rs 9
Rust

Comment truncated at 64000 characters. Open the workflow run for the full job log.

@ubugeeei ubugeeei merged commit c3bd2ea into main Jul 8, 2026
43 checks passed
@ubugeeei ubugeeei deleted the agent/patina-prop-destructure-prefilter branch July 8, 2026 17:49
@github-actions

github-actions Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Tool Benchmark

Measured: 2026-07-08T17:48:02.663Z
Commit: 0087d82d4229 (run)
Runner: blacksmith-32vcpu-ubuntu-2404 (32 logical CPU, Intel(R) Xeon(R) Processor, 32 vCPU / 128 GB RAM / 1.5 TB storage)
Input: 3,000 generated SFC files (11.7 MB). Median of 3 measured run(s) after 1 warmup run(s).
Large SFC: 300 repeated template blocks (225.6 KB). Nuxt import set: 250 SFC files.

Surface Files Existing tool Existing median Vize 1T Vize max Speedup
SFC compile 3,000 @vue/compiler-sfc (1T) 3.87s 683.5ms 63.9ms 60.6x
Large SFC compile 1 @vue/compiler-sfc (1T) 57.8ms 21.6ms 17.1ms 3.4x
Large SFC type check 1 vue-tsc 810.4ms 107.7ms 110.8ms 7.3x
Lint 3,000 eslint-plugin-vue (1T) 10.91s 455.9ms 104.2ms 104.7x
Format 3,000 Prettier CLI 31.27s 2.23s 425.1ms 73.6x
Type check 500 vue-tsc 5.39s 461.1ms 388.8ms 13.9x
Vite build (end-to-end) 1,000 @vitejs/plugin-vue 1.72s n/a 1.45s 1.2x
Nuxt SPA build (end-to-end) 250 Nuxt default compiler 4.50s n/a 4.88s 0.9x

Fairness notes:

  • All tools run on the same generated Vue SFC corpus from the same checkout and lockfile.
  • The 15,000-SFC rows are the many-file workload; the large-SFC rows isolate one large component.
  • Reported times are medians; measured runs alternate variant order after warmup runs.
  • Destructive formatter runs receive a fresh copy of the same input before each invocation.
  • SFC compile Vize max uses compileSfcBatchWithResults wall time so the primary number includes generated output crossing the JS/native boundary; the stats-only native timeMs is shown only in variant details.
  • Vite build timings exclude fixture copy/setup; the Vize max lane sets precompileBatchSize to the benchmark file count so Blacksmith max runs one native precompile batch instead of the memory-safe default chunks.
  • Nuxt SPA build timings exclude synthetic app generation and compare nuxt build with Nuxt's default compiler against the same app with @vizejs/nuxt installed.
  • Single-thread lanes are shown where useful, and the primary speedup compares the incumbent default/single-thread lane with Vize's max runner lane.

Commands:

gh workflow run tool-benchmark.yml --ref <branch> -f file_count=3000 -f check_file_count=500 -f vite_file_count=1000 -f nuxt_file_count=250 -f large_blocks=300 -f runs=3 -f warmups=1 -f commit_results=true
node bench/generate.mjs 3000
node bench/compare-tools.mjs --input bench/__in__ --vize-bin target/release/vize --runs 3 --warmups 1 --check-file-count 500 --vite-file-count 1000 --nuxt-file-count 250 --large-blocks 300 --runner-label "blacksmith-32vcpu-ubuntu-2404" --out tool-benchmark-summary.md --json tool-benchmark-results.json --doc performance-blacksmith.md
Variant details and raw run times

SFC compile

Variant Median Throughput Raw measured runs
@vue/compiler-sfc (1T) 3.87s 775 files/s 3.91s, 3.85s, 3.87s
@vue/compiler-sfc (32 workers) 1.81s 1.7k files/s 1.77s, 1.85s, 1.81s
Vize native loop (1T) 683.5ms 4.4k files/s 697.0ms, 672.5ms, 683.5ms
Vize native batch results (max) 63.9ms 47.0k files/s 63.9ms, 70.9ms, 63.4ms
Vize native batch stats-only (core max) 39.5ms 76.0k files/s 39.1ms, 39.5ms, 43.6ms

Large SFC compile

Variant Median Throughput Raw measured runs
@vue/compiler-sfc (1T) 57.8ms 17 files/s 54.9ms, 58.2ms, 57.8ms
@vue/compiler-sfc (1 workers) 193.1ms 5 files/s 195.9ms, 193.1ms, 191.1ms
Vize native loop (1T) 21.6ms 46 files/s 21.6ms, 16.4ms, 26.1ms
Vize native batch results (max) 17.1ms 58 files/s 17.1ms, 16.6ms, 17.3ms
Vize native batch stats-only (core max) 16.3ms 61 files/s 16.3ms, 16.5ms, 16.2ms

Large SFC type check

Variant Median Throughput Raw measured runs
vue-tsc 810.4ms 1 files/s 793.8ms, 810.4ms, 836.5ms
Vize check (1T) 107.7ms 9 files/s 105.5ms, 107.7ms, 113.9ms
Vize check (max) 110.8ms 9 files/s 100.6ms, 110.8ms, 116.7ms

Lint

Variant Median Throughput Raw measured runs
eslint-plugin-vue (1T) 10.91s 275 files/s 10.91s, 11.02s, 10.60s
eslint-plugin-vue (32 workers) 3.90s 769 files/s 4.03s, 3.90s, 3.85s
Vize lint (1T) 455.9ms 6.6k files/s 470.2ms, 430.7ms, 455.9ms
Vize lint (max) 104.2ms 28.8k files/s 100.8ms, 104.2ms, 104.3ms

Format

Variant Median Throughput Raw measured runs
Prettier CLI 31.27s 96 files/s 31.53s, 30.79s, 31.27s
Vize fmt (1T) 2.23s 1.3k files/s 2.21s, 2.25s, 2.23s
Vize fmt (max) 425.1ms 7.1k files/s 425.1ms, 419.7ms, 439.9ms

Type check

Variant Median Throughput Raw measured runs
vue-tsc 5.39s 93 files/s 5.39s, 5.43s, 5.37s
Vize check (1T) 461.1ms 1.1k files/s 461.1ms, 461.8ms, 457.2ms
Vize check (max) 388.8ms 1.3k files/s 388.8ms, 389.2ms, 384.4ms

Vite build (end-to-end)

Variant Median Throughput Raw measured runs
@vitejs/plugin-vue 1.72s 581 files/s 1.73s, 1.72s, 1.70s
@vizejs/vite-plugin 1.45s 688 files/s 1.45s, 1.52s, 1.45s

Nuxt SPA build (end-to-end)

Variant Median Throughput Raw measured runs
Nuxt default compiler 4.50s 56 files/s 4.50s, 4.45s, 4.57s
@vizejs/nuxt 4.88s 51 files/s 4.90s, 4.88s, 4.86s

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