feat: /pool Vol column + pair-list 24h volume in USD (#692) #1195

Merged
PlasticDigits merged 1 commit from feat/692-pool-vol-usd into main 2026-08-29 04:53:45 +00:00
PlasticDigits commented 2026-08-29 04:22:35 +00:00 (Migrated from gitlab.com)

Closes #692

Summary

  • Indexer stamps pair_volume_24h.volume_usd in refresh_pair_volumes (SUM(swap_events.volume_usd) of priced swaps; overflow/unpriced stay NULL; idle zeros quote and USD).
  • GET /api/v1/pairs is additive: volume_quote_24h stays raw; optional volume_usd_24h; sort=volume_usd_24h NULLS LAST; sort=volume_24h unchanged; invalid sort still 400.
  • /pool Vol, Manage line, and Trade/Limits/Charts pair-search badges render compact USD (or —). Catalog rank prefers USD 24h within a hub when present.

Test plan

  • cd indexer && cargo test --test indexer_pair_volume_usd --test indexer_pair_volume_pagination --test api_pairs -- --test-threads=1
  • Vitest: PoolPage, poolListQuery, pairCatalogRank, PairSearchSelect #534, trailingWindowCopy, chartsOverviewStats
  • Playwright e2e/pool-table-547.spec.ts e2e-smoke --workers=5 (PVol cell $ or —)
  • make verify-issue-692 (docs, source guards, indexer, frontend, Playwright)
  • Related: VERIFY_ISSUE_547_SKIP_E2E=1 make verify-issue-547, VERIFY_ISSUE_655_SKIP_E2E=1 VERIFY_ISSUE_655_SKIP_RELATED=1 make verify-issue-655, make verify-issue-534
  • Reviewer: priced pair list volume_usd_24h ≈ GET /pairs/{addr}/stats volume_usd within ~5 min lag on a live indexer
  • Reviewer: light + dark /pool Vol cells; production gem hide unchanged

Do not N+1 /stats from /pool. Do not convert quote volume in the browser.

Closes #692 ## Summary - Indexer stamps `pair_volume_24h.volume_usd` in `refresh_pair_volumes` (`SUM(swap_events.volume_usd)` of priced swaps; overflow/unpriced stay NULL; idle zeros quote and USD). - `GET /api/v1/pairs` is additive: `volume_quote_24h` stays raw; optional `volume_usd_24h`; `sort=volume_usd_24h` NULLS LAST; `sort=volume_24h` unchanged; invalid `sort` still 400. - `/pool` Vol, Manage line, and Trade/Limits/Charts pair-search badges render compact USD (or —). Catalog rank prefers USD 24h within a hub when present. ## Test plan - [x] `cd indexer && cargo test --test indexer_pair_volume_usd --test indexer_pair_volume_pagination --test api_pairs -- --test-threads=1` - [x] Vitest: PoolPage, poolListQuery, pairCatalogRank, PairSearchSelect #534, trailingWindowCopy, chartsOverviewStats - [x] Playwright `e2e/pool-table-547.spec.ts` e2e-smoke `--workers=5` (PVol cell `$` or —) - [x] `make verify-issue-692` (docs, source guards, indexer, frontend, Playwright) - [x] Related: `VERIFY_ISSUE_547_SKIP_E2E=1 make verify-issue-547`, `VERIFY_ISSUE_655_SKIP_E2E=1 VERIFY_ISSUE_655_SKIP_RELATED=1 make verify-issue-655`, `make verify-issue-534` - [ ] Reviewer: priced pair list `volume_usd_24h` ≈ `GET /pairs/{addr}/stats` `volume_usd` within ~5 min lag on a live indexer - [ ] Reviewer: light + dark `/pool` Vol cells; production gem hide unchanged Do not N+1 `/stats` from `/pool`. Do not convert quote volume in the browser.
PlasticDigits commented 2026-08-29 04:53:38 +00:00 (Migrated from gitlab.com)

mentioned in issue #692

mentioned in issue #692
PlasticDigits (Migrated from gitlab.com) merged commit f4fa678838 into main 2026-08-29 04:53:45 +00:00
PlasticDigits commented 2026-08-29 04:53:46 +00:00 (Migrated from gitlab.com)

mentioned in commit f4fa678838

mentioned in commit f4fa67883832114331d05cfa55d5eea94251e2a0
PlasticDigits commented 2026-08-29 04:56:14 +00:00 (Migrated from gitlab.com)

mentioned in issue #701

mentioned in issue #701
PlasticDigits commented 2026-08-29 04:56:26 +00:00 (Migrated from gitlab.com)

mentioned in issue #693

mentioned in issue #693
PlasticDigits commented 2026-08-29 05:14:43 +00:00 (Migrated from gitlab.com)

mentioned in issue #702

mentioned in issue #702
PlasticDigits commented 2026-08-29 10:04:44 +00:00 (Migrated from gitlab.com)

mentioned in commit 5ca6fc5a47

mentioned in commit 5ca6fc5a47e78bb901e8a945e3cd445b84232482
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
code/cl8y-dex-terraclassic!1195
No description provided.