fix(komide): bound feed/episode fetch, fix backoff overflow, add coverage - #495
Merged
Conversation
…rage - #368: fetch_feed/download_episode enforce configurable caps (max_feed_bytes default 20 MiB, max_episode_bytes default 1 GiB) — Content-Length precheck plus per-chunk streaming total, aborting with ResponseTooLarge; download_episode streams to disk and cleans up a partial file on failure. - #369: exponential backoff clamps the exponent (min 63) and uses saturating arithmetic, so it no longer overflows after 64 failures. - #455: fetch_feed/download_episode call error_for_status after the 304 early-return, so 4xx/5xx bodies are no longer treated as content. - #370/#371/#456: coverage for the streaming episode download, the refresh_feed poll path, and the NotModified (304)/store_validators path, using an in-crate one-shot HTTP test server (no new workspace dep). Closes #368 Closes #369 Closes #370 Closes #371 Closes #455 Closes #456 Gate-Passed: kanon 0.1.5 +stages:fmt,check,clippy,nextest,lint sha:1dad62d4d5fc715b1481b59b3aaa6e9cd966824b
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Closes #368, #369, #370, #371, #455, #456. Configurable feed/episode size caps (20 MiB / 1 GiB) with streaming enforcement; clamped saturating backoff; error_for_status on feed/episode; refresh/304/store_validators coverage via an in-crate HTTP test server (no new dep). kanon gate --full green.