Skip to content

Conversation

@Jon-edge
Copy link
Collaborator

@Jon-edge Jon-edge commented Jan 22, 2026

  • More surprise API changes from Infinite, integrate to allow KYC form submission on Edge's side:
    /customer endpoint changed personalInfo -> individualData

  • Properly pre-populate nationality

  • Add extended form input (DOB, SSN, etc) and supporting UI

  • Fix draft/pending KYC workflow (going back on incomplete web form KYC) to allow revisiting the KYC url.

CHANGELOG

Does this branch warrant an entry to the CHANGELOG?

  • Yes
  • No

Dependencies

none

Requirements

If you have made any visual changes to the GUI. Make sure you have:

  • Tested on iOS device
  • Tested on Android device
  • Tested on small-screen device (iPod Touch)
  • Tested on large-screen device (tablet)

Note

Aligns ramp flows with Infinite’s latest API and improves KYC/banking UX with validation, prefills, and better pending handling.

  • Infinite API: Rename personalInfoindividualData, include phone, dateOfBirth, taxIdentificationNumber, nationality; add DRAFT KYC status
  • KYC workflow: Submit new fields, prefill nationality, handle incomplete statuses; pending scene can show "Complete KYC" button and re-check after webview
  • New RampKycFormScene: Adds phone, dateOfBirth (with date picker), and ssn fields with formatting/validation; improved field navigation and errors
  • Bank form: Accepts initialFirstName/LastName, sets default account nickname, reorganized sections; DevTestScene prepopulates from vault
  • UI components: FilledTextInput gains hideCharacterCount; new form field types (phone, date, ssn) with defaults
  • Region select: Auto-opens country modal; improved error handling
  • Vault/locales: Add getPersonalInfo and new strings/placeholders

Written by Cursor Bugbot for commit 3da81c8. This will update automatically on new commits. Configure here.


cursor[bot]

This comment was marked as outdated.

@Jon-edge Jon-edge force-pushed the jon/fix/hopefully-final-infinite-api branch from fb5284e to eb5b925 Compare January 22, 2026 06:18
@Jon-edge Jon-edge marked this pull request as draft January 22, 2026 07:21
@Jon-edge Jon-edge force-pushed the jon/fix/hopefully-final-infinite-api branch 2 times, most recently from 8696a2d to fd06d7a Compare January 22, 2026 20:13
@Jon-edge Jon-edge marked this pull request as ready for review January 22, 2026 20:44
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: fd06d7a4eb

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@Jon-edge Jon-edge changed the title Update to new API spec Update to new API spec, Final changes Jan 22, 2026
@Jon-edge Jon-edge force-pushed the jon/fix/hopefully-final-infinite-api branch from fd06d7a to f9c6477 Compare January 22, 2026 20:58
cursor[bot]

This comment was marked as outdated.

@Jon-edge Jon-edge marked this pull request as draft January 22, 2026 21:33
@Jon-edge Jon-edge force-pushed the jon/fix/hopefully-final-infinite-api branch from f9c6477 to 0b987ef Compare January 22, 2026 21:37
@Jon-edge Jon-edge marked this pull request as ready for review January 22, 2026 22:10
cursor[bot]

This comment was marked as outdated.

@Jon-edge Jon-edge changed the title Update to new API spec, Final changes Update to new API spec, final touchups Jan 22, 2026
@Jon-edge Jon-edge changed the title Update to new API spec, final touchups Infinite: Update to new API spec, final touchups Jan 22, 2026
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 0b987ef1bf

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@Jon-edge Jon-edge force-pushed the jon/fix/hopefully-final-infinite-api branch from 0b987ef to 83e4a8e Compare January 22, 2026 22:47
cursor[bot]

This comment was marked as outdated.

@Jon-edge Jon-edge marked this pull request as draft January 22, 2026 23:17
@Jon-edge Jon-edge force-pushed the jon/fix/hopefully-final-infinite-api branch 5 times, most recently from aeb7411 to c4c130c Compare January 23, 2026 00:16
@Jon-edge Jon-edge marked this pull request as ready for review January 23, 2026 00:47
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: c4c130cba9

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

cursor[bot]

This comment was marked as outdated.

@Jon-edge Jon-edge force-pushed the jon/fix/hopefully-final-infinite-api branch from c4c130c to 2c0b096 Compare January 23, 2026 01:06
Copy link
Contributor

@swansontec swansontec left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Found a few small things.

Jon-edge added a commit that referenced this pull request Jan 23, 2026
Pass onComplete/onClose directly to onPress, dropping the handler wrappers.

Per PR comment: #5916 (comment)
Jon-edge added a commit that referenced this pull request Jan 23, 2026
Extract runOnce helper for concurrency logic in onComplete callback.

