You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Security:
- Complete XSS escape in ProfileJsonLd (< > & all escaped)
- Guard window.matchMedia with typeof check in ClaimDialog
- Truncate wallet addresses before sending to Vercel Analytics
- Skip ProfileJsonLd structured data on noindex wallet pages
- Add CoinGecko API key header to OG image fetch
Infrastructure:
- Split migration 019 into 4 files (1 per CONCURRENTLY index + enum fix)
Supabase CLI has no --no-transaction pragma; each CREATE INDEX
CONCURRENTLY must be in its own migration file
- CI: replace cache with upload/download-artifact for reliable
build sharing between jobs (no more double build)
Monitoring:
- Add lib/monitoring.ts with claim event tracking, performance
metrics, and fee collection tracking
- Instrument claim/bags and claim/confirm routes
Code quality:
- Extract isWalletAddress() to lib/utils.ts (shared by page.tsx)
- Remove dead saveButtonStyle() from ShareButton, add saving state
feedback with cursor-wait + opacity
- Convert remaining hardcoded colors to design system tokens
(ShareButton, loading.tsx, ProfileHero chain badges)
- Fix HeroReveal comment (3s → 1.3s actual timeline)
- Simplify SearchAction JSON-LD to string target format
- Add vitest config + initial utils tests
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
0 commit comments