hhimanshu-jha/webhook-replay-boundaryv0.1.0Public
Webhook replay boundary
Analyzes captured webhook delivery scenarios as a security and correctness boundary.
Read the full description
Use it before every handler or provider-integration release and after duplicate-effect or signature incidents. Four sibling probes verify that signatures bind the exact raw body, enforce signature and timestamp freshness, require explicit idempotency keys to be non-empty, stable across redeliveries, and unique across event IDs while covering provider retry horizons, and prove verification/claim/side-effect/ack ordering; a synthesis join exposes replay paths that isolated signature checks miss and orders fixes by severity. It reads JSON only, sends no webhook, executes no handler, writes no idempotency record, and makes no network calls. Run with input=evidence/webhook-scenarios.json or omit input for the bundled demo. Limits: HMAC-SHA256 is the portable modeled scheme, secrets in input should be synthetic or safely exported test material, database isolation and crash behavior are assessed only from declared scenario facts, an
Before you run it1 local tool
Everything here is checked on your machine when rote inspects the play. This page never learns what you have installed or which credentials you hold.
- ○python3local tool
Requires >=3.8. Run rote play inspect to check your host; unverified versions remain unknown.
Inputs1, all optional
rote asks for these before running and shows the defaults it will use.
- Input
inputWorkspace-relative webhook scenario JSON. Omit for the bundled demo; pass input=evidence/payment-webhook-replays.json for fresh captured test scenarios.
optionalstringexampleevidence/payment-webhook-replays.jsoncustom value allowed
What it changes
No write operations are declared in this version's manifest.
Credentials remain in the recipient's local rote vault; this page and the publisher never receive them.
Runtime details
- rote CLIversion 0.62.0 or newer
- Servicesnone declared
- Digest
sha256:af5c4b9dc100e4b30ae57f39090ab9b7f2037af0535af9536df3c541831181a4 - Archive size11868 bytes
- Published2026-09-04T12:26:49.089837+00:00
- Published withrote 0.78.0
Credential values and current readiness remain local. Opening this page never prompts for a credential, opens an authorization browser, or calls a service this play uses.
A play is a published, versioned automation package that runs on your own machine through rote, a free command-line tool. Opening this page installs nothing and runs nothing.