Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 3 additions & 5 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ on:
branches: [main]
pull_request:
branches: [main]
merge_group:

jobs:
test:
Expand Down Expand Up @@ -144,11 +145,8 @@ jobs:
- name: Type check
run: vp run typecheck

- name: Format check
run: vp run fmt:check

- name: Lint check
run: vp run lint
- name: Check
run: vp run check

- name: Unit tests
run: vp run test
Expand Down
1 change: 1 addition & 0 deletions .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
npx lint-staged
12 changes: 4 additions & 8 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,16 +25,12 @@ vp run test
# Run tests in watch mode
vp run test:watch

# Lint
vp run lint
vp run lint:fix

# Format
vp run fmt
vp run fmt:check
# Check (lint + format)
vp run check
vp run check:fix
```

**Important:** Always run `vp fmt` and `vp run build` before committing - the `dist/index.mjs` must be committed.
**Important:** Always run `vp run check:fix` and `vp run build` before committing - the `dist/index.mjs` must be committed.

## Architecture

Expand Down
8 changes: 4 additions & 4 deletions dist/index.mjs

Large diffs are not rendered by default.

12 changes: 8 additions & 4 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,13 @@
"private": true,
"type": "module",
"scripts": {
"lint": "vp lint --type-aware --type-check",
"lint:fix": "vp run lint --fix",
"check": "vp check",
"check:fix": "vp check --fix",
"build": "vp pack",
"typecheck": "tsc --noEmit",
"test": "vp test run",
"test:watch": "vp test -w",
"fmt": "vp fmt",
"fmt:check": "vp fmt --check"
"prepare": "husky"
},
"dependencies": {
"@actions/cache": "^4.1.0",
Expand All @@ -23,8 +22,13 @@
},
"devDependencies": {
"@types/node": "^22.19.11",
"husky": "^9.1.7",
"lint-staged": "^16.2.7",
"typescript": "^5.9.3",
"vite-plus": "latest"
},
"lint-staged": {
"*": "vp check --fix"
Copy link

Copilot AI Feb 28, 2026

Choose a reason for hiding this comment

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

lint-staged appends the matched file paths to the command it runs. With the current config ("*": "vp check --fix"), the hook will run vp check --fix <all-staged-files> (including non-TS files), which can fail if vp check doesn’t accept positional file args and also doesn’t match the PR description of only running on staged .ts files. Consider scoping the pattern to TS (e.g. "*.ts": ... / "*.{ts,tsx}": ...) and/or wrapping the command so lint-staged doesn’t append filenames if vp check is repo-wide.

Suggested change
"*": "vp check --fix"
"*.{ts,tsx}": "vp check --fix"

Copilot uses AI. Check for mistakes.
},
"packageManager": "pnpm@10.28.0"
}
Loading