PE-9130: Point GraphQL at turbo-gateway.com directly with Goldsky fallback - #2164
PE-9130: Point GraphQL at turbo-gateway.com directly with Goldsky fallback#2164vilenarios wants to merge 2 commits into
Conversation
- switch defaultArweaveGatewayUrl from the ardrive.net proxy to turbo-gateway.com in all three flavors; ardrive.net proxies to turbo-gateway anyway and its proxy pool served 503s during the 2026-07-08 outage, taking primary GraphQL down with it - bump configVersion 2 -> 3 so existing users' stored configs are replaced with the new default on next load - change the GraphQLRetry fallback from arweave.net/graphql to the Goldsky search index it proxies to (arweave-search.goldsky.com), avoiding arweave.net's aggressive rate limiting on the fallback path - document Goldsky's page-size behavior: requests above 100 items are silently clamped with hasNextPage falsely reporting false, so fallback queries must never exceed 100 per page Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
Important Review skippedNo new commits to review since the last review. ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
📝 WalkthroughWalkthroughThis PR bumps configVersion to 3 and changes defaultArweaveGatewayUrl to turbo-gateway.com across dev, prod, and staging configs. GraphQLRetry's default fallback endpoint switches to Goldsky's search index with updated documentation. The equatable dependency constraint in ardrive_ui is tightened to exclude 2.1.0. ChangesGateway and fallback endpoint updates
Dependency constraint update
Estimated code review effort: 2 (Simple) | ~10 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
- equatable 2.1.0 (released after the last green dev build) deprecates EquatableMixin, which data_table.dart uses; package lockfiles are not committed, so CI's per-package pub get floated to 2.1.0 and scr test failed on the analyze step for every PR and dev push - the main app's committed lockfile resolves equatable 2.0.7, where Equatable cannot be used as a mixin, so migrating the code instead of pinning would break the app build; pin until both contexts can move to 2.1.x together Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
Visit the preview URL for this PR (updated for commit 84048cf): https://ardrive-web--pr2164-fix-gql-turbo-gatewa-wuvvdt6k.web.app (expires Thu, 16 Jul 2026 15:08:12 GMT) 🔥 via Firebase Hosting GitHub Action 🌎 Sign: a224ebaee2f0939e7665e7630e7d3d6cd7d0f8b0 |
|
@coderabbitai review |
✅ Action performedReview finished.
|
✅ Action performedReview finished.
|
|
Consolidated into #2162 so all sync improvements can be tested on one preview build. Branch merged there commit-for-commit. |
Summary
Cuts the ardrive.net proxy hop out of the GraphQL path and hardens the fallback:
https://turbo-gateway.com(washttps://ardrive.net, which proxies to turbo-gateway anyway). During the 2026-07-08 incident the ardrive.net proxy pool returned 503s while turbo-gateway itself recovered independently — the proxy was a single point of failure adding no value on this path. Data requests already go to turbo-gateway directly.configVersion2 → 3 in all three flavors so existing users' locally-stored configs are replaced on next app load (stored configs only refresh on version bump).https://arweave-search.goldsky.com/graphql(washttps://arweave.net/graphql, which proxies to Goldsky but rate-limits aggressively — probes got 429'd within a few requests).first > 100is silently clamped to 100 withhasNextPagefalsely reportingfalse— a paginating client would silently truncate results. Fallback queries must stay ≤ 100/page (all current queries do; this matters for the planned page-size increase).Verification
hasNextPage.first: 100.Rollout note
Merging to dev → staging.ardrive.io picks this up via the staging config; production users get it at the next release. Users with stored configs migrate automatically via the version bump.
🤖 Generated with Claude Code
https://claude.ai/code/session_0172nfTRDj7wgnhs44Lg6mxC
Summary by CodeRabbit
Bug Fixes
Chores