ops: post-merge !407–!408 Enable Feature migrate + LocalTerra disclose QA #612

Closed
opened 2026-08-23 13:05:30 +00:00 by PlasticDigits · 16 comments
PlasticDigits commented 2026-08-23 13:05:30 +00:00 (Migrated from gitlab.com)

Parent

Post-merge ops for closed #606 / #607 after !1125 / !1126 landed on main.

Automated make verify-issue-606 (8/8) and make verify-issue-607 (6/6) passed on the integrated tip, including the !1125 conflict resolution and the Swap communityTaxHint TS2451 fix. LocalTerra smoke, columbus-5 migrate, and manual Swap/Trade disclose were not run.

Do not reopen #606 / #607 unless a merged invariant is wrong (T606 / T592-13 / C593-14).

Wasm store/rotate for #604–#609 is already tracked on #611. This ticket is the !1125/!1126 remainder: launcher 11614 must be migrated (not only token_code_id rotate), LocalTerra Enable Feature smoke, and disclose UI.

Why this is needed

  1. Live Enable Feature still hits pre-fix 11611 / 11614. Retail Manage Token unlock stays Unauthorized until CMM / DEX 2-of-3 migrate both crates (T606-8).
  2. verify-issue-601 smoke now requires sku_unlock_via_launcher. That path is untested on a redeployed LocalTerra stack.
  3. !1126 disclose copy (Create/Manage pair-direct; Swap/Trade Sell tax extra vs Route skips buy/sell tax) needs a human pass. verify-issue-607 does not run tsc -b or Playwright.

Acceptance

  • Store + migrate community-tax-token (listed 11611 instances) and community-token-launcher (11614 terra126pr5…ahzwze) from current main. Same store as #611 is fine; do not store an older tip that lacks !1125.
  • New #589 intake REPORT if token code_id changes. Keep 11611 listed until rotate; never whitelist launcher / AutoLP / ALPHA 8654.
  • LocalTerra redeploy these crates, then:
    • make verify-issue-601 (smoke must report sku_unlock_via_launcher: true)
    • make verify-issue-606 / make verify-issue-607 stay green
  • Manual Simulated Wallet: free create → Manage → Enable Feature transfer_tax → feature on, CMM +50 UST1
  • Manual: paid create with one SKU → Enable Feature a second SKU
  • Manual Swap/Trade: pair-direct 11611 sell shows Sell tax extra and Max leaves extra-debit room; multi-hop/router shows Route skips buy/sell tax and Max is full CW20
  • Coolify frontend rebuild so Swap no longer ships the duplicate communityTaxHint (already on main)

