Play-route indexer offline degraded-mode banner #354
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#354
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?
Parent
Transition Gap Analysis (#342) — P2 #14. Bundles M-F1, #96.
Current codebase
useIndexerConnectivity/IndexerStatusBarused on protocol page (ArenaProtocolPage.tsx) but not play route (ArenaSimplePage.tsx).placeholderDatawith no degraded-mode banner.indexerConnectivity.tsprovides shared backoff and offline streak.Why needed
Users on
/cannot distinguish live transitions from stale cached snapshots during indexer failures — transition gap UX risk.Constraints / guardrails
IndexerStatusBaror equivalent banner).Relevant files
frontend/src/pages/arena/ArenaSimplePage.tsxfrontend/src/pages/arena/ArenaProtocolPage.tsx(reference)frontend/src/hooks/useIndexerConnectivity.tsfrontend/src/components/IndexerStatusBar.tsxfrontend/src/lib/indexerConnectivity.tsRecommended direction
IndexerStatusBar(or slim variant) on play route layout.isOffline.ArenaSimplePage.test.tsxfor offline banner presence.Acceptance criteria
ArenaSimplePage.test.tsxcovers offline path.npm testPASS.Test plan
cd frontend && npm run typecheck && npm run lint && npm testArenaSimplePage.test.tsx,indexerConnectivity.test.tsAttack / abuse test plan
Verification criteria
/→ banner visible.mentioned in issue #342
mentioned in commit
648936c026mentioned in merge request !522
mentioned in commit
6f41cbf80aVerification complete — GitLab #354
Verified Play-route indexer offline degraded-mode banner on
main(no repo changes; no MR).Acceptance criteria
ArenaSimplePagemountsIndexerStatusBaratdata-testid="arena-simple-indexer-status"; manual: stopped indexer (killon/tmp/yieldomega_indexer_stack.pid), loadedhttp://127.0.0.1:5173/→INDEXER · offline · retryingwithin ~8sIndexerStatusBarcomponent (same string as AUDIT footer); unit test asserts copy; manual play-route offline text matches expected protocol copyArenaSimplePage.test.tsxcovers offline pathdescribe("ArenaSimplePage indexer offline banner (GitLab #354)")— mount + offline copy testsnpm testPASScd frontend && npm run typecheck && npm run lint && npm test— 143 files / 760 testsAdditional checks
indexerConnectivity.test.tsnpm test(offline streak threshold, backoff 5s→15s→30s)INV-FRONTEND-354-PLAY-INDEXER-STATUSdocsdocs/testing/invariants-and-business-logic.md,docs/frontend/arena-views.md,skills/play-active-time-arena/SKILL.mdINDEXER · offline · retryingonly· live; unit test assertsnot.toContain("· live")IndexerStatusBaris inside collapsed agent card; play-route inline banner is the #354 deliverable and passed manual stop-indexer checkEnvironment
SKIP_ANVIL_RICH_STATE=1 YIELDOMEGA_DEPLOY_NO_COOLDOWN=1 START_BOT_SWARM=0 bash scripts/start-qa-local-full-stack.sh --live-sale --no-swarm:5173Closing as verified on
main.