fix(frontend): label hub wrap as cLUNC vs CEX USTC/LUNC #1290

Merged
PlasticDigits merged 2 commits from issue/1240-hub-clunc into main 2026-09-21 05:24:43 +00:00

Summary

  • Hub DEX prices now show wrap identities cUSTC / USD and cLUNC / USD (API ticker for the wrap column stays lunc; no clunc path).
  • CEX oracle stays native USTC / USD and LUNC / USD (tabs USTC, LUNC, vFDUSD).
  • Selected oracle tabs keep text-transform: none so global .btn-primary { text-transform: uppercase } does not flatten vFDUSD to VFDUSD.
  • Invariants P1240-1–P1240-8 / H11 and agent skills updated and crosslinked.

Fixes #1240 (post-merge naming comments: hub should be cLUNC; oracle should stay USTC/LUNC).

Acceptance

  • Hub <dt> shows cUSTC / USD (not CUSTC / USD) and cLUNC / USD (not LUNC / USD on the hub card). UST1 / USTR unchanged besides no extra transform.
  • Oracle tabs show USTC, LUNC, vFDUSD (not VFDUSD, not wrap cUSTC / cLUNC).
  • Oracle H2: USTC / USD, LUNC / USD, or vFDUSD per #571 (vFDUSD heading has no / USD).
  • Venus heading 1 vFDUSD Price keeps mixed-case vFDUSD.
  • CEX vs hub identity: wrap hub is cUSTC / cLUNC; CEX tabs are USTC / LUNC; hub lunc still has cLUNC wrap AddressRow; oracle lunc still loads CEX sources/history.
  • Disclaimers and ?ticker= allowlist unchanged. No new CEX tickers. Hub API ids unchanged (custc / lunc / ust1 / ustr).
  • RTL asserts exact casing; existing keyboard / deep-link / 502 tests still pass.
  • No indexer, hub-price, or Venus API change.

Test plan

  • make verify-issue-1240 (8/8, run twice)
  • ProtocolPage + hubPriceTicker Vitest (hub cLUNC / USD, oracle USTC / LUNC, parseHubPriceTicker('cLUNC') is null)
  • Playwright e2e/protocol-page.spec.ts (PLAYWRIGHT_SKIP_CHAIN=1, 5 workers; P1/P2/P4 exact-case + selected vFDUSD text-transform: none)
  • Local /protocol browser: hub dts cUSTC / USD + cLUNC / USD; oracle heading USTC / USD
  • Reviewer: production /protocol after Coolify — hub wrap vs CEX native is readable at a glance; selected vFDUSD tab is not VFDUSD
## Summary - Hub DEX prices now show wrap identities **cUSTC / USD** and **cLUNC / USD** (API ticker for the wrap column stays `lunc`; no `clunc` path). - CEX oracle stays native **USTC / USD** and **LUNC / USD** (tabs **USTC**, **LUNC**, **vFDUSD**). - Selected oracle tabs keep `text-transform: none` so global `.btn-primary { text-transform: uppercase }` does not flatten **vFDUSD** to **VFDUSD**. - Invariants **P1240-1–P1240-8** / **H11** and agent skills updated and crosslinked. Fixes #1240 (post-merge naming comments: hub should be cLUNC; oracle should stay USTC/LUNC). ## Acceptance - [x] Hub `<dt>` shows `cUSTC / USD` (not `CUSTC / USD`) and `cLUNC / USD` (not `LUNC / USD` on the hub card). `UST1` / `USTR` unchanged besides no extra transform. - [x] Oracle tabs show `USTC`, `LUNC`, `vFDUSD` (not `VFDUSD`, not wrap `cUSTC` / `cLUNC`). - [x] Oracle H2: `USTC / USD`, `LUNC / USD`, or `vFDUSD` per #571 (vFDUSD heading has no `/ USD`). - [x] Venus heading `1 vFDUSD Price` keeps mixed-case `vFDUSD`. - [x] CEX vs hub identity: wrap hub is `cUSTC` / `cLUNC`; CEX tabs are `USTC` / `LUNC`; hub `lunc` still has cLUNC wrap `AddressRow`; oracle `lunc` still loads CEX sources/history. - [x] Disclaimers and `?ticker=` allowlist unchanged. No new CEX tickers. Hub API ids unchanged (`custc` / `lunc` / `ust1` / `ustr`). - [x] RTL asserts exact casing; existing keyboard / deep-link / 502 tests still pass. - [x] No indexer, hub-price, or Venus API change. ## Test plan - [x] `make verify-issue-1240` (8/8, run twice) - [x] ProtocolPage + hubPriceTicker Vitest (hub `cLUNC / USD`, oracle `USTC` / `LUNC`, `parseHubPriceTicker('cLUNC')` is null) - [x] Playwright `e2e/protocol-page.spec.ts` (`PLAYWRIGHT_SKIP_CHAIN=1`, 5 workers; P1/P2/P4 exact-case + selected vFDUSD `text-transform: none`) - [x] Local `/protocol` browser: hub dts `cUSTC / USD` + `cLUNC / USD`; oracle heading `USTC / USD` - [ ] Reviewer: production `/protocol` after Coolify — hub wrap vs CEX native is readable at a glance; selected vFDUSD tab is not `VFDUSD`
fix(frontend): label hub wrap as cLUNC vs CEX USTC/LUNC
All checks were successful
ci/woodpecker/pr/woodpecker Pipeline was successful
0b4597f651
Hub DEX prices show wrap identities (cUSTC / cLUNC). CEX oracle stays native USTC / LUNC. Selected oracle tabs keep text-transform none so btn-primary does not flatten vFDUSD.
Author
Owner

drain skip: no occupying job for rebase/fix-pr/CI-wait; remaining continue

drain skip: no occupying job for rebase/fix-pr/CI-wait; remaining continue
Author
Owner

cl8y-agent-control: queued implement job 5f65f703-b5d8-4a09-908b-cc2d111ffb56 (not executed; no Hetzner VM).

cl8y-agent-control: queued `implement` job `5f65f703-b5d8-4a09-908b-cc2d111ffb56` (not executed; no Hetzner VM).
Merge remote-tracking branch 'origin/main' into issue/1240-hub-clunc
All checks were successful
ci/woodpecker/pr/woodpecker Pipeline was successful
a00f59634b
PlasticDigits deleted branch issue/1240-hub-clunc 2026-09-21 05:24:43 +00:00
Author
Owner

Implement bundle PR #1302 merged. Local make verify-issue-1290 passed (P1240 + hubPriceTicker + Playwright 5 workers).

Unchecked AC remains the Coolify /protocol glance check (hub wrap vs CEX native; selected vFDUSD casing). Tracked on #1305.

Implement bundle PR #1302 merged. Local `make verify-issue-1290` passed (P1240 + hubPriceTicker + Playwright 5 workers). Unchecked AC remains the Coolify `/protocol` glance check (hub wrap vs CEX native; selected `vFDUSD` casing). Tracked on #1305.
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!1290
No description provided.