Skip to content

feat(cache): disable cache on ctrl-c or stdin#105

Closed
branchseer wants to merge 3 commits intomainfrom
01-14-feat_cache_disable_cache_if_there_was_user_input
Closed

feat(cache): disable cache on ctrl-c or stdin#105
branchseer wants to merge 3 commits intomainfrom
01-14-feat_cache_disable_cache_if_there_was_user_input

Conversation

@branchseer
Copy link
Member

@branchseer branchseer commented Jan 14, 2026

No description provided.

Copy link
Member Author

branchseer commented Jan 14, 2026

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

@branchseer branchseer changed the base branch from 01-14-e2e_timeout_support to graphite-base/105 January 14, 2026 14:54
@branchseer branchseer force-pushed the 01-14-feat_cache_disable_cache_if_there_was_user_input branch from 29665a3 to 4c9922d Compare January 14, 2026 14:56
@branchseer branchseer changed the base branch from graphite-base/105 to 01-14-e2e_timeout_support January 14, 2026 14:56
@branchseer branchseer changed the title feat(session): add CacheUpdateStatus to ExecutionEventKind::Finish feat(fspy): add pid to TrackedChild and improve stdin/ctrl-c handling Jan 14, 2026
@branchseer branchseer changed the title feat(fspy): add pid to TrackedChild and improve stdin/ctrl-c handling feat(cache): disable cache on ctrl-c or stdin Jan 14, 2026
@branchseer branchseer marked this pull request as ready for review January 14, 2026 14:57
@branchseer branchseer requested a review from fengmk2 January 14, 2026 14:57
@branchseer branchseer changed the base branch from 01-14-e2e_timeout_support to graphite-base/105 January 14, 2026 15:29
branchseer and others added 2 commits January 14, 2026 15:30
Add CacheUpdateStatus enum to track whether cache was updated after task
execution and why. This provides visibility into cache behavior in the
Finish event.

- Add CacheNotUpdatedReason enum with CacheHit, CacheDisabled, NonZeroExitStatus
- Add CacheUpdateStatus enum with Updated and NotUpdated variants
- Include cache_update_status in ExecutionEventKind::Finish
- Update all Finish event emissions to include appropriate status

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
# Conflicts:
#	crates/vite_task_bin/tests/e2e_snapshots/fixtures/exit-codes/snapshots/multiple task failures returns exit code 1.snap
#	crates/vite_task_bin/tests/e2e_snapshots/fixtures/exit-codes/snapshots/single task failure returns task exit code.snap
@branchseer branchseer force-pushed the 01-14-feat_cache_disable_cache_if_there_was_user_input branch 2 times, most recently from c094fe0 to 6b987d7 Compare January 14, 2026 15:30
@graphite-app graphite-app bot changed the base branch from graphite-base/105 to main January 14, 2026 15:30
@branchseer branchseer force-pushed the 01-14-feat_cache_disable_cache_if_there_was_user_input branch from 6b987d7 to 2356bc0 Compare January 14, 2026 15:30
- Forward stdin from parent to child process concurrently with output draining
- Track whether stdin had data during execution
- Disable cache update when stdin had data (output may depend on input)
- Add CacheNotUpdatedReason::StdinDataExists variant
- Add e2e test for stdin passthrough functionality

This ensures tasks that read from stdin don't get incorrectly cached,
since their output may depend on the input data which we don't fingerprint.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
@branchseer branchseer force-pushed the 01-14-feat_cache_disable_cache_if_there_was_user_input branch from 50c0e12 to 26d24bf Compare January 15, 2026 02:07
@branchseer branchseer marked this pull request as draft January 15, 2026 04:04
@branchseer branchseer closed this Mar 13, 2026
@branchseer branchseer deleted the 01-14-feat_cache_disable_cache_if_there_was_user_input branch March 13, 2026 06:19
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.

2 participants