Repository navigation
fix(webhooks)!: forward-port AdCP 3.2 challenge payload - #1899
Merged
rachitm022 merged 1 commit intoNov 13, 2026
Merged
Conversation
BREAKING CHANGE: Webhook challenge helpers now require seller_agent_url and event_types, and proof challenges require an RFC 9421 WebhookSender; pass legacy delivery authentication alongside that sender.
rachitm022
requested review from
KonstantinMirin and
bokelley
as code owners
November 13, 2026 13:59
There was a problem hiding this comment.
Ladon verdict: Approve
Approve.
Clean forward-port of #1897. The reviewer found no Critical/High/Medium findings.
Checks that passed review:
- Breaking marker is correct:
fix(webhooks)!:carries the breaking signal for public exportschallenge_webhook_destinationandcreate_webhook_challenge_payload(snapshot lines 689/695), both of which gain required params (seller_agent_url/event_types) andchallenge_webhook_destinationnow requiressender. Satisfies the mandatory semver-signal gate. - Wire-shape fidelity: payload at webhooks.py:301-309 matches core/webhook-challenge.json 3.3.0-beta.5 exactly.
- No credential leak: legacy credentials are fingerprinted, not transmitted (asserted at tests/test_webhook_challenge.py:647); dropping
_validate_header_valueon the legacy path is safe since the credential never reaches a header. - Schema validation fails closed (RuntimeError on missing validator); default token generation stays conformant with the schema pattern.
Decision-rule walkthrough: no critical/high findings (row 1 n/a); gated_paths false (row 2 n/a); high_risk reasons are all (modified) with no medium findings, so rows 3-5 do not fire; no prior decision (row 6 n/a); no no-auto-approve team match (row 7 n/a); zero medium findings (row 8 n/a). Falls through to row 9 → approve. The high_risk flag on src/adcp/signing/** is a heuristic LOOK signal only; modifications with no medium-or-higher findings are presumed safe.
rachitm022
deleted the
rmatani/ai-21266-fix-python-sdk-webhook-challenge-payload
branch
November 13, 2026 14:58
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.
Summary
nextseller_agent_url,delivery_auth, andevent_typeswhile preserving deprecated Bearer/HMAC delivery metadatanextsigning-profile selection and require a sender capable of the configured profileThis must land before release PR #1892 so
10.0.0b16contains the fix.BREAKING CHANGE: Webhook challenge helpers now require
seller_agent_urlandevent_types, and proof challenges require an RFC 9421 sender.Refs AI-21266.
Verification
/etc/os-releaseor/procand will be exercised by Linux CISource
Forward-port of the implementation reviewed and merged in #1897, with conflict resolution for the AdCP 3.3 signing-profile support already present on
next.