Show level locks only on the next unlock tier on play (#334) #507
No reviewers
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!507
Loading…
Reference in a new issue
No description provided.
Delete branch "issue-334-next-tier-level-locks"
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?
Summary
Implement issue #334: show progression level-lock chrome only on the immediate next unlock tier on the play route (
/).nextUnlockLevel,shouldShowLevelLock, andshouldShowPodiumLevelLockinarenaProgression.ts.ArenaLevelGate) to use the next-tier policy.isFeatureUnlockedgates unchanged; only visual lock overlays narrow.Verification checklist
ANVIL_E2E=1 npx playwright testdebug: onlyarena-timer-chip-lock-1(L2) among tier chips; L3/L4 chip locks absentshouldShowLevelLock(4, 5)unit test; WarBow flag gate usesshowWarbowFlagLevelLockshouldShowLevelLock(5, *)→ false;nextUnlockLevel(5)→ nullcd frontend && npm run typecheck && npm run lint && npm testANVIL_E2E=1 CI=1 npm run test:e2e -- --workers=5 e2e/anvil-arena-01-mount.spec.tsisFeatureUnlockedScreenshots (also on issue #334)
mentioned in issue #334
Security review — MR !507
Commit reviewed:
1c2eab8bdef408ae5718fef8ff7b2f6adbceee71Scope: Frontend play-route progression lock chrome (
arenaProgression.ts,ArenaLevelGate, podium/timer carousel components, WarBow gate/flag overlays). No contract, indexer, or buy-router changes in this diff.Method: Traced attacker-controlled inputs to sinks; verified write paths (
submitBuy, WarBow DOUB actions,plantWarBowFlag) remain gated byisFeatureUnlocked/plantFlagDisabledin the frontend and bygateLevelthresholds plus_requireWarbowLevelinTimeArena.sol. Lock overlays (LockedUntilLevel,ArenaLevelGate) are presentational only.Prior threads: No earlier security-review notes on this MR; nothing to re-report.
Outcome:
FINDINGS: 0medium+ — NONEThis MR narrows when level-lock UI is shown (
shouldShowLevelLock/shouldShowPodiumLevelLock). Removing connect-wallet or distant-tier lock chrome does not expose new write surfaces: podium/timer chips are read-only, WarBow hero panel still mounts only whenwarbowUnlocked(L4+), flag checkbox staysdisabledviaplantFlagDisabledwhen!warbowFlagUnlocked, and onchain_finishBuystill applies mechanics only atgateLevel >= N. No injection, authz bypass, XSS, SSRF, or EVM control-flow changes introduced.Inline findings: None.
mentioned in commit
3d6d3b217c