LocalTerra: wrap-mapper split-fee instantiate + record #533 e2e-tx P4–P8 #539

Closed
opened 2026-08-17 03:42:24 +00:00 by PlasticDigits · 14 comments
PlasticDigits commented 2026-08-17 03:42:24 +00:00 (Migrated from gitlab.com)

Why

!1068 landed one-sided pool add/withdraw on main (#533 AC1–AC12, A7 in CI, Playwright P1–P3). Issue close criteria still require LocalTerra e2e-tx P4–P8 recorded. Those paths were not run because local wrap-mapper instantiate still sends legacy fee_bps.

Parent: #533 (keep open until this lands). Related: #516 (split fees; closed, mainnet-focused).

Scope

  1. Update scripts/deploy-dex-local.sh wrap-mapper instantiate to fee_wrap_bps / fee_unwrap_bps (and any dual-read needed for older wasm).
  2. Redeploy LocalTerra (make setup-cloud-localterra / --fresh if volumes are stale).
  3. Record frontend-dapp/e2e/pool-one-sided-533-tx.spec.ts P4–P8:
    • P4 one-sided add CW20 pair-leg
    • P5 one-sided add native LUNC (wrap+zap)
    • P6 withdraw as input CW20
    • P7 withdraw as uluna without draining leftover cLUNC (A7 on-chain)
    • P8 empty pool: one-sided disabled; Advanced two-sided first deposit
  4. Optionally add the tx spec to make verify-issue-533 when the chain is up.

Out of scope

  • Changing pair/router execute messages
  • Mainnet wrap-mapper migrate (already #516 / #523)

Verify

make setup-cloud-localterra   # or --fresh if instantiate still fails
sg docker -c 'CI=1 make test-e2e'   # or the dedicated e2e-tx file
# attach CI / local log that P4–P8 passed
## Why !1068 landed one-sided pool add/withdraw on `main` (#533 AC1–AC12, A7 in CI, Playwright P1–P3). Issue close criteria still require **LocalTerra e2e-tx P4–P8 recorded**. Those paths were not run because local wrap-mapper instantiate still sends legacy `fee_bps`. Parent: #533 (keep open until this lands). Related: #516 (split fees; closed, mainnet-focused). ## Scope 1. Update `scripts/deploy-dex-local.sh` wrap-mapper instantiate to `fee_wrap_bps` / `fee_unwrap_bps` (and any dual-read needed for older wasm). 2. Redeploy LocalTerra (`make setup-cloud-localterra` / `--fresh` if volumes are stale). 3. Record `frontend-dapp/e2e/pool-one-sided-533-tx.spec.ts` P4–P8: - P4 one-sided add CW20 pair-leg - P5 one-sided add native LUNC (wrap+zap) - P6 withdraw as input CW20 - P7 withdraw as `uluna` without draining leftover cLUNC (A7 on-chain) - P8 empty pool: one-sided disabled; Advanced two-sided first deposit 4. Optionally add the tx spec to `make verify-issue-533` when the chain is up. ## Out of scope - Changing pair/router execute messages - Mainnet wrap-mapper migrate (already #516 / #523) ## Verify ```bash make setup-cloud-localterra # or --fresh if instantiate still fails sg docker -c 'CI=1 make test-e2e' # or the dedicated e2e-tx file # attach CI / local log that P4–P8 passed ```
PlasticDigits commented 2026-08-17 03:42:25 +00:00 (Migrated from gitlab.com)

marked as related to #533

marked as related to #533
PlasticDigits commented 2026-08-17 03:42:36 +00:00 (Migrated from gitlab.com)

mentioned in issue #533

mentioned in issue #533
PlasticDigits commented 2026-08-17 09:23:43 +00:00 (Migrated from gitlab.com)

mentioned in commit 60e407771591c7045cbf1904262a1a7a8720064b

mentioned in commit 60e407771591c7045cbf1904262a1a7a8720064b
PlasticDigits commented 2026-08-17 09:25:49 +00:00 (Migrated from gitlab.com)

mentioned in commit dd6f88817130dd902bd118188803118e04b047fb

mentioned in commit dd6f88817130dd902bd118188803118e04b047fb
PlasticDigits commented 2026-08-17 09:26:59 +00:00 (Migrated from gitlab.com)

mentioned in commit a99c91d6a5

mentioned in commit a99c91d6a54e4a367a0abd9dceaeab9260c5ff00
PlasticDigits commented 2026-08-17 09:26:59 +00:00 (Migrated from gitlab.com)

mentioned in commit 3a207c56db

mentioned in commit 3a207c56db5d14268c456cb0dde9a2440a593793
PlasticDigits commented 2026-08-17 09:27:01 +00:00 (Migrated from gitlab.com)

mentioned in merge request !1072

mentioned in merge request !1072
PlasticDigits commented 2026-08-17 09:27:34 +00:00 (Migrated from gitlab.com)

Results — LocalTerra wrap-mapper split-fee instantiate + #533 P4–P8

MR: !1072 (feat/539-wrap-mapper-split-local)

Wrap-mapper instantiate (GitLab #539)

Rebuilt wrap_mapper.wasm from current ustr-cmm (0.3.0) and instantiated with fee_wrap_bps / fee_unwrap_bps (legacy fee_bps fallback not needed).

TX 2A424E8B22F197095B8335F7612A3E1A74DE8E561C27A3B611911376CA288EE7 (fee_wrap_bps/fee_unwrap_bps)
Address terra124tapgv8wsn5t3rv2cvywh4ckkmj6mc6fkya005qjmshnzewwm9qe9llrj
LCD config paused=false, fee_wrap_bps=50, fee_unwrap_bps=50 (no fee_bps)

Log line: Instantiated with split fees (GitLab #539).

make verify-issue-539 (offline)

8/8 PASS (VERIFY_ISSUE_539_SKIP_E2E=1): deploy split-fee init + legacy fallback, missing-wasm rebuild, P4–P8 spec present, verify-issue-533 chain hook, skill/Makefile.

Playwright e2e-tx P4–P8

CI=1 playwright test e2e/pool-one-sided-533-tx.spec.ts --project=e2e-tx
Running 4 tests using 1 worker
  4 passed (34.5s)
ID Result
P4 one-sided add CW20 pair-leg pass
P5 native LUNC wrap+zap pass (after excluding cLUNC from the Token filter — "cLUNC" includes "LUNC")
P6 / P7 withdraw as one token (A7 quoted unwrap) pass
P8 empty-pool Advanced two-sided reachable pass

First P5 run failed: quote was Zap. Est. LP … (wrapped cLUNC selected). Spec now uses selectTokenInCombobox(..., 'LUNC', 'cLUNC') and prefers a cLUNC pair.

make verify-issue-533 runs this tx spec when make has-localterra succeeds.

Parent #533 stays open until !1072 lands.

## Results — LocalTerra wrap-mapper split-fee instantiate + #533 P4–P8 MR: !1072 (`feat/539-wrap-mapper-split-local`) ### Wrap-mapper instantiate (GitLab #539) Rebuilt `wrap_mapper.wasm` from current ustr-cmm (0.3.0) and instantiated with `fee_wrap_bps` / `fee_unwrap_bps` (legacy `fee_bps` fallback not needed). | | | |--|--| | TX | `2A424E8B22F197095B8335F7612A3E1A74DE8E561C27A3B611911376CA288EE7` (`fee_wrap_bps/fee_unwrap_bps`) | | Address | `terra124tapgv8wsn5t3rv2cvywh4ckkmj6mc6fkya005qjmshnzewwm9qe9llrj` | | LCD `config` | `paused=false`, **`fee_wrap_bps=50`**, **`fee_unwrap_bps=50`** (no `fee_bps`) | Log line: `Instantiated with split fees (GitLab #539).` ### `make verify-issue-539` (offline) 8/8 PASS (`VERIFY_ISSUE_539_SKIP_E2E=1`): deploy split-fee init + legacy fallback, missing-wasm rebuild, P4–P8 spec present, `verify-issue-533` chain hook, skill/Makefile. ### Playwright e2e-tx P4–P8 ``` CI=1 playwright test e2e/pool-one-sided-533-tx.spec.ts --project=e2e-tx Running 4 tests using 1 worker 4 passed (34.5s) ``` | ID | Result | |----|--------| | P4 one-sided add CW20 pair-leg | pass | | P5 native LUNC wrap+zap | pass (after excluding `cLUNC` from the Token filter — `"cLUNC"` includes `"LUNC"`) | | P6 / P7 withdraw as one token (A7 quoted unwrap) | pass | | P8 empty-pool Advanced two-sided reachable | pass | First P5 run failed: quote was `Zap. Est. LP …` (wrapped cLUNC selected). Spec now uses `selectTokenInCombobox(..., 'LUNC', 'cLUNC')` and prefers a `cLUNC` pair. `make verify-issue-533` runs this tx spec when `make has-localterra` succeeds. Parent #533 stays open until !1072 lands.
PlasticDigits (Migrated from gitlab.com) closed this issue 2026-08-17 09:27:36 +00:00
PlasticDigits commented 2026-08-17 09:31:28 +00:00 (Migrated from gitlab.com)

!1072 (feat/539-wrap-mapper-split-local) has the LocalTerra wrap-mapper split-fee instantiate (fee_wrap_bps / fee_unwrap_bps with legacy fee_bps fallback), make verify-issue-539, and P5 native-LUNC picker fix.

Recorded locally (existing LocalTerra, not --fresh):

  • VERIFY_ISSUE_539_SKIP_E2E=1 make verify-issue-539 → 8/8
  • CI=1 playwright test e2e/pool-one-sided-533-tx.spec.ts --project=e2e-tx → 4 passed (P4, P5, P6/P7, P8)

Leaving open until !1072 merges (Closes #539 on the MR). Parent #533 can close after that merge.

!1072 (`feat/539-wrap-mapper-split-local`) has the LocalTerra wrap-mapper split-fee instantiate (`fee_wrap_bps` / `fee_unwrap_bps` with legacy `fee_bps` fallback), `make verify-issue-539`, and P5 native-LUNC picker fix. Recorded locally (existing LocalTerra, not `--fresh`): - `VERIFY_ISSUE_539_SKIP_E2E=1 make verify-issue-539` → 8/8 - `CI=1 playwright test e2e/pool-one-sided-533-tx.spec.ts --project=e2e-tx` → **4 passed** (P4, P5, P6/P7, P8) Leaving open until !1072 merges (`Closes #539` on the MR). Parent #533 can close after that merge.
PlasticDigits commented 2026-08-17 10:29:17 +00:00 (Migrated from gitlab.com)

Merge sanity check (!1072)

This issue is already closed while !1072 is still open. Verified !1072 (feat/539-wrap-mapper-split-local @ e6d407f4) against the written criteria. Merging without waiting on CI.

Criterion Result
deploy-dex-local.sh wrap-mapper instantiate uses fee_wrap_bps / fee_unwrap_bps with legacy fee_bps fallback Met
Redeploy LocalTerra Claimed in MR test plan; not re-run in this merge pass. Post-merge: LocalTerra still needs a redeploy/--fresh so running stacks pick up split-fee instantiate.
Record e2e-tx P4–P8 Partial. P4/P5 recorded; P5 now prefers native LUNC + cLUNC pair. P6/P7 remain one combined test that clicks the first “Withdraw as” option (no explicit uluna leftover-cLUNC assertion). P8 does not navigate an empty pool or assert one-sided disabled.
Optional: add tx spec to make verify-issue-533 Met (verify-issue-533.sh + verify-issue-539.sh)

CI on the MR is failed with ci_quota_exceeded (no job logs). Not treated as a product defect.

feat/539-localterra-wrap-split-fees is the same tree as the MR branch (no unique work).

Branch was behind main (Coolify frontend-tsc-build / frontend-tokenlist-docker); those diffs do not overlap this MR’s files. Makefile overlap with !1075 will be resolved on the remaining branch after the first merge.

## Merge sanity check (!1072) This issue is already **closed** while !1072 is still open. Verified !1072 (`feat/539-wrap-mapper-split-local` @ `e6d407f4`) against the written criteria. Merging without waiting on CI. | Criterion | Result | |-----------|--------| | `deploy-dex-local.sh` wrap-mapper instantiate uses `fee_wrap_bps` / `fee_unwrap_bps` with legacy `fee_bps` fallback | Met | | Redeploy LocalTerra | Claimed in MR test plan; not re-run in this merge pass. **Post-merge:** LocalTerra still needs a redeploy/`--fresh` so running stacks pick up split-fee instantiate. | | Record e2e-tx P4–P8 | Partial. P4/P5 recorded; P5 now prefers native LUNC + cLUNC pair. P6/P7 remain one combined test that clicks the first “Withdraw as” option (no explicit `uluna` leftover-cLUNC assertion). P8 does not navigate an empty pool or assert one-sided disabled. | | Optional: add tx spec to `make verify-issue-533` | Met (`verify-issue-533.sh` + `verify-issue-539.sh`) | CI on the MR is **failed with `ci_quota_exceeded`** (no job logs). Not treated as a product defect. `feat/539-localterra-wrap-split-fees` is the same tree as the MR branch (no unique work). Branch was behind `main` (Coolify `frontend-tsc-build` / `frontend-tokenlist-docker`); those diffs do not overlap this MR’s files. Makefile overlap with !1075 will be resolved on the remaining branch after the first merge.
PlasticDigits commented 2026-08-17 10:31:20 +00:00 (Migrated from gitlab.com)

mentioned in commit 65e074daaa

mentioned in commit 65e074daaafca1332604d56429cef708e9544c5b
PlasticDigits commented 2026-08-17 10:32:47 +00:00 (Migrated from gitlab.com)

mentioned in issue #549

mentioned in issue #549
PlasticDigits commented 2026-08-17 10:32:48 +00:00 (Migrated from gitlab.com)

marked as related to #549

marked as related to #549
PlasticDigits commented 2026-08-17 10:33:05 +00:00 (Migrated from gitlab.com)

!1072 is merged. Residual P6–P8 coverage and LocalTerra split-fee redeploy tracked in #549. Duplicate branch feat/539-localterra-wrap-split-fees has equivalent commits already on main (git cherry equivalent) and will be deleted.

!1072 is merged. Residual P6–P8 coverage and LocalTerra split-fee redeploy tracked in [#549](https://gitlab.com/PlasticDigits/cl8y-dex-terraclassic/-/issues/549). Duplicate branch `feat/539-localterra-wrap-split-fees` has equivalent commits already on `main` (`git cherry` equivalent) and will be deleted.
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#539
No description provided.