From 91a032fb823f9d9f4f8132709703b86fa264f46d Mon Sep 17 00:00:00 2001 From: Albert Mavashev Date: Wed, 13 May 2026 15:10:51 -0400 Subject: [PATCH] docs: link runcycles.io blog post + AP2 Discussion #262 from README MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adds a Background section above the existing Documentation list with two cross-links: - Blog post: "Preventing AP2 Open-Mandate Overuse with Runtime Idempotency" — engineering write-up of the keying decision (open_mandate_hash vs transaction_id), post-PSP commit uncertainty, and the AP2 §6 consume-once defense. URL is the canonical we set in the post's frontmatter (/blog/ap2-open-mandate-consume-once-runtime-idempotency). - AP2 GitHub Discussion #262 — the Show-and-tell thread on the upstream AP2 repo, with two spec-level open questions (hash canonicalization, adapter shape outside the SDK). Note: the blog URL goes live when runcycles/docs#638 merges and deploys. Merge order should be: docs #638 first, then this PR. --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index bc997c7..94f0c35 100644 --- a/README.md +++ b/README.md @@ -263,6 +263,11 @@ pytest --cov=runcycles_ap2 --cov-fail-under=95 CI runs all three checks on Python 3.10 and 3.12 for every push and pull request. See [`AUDIT.md`](AUDIT.md) for the protocol-conformance posture, [`CHANGELOG.md`](CHANGELOG.md) for the release log. +## Background + +- [Preventing AP2 Open-Mandate Overuse with Runtime Idempotency](https://runcycles.io/blog/ap2-open-mandate-consume-once-runtime-idempotency) — engineering write-up of the keying decision (`open_mandate_hash` vs `transaction_id`), post-PSP commit uncertainty, and the AP2 §6 consume-once defense. +- [AP2 GitHub Discussion #262](https://github.com/google-agentic-commerce/AP2/discussions/262) — context and a couple of spec-level questions (hash canonicalization, adapter shape) posted on the upstream AP2 repo. + ## Documentation - [AP2 Protocol Spec](https://ap2-protocol.org/) — Google's upstream specification