Skip to content

Conversation

@JiahuiWho
Copy link
Contributor

@JiahuiWho JiahuiWho commented Dec 4, 2025

What

  • add /embedded-wallets/profile to pass is_verification_pending and pending_asset to FE
  • remove clientAttributionRequired check during SEP-45 challenge creation

Why

  • is_verification_pending and pending_asset are needed for FE to initiate the SEP-24 deposit flow
  • clientAttributionRequired is temporarily removed due to blocking the FE’s SEP‑45 flow:
    • this flag is configured through Sep10ClientAttributionRequired, defaulting to true.
    • embedded wallet FE won't supply client_domain because it’s self hosted inside SDP, there’s no separate client domain TOML or signing key to reference.

Known limitations

N/A

Checklist

  • Title follows SDP-1234: Add new feature or Chore: Refactor package xyz format. The Jira ticket code was included if available.
  • PR has a focused scope and doesn't mix features with refactoring
  • Tests are included (if applicable)
  • CHANGELOG.md is updated (if applicable)
  • CONFIG/SECRETS changes are updated in helmcharts and deployments (if applicable)
  • Preview deployment works as expected
  • Ready for production

@JiahuiWho JiahuiWho temporarily deployed to Internal SEP Tests December 4, 2025 19:21 — with GitHub Actions Inactive
@JiahuiWho JiahuiWho temporarily deployed to Receiver Registration - E2E Integration Tests (Stellar) December 4, 2025 19:21 — with GitHub Actions Inactive
@stellar-jenkins
Copy link

@JiahuiWho JiahuiWho temporarily deployed to Internal SEP Tests December 4, 2025 19:48 — with GitHub Actions Inactive
@JiahuiWho JiahuiWho temporarily deployed to Receiver Registration - E2E Integration Tests (Stellar) December 4, 2025 19:48 — with GitHub Actions Inactive
@stellar-jenkins
Copy link

Copy link
Contributor

@philipliu philipliu left a comment

Choose a reason for hiding this comment

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

Discussed offline -- we're going to move the logic into a separate profile handler which will serve things like SEP-24 status as well as org logo, receiver info, supported assets, etc.

AND p.type = $2
AND p.status = ANY($3)
ORDER BY p.updated_at DESC
LIMIT 1
Copy link
Contributor

Choose a reason for hiding this comment

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

Can there be multiple pending assets?

Copy link
Contributor Author

@JiahuiWho JiahuiWho Dec 8, 2025

Choose a reason for hiding this comment

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

Yes, there can be, but we only need one, and we don’t care which one the user verified with.

@JiahuiWho JiahuiWho temporarily deployed to Internal SEP Tests December 8, 2025 20:04 — with GitHub Actions Inactive
@JiahuiWho JiahuiWho temporarily deployed to Receiver Registration - E2E Integration Tests (Stellar) December 8, 2025 20:04 — with GitHub Actions Inactive
@JiahuiWho JiahuiWho changed the title SDP-1619: Add is_verification_pending and pending_asset to embedded wallet refresh token SDP-1619: Add /embedded-wallets/profile to pass verification info Dec 8, 2025
@stellar-jenkins
Copy link

@JiahuiWho JiahuiWho temporarily deployed to Internal SEP Tests December 8, 2025 20:22 — with GitHub Actions Inactive
@JiahuiWho JiahuiWho temporarily deployed to Receiver Registration - E2E Integration Tests (Stellar) December 8, 2025 20:22 — with GitHub Actions Inactive
@stellar-jenkins
Copy link

@JiahuiWho JiahuiWho temporarily deployed to Internal SEP Tests December 8, 2025 20:39 — with GitHub Actions Inactive
@JiahuiWho JiahuiWho temporarily deployed to Receiver Registration - E2E Integration Tests (Stellar) December 8, 2025 20:39 — with GitHub Actions Inactive
@stellar-jenkins
Copy link

embeddedWalletModel := EmbeddedWalletModel{dbConnectionPool: dbConnectionPool}

DeleteAllEmbeddedWalletsFixtures(t, ctx, dbConnectionPool)
defer DeleteAllEmbeddedWalletsFixtures(t, ctx, dbConnectionPool)
Copy link
Contributor

Choose a reason for hiding this comment

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

Should we also DeleteAllReceiversFixtures?

})
}

func (e *EmbeddedWalletService) GetReceiverWalletByContractAddress(ctx context.Context, contractAddress string) (*data.ReceiverWallet, error) {
Copy link
Contributor

Choose a reason for hiding this comment

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

nit: We can make this function private since it's only used by isVerificationPending.

})
}

func (e *EmbeddedWalletService) IsVerificationPending(ctx context.Context, contractAddress string) (bool, error) {
Copy link
Contributor

Choose a reason for hiding this comment

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

This function needs a test.

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.

4 participants