Skip to content

fix: bound Gateway transaction polling - #46

Open
Mabolla wants to merge 1 commit into
circlefin:masterfrom
Mabolla:fix/bounded-gateway-polling
Open

fix: bound Gateway transaction polling#46
Mabolla wants to merge 1 commit into
circlefin:masterfrom
Mabolla:fix/bounded-gateway-polling

Conversation

@Mabolla

@Mabolla Mabolla commented Aug 24, 2026

Copy link
Copy Markdown

Summary

  • Bound Circle transaction confirmation polling to 90 attempts (~3 minutes).
  • Centralized Gateway attestation polling with a 60-attempt limit.
  • Added handling for non-successful Gateway API responses.
  • Reused the same bounded polling behavior across EOA and custodial transfer paths.

Why

The custodial transfer and transaction-confirmation paths used unbounded polling loops. If Circle or Gateway never returned a terminal state, a server request could remain pending indefinitely.

The EOA path already used a bounded polling loop. This change removes the duplicated logic and makes both transfer paths consistent.

Validation

  • npm run build
  • git diff --check

Existing upstream issues

npm ci currently fails on master because package.json and package-lock.json contain mismatched dependency versions, including @circle-fin/developer-controlled-wallets.

npm run lint also reaches an existing ESLint circular-configuration error. This PR does not modify dependency or lint configuration files.

@Mabolla
Mabolla marked this pull request as ready for review August 24, 2026 17:36
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.

1 participant