test(gateway): preserve coded representation metadata - #448
Merged
seonghobae merged 5 commits intoSep 24, 2026
Merged
seonghobae merged 5 commits into
seonghobae merged 5 commits into
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This was referenced Sep 23, 2026
seonghobae
marked this pull request as ready for review
September 24, 2026 06:02
seonghobae
merged commit Sep 24, 2026
cd3c598
into
test/440-gateway-header-mediation-red
3 checks passed
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.
Refs #447. Test-only child of #441; #441 remains the sole production gateway-mediation writer.
Finding and executed RED
Wardnet's generic proxy preserved representation bytes but historically omitted
Content-Encodingin both directions. With the activereqwestfeature set (default-features = false,rustls-tls,multipart,json,stream; no automatic gzip/brotli/deflate decoding), strippingContent-Encoding: gzipwhile relaying coded bytes changes the representation contract rather than removing hop-by-hop metadata.RFC 9110 §§5.2-5.3, 8.1 and 8.4 define Content-Encoding as ordered/list-valued representation metadata and distinguish it from
Transfer-Encoding.The branch changes only
tests/gateway_content_encoding.rs: real loopback request/response cases require byte-identical coded bytes andContent-Encoding: gzipto cross together and verify dynamicConnectionnominations still strip otherwise admitted representation metadata.Historical exact
44c03a0fe83b7199ebad43cff0e009646f7554f1reached hosted CI35893375073but stopped at rustfmt. Formatter-only exact8a254028faf4db0485ba8710945c2781a876fbedthen executed CI35917178809, rust job107371632198: formatting and all 151 existing library unit tests passed before both real loopback hostile cases failed semantically. In each direction coded bytes crossed Wardnet while the expectedContent-Encoding: gzipwas absent (left: None,right: Some("gzip")). This is the valid #447 RED.Parent repair and non-force adoption
The minimum causal production repair belongs only to #441. Current parent exact
16a0d0807692203dabc83823793dcefef087c661addscontent-encodingto the bounded request/response mediation allowlists, preserves ordered multiplicity, retains dynamicConnectionnomination stripping, and does not enable decompression or acquire EgressWeave destination/DNS/peer/redirect/proxy/TLS/resource authority.This child adopted that repaired parent non-force through ordinary restack PR #449. Current exact child is
30b52cae32b7022237c552aa6224ebd7d9dfb632, base exactly#441@16a0d0807692203dabc83823793dcefef087c661; the effective child delta remains onlytests/gateway_content_encoding.rs.Fresh exact-child CI
35941616793is queued. No GREEN is claimed until this unchanged exact head executes the request/response representation assertions successfully. If GREEN, this test-only child may be marked Ready and normally merged into #441 with expected-head protection; the resulting new #441 head must then reacquire all exact-head evidence.No production repair in this child; no foreign-owner logic, central workflow copy, mutable foreign dependency, source copy, force update, destructive rebase, self/model approval, gate weakening, synthetic status, blind rerun or routine bypass.
Traceability: RFC 9110 §§5.2-5.3, 8.1, 8.4; #441; #446; #447; #449.