Skip to content

Refactors composer to store hunks and safety state in webview host#4583

Merged
ramin-t merged 1 commit intomainfrom
chore/composer-diffs
Oct 15, 2025
Merged

Refactors composer to store hunks and safety state in webview host#4583
ramin-t merged 1 commit intomainfrom
chore/composer-diffs

Conversation

@ramin-t
Copy link
Contributor

@ramin-t ramin-t commented Sep 11, 2025

Closes #4667

This is to prevent entire diffs being passed back from the app via IPC for commands like auto-compose, generate commit message, finish and commit, etc.

One thing I noticed is that the diff contents have artifacts from serialization and this can break the safety checks and the diff hashes, causing false positive errors on safety state. Also, it seems expensive to pass massive payloads like this over IPC for these ops anyway.

We still need to pass the hunks with their diffs through to the app for rendering content, but that should be the only purpose of the hunk contents in app state.

Lots of regression risk here i.e. with undo/reset history, reload, all AI ops, finish & commit, etc. so lots of testing required.

@ramin-t ramin-t requested review from d13 and eamodio September 11, 2025 17:52
@ramin-t ramin-t force-pushed the chore/composer-diffs branch from 9878714 to 8338113 Compare September 23, 2025 22:31
@ramin-t ramin-t marked this pull request as ready for review October 2, 2025 14:36
@eamodio eamodio added this to the 17.6 milestone Oct 3, 2025
@ramin-t ramin-t force-pushed the chore/composer-diffs branch from 8338113 to 8efad91 Compare October 8, 2025 17:02
@d13 d13 removed this from the 17.6 milestone Oct 9, 2025
@ramin-t ramin-t merged commit a50e763 into main Oct 15, 2025
4 checks passed
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.

Composer refactor: diffs should not be passed from app to host for AI operations

3 participants