Skip to content

Commit 5ac321c

Browse files
vvillait88claude
andcommitted
chore: bump to v2.5.17
Takes pympp 0.10.0, takes the agentscore-py we just published, and fixes a Stripe SPT example that could never have worked. pympp moves 0.9.1 to 0.10.0 inside the declared >=0.6,<1 range. The evidence for taking it rather than pinning under it: the executable pympp surface here is exactly two imports, Receipt and Credential, and both resolve on 0.10.0; the full suite passes identically on both versions with identical coverage; and on the Tempo side client.py, account.py and __init__.py are byte-identical between the two releases, so no signing or domain-separation behavior moved. The mppx_stripe module docstring told merchants to write `from mpp.server import Mppx` and `Mppx.create(methods=[...])`. Mppx has never existed in any pympp release, and Mpp.create takes a single `method` rather than a list, so the Stripe SPT example raised ImportError on the first line and then described an API shape that does not exist. Corrected against the installed package and pympp's own README, with the docstring imports executed to prove they resolve. The working code in mppx_server.py was always right; only the example was wrong. Also takes agentscore-py 2.6.3, published minutes ago. Verification: ruff check, ruff format --check, ty check, 1841 tests at 95.36% coverage, and osv-scanner v2.4.0 over uv.lock all green. uv.lock was re-locked after the version bump because it embeds the project's own version. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
1 parent e44e7c0 commit 5ac321c

3 files changed

Lines changed: 135 additions & 131 deletions

File tree

agentscore_commerce/stripe_multichain/mppx_stripe.py

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,24 @@
11
"""Stripe SPT method wrapper for ``pympp`` server merchants.
22
33
Wraps the ``mpp.methods.stripe.charge(...)`` boilerplate so vendors only declare config,
4-
not method instantiation. Returns the value vendors pass into ``Mppx.create(methods=[...])``.
4+
not method instantiation. Returns the value vendors pass into ``Mpp.create(method=...)``.
5+
6+
``Mpp.create`` takes ONE method per server, so a merchant accepting Stripe SPT alongside
7+
another rail builds a separate ``Mpp`` per method rather than passing a list. This mirrors
8+
what ``create_mppx_server`` does.
59
610
Example::
711
8-
from mpp.server import Mppx
9-
from mpp.methods.tempo import charge as tempo_charge
12+
from mpp.server import Mpp
1013
from agentscore_commerce.stripe_multichain import create_mppx_stripe
1114
1215
stripe_method = await create_mppx_stripe(
1316
profile_id=os.environ["STRIPE_PROFILE_ID"],
1417
secret_key=os.environ["STRIPE_SECRET_KEY"],
1518
)
1619
17-
mpp = Mppx.create(
18-
methods=[tempo_charge(currency=USDC_TEMPO, recipient=...), stripe_method],
20+
stripe_server = Mpp.create(
21+
method=stripe_method,
1922
secret_key=os.environ["MPP_SECRET_KEY"],
2023
)
2124
@@ -36,7 +39,7 @@ async def create_mppx_stripe(
3639
secret_key: str,
3740
payment_method_types: list[str] | None = None,
3841
) -> Any:
39-
"""Build the Stripe SPT method instance for ``Mppx.create(methods=[...])``.
42+
"""Build the Stripe SPT method instance for ``Mpp.create(method=...)``.
4043
4144
Args:
4245
profile_id: Stripe profile_id / network_id advertised in your ``stripe/charge``

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
44

55
[project]
66
name = "agentscore-commerce"
7-
version = "2.5.16"
7+
version = "2.5.17"
88
description = "Agentic commerce SDK for Python: identity middleware (FastAPI, Flask, Django, AIOHTTP, Sanic, ASGI) + payment helpers + 402 builders + discovery + Stripe multichain. The full merchant-side toolkit for AgentScore-powered agentic commerce."
99
readme = "README.md"
1010
license = "MIT"

0 commit comments

Comments
 (0)