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
Airdrop Full Teardown — campaign paused indefinitely
The PLOT airdrop is paused indefinitely. This EPIC tracks the clean, safe removal of ALL airdrop code, DB objects, cron, frontend, and config — while keeping every core PlotLink feature working (story pages, ratings, on-chain indexing, backfill cron, x-stats, profiles, sharing).
Paused, not cancelled → code is git-tagged and DB data archived before removal so it can be revived.
Background
v5 "Buy-Back Sprint" reverted; v6 redesign shelved. Airdrop on hold.
Code teardown + prod deploy MUST land BEFORE DB drop. The airdrop-price / airdrop-weekly crons currently run on schedule; dropping tables before removing the crons would cause them to error on missing tables.
Revival path
git tag airdrop-v5-archive (full code)
DB archive tables pl_*_archive_<date>
Design docs retained in operator workspace (PLOTLINK-diamond-hand-airdrop-5/6.md, PLOTLINK-airdrop-teardown-checklist.md)
Airdrop Full Teardown — campaign paused indefinitely
The PLOT airdrop is paused indefinitely. This EPIC tracks the clean, safe removal of ALL airdrop code, DB objects, cron, frontend, and config — while keeping every core PlotLink feature working (story pages, ratings, on-chain indexing, backfill cron, x-stats, profiles, sharing).
Paused, not cancelled → code is git-tagged and DB data archived before removal so it can be revived.
Background
superseded-by-v6).Dependency audit (verified 2026-05-28, static)
lib/airdrop/award.ts= no-op stubs. The 3 callers (ratings,index/storyline,backfillcron) call it fire-and-forget:awardX(...).catch(()=>{}). Return value unused → removing calls is safe.ShareButtonsuses referral optionally (code ? url?ref=code : url) → degrades to plain story URL. No breakage.TWITTERAPI_IO_KEYis SHARED with core x-stats (lib/x-stats.ts) → KEEP the env var; only deletelib/airdrop/twitterapi.ts.NEYNAR_API_KEY+CRON_SECRET= core → KEEP.src/app/api/airdrop/→ deleted with routes (no orphans).siwe,@openzeppelin/merkle-tree,@electric-sql/pglite,nanoid= airdrop-only → remove.Children
agent/T3): remove all airdrop code, write teardown migration file, dep cleanup, build gateoperator): archive + apply forward migration to prodoperator): git tag snapshot + Vercel env/cron cleanupStrict execution order
git tag airdrop-v5-archive(revival snapshot) — [Teardown-C] Revival git tag + Vercel env/cron cleanup #1318 C1, do FIRST/airdropreferences resolve in prod🚨 Critical safety rule
Code teardown + prod deploy MUST land BEFORE DB drop. The
airdrop-price/airdrop-weeklycrons currently run on schedule; dropping tables before removing the crons would cause them to error on missing tables.Revival path
airdrop-v5-archive(full code)pl_*_archive_<date>PLOTLINK-diamond-hand-airdrop-5/6.md,PLOTLINK-airdrop-teardown-checklist.md)