Skip to content

fix: Canonical operation http.payment_request is not declared - #214

Merged
brendanjryan merged 4 commits into
mainfrom
agricola/agr-2026-001
Aug 9, 2026
Merged

fix: Canonical operation http.payment_request is not declared#214
brendanjryan merged 4 commits into
mainfrom
agricola/agr-2026-001

Conversation

@mpp-agricola

@mpp-agricola mpp-agricola Bot commented Aug 9, 2026

Copy link
Copy Markdown
Contributor

Motivation

Agricola found that tempoxyz/pympp diverges from the canonical implementation: fix: Canonical operation http.payment_request is not declared

The Agricola ticket #93 contains the audit evidence, affected SDKs, and remediation lifecycle.

Summary

  • Reconciles capability:http.payment_request in the target SDK's idioms.
  • Adds implementation and regression coverage for AGR-2026-001.
  • Links the change to the Agricola ticket #93.

Key design considerations

  • Limits scope to the audited delta between wevm/mppx@b7ab48e38e3d and tempoxyz/pympp@7f7164afa55c.
  • Favors the target SDK's public API and conventions over a literal port.
  • Uses the stable agricola/agr-2026-001 automation branch.
  • Remains a draft until a maintainer reviews the generated changes.

Conformance-PR: tempoxyz/mpp-tools#133

@brendanjryan
brendanjryan marked this pull request as ready for review August 9, 2026 15:13

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 0e391a2903

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +156 to +157
if original_origin != current_origin:
error = PaymentError("Refusing to send payment credential across redirect")

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Preserve non-payment 402 responses after redirects

When a cross-origin redirect ends in an ordinary 402 without a valid, supported Payment challenge—for example, a Bearer-only or malformed WWW-Authenticate response—this check raises PaymentError and closes the response before challenge parsing. That regresses the transport's established behavior in test_returns_402_without_payment_header and test_returns_402_on_parse_error, where unmatched 402 responses are returned to the caller. Perform the origin rejection only after selecting a challenge that would actually produce a credential.

Useful? React with 👍 / 👎.

@brendanjryan
brendanjryan merged commit c027c9f into main Aug 9, 2026
18 of 20 checks passed
@github-actions github-actions Bot mentioned this pull request Aug 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant