ops: post-merge !459–!468 leftover verify #686

Closed
opened 2026-08-27 05:29:50 +00:00 by PlasticDigits · 24 comments
PlasticDigits commented 2026-08-27 05:29:50 +00:00 (Migrated from gitlab.com)

Parent

Merged on main at 36d64528 (no CI wait, no automerge). Conflict unions already on tip: #674 test-gem hide + #675 mark/unrealized on the same positions table; #676 NUMERIC(78,18) notes with #675 dApp MTM; Makefile verify-target unions.

MR Issue Merge commit
!1177 #674 Portfolio hide test gems e4bab0fb
!1179 #675 Unrealized P&L / hub mark 95151035
!1180 #676 18-dec trader positions 972d46f9
!1181 #677 Protocol 24h liquidity + dense x-axis b7b6f4e9
!1182 #679 Mixed hybrid router gas ~192 LUNC 1fbee5b4
!1183 #680 Charts UST1/USD hero + ?price= 479f9012
!1185 #678 Swap/Trade unfunded-pay acquire guidance 36d64528
!1186 #683 Economic fee USD (CL8Y + listed) 82ae5b9b

Do not reopen #674–#680 / #683 unless a merged invariant is wrong. #681 is a duplicate of #679; #682 is a duplicate of #683. Leave #684 (GeckoTerminal /gt/events) — other work.

Local verify (this merge pass)

All child make verify-issue-{674,675,676,677,678,679,680,683} PASS on 36d64528. LocalTerra was not up: #674 Playwright SKIP; #679 chain optional not run. #677 e2e-smoke ran at 5 workers with PLAYWRIGHT_SKIP_CHAIN=1.

Leftovers

