Migrate or align frontend repositories to the stock VitePlus workflow. Use when standardizing package or monorepo repos around `vp`, `voidzero-dev/setup-vp`, `vite-plus/test`, and VitePlus-native CI, test, and packaging flows, including updating scripts, test config, CI setup, and packaging commands.
98
100%
Does it follow best practices?
Impact
97%
1.73xAverage score across 6 eval scenarios
Advisory
Suggest reviewing before use
{
"context": "Tests whether the agent correctly consolidates a project's fragmented configuration files into a single vite.config.ts following VitePlus conventions, enables type-aware lint options, and handles the baseUrl incompatibility with VitePlus type-aware checks that causes silent failures.",
"type": "weighted_checklist",
"checklist": [
{
"name": "No parallel vitest.config.ts",
"description": "The output does NOT include a `vitest.config.ts` file — test configuration has been moved into the `test` block inside `vite.config.ts`",
"max_score": 12
},
{
"name": "No .oxlintrc* files",
"description": "The output does NOT include any `.oxlintrc`, `.oxlintrc.json`, `.oxlintrc.yml`, or similar oxlint standalone config files — lint config has been consolidated into `vite.config.ts`",
"max_score": 10
},
{
"name": "No parallel tsdown.config.ts",
"description": "The output does NOT include a `tsdown.config.ts` file — packaging config has been moved into `vite.config.ts`",
"max_score": 8
},
{
"name": "typeAware enabled",
"description": "The `vite.config.ts` includes `lint: { options: { typeAware: true } }` (or equivalent nested structure with `typeAware: true` inside the lint options)",
"max_score": 15
},
{
"name": "typeCheck enabled",
"description": "The `vite.config.ts` includes `lint: { options: { typeCheck: true } }` (or equivalent with `typeCheck: true` inside the lint options)",
"max_score": 15
},
{
"name": "baseUrl incompatibility addressed",
"description": "The `compilerOptions.baseUrl` is either removed from `tsconfig.json` OR the output explicitly documents that `baseUrl` causes VitePlus to silently skip type-aware checks and recommends removing it",
"max_score": 15
},
{
"name": "Staged config in vite.config.ts",
"description": "Pre-commit / staged hook configuration is placed inside the `staged` property of the root `defineConfig` in `vite.config.ts`, rather than in a separate Husky or lint-staged config",
"max_score": 10
},
{
"name": "No Husky or lint-staged config",
"description": "The output does NOT create or preserve `.husky/pre-commit`, `.husky/` directory, or any `lint-staged` configuration block in `package.json`",
"max_score": 5
},
{
"name": "defineConfig from vite-plus",
"description": "The `vite.config.ts` imports `defineConfig` from `'vite-plus'` (not from `'vite'`)",
"max_score": 5
},
{
"name": "vp migrate referenced",
"description": "The migration notes, README, or a migration script references `vp migrate` as the recommended migration entry point (rather than purely describing manual file edits)",
"max_score": 5
}
]
}