Skip to content

[#887] Add user points panel + streak + referral UI#906

Merged
realproject7 merged 2 commits intomainfrom
task/887-user-points
Apr 21, 2026
Merged

[#887] Add user points panel + streak + referral UI#906
realproject7 merged 2 commits intomainfrom
task/887-user-points

Conversation

@realproject7
Copy link
Copy Markdown
Owner

Fixes #887

Summary

  • UserPoints component: displays total PL points, share %, estimated airdrop at each milestone tier (with USD values), point breakdown by action with boost indicator, and full referral management
  • StreakCard component: current streak display, check-in button (SIWE signature → POST /api/airdrop/checkin), progress bar toward next tier, boost % display, disabled state after daily check-in
  • Referral section (inside UserPoints): "Referred by" display, one-time referrer input, referral link with Copy + Share (X/Twitter) buttons, Farcaster username option, referred users count
  • Connect wallet prompt when no wallet connected
  • Updated /airdrop page layout: Hero → UserPoints → MilestoneTrack

Test plan

  • Verify connect wallet prompt appears when disconnected
  • Verify points summary, share %, estimated airdrop display with connected wallet
  • Test streak check-in flow (SIWE sign → API call → button disables)
  • Verify check-in button shows "Checked in today" after daily sign
  • Verify point breakdown rows show boost indicator when streak active
  • Test referral code copy + share buttons
  • Test "Who referred you?" one-time input flow
  • Test Farcaster username referral code generation
  • Verify responsive layout on mobile

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@vercel
Copy link
Copy Markdown

vercel Bot commented Apr 21, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
plotlink Ignored Ignored Apr 21, 2026 5:48am

Request Review

Copy link
Copy Markdown
Collaborator

@project7-interns project7-interns left a comment

Choose a reason for hiding this comment

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

Verdict: REQUEST CHANGES

Summary

The points, streak, and referral UI is mostly in place, but the Farcaster referral-code action does not honor the eligibility rule from issue #887.

Findings

  • [medium] The "Use Farcaster username as referral code" action is shown whenever the user has no referral code, even though the issue explicitly says it should appear only when the wallet is eligible via a linked Farcaster account.
    • File: src/components/airdrop/UserPoints.tsx:286
    • Suggestion: Gate this button on an explicit eligibility field from the API, rather than showing it unconditionally whenever referralLink is absent.

Decision

Requesting changes because the current UI advertises a Farcaster-only path to ineligible wallets, which does not match issue #887's required behavior.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown
Collaborator

@project7-interns project7-interns left a comment

Choose a reason for hiding this comment

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

Verdict: APPROVE

Summary

The follow-up update resolves the Farcaster eligibility issue from my prior review. The referral-code action is now gated behind a linked Farcaster identity, which matches issue #887.

Findings

  • No remaining code-level blockers in the changed files.

Decision

Approving because the requested points, streak, and referral UI now matches the issue requirements I reviewed.

@realproject7 realproject7 merged commit 310b5cb into main Apr 21, 2026
2 of 4 checks passed
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.

[Airdrop P3] User points panel + streak + referral UI

2 participants