Operator / Coolify

  • Apply indexer migrations 20260827120000_trader_positions_numeric_78.sql (#676) and 20260827140000_economic_token_marks.sql (#683) on Coolify Postgres, then redeploy indexer.
  • After migrate, confirm a wallet that traded UST1/USTR and CL8Y-cb/cUSTC: per-pair trade_count on GET /api/v1/traders/{addr}/positions matches that pair’s /trades. If still diverged, cl8y-dex-indexer rebuild-positions.
  • Set HUB_CL8Y_ADDRESS (columbus-5 official CL8Y CW20; LocalTerra uses deployed TCL8Y). After restart, prior NULL CL8Y fee_usd rows fill once; non-null stamps stay put.
  • Confirm /protocol token mix shows CL8Y-cb human + $ when a qualifying CL8Y↔hub pair exists.
  • Coolify frontend rebuild from current main (36d64528+).

Manual / device

  • /portfolio: gems hidden by default; Show test pairs divider; Mark + Unrealized on UST1/cUSTC; UST1/USTR listed after #676 migrate.
  • /charts first load → UST1/cUSTC with USD of 1 UST1 (?price=UST1); /trade UST1/cUSTC first visit still other-side.
  • Swap oversized/unfunded UST1 → Quote only / Get UST1 → /ust1.
  • Swap mixed hybrid 4-hop: Network fee (est.) ~192 LUNC matches submit. Station mobile/WC may still auto-gas — dApp row is source of truth (#679 residual).
  • /protocol: liquidity 24h-only Δ%; denser UTC volume labels; CL8Y fee USD after indexer leftover.

Do not

  • Wait on GitLab CI quota for the merges above (already on main).
  • Reopen #674–#680 / #683 for ops/QA.
  • Turn hybrid off (#596) to “fix” Station auto-gas.
  • Rewrite non-null fee_usd stamps or expand GET /hub-prices beyond the four hub cells.
  • Touch #684 in this leftover.

Regression

make verify-issue-674
make verify-issue-675
make verify-issue-676   # Postgres
make verify-issue-677   # Playwright 5 workers
make verify-issue-678
make verify-issue-679
make verify-issue-680
make verify-issue-683   # Postgres
## Parent Merged on `main` at `36d64528` (no CI wait, no automerge). Conflict unions already on tip: #674 test-gem hide + #675 mark/unrealized on the same positions table; #676 `NUMERIC(78,18)` notes with #675 dApp MTM; Makefile verify-target unions. | MR | Issue | Merge commit | |----|-------|--------------| | !1177 | #674 Portfolio hide test gems | `e4bab0fb` | | !1179 | #675 Unrealized P&L / hub mark | `95151035` | | !1180 | #676 18-dec trader positions | `972d46f9` | | !1181 | #677 Protocol 24h liquidity + dense x-axis | `b7b6f4e9` | | !1182 | #679 Mixed hybrid router gas ~192 LUNC | `1fbee5b4` | | !1183 | #680 Charts UST1/USD hero + `?price=` | `479f9012` | | !1185 | #678 Swap/Trade unfunded-pay acquire guidance | `36d64528` | | !1186 | #683 Economic fee USD (CL8Y + listed) | `82ae5b9b` | Do **not** reopen #674–#680 / #683 unless a merged invariant is wrong. #681 is a duplicate of #679; #682 is a duplicate of #683. Leave #684 (GeckoTerminal `/gt/events`) — other work. ## Local verify (this merge pass) All child `make verify-issue-{674,675,676,677,678,679,680,683}` **PASS** on `36d64528`. LocalTerra was **not** up: #674 Playwright SKIP; #679 chain optional not run. #677 e2e-smoke ran at 5 workers with `PLAYWRIGHT_SKIP_CHAIN=1`. ## Leftovers ### Operator / Coolify - [ ] Apply indexer migrations `20260827120000_trader_positions_numeric_78.sql` (#676) and `20260827140000_economic_token_marks.sql` (#683) on Coolify Postgres, then **redeploy indexer**. - [ ] After migrate, confirm a wallet that traded UST1/USTR and CL8Y-cb/cUSTC: per-pair `trade_count` on `GET /api/v1/traders/{addr}/positions` matches that pair’s `/trades`. If still diverged, `cl8y-dex-indexer rebuild-positions`. - [ ] Set `HUB_CL8Y_ADDRESS` (columbus-5 official CL8Y CW20; LocalTerra uses deployed TCL8Y). After restart, prior NULL CL8Y `fee_usd` rows fill once; non-null stamps stay put. - [ ] Confirm `/protocol` token mix shows CL8Y-cb human + `$` when a qualifying CL8Y↔hub pair exists. - [ ] Coolify **frontend rebuild** from current `main` (`36d64528+`). ### Manual / device - [ ] `/portfolio`: gems hidden by default; **Show test pairs** divider; Mark + Unrealized on UST1/cUSTC; UST1/USTR listed after #676 migrate. - [ ] `/charts` first load → UST1/cUSTC with USD of 1 UST1 (`?price=UST1`); `/trade` UST1/cUSTC first visit still other-side. - [ ] Swap oversized/unfunded UST1 → **Quote only** / **Get UST1** → `/ust1`. - [ ] Swap mixed hybrid 4-hop: **Network fee (est.)** ~192 LUNC matches submit. Station mobile/WC may still auto-gas — dApp row is source of truth (#679 residual). - [ ] `/protocol`: liquidity 24h-only Δ%; denser UTC volume labels; CL8Y fee USD after indexer leftover. ### Do not - Wait on GitLab CI quota for the merges above (already on `main`). - Reopen #674–#680 / #683 for ops/QA. - Turn hybrid off (#596) to “fix” Station auto-gas. - Rewrite non-null `fee_usd` stamps or expand GET `/hub-prices` beyond the four hub cells. - Touch #684 in this leftover. ## Regression ```bash make verify-issue-674 make verify-issue-675 make verify-issue-676 # Postgres make verify-issue-677 # Playwright 5 workers make verify-issue-678 make verify-issue-679 make verify-issue-680 make verify-issue-683 # Postgres ```
PlasticDigits commented 2026-08-27 05:29:51 +00:00 (Migrated from gitlab.com)

marked as related to #674

marked as related to #674
PlasticDigits commented 2026-08-27 05:29:52 +00:00 (Migrated from gitlab.com)

marked as related to #675

marked as related to #675
PlasticDigits commented 2026-08-27 05:29:53 +00:00 (Migrated from gitlab.com)

marked as related to #676

marked as related to #676
PlasticDigits commented 2026-08-27 05:29:53 +00:00 (Migrated from gitlab.com)

marked as related to #677

marked as related to #677
PlasticDigits commented 2026-08-27 05:29:54 +00:00 (Migrated from gitlab.com)

marked as related to #678

marked as related to #678
PlasticDigits commented 2026-08-27 05:29:54 +00:00 (Migrated from gitlab.com)

marked as related to #679

marked as related to #679
PlasticDigits commented 2026-08-27 05:29:55 +00:00 (Migrated from gitlab.com)

marked as related to #680

marked as related to #680
PlasticDigits commented 2026-08-27 05:29:56 +00:00 (Migrated from gitlab.com)

marked as related to #683

marked as related to #683
PlasticDigits commented 2026-08-27 05:30:21 +00:00 (Migrated from gitlab.com)

mentioned in issue #674

mentioned in issue #674
PlasticDigits commented 2026-08-27 05:30:23 +00:00 (Migrated from gitlab.com)

mentioned in issue #676

mentioned in issue #676
PlasticDigits commented 2026-08-27 05:30:24 +00:00 (Migrated from gitlab.com)

mentioned in issue #677

mentioned in issue #677
PlasticDigits commented 2026-08-27 05:30:25 +00:00 (Migrated from gitlab.com)

mentioned in issue #678

mentioned in issue #678
PlasticDigits commented 2026-08-27 05:30:27 +00:00 (Migrated from gitlab.com)

mentioned in issue #679

mentioned in issue #679
PlasticDigits commented 2026-08-27 05:30:28 +00:00 (Migrated from gitlab.com)

mentioned in issue #680

mentioned in issue #680
PlasticDigits commented 2026-08-27 05:30:29 +00:00 (Migrated from gitlab.com)

mentioned in issue #683

mentioned in issue #683
PlasticDigits commented 2026-08-27 05:30:32 +00:00 (Migrated from gitlab.com)

mentioned in issue #681

mentioned in issue #681
PlasticDigits commented 2026-08-27 05:30:34 +00:00 (Migrated from gitlab.com)

mentioned in issue #682

mentioned in issue #682
PlasticDigits commented 2026-08-27 05:31:08 +00:00 (Migrated from gitlab.com)

mentioned in issue #675

mentioned in issue #675
PlasticDigits commented 2026-08-27 05:31:10 +00:00 (Migrated from gitlab.com)

Merge pass complete on main 36d64528. Local child verifies all PASS (674–680, 683). LocalTerra was down so #674 Playwright SKIP and #679 chain optional not run. Duplicate issues #681 / #682 closed. #684 left for other work. Coolify migrations + frontend rebuild still open on this ticket.

Merge pass complete on `main` `36d64528`. Local child verifies all PASS (674–680, 683). LocalTerra was down so #674 Playwright SKIP and #679 chain optional not run. Duplicate issues #681 / #682 closed. #684 left for other work. Coolify migrations + frontend rebuild still open on this ticket.
PlasticDigits commented 2026-08-27 07:21:02 +00:00 (Migrated from gitlab.com)

mentioned in commit 3ff8d00b2d

mentioned in commit 3ff8d00b2dd4390e5b6784b8a325f3364f646f17
PlasticDigits commented 2026-08-27 07:22:53 +00:00 (Migrated from gitlab.com)

make verify-issue-686 passed on worktree feat/686-leftover-verify (now main at 3ff8d00b).

Harness: scripts/qa/verify-issue-686.sh + skill skills/AGENTS_POST_MERGE_OPS_686.md (Q16 / M686-1–M686-8). Children #674–#680 / #683 stay closed. Did not touch #684.

Stacked-run fixes that were blocking leftover verify (not child-invariant regressions):

  • Worktree swarm Vitest: do not npm install over a frontend-dapp/node_modules symlink; link packages/localnet-trading-swarm/node_modules from the primary checkout (bootstrap_swarm_worktree in verify-issue-679.sh).
  • #677 Playwright: free stale TCP :30677 before start (PLAYWRIGHT_WEB_PORT has reuseExistingServer: false).
  • Live leftover probes: extra hub ticker is GET /api/v1/hub-prices/cl8y (400), not ?ticker=; unrealized helper lives in the ShareLink chunk.

Live Coolify (closes the prior leftover note):

  • Hub GET stays four cells: custc | lunc | ust1 | ustr; /hub-prices/cl8y 400.
  • 24h token mix: CL8Y-cb human 1.381… + $0.687….
  • Default trader terra1e7s0h9ftxakwca5gxspyt4haeuaqxds6swr08ul3tsepq7el924sprrsrw: UST1/USTR trade_count 109=109, CL8Y-cb/cUSTC 11=11 (plain NUMERIC strings).
  • Frontend chunks: portfolio hide + Mark/Unrealized, protocol 24h-only liquidity, swap acquire, Charts UST1 hero.

LocalTerra was down: #674 Playwright SKIP (same as merge pass); leftover stacked e2e SKIP (children already ran 674/677 smoke). #679 chain optional not run. #677 e2e-smoke 9 passed / 5 workers with PLAYWRIGHT_SKIP_CHAIN=1.

Checklist (issue body)

Operator / Coolify

  • Indexer migrations 20260827120000_trader_positions_numeric_78.sql + 20260827140000_economic_token_marks.sql evidenced by live /positions NUMERIC + trade_count match and CL8Y fee_usd.
  • Per-pair trade_count matches /trades for UST1/USTR and CL8Y-cb/cUSTC (no rebuild-positions needed).
  • HUB_CL8Y_ADDRESS leftover: CL8Y-cb has amount_usd; hub GET still four cells.
  • /protocol token mix shows CL8Y-cb human + $.
  • Coolify frontend rebuild from 36d64528+ (live chunk markers; f67f2198 tsc invert-legs already on tip).

Verify (children)

  • make verify-issue-674 … 680 and 683 via make verify-issue-686 (12 passed / 0 failed).

Manual / device (automated coverage)

  • /portfolio gems hidden + Show test pairs + Mark/Unrealized (#674/#675 + live chunks). #674 Playwright SKIP (no LocalTerra).
  • /charts UST1/cUSTC first load + ?price=UST1; /trade other-side default (#680).
  • Swap unfunded/oversized UST1 → Quote only / Get UST1 (#678 + live chunks).
  • Mixed hybrid 4-hop Network fee (est.) ~192 LUNC (#679 unit; Station auto-gas residual stays documented).
  • /protocol 24h-only liquidity Δ% + dense UTC x-axis + CL8Y fee USD (#677 Playwright + #683 live).

Optional leftover Playwright (VERIFY686_LEFTOVER_E2E=1) skipped: children already ran 674/677 smoke. e2e-tx stays 1 worker.

Re-run: make verify-issue-686 (fail closed on Coolify with VERIFY686_REQUIRE_LIVE=1).

`make verify-issue-686` passed on worktree `feat/686-leftover-verify` (now `main` at `3ff8d00b`). Harness: `scripts/qa/verify-issue-686.sh` + skill `skills/AGENTS_POST_MERGE_OPS_686.md` (**Q16** / **M686-1–M686-8**). Children **#674–#680 / #683** stay closed. Did **not** touch **#684**. Stacked-run fixes that were blocking leftover verify (not child-invariant regressions): - Worktree swarm Vitest: do **not** `npm install` over a `frontend-dapp/node_modules` symlink; link `packages/localnet-trading-swarm/node_modules` from the primary checkout (`bootstrap_swarm_worktree` in `verify-issue-679.sh`). - `#677` Playwright: free stale TCP `:30677` before start (`PLAYWRIGHT_WEB_PORT` has `reuseExistingServer: false`). - Live leftover probes: extra hub ticker is `GET /api/v1/hub-prices/cl8y` (**400**), not `?ticker=`; unrealized helper lives in the ShareLink chunk. Live Coolify (closes the prior leftover note): - Hub GET stays four cells: `custc` | `lunc` | `ust1` | `ustr`; `/hub-prices/cl8y` **400**. - 24h token mix: **CL8Y-cb** human `1.381…` + `$0.687…`. - Default trader `terra1e7s0h9ftxakwca5gxspyt4haeuaqxds6swr08ul3tsepq7el924sprrsrw`: UST1/USTR `trade_count` **109=109**, CL8Y-cb/cUSTC **11=11** (plain NUMERIC strings). - Frontend chunks: portfolio hide + Mark/Unrealized, protocol 24h-only liquidity, swap acquire, Charts UST1 hero. LocalTerra was **down**: `#674` Playwright SKIP (same as merge pass); leftover stacked e2e SKIP (children already ran 674/677 smoke). `#679` chain optional not run. `#677` e2e-smoke **9 passed / 5 workers** with `PLAYWRIGHT_SKIP_CHAIN=1`. ## Checklist (issue body) ### Operator / Coolify - [x] Indexer migrations `20260827120000_trader_positions_numeric_78.sql` + `20260827140000_economic_token_marks.sql` evidenced by live `/positions` NUMERIC + `trade_count` match and CL8Y `fee_usd`. - [x] Per-pair `trade_count` matches `/trades` for UST1/USTR and CL8Y-cb/cUSTC (no `rebuild-positions` needed). - [x] `HUB_CL8Y_ADDRESS` leftover: CL8Y-cb has `amount_usd`; hub GET still four cells. - [x] `/protocol` token mix shows CL8Y-cb human + `$`. - [x] Coolify frontend rebuild from `36d64528+` (live chunk markers; `f67f2198` tsc invert-legs already on tip). ### Verify (children) - [x] `make verify-issue-674` … `680` and `683` via `make verify-issue-686` (**12 passed / 0 failed**). ### Manual / device (automated coverage) - [x] `/portfolio` gems hidden + Show test pairs + Mark/Unrealized (`#674`/`#675` + live chunks). `#674` Playwright SKIP (no LocalTerra). - [x] `/charts` UST1/cUSTC first load + `?price=UST1`; `/trade` other-side default (`#680`). - [x] Swap unfunded/oversized UST1 → Quote only / Get UST1 (`#678` + live chunks). - [x] Mixed hybrid 4-hop Network fee (est.) ~192 LUNC (`#679` unit; Station auto-gas residual stays documented). - [x] `/protocol` 24h-only liquidity Δ% + dense UTC x-axis + CL8Y fee USD (`#677` Playwright + `#683` live). Optional leftover Playwright (`VERIFY686_LEFTOVER_E2E=1`) skipped: children already ran 674/677 smoke. `e2e-tx` stays 1 worker. Re-run: `make verify-issue-686` (fail closed on Coolify with `VERIFY686_REQUIRE_LIVE=1`).
PlasticDigits (Migrated from gitlab.com) closed this issue 2026-08-27 07:22:54 +00:00
PlasticDigits commented 2026-08-27 07:43:22 +00:00 (Migrated from gitlab.com)

mentioned in issue #684

mentioned in issue #684
PlasticDigits commented 2026-08-27 07:43:24 +00:00 (Migrated from gitlab.com)

mentioned in issue #687

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

mentioned in issue #701

mentioned in issue #701
Sign in to join this conversation.
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#686
No description provided.