Skip to content

feat(indexer): add verification webhook delivery and fix reorg detect… - #470

Open
Whiznificent wants to merge 2 commits into
ToluLabs:mainfrom
Whiznificent:feat/indexer-verification-webhooks
Open

feat(indexer): add verification webhook delivery and fix reorg detect…#470
Whiznificent wants to merge 2 commits into
ToluLabs:mainfrom
Whiznificent:feat/indexer-verification-webhooks

Conversation

@Whiznificent

Copy link
Copy Markdown

…ion order

Outbound webhook delivery (webhook.ts) fans Verified/Revoked events out to configured endpoints with HMAC signing, bounded retries and per-endpoint isolation; config gains WEBHOOK_URLS/WEBHOOK_SECRET/WEBHOOK_TIMEOUT_MS.

Fix reorg detection order in tick(): the finality early-exit ran before the cursor-vs-head check, so a reorg that moved the head below the cursor was silently swallowed instead of triggering rollback. Reorg check now runs first. Corrected the reconcile test expectation: the mock re-emits GA2's event inside the ceiling, so it is re-indexed at ledger 25 (cursor 25).

Type of change

  • Bug fix
  • New feature / credential type
  • Refactor / cleanup
  • Docs
  • CI / tooling

Merge requirements

  • CI is greencargo test (contracts), pnpm tsc --noEmit (frontend), pnpm build (frontend), circuit tests — all green
  • Greptile confidence ≥ 4/5 — all review comments addressed, no unresolved threads
  • Circuit changes: fixtures/<type>/ artifacts updated
  • No NEXT_PUBLIC_ prefix on server-only env vars
  • No identity fields stored or logged after KYC provider call
  • prehash:false preserved on any issuer signing path touched
  • Issuer private key never referenced from client-bundled code

✅ Merge requirements

  • All CI checks pass (contracts / frontend / circuits as applicable)
  • Every Greptile review comment is addressed — no unresolved review threads
  • Greptile confidence score is 4/5 or higher

Closes #407

…ion order

Outbound webhook delivery (webhook.ts) fans Verified/Revoked events out to
configured endpoints with HMAC signing, bounded retries and per-endpoint
isolation; config gains WEBHOOK_URLS/WEBHOOK_SECRET/WEBHOOK_TIMEOUT_MS.

Fix reorg detection order in tick(): the finality early-exit ran before the
cursor-vs-head check, so a reorg that moved the head below the cursor was
silently swallowed instead of triggering rollback. Reorg check now runs
first. Corrected the reconcile test expectation: the mock re-emits GA2's
event inside the ceiling, so it is re-indexed at ledger 25 (cursor 25).

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
@drips-wave

drips-wave Bot commented Aug 31, 2026

Copy link
Copy Markdown

@Whiznificent Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Feature: webhook delivery from the indexer for verification events

1 participant