Skip to content

docs(playbook): capture the trading-api serving gate + dep-bump lessons - #373

Open
codyborn wants to merge 3 commits into
mainfrom
playbook-v3-serving-gate
Open

docs(playbook): capture the trading-api serving gate + dep-bump lessons#373
codyborn wants to merge 3 commits into
mainfrom
playbook-v3-serving-gate

Conversation

@codyborn

Copy link
Copy Markdown
Collaborator

Why

The Robinhood/Arc rollout deployed every repo — reactors, SDK, param-api, x-service, and trading-api's CHAIN_INFO_MAP DUTCH_V3 override — and RFQ still never fired, silently, because trading-api's second gate (UNISWAPX_V3_ROLLOUT_CHAINS, the serving allowlist) was missed. The playbook didn't mention that gate and had drifted from the real code. This updates it so the next chain can't repeat the miss.

Changes to playbook/NEW_CHAIN.md

  • §3.6 rewritten to current trading-api reality: the two independent gates (construction = CHAIN_INFO_MAP DUTCH_V3 override; serving = UNISWAPX_V3_ROLLOUT_CHAINS), and removal of stale symbols that no longer exist (UNISWAPX_SUPPORTED_CHAIN_IDS, GAS_COMPARISON_MULTIPLIER_BY_CHAIN, V3_BLOCK_LENGTH_BY_CHAIN, per-chain disable_uniswapx_<chain>). Notes the now-generic bits (block length, gas comparison, RFQ protocol mapping).
  • Correction G — the two-gate trap (the actual incident), plus debugging notes: the RFQ sub-request gets its own UUID (not the quote's requestId), and trading/goudaservice are APM/own-pipeline, not the default indexed log view.
  • Correction H — downstream repos pin SDK versions; a published SDK isn't enough (all three were on a pre-chain sdk-core 7.14.0 where ChainId.ROBINHOOD was the testnet id). Plus release-version ordering.
  • Correction I — flags Corrections C and D as stale (param-api & x-service refactored since Tempo: single SUPPORTED_CHAINS source, global retry floor).
  • §6 — Robinhood/Arc reference-diff PR table (the more accurate "what it looks like against main" set), including both trading-api PRs (#9599 wired it, #9615 served it).
  • §7 — end-to-end checklist with both gates as explicit line items.

Docs-only.

🤖 Generated with Claude Code

The Robinhood/Arc rollout shipped V3 fully wired yet serving zero RFQs because
the UNISWAPX_V3_ROLLOUT_CHAINS serving gate (separate from the CHAIN_INFO_MAP
DUTCH_V3 override) was missed. Update NEW_CHAIN.md so the next chain doesn't
repeat it:

- §3.6 rewritten to current trading-api reality: the TWO independent gates
  (construction via CHAIN_INFO_MAP, serving via UNISWAPX_V3_ROLLOUT_CHAINS),
  and removal of stale symbols (UNISWAPX_SUPPORTED_CHAIN_IDS,
  GAS_COMPARISON_MULTIPLIER_BY_CHAIN, V3_BLOCK_LENGTH_BY_CHAIN,
  disable_uniswapx_<chain>) that no longer exist.
- Correction G: the two-gate trap + RFQ-requestId/APM debugging notes.
- Correction H: downstream sdk-core / uniswapx-sdk pins must be bumped
  (published != consumed); release-versioning ordering.
- Correction I: Corrections C and D are stale (param-api/x-service refactored).
- §6: Robinhood/Arc reference-diff PR table (incl. the two trading-api PRs).
- §7: end-to-end checklist with both gates called out.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@datadog-official

datadog-official Bot commented Jun 25, 2026

Copy link
Copy Markdown

Pipelines

⚠️ Warnings

🚦 1 Pipeline job failed

integration-test | Foundry project   View in Datadog   GitHub Actions

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: ebbc603 | Docs | Give us feedback!

@codyborn
codyborn requested a review from alanhwu June 25, 2026 00:30
The deployments page (Uniswap/docs, developers.uniswap.org) is an external
artifact the rollout never tracked. Add it as a Phase 4 launch step and a §7
checklist item, and record the Robinhood/Arc docs PR (Uniswap/docs#1136) in
the §6 reference table.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
alanhwu
alanhwu previously approved these changes Jun 25, 2026
- Correct the Arc constant-basefee assumption: Arc's USDC-denominated base fee
  is dynamic (EWMA EIP-1559, floor 20 gwei), not fixed — it just sits at the
  floor when idle. Removed from CONSTANT_BASE_FEE_CHAINS (backend#9642). Update
  §3.6 + arc.md, and warn future rollouts to confirm fee design from docs, not
  a quiet-window probe.
- Update the docs-site step: the UniswapX deployments page moved from
  Uniswap/docs to the Universe repo (apps/dev-portal/.../uniswapx/deployments.mdx).
  Case-study table points at universe#34819 (old docs#1136 closed).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.

2 participants