feat: /protocol UTC volume chart USD axis + Hourly/Daily/Monthly (#668) #1164
No reviewers
Labels
No labels
agent:fix_bugfix
agent:fix_conflicts
agent:fix_security
agent:gap_analysis
agent:implement
agent:implement
agent:implement
agent:open_issues
agent:ready
agent:research
agent:security_audit
agent:verify
architecture
backend
blocker:hybrid
blocker:launch
blocker:limit-orders
blocker:v2
block:log_only
block:security
bug
ci
contracts
correctness
deploy
dev
devops
docs
documentation
duplicate
e2e
enhancement
epic
feature
frontend
functional-completion
gas
good first issue
governance
help wanted
high-risk
hooks
hybrid
indexer
infra
infrastructure
integrators
invalid
launch-blocker
limit-orders
localnet
localterra
low priority
missing-implementation
needs-design
ops
performance
priority
high
priority
medium
product
qa
QA
question
ready
ready
research
scripts
security
security-hardening
smartcontracts
tech-debt
testing
ux
UX
v2
verification
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
code/cl8y-dex-terraclassic!1164
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/668-protocol-volume-chart"
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?
Closes #668
Summary
/protocolUTC volume chart now has a visible USD value axis, an in-document pointer + keyboard tooltip, and Hourly / Daily / Monthly grain tabs (default Daily).7d/30dis no longer the grain selector; trailing Last 24h / 7d / 30d tiles stay as-is (#576).GET /api/v1/protocol/volume/daily?days=7|30as the #652 alias and addsgrain=hourly|daily|monthly+ cappedlimit. GET readsprotocol_hourly_volume/protocol_daily_volume/protocol_monthly_volumeonly (60s cache).from/to, unknown grain, injection, and over-max limit return 400.ResizeObserver, ~12px slot) and clamps to hourly 12–168, daily 7–90, monthly 6–24. Client allowlists grain/limit before fetch.Invariants / docs
P668-1–P668-8 in
skills/AGENTS_FRONTEND_PROTOCOL_STATS.md. P652-3/4/5 rewritten so daily prune ≥ 95d, grain selector, anddays=7|30alias stay explicit. Crosslinks:docs/frontend.md,docs/indexer-invariants.md,docs/runbooks/overview-global-stats-brin.md,AGENTS.md,skills/AGENTS_FRONTEND_TRAILING_WINDOW.md. Verify:make verify-issue-668.Test plan
make verify-issue-668(docs/invariants, allowlist grep, frontend vitest, indexer integration, e2e-smoke)VERIFY_ISSUE_652_SKIP_E2E=1 VERIFY_ISSUE_652_SKIP_RELATED=1 make verify-issue-652(days=7|30alias still green)indexer_protocol_volumeintegration (allowlist, idle/unpriced, cache, injection → 400)e2e/protocol-page.spec.ts(5 workers) — grain tabs inside Global statsmake verify-issue-550/569/586/576/577/631/653(not re-run in this MR; expected still green)protocol_hourly_volume/protocol_monthly_volumeon deployIssue AC
formatProtocolUsdticks). Bars remain a UTC time series.<title>-only.7d/30d). Default Daily. Trailing tiles unchanged.days=7|30without grain still #652 daily.swap_eventsSUM. No Llama. Idle"0"; unpricednull.PriceChart. No nestedcard-glass.volume_usdrender as text. Axis / tooltip neverInfinity.make verify-issue-668.verify-issue-652still passes.verify-issue-550/569/586/576/577/631/653not re-run here.mentioned in issue #668
mentioned in commit
c9cf7106b6added 24 commits
mainc9cf7106- Merge origin/main into branch for !1164Compare with previous version
mentioned in commit
eb0238d68ementioned in issue #673