Remove airdrop#139
Conversation
The airdrop-nft-backend API has been shut down. Remove userUnclaimedNfts, userNfts, and userRedeemedNfts queries along with their associated UI elements (redeem button, NFT table rows) and side effects. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
📝 WalkthroughWalkthroughThe PR contains two independent changes: CI/CD pipeline job ordering and a significant refactor of the Airdrop component. The workflow update adds explicit dependency sequencing between S3 deployment and CloudFront cache invalidation. The component refactor removes gift/redemption-related GraphQL queries and simplifies data flow to display only L1 airdrop records and user allocations. ChangesCI/CD Pipeline Ordering
Airdrop Component Simplification
🎯 3 (Moderate) | ⏱️ ~22 minutes 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 inconclusive)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Tip 💬 Introducing Slack Agent: The best way for teams to turn conversations into code.Slack Agent is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context.
Built for teams:
One agent for your entire SDLC. Right inside Slack. Comment |
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
src/components/Airdrop/Airdrop.tsx (1)
399-427:⚠️ Potential issue | 🟠 Major | ⚡ Quick winDon't let the subgraph response block the L1 claim path.
renderAsyncArrayis now keyed only offaccountAirdrop, so a GraphQL failure exits through the error state beforel1AirdropRecordscan render. That makes the on-chain L1 allocation unusable during subgraph outages even whenuseGetAirdropRecordsOnL1()succeeds. Please keep the L1 table/button renderable as a fallback and treat the GraphQL data as additive.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@src/components/Airdrop/Airdrop.tsx` around lines 399 - 427, The current renderAsyncArray is keyed only on mergeAsync(accountAirdrop, { loading: false }) so GraphQL errors prevent the L1 claim UI from rendering; update the render logic to treat subgraph data as additive by including the L1 fetch in the merged async input (e.g., mergeAsync(accountAirdrop, l1AirdropRecords) or mergeAsync(accountAirdrop, { l1: l1AirdropRecords })) or by changing the error branch to still render the L1 section using l1AirdropRecords and l1Loading; ensure references to renderAsyncArray, mergeAsync(accountAirdrop,...), l1AirdropRecords, l1Loading and the existing data usage (currently data[0] / airdropUsers) are adjusted so on-chain L1 table/button is always rendered as a fallback when GraphQL fails.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Outside diff comments:
In `@src/components/Airdrop/Airdrop.tsx`:
- Around line 399-427: The current renderAsyncArray is keyed only on
mergeAsync(accountAirdrop, { loading: false }) so GraphQL errors prevent the L1
claim UI from rendering; update the render logic to treat subgraph data as
additive by including the L1 fetch in the merged async input (e.g.,
mergeAsync(accountAirdrop, l1AirdropRecords) or mergeAsync(accountAirdrop, { l1:
l1AirdropRecords })) or by changing the error branch to still render the L1
section using l1AirdropRecords and l1Loading; ensure references to
renderAsyncArray, mergeAsync(accountAirdrop,...), l1AirdropRecords, l1Loading
and the existing data usage (currently data[0] / airdropUsers) are adjusted so
on-chain L1 table/button is always rendered as a fallback when GraphQL fails.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 52f39837-e2cd-4d1b-a259-fa9bb2d1aabb
📒 Files selected for processing (2)
.github/workflows/pipeline.yamlsrc/components/Airdrop/Airdrop.tsx
Summary by CodeRabbit
Release Notes
Chores
Refactor