ops: post-merge !394–!396 — indexer fees migrate, Swap gas deploy, 8266 still NO-GO #590
Labels
No labels
agent:fix_bugfix
agent:fix_conflicts
agent:fix_security
agent:gap_analysis
agent:implement
agent:implement
agent:implement
agent:open_issues
agent:ready
agent:research
agent:security_audit
agent:verify
architecture
backend
blocker:hybrid
blocker:launch
blocker:limit-orders
blocker:v2
block:log_only
block:security
bug
ci
contracts
correctness
deploy
dev
devops
docs
documentation
duplicate
e2e
enhancement
epic
feature
frontend
functional-completion
gas
good first issue
governance
help wanted
high-risk
hooks
hybrid
indexer
infra
infrastructure
integrators
invalid
launch-blocker
limit-orders
localnet
localterra
low priority
missing-implementation
needs-design
ops
performance
priority
high
priority
medium
product
qa
QA
question
ready
ready
research
scripts
security
security-hardening
smartcontracts
tech-debt
testing
ux
UX
v2
verification
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
code/cl8y-dex-terraclassic#590
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Why
!1112 / !1113 / !1114 are on
main. Remaining work is ops deploy, LocalTerra QA, and the LCD-wasm audit layers that #589 did not automate. Do not treat greenmake verify-issue-589as 8266 clearance.Related: #586 (closes via !1112; remaining QA), #587 (closes via !1113; e2e-tx), #589 (closes via !1114; A-lcd/B-lt gap), #581 (reopened — SpaceUSD/UST1 still blocked).
Tasks
Coolify / indexer / dApp
indexer/migrations/20260821120000_protocol_fees.sqlon QA + prod indexer.WRAP_MAPPER_ADDRESS(bech32). Empty → wrap/unwrap sources omitted, not fake$0.GET /api/v1/overviewreturnstotal_fees_24h_usd/7d/30d(additive) andGET /api/v1/protocol/fees?window=24his 60s-cached./protocolProtocol fees panel after Global stats; Swap Network fee (est.) ~X LUNC.#586 LocalTerra / prod smoke
/protocolfees$0; Δ%—until 2× windows.limit_place; unwrap does not include InstantWithdraw burn tax.#587 chain
CI=1Playwrighte2e/wrap-swap.spec.ts --project=e2e-txE7 LUNC→USTR and E8 reverse;gas_used < gas_wanted.#589 / #581 (do not whitelist 8266)
codeids/<id>/token.wasmis actually executed (LAYER_B_LT=1must not PASS as a stub).apt install wabt;CODE_ID=8266fetch + decompile; fill 8266REPORT.mdfrom those logs.AddWhitelistedCodeId 8266, no SpaceUSD/UST1 pair.Verify (no wait on CI)
Out of scope
Changing wrap-mapper bps, indexer
route/solvefor nativeuluna, FoT swap math (H-01), F6 pin behavior.marked as related to #586
marked as related to #587
marked as related to #589
marked as related to #581
mentioned in issue #586
mentioned in issue #587
mentioned in issue #589
mentioned in issue #581
Local sanity after merge:
make verify-issue-587andmake verify-issue-589green.make verify-issue-586integration was red only because Postgres was down; retriedindexer_protocol_fees+api_overviewaftermake setup-indexer-postgres— 12/12 pass. Remaining checkboxes on this issue are still open (Coolify migrate, LocalTerra e2e-tx, A-lcd/B-lt).marked the checklist item Apply indexer/migrations/20260821120000_protocol_fees.sql on QA + prod indexer. as completed
marked the checklist item Set indexer WRAP_MAPPER_ADDRESS (bech32). Empty → wrap/unwrap sources omitted, not fake $0. as completed
marked the checklist item Confirm GET /api/v1/overview returns total_fees_24h_usd / 7d / 30d
additiveand GET /api/v1/protocol/fees?window=24h is 60s-cached. as completedmarked the checklist item Deploy dApp: /protocol Protocol fees panel after Global stats; Swap Network fee
est\.~X LUNC. as completedmarked the checklist item Idle /protocol fees $0; Δ% — until 2× windows. as completed
Prod Coolify verify (indexer + dApp redeploy)
Not closing. Coolify/indexer/dApp boxes and idle
/protocolfee smoke are done. Still open: hybrid/limit/unwrap fee classification, #587e2e-txE7/E8, #589 A-lcd/B-lt + 8266REPORT.md, #581 still NO-GO.Indexer (
https://indexer.dex.cl8y.com)Logs match a successful overlapping restart:
RUN_MODE=Prod, factoryterra1ejpgvv7g3hj0u6fpcnxhflqp84g0w3cnaskqkg5733ygwlmf963sfchseaDatabase migrations applied; API on:300130058157Live API (2026-08-22):
GET /health→{"status":"ok"}GET /api/v1/overviewhas additivetotal_fees_24h_usd/7d/30d="0";fees_change_*_pct=null(Δ% empty until 2× windows)GET /api/v1/protocol/fees?window=24h|7d|30d→ 200;window=99h→ 400wrap_mapper_configured: true(wrap/unwrap sources present in JSON; idle$0rows hidden in UI)/protocol/feescache is in-process 60s (noCache-Control); identical bodies on rapid repeatsStartup
WARN:Initial rolling trader volumes refresh failed: numeric field overflow— trader rollup only; protocol fee stats did not fail. Non-blocking for this deploy; follow-up if it repeats on the 5 min loop.QA indexer was not independently probed this pass (prod Coolify only).
dApp (
https://dex.cl8y.com)HTML
Last-Modified: Sat, 22 Aug 2026 07:30:43 GMT. Baked chunks includeprotocol-fee-stats/swap-network-fee.Playwright vs production, 5 workers, 5/5 pass:
/protocolProtocol fees sits after Global stats and before DEX hub$0; 24h/7d/30d Δ% em-dash (not0%/ Infinity)$0source rows hidden (wrap/unwrap/AMM/book/limit)uluna/gas ×on the card)gas × priceinternals stay under Trade detailsStill open on this issue
CI=1e2e/wrap-swap.spec.ts --project=e2e-txE7/E8; 0-USTC LUNC-funded swapREPORT.mdAddWhitelistedCodeId 8266mentioned in commit
8689a12981LocalTerra verify complete (
8689a129onmain)Worked in git worktree
feat/590-post-merge-ops-verify, then fast-forwardedmainand pushed.LAYER_B_LT=1no longer stub-passes. It stores the pinned LCD wasm, instantiates it, proves 1:1 Transfer (A-lcd), then whitelists the local store id only,CreatePairvs EMBER, and 1:1 Transfer into the pair (B-lt). Columbus-5 8266 was not added to the factory whitelist.8266
REPORT.mdis filled from fetch + wabt decomp + those logs. Verdict remains NO-GO (factory-global Everybody instantiate / 1686+ instances, F6/minter residuals, Send/TransferFrom and round-trip swap still pending). Recorded the same on #581. Do notAddWhitelistedCodeId 8266.Also: hybrid L7 ingest ignores swap
book_commission_amount; unwrap ingest uses mapperfee_amount(not InstantWithdrawtax_amount). Wrap-swap E7/E8e2e-tx(1 worker) passed after combobox reopen-on-click + pick receive before native LUNC pay (other-leg exclude).Stacked gate:
VERIFY590_REQUIRE_CHAIN=1 make verify-issue-590→ 8/8 PASS (children 586, 587, 589, A-lcd/B-lt, E7/E8).Playbook:
skills/AGENTS_POST_MERGE_OPS_590.md(M590-1–M590-8 / Q7).Checklist to re-verify
make setup-indexer-postgres && make verify-issue-586make verify-issue-587make verify-issue-589(multi-test; not 8266 clearance)CODE_ID=8266 LAYER_B_LT=1 make verify-issue-589aftermake has-localterra— must execute wasm (fail if stub strings reappear)VERIFY590_REQUIRE_CHAIN=1 make verify-issue-590CI=1Playwrighte2e/wrap-swap.spec.ts --project=e2e-tx --workers=1 -g "E7:|E8:"— success, no OOG; Network fee LUNC not USTC; 0 USTC still LUNC-fundedREPORT.mdstill NO-GO; no columbus-5AddWhitelistedCodeId 8266WRAP_MAPPER_ADDRESS; idle/protocol$0/ Δ%—Closing this ops issue. #581 stays open until a GO report.
mentioned in issue #599
marked as related to #599
Related: #599 (USTR→USTC unwrap+2hop OOG). E7/E8 remain LUNC wrap/unwrap. #599 adds a USTR→USTC (or
uusdunwrap) Playwright path; do not treat E8 LUNC success as coverage for taxed USTC InstantWithdraw.mentioned in issue #600
mentioned in issue #613
marked as related to #613
mentioned in issue #623