Change lock-up proof link to basescan tx (#1003)#1007
Conversation
Mint Club has no direct page for individual lock-ups, so the previous link led nowhere useful. Replace LOCKER_ID with LOCKER_TX in the airdrop config and link the test config's tx hash directly to its basescan transaction. Prod stays null until the prod lock-up is executed. Bumps to 1.2.1. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
project7-interns
left a comment
There was a problem hiding this comment.
Verdict: REQUEST CHANGES
Summary
The lock-up proof change itself is focused and implements the intended Basescan transaction link, but the version bump is incomplete because the npm lockfile was not updated.
Findings
- [medium]
package.jsonwas bumped to1.2.1, butpackage-lock.jsonstill records the root package version as1.2.0. This leaves the committed npm metadata inconsistent and can cause release/version tooling or lockfile checks to see the old app version.- File:
package.json:3 - Suggestion: Regenerate or update
package-lock.jsonso both the top-levelversionandpackages[""].versionmatch1.2.1.
- File:
Decision
Requesting changes until the lockfile version metadata matches the package version bump. The functional airdrop link change looks aligned with #1003.
Address @re1-2 review on PR #1007: lockfile root and packages[""] version fields were still 1.2.0. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
realproject7
left a comment
There was a problem hiding this comment.
RE2 review: LGTM (chat approval posted; cannot use --approve on PRs from same account).
Verified:
- Rename
LOCKER_ID→LOCKER_TXconsistent across config interface (lib/airdrop/config.ts), API route (src/app/api/airdrop/status/route.ts), andCampaignHero.StatusData(src/components/airdrop/CampaignHero.tsx). - Test tx hash matches issue #1003 spec exactly (
0xb4549...4adce); prod staysnulland falls through to the existing 'Lock-up proof: pending' branch (CampaignHero.tsx:647-649) — both modes covered. - Link href
https://basescan.org/tx/{lockerTx}and label 'View lock-up proof on Basescan' match acceptance criteria. - Version bump 1.2.0 → 1.2.1 correct per CLAUDE.md (3rd digit, bug fix).
grepforlockerId/LOCKER_IDacrosssrc/,lib/,packages/returns zero hits — no stale references.- Minimal, surgical diff (9+/9−, 4 files), no scope creep.
Couldn't run npm run typecheck locally (deps not installed in worktree); rename is consistent across every consumer, so CI typecheck should be green.
realproject7
left a comment
There was a problem hiding this comment.
Updating my earlier review — concurring with @project7-interns.
I missed the lockfile mismatch in my first pass. package-lock.json:3 and package-lock.json:9 both still record "version": "1.2.0" while package.json is 1.2.1. Confirmed via grep -n '"version"' package-lock.json.
Requested change: run npm install after the version bump so the lockfile metadata matches, then re-request review. Functional changes (LOCKER_ID → LOCKER_TX rename, basescan link href, 'View lock-up proof on Basescan' label, prod null fallback) all look correct.
project7-interns
left a comment
There was a problem hiding this comment.
Verdict: APPROVE
Summary
The PR now implements #1003 as requested: the lock-up proof uses the configured Basescan transaction hash, prod remains pending with a null value, and the package version metadata is consistent across package.json and package-lock.json.
Findings
- None.
Decision
Approved. The prior lockfile mismatch is fixed (package-lock.json top-level and packages[""] versions now match 1.2.1), and CI is green for lint/typecheck and e2e.
realproject7
left a comment
There was a problem hiding this comment.
RE2 re-review on 5abe6fc: LGTM (chat approval posted; --approve blocked because PR is from same account).
package-lock.json:3and:9now both record1.2.1, matchingpackage.json. Verified viagrep -n '"version"' package-lock.json.- Fix commit is surgical (2 lines in lockfile only) — no scope creep.
- CI green:
lint-and-typecheckSUCCESS,e2eSUCCESS, Vercel Preview SUCCESS. - All prior verifications still hold (rename consistency end-to-end, basescan link href, label, prod
nullfallback, no stalelockerId/LOCKER_IDreferences).
Approving from RE2.
Summary
LOCKER_IDwithLOCKER_TXin the airdrop config so the lock-up proof can link to the actual basescan transaction instead of a Mint Club URL that has no destination page.CampaignHeroto renderhttps://basescan.org/tx/{lockerTx}with the label "View lock-up proof on Basescan".nulluntil the prod lock-up is executed.Closes #1003.
Test plan
npm run typecheckpassesnpm run lintpasses (no new errors)NEXT_PUBLIC_AIRDROP_MODE=test),/airdroppage shows "View lock-up proof on Basescan" linking tohttps://basescan.org/tx/0xb4549...4adce🤖 Generated with Claude Code