Skip to content

🦺 server: add travel rule to offramp transfers#1131

Open
mainqueg wants to merge 1 commit into
mainfrom
travel
Open

🦺 server: add travel rule to offramp transfers#1131
mainqueg wants to merge 1 commit into
mainfrom
travel

Conversation

@mainqueg

@mainqueg mainqueg commented Jul 2, 2026

Copy link
Copy Markdown
Member

No description provided.

@changeset-bot

changeset-bot Bot commented Jul 2, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 1369a37

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@exactly/server Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@coderabbitai

coderabbitai Bot commented Jul 2, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@mainqueg, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 48 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 6a47174a-a479-4c76-b9ca-41f7370a0191

📥 Commits

Reviewing files that changed from the base of the PR and between ed5f97f and 1369a37.

📒 Files selected for processing (3)
  • .changeset/silly-owls-attest.md
  • server/test/utils/bridge.test.ts
  • server/utils/ramps/bridge.ts
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch travel
✨ Simplify code
  • Create PR with simplified code
  • Commit simplified code in branch travel

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@gemini-code-assist

Copy link
Copy Markdown

Warning

Gemini encountered an error creating the review. You can try again by commenting /gemini review.

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

Copy link
Copy Markdown

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: 1369a372ac

ℹ️ About Codex in GitHub

Codex has been enabled to automatically 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 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread server/utils/ramps/bridge.ts
Comment on lines +962 to +963
wallet_type: "self_custodied", // cspell:ignore custodied
wallet_attested_ownership_at: new Date().toISOString(),

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Do not attest arbitrary source wallets as self-custodied

When users fund these instructions from an exchange or any other address, this template still sends wallet_type: "self_custodied" with a fresh attestation timestamp even though allow_any_from_address explicitly allows deposits regardless of from_address. Bridge's docs define self_custodied as customer-owned and require ownership validation before sending wallet_attested_ownership_at (https://apidocs.bridge.xyz/get-started/guides/move-money/crypto-travel-rule), so this can misreport or reject otherwise valid off-ramp deposits unless the source is constrained to a verified wallet or travel-rule data is submitted per movement once the real source is known.

Useful? React with 👍 / 👎.

@codecov

codecov Bot commented Jul 2, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 72.71%. Comparing base (ed5f97f) to head (1369a37).
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1131      +/-   ##
==========================================
+ Coverage   72.46%   72.71%   +0.25%     
==========================================
  Files         249      249              
  Lines       10091    10204     +113     
  Branches     3274     3306      +32     
==========================================
+ Hits         7312     7420     +108     
- Misses       2500     2501       +1     
- Partials      279      283       +4     
Flag Coverage Δ
e2e 72.16% <100.00%> (-0.30%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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