[VSCodeSweeper MVP — test only] Fallback on "legacy" diff algorithm if "advanced" is too slow - #8
[VSCodeSweeper MVP — test only] Fallback on "legacy" diff algorithm if "advanced" is too slow#8egamma wants to merge 4 commits into
Conversation
🤖 codex review — round 1VSCodeSweeper MVP codex cross-review of a copilot-generated fix (fork-only experiment). The fallback behavior works for the happy path, but it bypasses the cache eviction limit and changes cancellation behavior for requests canceled during the retry. These are correctness/maintainability issues introduced by the patch. Full review comments:
|
|
🔧 Round 1: pushed commits addressing the review above; re-reviewing. |
🤖 codex review — round 2VSCodeSweeper MVP codex cross-review of a copilot-generated fix (fork-only experiment). The fallback can exceed the requested diff computation time budget by running another full-timeout computation after the first one timed out. Review comment:
|
|
🔧 Round 2: pushed commits addressing the review above; re-reviewing. |
|
⏹ Reached the 2-round review cap. Remaining items (if any) need a human. |
|
|
🤖 codex review — round 1VSCodeSweeper MVP codex cross-review of a copilot-generated fix (fork-only experiment). The fallback logic mishandles the existing sentinel value for an infinite computation budget, causing the new fallback behavior to be skipped in that scenario. Review comment:
|
|
🔧 Round 1: pushed commits addressing the review above; re-reviewing. |
|
⏹ Reached the 1-round review cap. Remaining items (if any) need a human. |
Upstream issue: microsoft#216953
Change summary
When the advanced diff algorithm times out on large files, VS Code shows no diff instead of falling back to the legacy algorithm.
Validation
Write a test in the diff provider factory service tests that mocks the advanced algorithm to return quitEarly: true, then asserts that the provider retries with legacy and returns a non-empty diff result.
Branch
vscodesweeper/fix-216953· generated fix · review loop runs separately (codex review).