Skip to content

feat(ipc): runner ↔ tool IPC channel with disableCache#441

Draft
wan9chi wants to merge 1 commit into
execute-spawn-exit-pathsfrom
codex/ipc-disable-cache-core
Draft

feat(ipc): runner ↔ tool IPC channel with disableCache#441
wan9chi wants to merge 1 commit into
execute-spawn-exit-pathsfrom
codex/ipc-disable-cache-core

Conversation

@wan9chi

@wan9chi wan9chi commented Jun 11, 2026

Copy link
Copy Markdown
Member

Motivation

Runner-aware tools need a small, reliable way to tell the task runner when a run must not be cached. Dev-server style workflows are the clearest example: they may run successfully but intentionally do not produce a deterministic cacheable result. This PR lands the IPC channel with the one cache-affecting verb that is safe on its own: disableCache().

The client surface also needs to be compatible with tools that already call into the published wrapper, but env value serving is deliberately conservative here. getEnv and getEnvs remain unset/empty until #430 can serve those values together with cache fingerprinting, avoiding an unfingerprinted-env stale-cache trap.

Review focus

  • disableCache() is the only semantic cache behavior introduced in this PR.
  • The channel and client package exist so runner-aware tools have a stable handoff path.
  • Env-reading methods are present for compatibility, not for value serving yet.

Verification

  • cargo fmt --check
  • cargo shear --deny-warnings
  • cargo check --all-features
  • cargo clippy --all-features -- -D warnings
  • cargo test
  • cargo test -p vite_task_bin --test e2e_snapshots -- --ignored disable_cache

Draft while the stack is under review.

wan9chi commented Jun 11, 2026

Copy link
Copy Markdown
Member Author

Warning

This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

This stack of pull requests is managed by Graphite. Learn more about stacking.

@socket-security

socket-security Bot commented Jun 11, 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
Addedcargo/​napi@​3.9.08210093100100
Addedcargo/​napi-build@​2.3.29810093100100
Addedcargo/​napi-derive@​3.5.69910093100100

View full report

@wan9chi wan9chi force-pushed the codex/ipc-disable-cache-core branch from c248af8 to 0c0e509 Compare June 11, 2026 16:09
@wan9chi wan9chi force-pushed the codex/ipc-disable-cache-core branch from 0c0e509 to ba56768 Compare June 11, 2026 16:18
@wan9chi wan9chi force-pushed the codex/plan-prefix-env-context branch from 5a198fe to 8771d84 Compare June 11, 2026 16:46
@wan9chi wan9chi force-pushed the codex/ipc-disable-cache-core branch from ba56768 to 2ed4f28 Compare June 11, 2026 16:46
Base automatically changed from codex/plan-prefix-env-context to main June 11, 2026 17:02
@wan9chi wan9chi force-pushed the codex/ipc-disable-cache-core branch from 2ed4f28 to e04c5b9 Compare June 11, 2026 17:06
@wan9chi wan9chi changed the base branch from main to graphite-base/441 June 11, 2026 17:44
@wan9chi wan9chi force-pushed the codex/ipc-disable-cache-core branch from e04c5b9 to 8cbc27b Compare June 11, 2026 17:44
@wan9chi wan9chi changed the base branch from graphite-base/441 to execute-spawn-exit-paths June 11, 2026 17:44
@wan9chi wan9chi force-pushed the codex/ipc-disable-cache-core branch from 8cbc27b to b11487a Compare June 11, 2026 18:26
Add the runner-aware IPC protocol, embedded Node client addon, execution-time server lifecycle, and disableCache handling.

getEnv and getEnvs intentionally return unset/empty values until the follow-up env-tracking PR can fingerprint served values.

Co-Authored-By: OpenAI <codex@openai.com>
@wan9chi wan9chi force-pushed the codex/ipc-disable-cache-core branch from b11487a to c32ed5a Compare June 11, 2026 22:46
@wan9chi wan9chi force-pushed the execute-spawn-exit-paths branch from 8edca19 to b886a13 Compare June 11, 2026 22:46
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