feat: add bounded v2 capability gateway transport - #393
Merged
Merged
Conversation
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.
Adds bounded V2 issuance transport at the exact
/v2/submission-capabilitiespath while preserving V1 isolation. The gateway forwards the frozen intent bytes and MAC through the existing binding, enforces protocol headers, strict JSON lexical/shape checks, 32 KiB requests, 64 KiB responses, visible-header budgets, and one shared eight-second deadline. It strips non-allowlisted headers and rejects redirects, cookies, and content encoding without retrying or fabricating confirmation.Only the gateway source and its tests change. Issuer credential/MAC authentication and semantic validation, SDK confirmation verification, resources, configuration, and activation remain separate gates. The gateway returns only Content-Type and Cache-Control; local workerd tests demonstrate platform-generated Content-Length. Hidden wire duplicates and deployed edge headers/routes remain unqualified.
Validation:
npm run validate: lint, formatting, type checks, and all 2,354 tests across 146 files passed.make checkpassed all repository gates. Nativecodex review --base 8db5d879dd4ecde0109a9233e4c8cdfdde1412abfound no actionable correctness defects; its nested Miniflare run encountered a local named-host DNS limitation. The parent task's complete runtime/focused/full suites passed.Frozen inputs: SDK
e26320976d337582b8bb7dafcf9839efe1010774, base8db5d879dd4ecde0109a9233e4c8cdfdde1412ab, and approved response-header clarification v2 SHA2568e088dc9ab74017f17b20fcb47671fd807f2717e7169821c31faab4762466711.No deployment, route activation, credential/provider operation, or end-to-end issuance qualification is included. HTTP 200 transport is not proof of minting or confirmed acceptance. P5/P6 and deployed P10 qualification remain gated.