Remove: TimeCurve launchpad sale-end, redemption, presale, LP seed flows #243
Labels
No labels
agent:fix_bugfix
agent:fix_conflicts
agent:fix_security
agent:gap_analysis
agent:implement
agent:open_issues
agents
agent:security_audit
agent:verify
area
timecurve
arena
arena-v2
audit
block:feature_review
block:security
bug
contracts
design
devops
docs
documentation
enhancement
epic
feature
frontend
indexer
low priority
megaeth
operations
ops
performance
QA
qa checklist
referrals
removal
security
smart-contracts
tech-debt
testing
time-arena
timecurve
visual-qa
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
code/yieldomega#243
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Context
Remove TimeCurve launchpad sale-end, redemption, presale, and LP seed flows. Parent epic: #238.
Relevant files
contracts/src/TimeCurve.sol—endSale,redeemCharms,distributePrizes,LinearCharmPrice,MAX_SALE_ELAPSED_SEC, presale hookscontracts/src/pricing/LinearCharmPrice.solcontracts/src/vesting/DoubPresaleVesting.sol,PresaleCharmBeneficiaryRegistry.solcontracts/src/sinks/DoubLPIncentives.solfrontend/src/pages/timecurve/TimeCurveStakeAtLaunchSection.tsxfrontend/src/pages/PresaleVestingPage.tsxor/vestingroutedocs/operations/final-signoff-and-value-movement.mdAcceptance criteria
saleEnded/redeemCharms/distributePrizes/ linear price schedule in v2frontend/src/lib/surfaceContent.ts)Verification checklist
redeemCharms,endSale,LinearCharmPrice,launchLiquidityAnchor/vestingroute in production buildmarked as related to #238
mentioned in issue #238
Implementation complete
What we did
TimeCurve.soland launchpad lifecycle: noendSale,redeemCharms,distributePrizes,LinearCharmPrice, presale vesting,MAX_SALE_ELAPSED_SEC, sale schedulingTimeArena(DOUB-priced, always-on /paused, Last Buy timer)/vesting,PresaleVestingPage,TimeCurveStakeAtLaunchSection; home card → Time Arena insurfaceContent.tssale_statetrimmed to arena fields (deadline_sec,total_doub_raised,paused) pollingTimeArenalaunchplan-timecurve.mdmarked superseded; WarBow CL8Y removed (follow-up #252)Acceptance criteria for closing
saleEnded/redeemCharms/distributePrizes/ linear price schedule in v2 contracts.env.exampleVerification checklist
redeemCharms|endSale|LinearCharmPrice|launchLiquidityAnchor— zero incontracts/src(some frontend may still reference legacy ABI until #256)/vestingroute in app routesTimeArena.t.solbuy + timer tests pass on Anvil-shaped deploymentioned in issue #263
mentioned in issue #264
marked as related to #266
mentioned in issue #266
mentioned in commit
597a889a5bVerification complete (agent, worktree
issue/243-timecurve-removal)Verified TimeCurve launchpad sale-end, redemption, presale, and LP-seed removal against issue acceptance criteria. Merged verification/doc touch-ups to
main(392a099).What was verified
contracts/srcgrep clean forredeemCharms,endSale,LinearCharmPrice,launchLiquidityAnchor— no matches;TimeCurve.sol, presale vesting contracts, andDoubLPIncentivesabsent from tree/vestingroute —LaunchGate.tsxhas no vesting surface; production build has no/vestingpath string; browser shows branded 404 at/vestingTimeArena.t.sol— 40 tests pass (buy, timer, CRED, XP, WarBow, podium top-up)PresaleVestingPage, no presale env vars infrontend/.env.exampleHOME_SURFACE_CARDS[0].tois/arena(was/timecurveredirect); unit test added/arenamounts BUY/AUDIT + timer/podiums;/timecurvestill redirects to/arenaDoc / invariant updates (this pass)
INV-REMOVAL-243-NO-LAUNCHPAD-LIFECYCLEindocs/testing/invariants-and-business-logic.mddocs/operations/final-signoff-and-value-movement.md→ Arena v2 /#243arena-v2.md/vestingfromINV-FRONTEND-95/INV-FRONTEND-223endSalegates (#243)Known non-blockers (out of scope for #243)
redeemCharmsin agent card / session bridge) remain until frontend cleanup #256GET /v1/arena/timersreturnedchain_timer_unavailableon this stack while/v1/statusshowed ingestion live — infra poll state, not a launchpad-lifecycle regression; did not restart infra per instructionsManual re-check checklist
rg 'redeemCharms|endSale|LinearCharmPrice|launchLiquidityAnchor' contracts/src→ emptyrg 'PresaleVestingPage|path.*vesting' frontend/src→ empty (route-level)cd contracts && forge test --match-contract TimeArena→ greencd frontend && npm run build→ no/vestingindist//vesting→ 404;/home card →/arena;/timecurve→ redirect/arenafrontend/.env.examplehas arena addresses only (noVITE_DOUB_PRESALE_VESTING_*)All acceptance criteria from the issue body and prior implementation comment pass. Closing.
mentioned in issue #274
mentioned in issue #276
mentioned in issue #280
mentioned in issue #319
mentioned in merge request !472