Per PR comment: #5916 (comment)
Jon-edge added a commit that referenced this pull request Jan 23, 2026
Use explicit error type annotation in catch handlers.
Change formData type from any to unknown.

Per PR comments:
- #5916 (comment)
- #5916 (comment)
- #5916 (comment)
Jon-edge added a commit that referenced this pull request Jan 23, 2026
Use explicit error type annotation in catch handlers.
Change formData type from any to unknown.

Per PR comments:
- #5916 (comment)
- #5916 (comment)
- #5916 (comment)
@Jon-edge Jon-edge force-pushed the jon/fix/hopefully-final-infinite-api branch from f77cd7b to a57c037 Compare January 23, 2026 23:46
Jon-edge added a commit that referenced this pull request Jan 23, 2026
Pass onComplete/onClose directly to onPress, dropping the handler wrappers.

Per PR comment: #5916 (comment)
Jon-edge added a commit that referenced this pull request Jan 23, 2026
Extract runOnce helper for concurrency logic in onComplete callback.

Per PR comment: #5916 (comment)
Jon-edge added a commit that referenced this pull request Jan 23, 2026
Use explicit error type annotation in catch handlers.
Change formData type from any to unknown.

Per PR comments:
- #5916 (comment)
- #5916 (comment)
- #5916 (comment)
@Jon-edge Jon-edge force-pushed the jon/fix/hopefully-final-infinite-api branch from a57c037 to 1f9504b Compare January 23, 2026 23:46
Jon-edge added a commit that referenced this pull request Jan 24, 2026
Use explicit error type annotation in catch handlers.
Change formData type from any to unknown.

Per PR comments:
- #5916 (comment)
- #5916 (comment)
- #5916 (comment)
@Jon-edge Jon-edge force-pushed the jon/fix/hopefully-final-infinite-api branch 2 times, most recently from ccf3d09 to fd57cc9 Compare January 24, 2026 00:14
// Status changed but not yet active - navigate back and re-show
// pending scene with updated status. This ensures the UI reflects
// the new status and starts polling if appropriate (e.g. IN_REVIEW).
navigationFlow.goBack()
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Extra goBack causes unexpected navigation from root screen

High Severity

The navigationFlow.goBack() call at line 331 is redundant and problematic. When openKycWebView completes, the navigation has already returned to the root screen (because rampPending was replaced by the webview via navigation.replace(), then the webview closed via goBack()). Calling goBack() again attempts to navigate back from root, which could unexpectedly exit the entire ramp flow or navigate to an unintended screen.

Fix in Cursor Fix in Web

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this extra goBack Cursor noticed a real concern?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not valid, though it's true the code is a bit convoluted. Just added a comment

Copy link
Contributor

@swansontec swansontec left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems good, except that Cursor found one extra thing. Not sure if it's real or not.

// Status changed but not yet active - navigate back and re-show
// pending scene with updated status. This ensures the UI reflects
// the new status and starts polling if appropriate (e.g. IN_REVIEW).
navigationFlow.goBack()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this extra goBack Cursor noticed a real concern?

`/customer` endpoint changed `personalInfo` -> `individualData`
Previously only gave the option to go back to the `RampSelectOptionScene` when the KYC was incomplete.
@Jon-edge Jon-edge force-pushed the jon/fix/hopefully-final-infinite-api branch from fd57cc9 to cb1bc05 Compare January 24, 2026 00:50
TODO: Replace the entire instructional scene with a country selection list  instead of a modal in the event there is no region selected.

Excess instruction manuals and modals should be avoided and this is a place it can easily be avoided.
"Account Name" confusing. Renamed to "Account Nickname"
@Jon-edge Jon-edge force-pushed the jon/fix/hopefully-final-infinite-api branch from cb1bc05 to 3da81c8 Compare January 24, 2026 00:58
@Jon-edge Jon-edge enabled auto-merge January 24, 2026 00:58
Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.

const isKycIncomplete =
initialStatus === 'PENDING' ||
initialStatus === 'NEED_ACTIONS' ||
initialStatus === 'DRAFT'
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Status change from IN_REVIEW to incomplete causes error

Low Severity

The isKycIncomplete flag is computed once based on initialStatus and determines whether to show the "Complete KYC" button and whether to reject on non-approved statuses. If a user starts with IN_REVIEW status (where isKycIncomplete is false) and the backend later requests additional information (changing to NEED_ACTIONS), the workflow rejects with an error instead of allowing the user to tap "Complete KYC". The status check at lines 303-308 only keeps the flow alive for incomplete statuses if the initial status was incomplete.

Additional Locations (1)

Fix in Cursor Fix in Web

@Jon-edge Jon-edge merged commit 430b62b into develop Jan 24, 2026
4 checks passed
@Jon-edge Jon-edge deleted the jon/fix/hopefully-final-infinite-api branch January 24, 2026 01:18
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.

3 participants