Skip to content

feat: integrate vite-task runner-aware tools (auto output + tracked envs)#1774

Draft
wan9chi wants to merge 3 commits into
mainfrom
feat/vite-task-runner-tools
Draft

feat: integrate vite-task runner-aware tools (auto output + tracked envs)#1774
wan9chi wants to merge 3 commits into
mainfrom
feat/vite-task-runner-tools

Conversation

@wan9chi

@wan9chi wan9chi commented Jun 6, 2026

Copy link
Copy Markdown
Member

Integrates the runner-aware-tools work from vite-task PR voidzero-dev/vite-task#410: Vite reports its inputs/outputs/envs to the vp runner via @voidzero-dev/vite-task-client, so vp build no longer needs a hand-synthesized cache config (enabling auto output restoration and auto tracked envs).

Changes

  • Bump vite-task git deps to 6e634c65 (voidzero-dev/vite-task#410): runner-aware IPC server/client + embedded napi addon, and Session::main returning ExitStatus. Regenerate the napi binding (RunnerClient/load exports) and run-config.ts for the new task-config types.
  • Point the vite behind vp build/vp dev to latest vitejs/vite (c13a37b53), which carries the vite-task-client integration. vite lists @voidzero-dev/vite-task-client in devDependencies, so it is bundled into vite's output — and therefore into @voidzero-dev/vite-plus-core — the same way as vite's other bundled deps (cac, esbuild, …). No extra runtime dependency or build wiring is needed.
  • Remove vp build's synthetic cache config (env: ["VITE_*"], manual input excludes). The all-None EnabledCacheConfig keeps caching enabled with auto input/output inference (output restoration); vite's ignoreInput/ignoreOutput/getEnv/getEnvs refine the fingerprint at runtime. vp dev stays disabled().
  • Snap tests: vp-build-auto-output-restoration (dist restored on cache hit without a synthetic output config) and vp-build-auto-tracked-env (a VITE_ env change invalidates the cache, reported as cache miss: tracked env glob 'VITE_*' changed). Edge cases live in the vite-task PR. A couple of existing snapshots updated for the new runner-aware cache-miss messages.

Notes

  • Stacked on voidzero-dev/vite-task#410 — the git rev tracks its tip (6e634c65); land that PR first.
  • rolldown stays at main's pin (c462c7c5, v1.1.0), which is compatible with vite c13a37b53's rolldown 1.0.3 requirement.

🤖 Generated with Claude Code

@netlify

netlify Bot commented Jun 6, 2026

Copy link
Copy Markdown

Deploy Preview for viteplus-preview canceled.

Name Link
🔨 Latest commit 8f14d85
🔍 Latest deploy log https://app.netlify.com/projects/viteplus-preview/deploys/6a26254a18dee00008433142

@wan9chi wan9chi force-pushed the feat/vite-task-runner-tools branch from 83d8d81 to 6006f44 Compare June 6, 2026 19:11
@wan9chi wan9chi marked this pull request as ready for review June 6, 2026 19:21
@wan9chi wan9chi marked this pull request as draft June 7, 2026 00:39
@wan9chi wan9chi force-pushed the feat/vite-task-runner-tools branch 2 times, most recently from 2d380bf to a39a5d3 Compare June 7, 2026 01:22
@wan9chi wan9chi marked this pull request as ready for review June 7, 2026 01:29
@wan9chi wan9chi marked this pull request as draft June 7, 2026 01:30
@wan9chi wan9chi force-pushed the feat/vite-task-runner-tools branch 3 times, most recently from f3c2f78 to 0c7099a Compare June 7, 2026 02:38
@wan9chi wan9chi added the test: e2e Auto run e2e tests label Jun 7, 2026
…nvs)

Vite reports its inputs/outputs/envs to the `vp` runner via
`@voidzero-dev/vite-task-client`, so `vp build` no longer needs a
hand-synthesized cache config.

- Bump vite-task git deps to c44d7c33 (runner-aware IPC server/client +
  embedded napi addon); regenerate run-config.ts for the new task-config types.
- Point the vite behind vp build/vp dev to latest vitejs/vite (c13a37b53),
  which carries the vite-task-client integration. vite lists vite-task-client
  in devDependencies, so it is bundled into vite's output (and thus into core)
  the same way as vite's other bundled deps (cac, esbuild, ...) — no extra
  dependency or build wiring needed.
- Work around an upstream vite dts bug (vitejs/vite#21863): `node/index.ts`
  re-exports `KnownQueryTypeMap` but the type is declared without `export`,
  which breaks downstream type bundling (`vp build` MISSING_EXPORT). core's
  build adds the missing `export` when copying vite's type defs.
- Remove vp build's synthetic cache config (env: [VITE_*], manual input
  excludes). All-None EnabledCacheConfig keeps caching enabled with auto
  input/output inference (output restoration); vp dev stays disabled.
- Snap tests: vp-build-auto-output-restoration, vp-build-auto-tracked-env.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@wan9chi wan9chi force-pushed the feat/vite-task-runner-tools branch from 0c7099a to 5285a43 Compare June 7, 2026 03:52
Repoints the vite-task git deps to the tip of the split stack
(voidzero-dev/vite-task#431, the auto-output-track branch), whose crates
tree is identical to the prior pin plus the runner env-change message
refinement. Regenerates the two snapshots whose `VITE_*` cache-miss line
now renders as "envs changed" (matching manual env config) instead of
"tracked env glob 'VITE_*' changed".

🤖 Generated with [Claude Code](https://claude.com/claude-code)
@socket-security

socket-security Bot commented Jun 7, 2026

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Addednpm/​@​voidzero-dev/​vite-task-client@​0.1.1721009391100

View full report

Picks up the cache-miss message refinement that now names the changed env
var. Regenerates the two snapshots whose `VITE_*` cache-miss line reads
`env 'VITE_MY_VAR' changed` / `env 'VITE_GREETING' changed` instead of the
generic `envs changed`.

🤖 Generated with [Claude Code](https://claude.com/claude-code)
@wan9chi wan9chi force-pushed the feat/vite-task-runner-tools branch from baadc47 to 8f14d85 Compare June 8, 2026 02:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

test: e2e Auto run e2e tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant