Skip to content

feat(cache): resolve remote cache configuration - #727

Draft
wan9chi wants to merge 1 commit into
mainfrom
remote-cache-config
Draft

wan9chi wants to merge 1 commit into
mainfrom
remote-cache-config

Conversation

@wan9chi

@wan9chi wan9chi commented Sep 17, 2026

Copy link
Copy Markdown
Member

Motivation

Remote cache integration needs an effective endpoint and mode on each planned execution. Resolving settings only at process startup would miss flags and environment overrides in nested vp run commands.

Add workspace remoteCache.url, task-level remoteCache: false, --remote-cache=off/read/read-write, and the VP_REMOTE_CACHE and VP_REMOTE_CACHE_URL environment variables. Top-level and nested invocations share resolution: flags override the current environment, nested overrides stay scoped to their branch, and the default is read with an endpoint or off without one. Local cache disabling also disables remote access.

Validate modes and endpoints during planning, and keep remote controls out of task environments and cache fingerprints. Plan snapshots cover precedence, inheritance, sibling isolation, exclusions, errors, and Windows environment-name casing. Existing plan and execution snapshots remain unchanged.

This PR adds configuration resolution only. Remote transfers are not implemented, and CLI help states that limitation.

@wan9chi wan9chi changed the title remote cache config feat(cache): resolve remote cache configuration Sep 17, 2026
Co-authored-by: GPT-6 <codex@openai.com>
@wan9chi
wan9chi force-pushed the remote-cache-config branch from 7855149 to e96231c Compare September 17, 2026 05:57
@socket-security

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
Addedcargo/​syn@​3.0.6100100100100100
Addedcargo/​url@​2.5.8100100100100100

View full report

@github-actions

Copy link
Copy Markdown

fspy benchmark

linux

dynamic/launch             change  +0.33%  [-15.24% .. +17.36%]  overhead  +289.74%
dynamic/access             change  +0.00%  [ -4.43% ..  +4.59%]  overhead   +17.22%
dynamic/access-relative    change  +0.33%  [ -2.42% ..  +4.25%]  overhead   +65.79%
dynamic/access-contended   change  +0.19%  [ -8.85% ..  +6.25%]  overhead   +55.02%
static/launch              change  +0.01%  [ -8.50% .. +14.70%]  overhead  +654.09%
static/access              change  -0.07%  [ -0.96% ..  +0.70%]  overhead +1427.09%
static/access-relative     change  +0.23%  [ -1.17% ..  +1.23%]  overhead +1940.84%
static/access-contended    change  +0.40%  [ -0.29% ..  +1.32%]  overhead +1819.76%

macos

dynamic/launch             change  -0.42%  [ -3.29% ..  +3.01%]  overhead  +217.83%
dynamic/access             change  +0.00%  [ -4.01% ..  +2.50%]  overhead    +5.31%
dynamic/access-relative    change  -0.11%  [ -2.39% ..  +1.79%]  overhead  +263.96%
dynamic/access-contended   change  -0.85%  [ -5.13% ..  +2.76%]  overhead    +3.78%

windows

dynamic/launch             change  -0.61%  [ -3.63% ..  +2.38%]  overhead   +24.79%
dynamic/access             change  +0.00%  [ -0.75% ..  +0.97%]  overhead    +1.16%
dynamic/access-relative    change  +0.00%  [ -0.91% ..  +0.76%]  overhead    +1.12%
dynamic/access-contended   change  -0.18%  [ -1.43% ..  +1.10%]  overhead    +0.92%

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.

1 participant