Skip to content

feat: merge synthetic task's input config in inherited cache path#292

Closed
fengmk2 wants to merge 2 commits intomainfrom
fix/merge-synthetic-input-config
Closed

feat: merge synthetic task's input config in inherited cache path#292
fengmk2 wants to merge 2 commits intomainfrom
fix/merge-synthetic-input-config

Conversation

@fengmk2
Copy link
Member

@fengmk2 fengmk2 commented Mar 25, 2026

Summary

  • Merge synthetic task's input config into parent's input_config in the Inherited cache path
  • Add e2e test verifying negative input globs exclude paths from fspy tracking

When a synthetic task (e.g., vp pack, vp build) runs inside a parent script task, the parent's cache config is inherited. Previously, only env and untracked_env were merged from the synthetic — the input config was silently dropped, causing negative glob exclusions to be ignored.

Now the synthetic's input globs are resolved relative to the workspace root and merged into the parent's input_config. This allows callers (like vite-plus) to pass negative globs (e.g., !node_modules/.vite-temp/**) that correctly exclude paths from fspy tracking.

Test plan

  • E2E test cache-negative-input-glob: verifies cache hit despite .vite-temp write when negative glob is configured
  • E2E test cache-negative-input-glob: verifies real source changes still cause cache miss
  • Existing vite_task_plan tests pass (25 unit + plan snapshots)

Closes voidzero-dev/vite-plus#1095

🤖 Generated with Claude Code

When a synthetic task (e.g., vp pack, vp build) runs inside a parent
script task, the parent's cache config is inherited. Previously, only
env and untracked_env were merged from the synthetic — the input config
was silently dropped, causing negative glob exclusions to be ignored.

Now the synthetic's input globs are resolved relative to the workspace
root and merged into the parent's input_config. This allows callers to
pass negative globs (e.g., !node_modules/.vite-temp/**) that correctly
exclude paths from fspy tracking.

Closes voidzero-dev/vite-plus#1095
@fengmk2 fengmk2 marked this pull request as draft March 25, 2026 03:09
@fengmk2 fengmk2 changed the title fix: merge synthetic task's input config in inherited cache path feat: merge synthetic task's input config in inherited cache path Mar 25, 2026
@fengmk2 fengmk2 requested a review from branchseer March 25, 2026 03:31
@fengmk2 fengmk2 marked this pull request as ready for review March 25, 2026 03:31
@fengmk2
Copy link
Member Author

fengmk2 commented Mar 25, 2026

#296

@fengmk2 fengmk2 closed this Mar 25, 2026
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.

Cache miss on repeated pack builds: task modifies its own input

1 participant