CONFIGURE · DELIVER · RECONCILE
A2A push configuration: validate, deliver and inspect
Watch individual webhook attempts. Change authentication, timeouts and retry policy; inspect exactly what the receiver applied.
Payload and attempt inspector
Receiver effects
Your experiment
Keep the matched credential and expected task ID, then run the baseline. Four first acknowledgements are lost, so eight attempts produce four effects. Toggle receiver deduplication off: repeated attempts now cause duplicate effects. A high acknowledgement count alone does not prove safe processing.
Delivery decision trace
Test a failure, not just the happy path
Change the credential fixture to Wrong or uncheck the expected task ID. The receiver must apply nothing. Enter a localhost URL: this fixture rejects it before dispatch. Delete the configuration at 3 seconds: no later attempts start, but the request already sent at 2 seconds can still arrive.
Raise the outage duration to force retries. Disable older-sequence protection and inspect whether delayed updates regress the receiver’s state. Receipt deduplication and ordering protection solve different problems. The fixture event ID and sequence number are application-defined fields, not a claimed mandatory A2A wire schema.
Exact teaching policy
Four updates are emitted at 2, 12, 22 and 32 modeled seconds. Retries wait initial backoff × 2^(attempt − 1), without jitter. A 503 or sender timeout can retry; a received 401/404 stops under this policy. Arrival exactly at the timeout boundary is processed first. A late response does not retract an already scheduled retry. “Exhausted” describes the sender budget, not proof that the receiver performed no work.
The one-minute inspection spreads the complete bounded delivery history over 60 wall-clock seconds at 1×. The modeled delivery clock is shown separately. Changing parameters resets the experiment; use 0.5× for a slower two-minute inspection. No automatic playback occurs.
Offline conceptual lab, not an A2A SDK, complete wire-schema validator, real webhook, credential verifier or SSRF security library. URL validation is a strict allowlist for one reserved example endpoint; no DNS, HTTP, signatures or real tokens are used. Request/response delay, retry limits and error handling are declared fixture choices. The A2A specification describes webhook delivery and receiver validation; this experiment isolates those reliability concepts without claiming full protocol conformance. A2A specification: push notification delivery and security.
Configure before sending
Start from common baseline settings and inspect the four emitted updates. First successful acknowledgments are lost, so the sender repeats delivery while receiver deduplication suppresses repeated effects. Disable Ignore already-seen event IDs to observe duplicate applications, then restore it. Replace the callback with a localhost address to confirm that this fixture blocks dispatch rather than contacting your machine. These are controlled delivery outcomes, not benchmark measurements or evidence that a real callback deployment is safe from request forgery.
Separate setup from receiver policy
Fixture callback URL accepts only the reserved HTTPS receiver.example/hook address; no network request is sent. Agent advertises push support can block dispatch before delivery. Receiver credential fixture selects matched, wrong or missing credentials without accepting secrets. Payload names the expected task controls a separate task-identity check. Wrong credentials or a wrong task produce permanent refusal under this local policy rather than receiver effects. These gates are not a complete authentication or callback-security implementation.
Set timing and retries
Receiver arrival / response delay schedules delivery. Sender timeout is independent and cannot undo a request already sent. Receiver unavailable until creates a temporary 503 response window. Maximum attempts per update includes the first attempt. Initial exponential backoff doubles between successive retries without jitter. Arrival exactly at its deadline is handled before timeout. Lose first successful ACK for each update makes the sender uncertain even after the receiver accepted work. A late response does not remove a newer retry that was already scheduled.
Protect effects and inspect the trace
Ignore already-seen event IDs suppresses repeated effects; Ignore older fixture sequence numbers prevents a delayed older update from regressing state. These are different protections. Delete config at suppresses future sends and retries from that model time, but cannot recall a dispatched request. Common baseline settings restores shared defaults. Choose update, or click a row, to inspect its payload and attempts. Play reveals the complete bounded history over sixty inspection seconds; Pause, Next decision, Restart, Speed and Inspection time control that view. Sender acknowledgment, exhausted budget and receiver effects must be read separately. The application-defined event IDs and sequence numbers are teaching fields, not a claim that every A2A version mandates this wire schema.