fix: record truncation event when condensation fails but truncation succeeds #10984
+2
−1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Fixes a bug where the
else ifchain inattemptApiRequest()prevented both error AND truncation events from being recorded when context condensation fails but sliding window truncation succeeds as a fallback.Problem
When
manageContext()returns both:error: The error message explaining why condensation failedtruncationId: The ID of the truncation that happened as fallbackOnly the error was shown because of the
else ifchain. This meant thesliding_window_truncationclineMessage was never created.Impact
Since
MessageManager.collectRemovedContextEventIds()looks forsliding_window_truncationclineMessages to find truncation IDs for cleanup:truncationParentstayed hidden foreverFix
Changed
else ifto separateifstatements so both events can be recorded:Testing
All 158 related tests pass: