Skip to content

docs(drift): draft from internal source#309

Merged
pedromcunha merged 2 commits into
mainfrom
docs-drift/src-c6bd60f6fe-d25c601
May 11, 2026
Merged

docs(drift): draft from internal source#309
pedromcunha merged 2 commits into
mainfrom
docs-drift/src-c6bd60f6fe-d25c601

Conversation

@pedromcunha
Copy link
Copy Markdown
Member

Drafted from an internal source repo, requested by @arcticfloyd1984.

This PR was auto-generated by the reusable-docs-draft-pr workflow from a Claude-drafted update in the source repo. It is opened as a draft — please review, edit as needed, and mark ready for review before merging.

Review checklist

  • Content matches the behavior shipped in the source PR
  • No internal-only details (service names, file paths, unreleased names, security internals) leaked into the draft
  • Conforms to CLAUDE.md style rules
  • Cross-references and internal links resolve
  • Any Needs human input items from the source comment are addressed

Generated by reusable-docs-draft-pr.yml in relayprotocol/agents-config.

Requested by @arcticfloyd1984 via /publish-docs-pr
@mintlify
Copy link
Copy Markdown
Contributor

mintlify Bot commented May 7, 2026

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
unevenlabs 🟢 Ready View Preview May 7, 2026, 8:28 AM

💡 Tip: Enable Workflows to automatically generate PRs for you.

@pedromcunha pedromcunha marked this pull request as ready for review May 11, 2026 16:51
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 11, 2026

Claude finished @pedromcunha's task in 1m 45s —— View job


Code Review: PR #309docs(drift): draft from internal source

  • Read the PR diff
  • Read full file context for features/deposit-addresses.mdx
  • Cross-check against CLAUDE.md style rules
  • Post review

This PR documents a new use of refundTo — passing the origin chain's "native-currency address" to auto-refund the depositor. The substance is a useful addition, but a few things should be tightened before merging.

1. Param-table cell is too long (CLAUDE.md §2.7)

features/deposit-addresses.mdx:26 — the new refundTo row in the Key Parameters table is now ~95 words and contains the full address triplet plus a rejection rule plus the existing omission rule plus a cross-link. §2.7 explicitly says: "Keep cell descriptions concise; move long explanations into prose below the table."

Suggest trimming the row to a short pointer and letting the Refund Behavior section (where the same triplet already lives, line 918) be the source of truth. Something like:

Address to send refunds if the transfer fails. Required for strict deposit addresses and for routes that include a destination-side swap. Pass the origin chain's native-currency address to auto-refund the depositor. Omitting on open addresses disables automatic refund. See Refund Behavior.

Fix this →

2. <Note> rewrite is hard to parse

features/deposit-addresses.mdx:923 — the new version inserts a clarifying clause between em-dashes, but the result reads as a triple-em-dash construction and breaks sentence flow:

do not use "refund to sender" — neither an explicit user address you don't control nor the native-currency-address auto-refund opt-in — the sender address will be the exchange's hot wallet, not the user's.

Two problems: (a) the appositive sits between an em-dash and another em-dash that originally introduced the explanation, which makes "the sender address will be…" feel disconnected from what it explains; (b) "an explicit user address you don't control" wasn't a refundTo option the table just defined — only the native-currency opt-in is the new "refund to sender" mechanism. The CEX-hot-wallet rationale applies to anything that resolves to the depositor.

Recommend splitting into two sentences, e.g.:

If users may send from a centralized exchange, do not refund to the depositor — neither via the native-currency-address opt-in nor a user-supplied address you don't control. The sender will be the exchange's hot wallet, not the user's. Use an app-controlled address instead so your support team can handle the last mile.

3. The address triplet is repeated three times

The same 0x000…0 / bc1qqq…mql8k8 / 1111…1111 list appears verbatim at lines 26, 918, and 930. Within a single page this isn't a CLAUDE.md §2.5 snippet-rule violation, but it's a maintenance hazard — if any address ever changes, three places must be edited in lockstep. Recommend keeping the canonical list in the Refund Behavior table row (line 918) and replacing the others with cross-references.

4. Please verify the Bitcoin "native-currency address"

bc1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqmql8k8 — the EVM zero address and the Solana system-program address are well-established conventions for "native asset", but I'm not aware of a comparable canonical "native BTC" address. Worth double-checking with the source PR / solver that this is the exact string the solver actually accepts (case-sensitive, checksum-valid bech32) before this ships, since a typo here is silently broken for integrators.

5. Pre-existing nit (not introduced by this PR)

The Key Parameters table at line 21 uses backticks (`useDepositAddress`) in the Property column rather than the **bold** convention CLAUDE.md §2.7 prescribes. Not blocking this PR — flagging for a future cleanup pass.


Summary

Substance is good; the new option is a useful addition. Three things to address before marking ready for review: (1) shorten the param-table cell, (2) rephrase the <Note>, (3) verify the Bitcoin address. Repetition (4) and the pre-existing table convention (5) are softer suggestions.
· Branch: docs-drift/src-c6bd60f6fe-d25c601

ted-palmer
ted-palmer previously approved these changes May 11, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 11, 2026

Claude finished @pedromcunha's task in 1m 41s —— View job


Code Review: PR #309docs(drift): draft from internal source

  • Read the PR diff
  • Read full file context for features/deposit-addresses.mdx
  • Cross-check against CLAUDE.md style rules
  • Post review

Scope note

After the merge from main (commit 64a3c45), this PR's effective delta vs origin/main is now a single line — the <Note> callout at features/deposit-addresses.mdx:923. The other changes from the original drift commit (8d8343b) — the Key Parameters table row, the Refund Behavior table row, and the Recommended Setup bullet — have all landed on main independently. So the previous review's points 1, 3, 4 (param-table cell length, address-triplet repetition, Bitcoin-address verification) are out of scope for this PR; they apply to the file as it sits on main and belong in a separate cleanup pass if anyone wants to pursue them.

The only point still in scope is #2: the <Note> rewrite.

1. The <Note> rewrite is harder to parse than what's already on main

features/deposit-addresses.mdx:923 — this is the entirety of the PR. Side-by-side:

main (before):

If users may send from a centralized exchange, do not use "refund to sender" (an explicit user address you don't control, or the native-currency-address auto-refund opt-in) — the sender address will be the exchange's hot wallet, not the user's.

PR (after):

If users may send from a centralized exchange, do not use "refund to sender" — neither an explicit user address you don't control nor the native-currency-address auto-refund opt-in — the sender address will be the exchange's hot wallet, not the user's.

The new version replaces a parenthetical with an em-dash appositive, which puts the reader inside a — neither … nor … — construction and then asks them to pick up the main clause again with "the sender address will be…". The result is a one-sentence triple-dash structure where the third clause feels disconnected from the first. The parenthetical version on main reads more cleanly because the qualifier is visually subordinated by the parens, leaving a clean do not X — Y arc.

This is also the only edit in the PR, so as it stands the change makes the prose slightly worse, not better. Two options:

Option A — revert this line. If there's no semantic intent behind the punctuation swap, drop the change and close/repurpose the PR. (Recommended.)

Option B — split into two sentences. If the goal is to make the qualifier more explicit than parens allow:

If users may send from a centralized exchange, do not refund to the depositor — neither via the native-currency-address opt-in nor a user-supplied address you don't control. The sender will be the exchange's hot wallet, not the user's. Use an app-controlled address instead so your support team can handle the last mile.

That puts the qualifier on the same side of the em-dash as the directive, ends the first sentence cleanly, and lets the rationale start a fresh sentence. Still under the 15-line cap (CLAUDE.md §2.5) and within the 2–3 sentence paragraph budget (§2.10).

Fix this →

2. Style-rule pass on the touched line

For completeness, the touched line is otherwise compliant:

  • §2.5 callout-length cap (15 lines): well under. ✓
  • §2.10 paragraph length (2–3 sentences): two sentences. ✓
  • §2.3 voice: "you"-addressed, active. ✓
  • §2.9 emphasis: bold on the imperative, no italics. ✓

Summary

Given the merge from main, this PR's only remaining change is the <Note> rewrite at line 923, and that rewrite arguably degrades readability vs. what's already on main. Recommend either reverting the line (closing the PR as no-op) or splitting the qualifier into a separate sentence before marking ready for review.

· Branch: docs-drift/src-c6bd60f6fe-d25c601 ·

@pedromcunha pedromcunha merged commit 333a22f into main May 11, 2026
4 checks passed
@pedromcunha pedromcunha deleted the docs-drift/src-c6bd60f6fe-d25c601 branch May 11, 2026 19:37
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