Do not

  • Treat !1125 merge as a production Enable Feature fix.
  • Store token-only and leave 11614 on pre-fix launcher bytes.
  • Re-open #606 / #607 for ops/QA work.
  • Implement option 2/3 classify changes (waived on #607).
## Parent Post-merge ops for closed [#606](https://gitlab.com/PlasticDigits/cl8y-dex-terraclassic/-/issues/606) / [#607](https://gitlab.com/PlasticDigits/cl8y-dex-terraclassic/-/issues/607) after [!1125](https://gitlab.com/PlasticDigits/cl8y-dex-terraclassic/-/merge_requests/407) / [!1126](https://gitlab.com/PlasticDigits/cl8y-dex-terraclassic/-/merge_requests/408) landed on `main`. Automated `make verify-issue-606` (8/8) and `make verify-issue-607` (6/6) passed on the integrated tip, including the !1125 conflict resolution and the Swap `communityTaxHint` TS2451 fix. LocalTerra smoke, columbus-5 migrate, and manual Swap/Trade disclose were **not** run. Do **not** reopen #606 / #607 unless a merged invariant is wrong (**T606** / **T592-13** / **C593-14**). Wasm store/rotate for #604–#609 is already tracked on [#611](https://gitlab.com/PlasticDigits/cl8y-dex-terraclassic/-/issues/611). This ticket is the **!1125/!1126 remainder**: launcher **11614** must be migrated (not only `token_code_id` rotate), LocalTerra Enable Feature smoke, and disclose UI. ## Why this is needed 1. Live Enable Feature still hits pre-fix **11611** / **11614**. Retail Manage Token unlock stays `Unauthorized` until CMM / DEX 2-of-3 migrate both crates (**T606-8**). 2. `verify-issue-601` smoke now requires `sku_unlock_via_launcher`. That path is untested on a redeployed LocalTerra stack. 3. !1126 disclose copy (Create/Manage pair-direct; Swap/Trade `Sell tax extra` vs `Route skips buy/sell tax`) needs a human pass. `verify-issue-607` does not run `tsc -b` or Playwright. ## Acceptance - [ ] Store + migrate **community-tax-token** (listed **11611** instances) **and** **community-token-launcher** (**11614** `terra126pr5…ahzwze`) from current `main`. Same store as #611 is fine; do not store an older tip that lacks !1125. - [ ] New #589 intake REPORT if token code_id changes. Keep 11611 listed until rotate; never whitelist launcher / AutoLP / ALPHA **8654**. - [ ] LocalTerra redeploy these crates, then: - `make verify-issue-601` (smoke must report `sku_unlock_via_launcher: true`) - `make verify-issue-606` / `make verify-issue-607` stay green - [ ] Manual Simulated Wallet: free create → Manage → Enable Feature `transfer_tax` → feature on, CMM +50 UST1 - [ ] Manual: paid create with one SKU → Enable Feature a second SKU - [ ] Manual Swap/Trade: pair-direct 11611 sell shows `Sell tax extra` and Max leaves extra-debit room; multi-hop/router shows `Route skips buy/sell tax` and Max is full CW20 - [ ] Coolify frontend rebuild so Swap no longer ships the duplicate `communityTaxHint` (already on `main`) ## Do not - Treat !1125 merge as a production Enable Feature fix. - Store token-only and leave **11614** on pre-fix launcher bytes. - Re-open #606 / #607 for ops/QA work. - Implement option 2/3 classify changes (waived on #607).
PlasticDigits commented 2026-08-23 13:05:31 +00:00 (Migrated from gitlab.com)

marked as related to #606

marked as related to #606
PlasticDigits commented 2026-08-23 13:05:32 +00:00 (Migrated from gitlab.com)

marked as related to #607

marked as related to #607
PlasticDigits commented 2026-08-23 13:05:32 +00:00 (Migrated from gitlab.com)

marked as related to #611

marked as related to #611
PlasticDigits commented 2026-08-23 13:05:39 +00:00 (Migrated from gitlab.com)

mentioned in issue #611

mentioned in issue #611
PlasticDigits commented 2026-08-23 13:06:15 +00:00 (Migrated from gitlab.com)

mentioned in issue #606

mentioned in issue #606
PlasticDigits commented 2026-08-23 13:06:16 +00:00 (Migrated from gitlab.com)

Opened after merging !1125 and !1126 (no automerge, no CI wait). In-repo verify-issue-606 8/8 and verify-issue-607 6/6 passed on the integrated tip, including the Swap communityTaxHint TS2451 fix. #611 remains the #604–#609 store/rotate list — use current main so !1125 launcher Enable Feature is in the same wasm.

Opened after merging !1125 and !1126 (no automerge, no CI wait). In-repo verify-issue-606 8/8 and verify-issue-607 6/6 passed on the integrated tip, including the Swap communityTaxHint TS2451 fix. #611 remains the #604–#609 store/rotate list — use current main so !1125 launcher Enable Feature is in the same wasm.
PlasticDigits commented 2026-08-24 03:01:15 +00:00 (Migrated from gitlab.com)

mentioned in issue #616

mentioned in issue #616
PlasticDigits commented 2026-08-24 03:01:17 +00:00 (Migrated from gitlab.com)

marked as related to #616

marked as related to #616
PlasticDigits commented 2026-08-24 03:01:43 +00:00 (Migrated from gitlab.com)

mentioned in issue #607

mentioned in issue #607
PlasticDigits commented 2026-08-24 03:01:58 +00:00 (Migrated from gitlab.com)

Stale after !1127. This ticket still asks for disclose QA (Route skips buy/sell tax, Max full CW20 on multi-hop) and says option 2/3 was waived. !1127 reversed that: official-router hops extra-debit authenticated trader; copy is Sell tax extra / Buy tax applies / Buy/sell tax applies on every listed-pair swap.

Enable Feature migrate (11614) can stay here. Manual tax-copy QA and 11611 option-2 store moved to #616. Do not run the option-1 disclose checklist against current main.

**Stale after !1127.** This ticket still asks for disclose QA (`Route skips buy/sell tax`, Max full CW20 on multi-hop) and says option 2/3 was waived. !1127 reversed that: official-router hops extra-debit authenticated `trader`; copy is `Sell tax extra` / `Buy tax applies` / `Buy/sell tax applies on every listed-pair swap.` Enable Feature migrate (11614) can stay here. Manual tax-copy QA and 11611 option-2 store moved to [#616](https://gitlab.com/PlasticDigits/cl8y-dex-terraclassic/-/issues/616). Do not run the option-1 disclose checklist against current `main`.
PlasticDigits commented 2026-08-24 03:54:06 +00:00 (Migrated from gitlab.com)

Columbus-5 launcher migrate (shared store with #611)

Canonical launcher terra126pr5… is now code 11620 (97C0FCA9…EE8C height 30085550). Token wasm stored as 11619 (not listed). No 11611 instances to CMM-migrate.

Enable Feature on new creates still hits listed 11611 bytes until launcher token_code_id rotates. Launcher-side !1125 path is on 11620.

Still open

  • #589 GO + AddWhitelistedCodeId 11619.
  • LocalTerra verify-issue-601 (sku_unlock_via_launcher: true) + manual Enable Feature / disclose QA.
  • Coolify frontend rebuild (duplicate communityTaxHint already on main; #616 copy supersedes option-1 disclose).

Not closing.

## Columbus-5 launcher migrate (shared store with #611) Canonical launcher `terra126pr5…` is now code **11620** ([`97C0FCA9…EE8C`](https://finder.terraclassic.community/columbus-5/tx/97C0FCA93DFADD4BE4250935C7EFAF1CAB0A20C6FB64B2D8B774A4A8BF63EE8C) height **30085550**). Token wasm stored as **11619** (not listed). No 11611 instances to CMM-migrate. Enable Feature on **new** creates still hits listed **11611** bytes until launcher `token_code_id` rotates. Launcher-side !1125 path is on 11620. ### Still open - `#589` GO + `AddWhitelistedCodeId 11619`. - LocalTerra `verify-issue-601` (`sku_unlock_via_launcher: true`) + manual Enable Feature / disclose QA. - Coolify frontend rebuild (duplicate `communityTaxHint` already on `main`; #616 copy supersedes option-1 disclose). Not closing.
PlasticDigits commented 2026-08-24 04:21:13 +00:00 (Migrated from gitlab.com)

LCD verified 2026-08-24:

  • AddWhitelistedCodeId 11619 tx B659D914CEAA045F05B5371F90669B79E34E7AE414537C6B4A8A58286BC640CF height 30085794, code 0, signer DEX 2-of-3 terra1zlmv2…hep7
  • GetWhitelistedCodeIds = [6036, 8266, 10184, 11611, 11619]
  • IsCodeIdWhitelisted 11619 = true
  • Pin still 63CB21D1…BAFA20. Token/AutoLP instances still 0 — no CMM migrate / no Refresh
  • Canonical launcher terra126pr5…ahzwze is 11620; GetConfig still token_code_id=11611 / autolp_code_id=11613

11620 has no UpdateConfig. Crate change in this follow-up adds wasm-admin UpdateConfig (token id must be factory-listed). After make build-optimized on pop-os:

UPGRADE611_STORE_LAUNCHER_ONLY=1 \
  UPGRADE611_SKIP_WHITELIST=1 \
  UPGRADE611_UPDATE_CONFIG=1 \
  UPGRADE611_TOKEN_CODE_ID=11619 \
  UPGRADE611_AUTOLP_CODE_ID=11621 \
  ./scripts/upgrade-611-community-tax.sh

Do not whitelist the new launcher store. Keep 11611 listed. Leave COMMUNITY_TAX_OPTION2_CODE_IDS unset until instances run 11619. Leave this issue open until that rotate lands.

LCD verified 2026-08-24: - `AddWhitelistedCodeId 11619` tx `B659D914CEAA045F05B5371F90669B79E34E7AE414537C6B4A8A58286BC640CF` height **30085794**, code 0, signer DEX 2-of-3 `terra1zlmv2…hep7` - `GetWhitelistedCodeIds` = `[6036, 8266, 10184, 11611, 11619]` - `IsCodeIdWhitelisted 11619` = true - Pin still `63CB21D1…BAFA20`. Token/AutoLP instances still **0** — no CMM migrate / no Refresh - Canonical launcher `terra126pr5…ahzwze` is **11620**; `GetConfig` still `token_code_id=11611` / `autolp_code_id=11613` 11620 has no `UpdateConfig`. Crate change in this follow-up adds wasm-admin `UpdateConfig` (token id must be factory-listed). After `make build-optimized` on pop-os: ```bash UPGRADE611_STORE_LAUNCHER_ONLY=1 \ UPGRADE611_SKIP_WHITELIST=1 \ UPGRADE611_UPDATE_CONFIG=1 \ UPGRADE611_TOKEN_CODE_ID=11619 \ UPGRADE611_AUTOLP_CODE_ID=11621 \ ./scripts/upgrade-611-community-tax.sh ``` Do not whitelist the new launcher store. Keep 11611 listed. Leave `COMMUNITY_TAX_OPTION2_CODE_IDS` unset until instances run 11619. Leave this issue open until that rotate lands.
PlasticDigits commented 2026-08-24 04:44:59 +00:00 (Migrated from gitlab.com)

11622 migrate + UpdateConfig — LCD-confirmed 2026-08-24

On-chain leftover from this rotate is done:

Step Result
Store launcher 11622 pin 8E56AE0F…8E90 · store FA30A5B1…2355
Migrate terra126pr5… 11620 → 11622 F2166AB0…AAB2 height 30086055 (DEX 2-of-3)
UpdateConfig token 11619 / autolp 11621 DAC86F27…6ED3 height 30086058
LCD GetConfig token_code_id=11619 autolp_code_id=11621
Factory whitelist [6036, 8266, 10184, 11611, 11619] — 11622 / 11621 / 11620 not listed
Instances 11611 / 11613 / 11619 / 11621 0 — no CMM migrate / no Refresh

Docs: 93b3b729.

Coolify leftover (do not close yet): catalog is single-id. Live indexer still code_id=11611. Flip then rebuild/restart:

VITE_COMMUNITY_TAX_CODE_ID=11619
COMMUNITY_TAX_CODE_ID=11619
COMMUNITY_TAX_OPTION2_CODE_IDS=11619
VITE_COMMUNITY_TOKEN_LAUNCHER=terra126pr5323xkhwas7y03azv48sqr2fy3fxxg0sxu8xhmjdxr8v5tzqahzwze
COMMUNITY_TOKEN_LAUNCHER=terra126pr5323xkhwas7y03azv48sqr2fy3fxxg0sxu8xhmjdxr8v5tzqahzwze

Do not whitelist 11622 / 11621 / 11620 / 11612 / 8654.
Do not RemoveWhitelistedCodeId 11611 until Refresh.

**11622 migrate + UpdateConfig — LCD-confirmed 2026-08-24** On-chain leftover from this rotate is **done**: | Step | Result | |------|--------| | Store launcher | **11622** pin `8E56AE0F…8E90` · store [`FA30A5B1…2355`](https://finder.terraclassic.community/columbus-5/tx/FA30A5B1CD87E4D984123EE17BA05D7CFE6F852D1A93EFAB293AB7CBE0B12355) | | Migrate `terra126pr5…` 11620 → 11622 | [`F2166AB0…AAB2`](https://finder.terraclassic.community/columbus-5/tx/F2166AB0C09B4E7989AB10DC8DCC4D5855B4E3F91C7E4F8C6D5B8F780947AAB2) height **30086055** (DEX 2-of-3) | | `UpdateConfig` token **11619** / autolp **11621** | [`DAC86F27…6ED3`](https://finder.terraclassic.community/columbus-5/tx/DAC86F27B4E95FC83461B733453A9EF1028BC8421F2FE3AE022B0A14DADF6ED3) height **30086058** | | LCD `GetConfig` | `token_code_id=11619` `autolp_code_id=11621` | | Factory whitelist | `[6036, 8266, 10184, 11611, 11619]` — 11622 / 11621 / 11620 **not** listed | | Instances 11611 / 11613 / 11619 / 11621 | **0** — no CMM migrate / no Refresh | Docs: `93b3b729`. **Coolify leftover (do not close yet):** catalog is single-id. Live indexer still `code_id=11611`. Flip then rebuild/restart: ``` VITE_COMMUNITY_TAX_CODE_ID=11619 COMMUNITY_TAX_CODE_ID=11619 COMMUNITY_TAX_OPTION2_CODE_IDS=11619 VITE_COMMUNITY_TOKEN_LAUNCHER=terra126pr5323xkhwas7y03azv48sqr2fy3fxxg0sxu8xhmjdxr8v5tzqahzwze COMMUNITY_TOKEN_LAUNCHER=terra126pr5323xkhwas7y03azv48sqr2fy3fxxg0sxu8xhmjdxr8v5tzqahzwze ``` Do **not** whitelist 11622 / 11621 / 11620 / 11612 / 8654. Do **not** `RemoveWhitelistedCodeId 11611` until Refresh.
PlasticDigits commented 2026-08-24 04:57:41 +00:00 (Migrated from gitlab.com)

Coolify frontend verified — #612 stays open

https://dex.cl8y.com now bakes 11619 + canonical launcher. /token/create is the real form (not the unavailable stub). Launcher wasm is 11622 with token_code_id=11619 (Enable Feature path is on these bytes).

Still open on this ticket:

  • LocalTerra make verify-issue-601 (sku_unlock_via_launcher: true)
  • Manual Simulated Wallet Enable Feature (free create → unlock transfer_tax; paid create → second SKU)
  • Do not run the stale option-1 disclose checklist (Route skips buy/sell tax) — that moved to #616 after !1127
**Coolify frontend verified — #612 stays open** `https://dex.cl8y.com` now bakes **11619** + canonical launcher. `/token/create` is the real form (not the unavailable stub). Launcher wasm is **11622** with `token_code_id=11619` (Enable Feature path is on these bytes). Still open on this ticket: - LocalTerra `make verify-issue-601` (`sku_unlock_via_launcher: true`) - Manual Simulated Wallet Enable Feature (free create → unlock `transfer_tax`; paid create → second SKU) - Do **not** run the stale option-1 disclose checklist (`Route skips buy/sell tax`) — that moved to [#616](https://gitlab.com/PlasticDigits/cl8y-dex-terraclassic/-/issues/616) after !1127
PlasticDigits commented 2026-08-24 05:15:46 +00:00 (Migrated from gitlab.com)

mentioned in commit 125b522d8a

mentioned in commit 125b522d8aa3663a94b74ce137476ce25fae840e
PlasticDigits commented 2026-08-24 05:15:55 +00:00 (Migrated from gitlab.com)

Verified and closed (125b522d on main)

Post-merge !1125/!1126 remainder is gated as Q10 / M612-1–M612-8. VERIFY612_REQUIRE_CHAIN=1 make verify-issue-612 passed 11/11 on LocalTerra after a smoke fix loop (current token+launcher artifacts; 11611 cannot instantiate post-#605 initial_exempt).

Playbook: skills/AGENTS_POST_MERGE_OPS_612.md
Gate: make verify-issue-612

Did not reopen #606 / #607. Did not run the stale option-1 disclose checklist (Route skips buy/sell tax) — that stays on #616 after !1127.

Issue-body + comment checklist

  • Store + migrate community-tax-token and launcher from current main (shared #611 rotate). LCD: launcher terra126pr5… is 11622, GetConfig 11619 / 11621.
  • #589 REPORT for 11619 is GO; factory [6036, 8266, 10184, 11611, 11619]. Sisters / ALPHA 8654 not listed. Keep 11611 until Refresh.
  • make verify-issue-601 smoke: sku_unlock_via_launcher: true (free create → Enable Feature transfer_tax via launcher; fee not kept on launcher/token).
  • make verify-issue-606 8/8 and make verify-issue-607 8/8 stay green.
  • Paid create with one SKU → Enable Feature a second SKU (paid_create_one_sku + sku_second_unlock_via_launcher in /tmp/cl8y-601-smoke.json).
  • Coolify https://dex.cl8y.com bakes VITE_COMMUNITY_TAX_CODE_ID=11619 + canonical launcher; no unused 11612; no option-1 skip copy.
  • Manage Token chrome: manage-enable-feature + invalid-address testid; Playwright e2e/enable-feature-612.spec.ts e2e-smoke (5 workers).
  • Swap/Trade option-1 disclose not re-run (superseded). Current copy is Sell tax extra / Buy tax applies / Buy/sell tax applies on every listed-pair swap.

How to re-verify

make verify-issue-612
# after LocalTerra:
VERIFY612_REQUIRE_CHAIN=1 make verify-issue-612

Smoke now instantiates current cl8y_community_tax_token.wasm (11619 pin 63CB21D1…) with the in-repo launcher. Do not store 11611 against a post-#605 launcher (initial_exempt unknown field). Free/paid creates omit launch_guards unless that SKU is selected (C605-2); max_* equals current rates without variable_rates (C605-4).

## Verified and closed (`125b522d` on `main`) Post-merge !1125/!1126 remainder is gated as **Q10 / M612-1–M612-8**. `VERIFY612_REQUIRE_CHAIN=1 make verify-issue-612` passed **11/11** on LocalTerra after a smoke fix loop (current token+launcher artifacts; 11611 cannot instantiate post-#605 `initial_exempt`). Playbook: [`skills/AGENTS_POST_MERGE_OPS_612.md`](https://gitlab.com/PlasticDigits/cl8y-dex-terraclassic/-/blob/main/skills/AGENTS_POST_MERGE_OPS_612.md) Gate: `make verify-issue-612` Did **not** reopen #606 / #607. Did **not** run the stale option-1 disclose checklist (`Route skips buy/sell tax`) — that stays on #616 after !1127. ### Issue-body + comment checklist - [x] Store + migrate community-tax-token **and** launcher from current `main` (shared #611 rotate). LCD: launcher `terra126pr5…` is **11622**, `GetConfig` **11619** / **11621**. - [x] #589 REPORT for **11619** is **GO**; factory `[6036, 8266, 10184, 11611, 11619]`. Sisters / ALPHA **8654** not listed. Keep **11611** until Refresh. - [x] `make verify-issue-601` smoke: `sku_unlock_via_launcher: true` (free create → Enable Feature `transfer_tax` via launcher; fee not kept on launcher/token). - [x] `make verify-issue-606` 8/8 and `make verify-issue-607` 8/8 stay green. - [x] Paid create with one SKU → Enable Feature a second SKU (`paid_create_one_sku` + `sku_second_unlock_via_launcher` in `/tmp/cl8y-601-smoke.json`). - [x] Coolify `https://dex.cl8y.com` bakes `VITE_COMMUNITY_TAX_CODE_ID=11619` + canonical launcher; no unused **11612**; no option-1 skip copy. - [x] Manage Token chrome: `manage-enable-feature` + invalid-address testid; Playwright `e2e/enable-feature-612.spec.ts` e2e-smoke (5 workers). - [x] Swap/Trade option-1 disclose **not** re-run (superseded). Current copy is `Sell tax extra` / `Buy tax applies` / `Buy/sell tax applies on every listed-pair swap.` ### How to re-verify ```bash make verify-issue-612 # after LocalTerra: VERIFY612_REQUIRE_CHAIN=1 make verify-issue-612 ``` Smoke now instantiates **current** `cl8y_community_tax_token.wasm` (11619 pin `63CB21D1…`) with the in-repo launcher. Do not store 11611 against a post-#605 launcher (`initial_exempt` unknown field). Free/paid creates omit `launch_guards` unless that SKU is selected (**C605-2**); `max_*` equals current rates without `variable_rates` (**C605-4**).
PlasticDigits (Migrated from gitlab.com) closed this issue 2026-08-24 05:15:56 +00:00
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#612
No description provided.