Repository navigation
chore(repo): bump vitest, add smol top-level vitest config - #6567
Merged
kanadgupta merged 16 commits intoSep 15, 2026
Merged
Conversation
kanadgupta
changed the base branch from
develop
to
kanad-claude/cli-2422-knip-cleanup
September 12, 2026 00:11
kanadgupta
force-pushed
the
kanad-2026-09-10/vitest-5
branch
from
September 12, 2026 00:27
0149fcc to
d4a592a
Compare
kanadgupta
force-pushed
the
kanad-2026-09-10/vitest-5
branch
from
September 12, 2026 00:30
d4a592a to
1ca743d
Compare
kanadgupta
marked this pull request as ready for review
September 12, 2026 00:37
kanadgupta
force-pushed
the
kanad-2026-09-10/vitest-5
branch
from
September 12, 2026 00:37
1ca743d to
0458190
Compare
Contributor
There was a problem hiding this comment.
🤖 AI Review
Verified 9 Claude and 3 Codex findings; three overlapping pairs deduplicate to 9 findings, all confirmed. The highest-risk issue is that @effect/vitest explicitly excludes Vitest 5. The PR also introduces broken test/CI wiring, an internally inconsistent Vitest plugin configuration, incidental runtime dependency drift, and several nits.
Findings
| Severity | Location | Category | Sources | Claim |
|---|---|---|---|---|
| 🟠 MAJOR | pnpm-lock.yaml:939 |
dependencies |
claude | The Vitest 5 upgrade runs @effect/vitest outside its declared peer range. |
| 🟡 MINOR | commitlint.config.js:16 |
ci-configuration |
claude+codex | The new deps scope passes commitlint but remains rejected by the pull-request title check. |
| 🟡 MINOR | apps/cli/vitest.config.ts:57 |
test-infrastructure |
claude | The per-project Dockerfile loader was removed even though the retained configuration says inline projects do not inherit root Vite configuration. |
| 🟡 MINOR | package.json:16 |
test-infrastructure |
claude+codex | The aggregate test:vitest script includes E2E projects but bypasses their required CLI build. |
| 🟡 MINOR | pnpm-lock.yaml:299 |
dependencies |
claude | The lockfile regeneration includes unrelated upgrades to shipped runtime dependencies. |
| ⚪ NIT | pnpm-workspace.yaml:34 |
style |
claude | The new Vitest catalog value is unquoted, unlike the value it replaces and nearly all sibling catalog values. |
| ⚪ NIT | packages/stack/src/state/ownership.integration.test.ts:271 |
style |
claude | This new call site uses cwd: cwd while the equivalent sibling changes use property shorthand. |
| ⚪ NIT | apps/cli/src/commands/experimental/stack/start/start.e2e.test.ts:52 |
comments |
claude+codex | The newly added cwd comments narrate the following assignments instead of explaining non-obvious rationale. |
| ⚪ NIT | pnpm-workspace.yaml:110 |
maintenance |
claude | The minimumReleaseAgeExclude entries for @types/bun@1.4.0 and bun-types@1.4.0 are stale after the lockfile moved to 1.4.1. |
Findings outside the diff
- 🟠 MAJOR
pnpm-lock.yaml:939— The Vitest 5 upgrade runs @effect/vitest outside its declared peer range. - ⚪ NIT
pnpm-workspace.yaml:110— The minimumReleaseAgeExclude entries for @types/bun@1.4.0 and bun-types@1.4.0 are stale after the lockfile moved to 1.4.1.
Stats
Claude findings: 9 · Codex findings: 3 · Confirmed: 9 · Refuted: 0 · Uncertain: 0
Models: claude-opus-5 + gpt-5.6-sol · Trigger: auto · Workflow run
This review runs once per PR. A maintainer can request another with a /ai-review comment.
kanadgupta
force-pushed
the
kanad-2026-09-10/vitest-5
branch
from
September 12, 2026 17:16
0458190 to
786b3bf
Compare
kanadgupta
force-pushed
the
kanad-2026-09-10/vitest-5
branch
2 times, most recently
from
September 15, 2026 15:20
504bafc to
8f05be3
Compare
Member
Author
|
Follow-up on the two AI review findings outside the diff:
|
kanadgupta
force-pushed
the
kanad-2026-09-10/vitest-5
branch
from
September 15, 2026 17:18
8e08c85 to
da5fccc
Compare
This reverts commit 42954e9.
- mirror the new `deps` scope in the PR title lint workflow - exclude e2e projects from the root `test:vitest` script so it runs without a CLI build; `pnpm test:e2e` still owns that path - drop per-project resolve duplication and the stale non-inheritance comment, since Vitest 5 inline projects extend the root config - quote the vitest catalog entry and use `cwd` shorthand - explain why stack child processes run from the package root Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
kanadgupta
force-pushed
the
kanad-2026-09-10/vitest-5
branch
from
September 15, 2026 17:24
da5fccc to
cb90bd0
Compare
Coly010
approved these changes
Sep 15, 2026
An error occurred while trying to automatically change base from
kanad-claude/cli-2422-knip-cleanup
to
develop
September 15, 2026 18:15
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
cwdsetup in a few tests so they can be run from the roottest:vitestscript to the root to run every unit and integration project (e2e and live projects are excluded;pnpm test:e2estill owns the build-then-run path)resolve/plugin duplication inapps/cli/vitest.config.ts, since Vitest 5 inline projects extend the root configNote:
@effect/vitest@4.0.0-rc.112declaresvitest <5, so pnpm warns about the peer range. Every suite passes on Vitest 5, and the bump to an@effect/vitestrelease that targets Vitest 5 lands separately in #6582.Checklist
fix(cli): …).pnpm check:allpasses; relevant package tests pass for every touched workspace, andpnpm types:checkpasses for each touched TypeScript workspace (or workspace declaring it).