chore: streamline webhook reconciliation guide - #133
Conversation
|
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
This stack of pull requests is managed by Graphite. Learn more about stacking. |
Greptile SummaryThe PR consolidates webhook event guidance into the canonical reference and updates the reconciliation example for platform and orchestrator deliveries.
Confidence Score: 4/5The PR is not yet safe to merge because the shared callback example discards the endpoint owner that authenticated each delivery. The handler accepts either role's signature but collapses the result to a boolean, leaving downstream processing unable to distinguish platform and orchestrator registration context for shared event types. Files Needing Attention: use-cases/webhook-reconciliation.mdx Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart LR
P[Platform delivery] --> V[Verify against configured secrets]
O[Orchestrator delivery] --> V
V --> M[Retain matching endpoint owner]
M --> T{Test delivery?}
T -->|Yes| A[Acknowledge without state change]
T -->|No| H[Handle event with delivery ID and owner context]
Reviews (3): Last reviewed commit: "chore: streamline webhook reconciliation..." | Re-trigger Greptile |
2a1df99 to
88cffbb
Compare
99ee7ae to
ff1fc71
Compare
88cffbb to
af0d8b1
Compare
ff1fc71 to
05f8bd3
Compare
af0d8b1 to
d37f43f
Compare
d37f43f to
b138663
Compare
b138663 to
63fbe52
Compare
| const matches = WEBHOOK_SECRETS.map((secret) => | ||
| signatureMatches(rawBody, signature, secret), | ||
| ); | ||
| return matches.some(Boolean); |
There was a problem hiding this comment.
Endpoint owner context is lost
When one callback URL receives events for both a platform and an orchestrator, matchesKnownSignature reduces the matching secret to a boolean and passes no endpoint-owner identity to handleEvent, causing shared event types to be routed without knowing which registration authenticated the delivery.
Knowledge Base Used:

Problem
Webhook reconciliation repeats an obsolete event catalog and handler examples, so it can diverge from the current webhook contract.
REQ-420
Proposed Solution
Considerations
UAT
200for a verifiedx-request-network-test: truedelivery beforehandleEvent, and passx-request-network-deliveryto each business operation.client_id.linked,payment.confirmed,payment.failed,kyt.screening.completed,secure_payment.user_event, andsecure_payment.access_rejected, and that the setup note distinguishes the platform and orchestrator signing secrets.