feat(cloud): LocalTerra setup for agents + deploy pair-creation fee fix #769

Merged
PlasticDigits merged 6 commits from cursor/cloud-localterra-setup-47ef into main 2026-06-05 10:00:06 +00:00
PlasticDigits commented 2026-06-05 05:39:05 +00:00 (Migrated from gitlab.com)

Summary

Cloud Agent sessions could not run manual /limits QA because frontend-dapp/.env.local was missing and LocalTerra was not provisioned. This MR adds a one-command setup path, documents it in AGENTS.md, fixes deploy-dex-local.sh for the factory pair-creation uluna fee (#276 local deploy path), and adds Playwright verification for GitLab #295.

Merge conflict resolution (9ec5c0d): Merged main into this branch. Conflicts in Makefile and scripts/deploy-dex-local.sh resolved by keeping all MR targets (verify-issue-295, setup-cloud-localterra) alongside main targets (test-setup-browser, verify-issue-274, verify-issue-276), and adopting main's factory_create_pair helper (#276/#318) instead of the MR's inline --amount attachment.

Bugbot follow-ups (cd4389d, 4dca4a6):

  • Stale indexer after redeploy — _start_indexer_tmux restarts indexer-dev when deploy ran (DEPLOY_RAN=1).
  • Idempotency — _deploy_up_to_date skips build/deploy when stamp, .env.local, artifacts, and git HEAD align.
  • Stale deploy skip after reset — _deploy_up_to_date also probes the factory on LCD (Q1); make reset without --fresh no longer skips redeploy on stale stamp/env.

Risk-ack fix (0f2d3c2): make verify-issue-295 against plain make dev pre-seeds cl8y-dex-risk-ack in localStorage.

Changes

  • scripts/setup-cloud-agent-localterra.sh — dockerd, infra, deploy, .env.local, indexer tmux. Flags: --skip-build, --fresh, --start-frontend.
  • make setup-cloud-localterra
  • AGENTS.md — Cloud Agent LocalTerra + .env.local + Chrome #295 steps; LCD probe cross-link (Q1)
  • scripts/deploy-dex-local.sh — uses factory_create_pair helper (reads on-chain fee; #276/#318)
  • make verify-issue-295 + Playwright spec + playwright.local-dev.config.ts

Verification checklist

Item Command Result
Merge conflicts resolved git merge origin/main on MR branch PASS
Shell script syntax bash -n scripts/deploy-dex-local.sh scripts/setup-cloud-agent-localterra.sh PASS
Frontend lint make lint-frontend PASS
QA LCD helper unit tests sg docker -c './scripts/qa/test-verify-deploy.sh && ./scripts/qa/test-localterra-host-curl.sh' PASS
Pair-creation fee (#276) make verify-issue-276 PASS
Deploy idempotency (stamp + LCD) sg docker -c './scripts/setup-cloud-agent-localterra.sh --skip-build --no-indexer' (2nd run) PASS (skips deploy)
Redeploy after make reset (no --fresh) sg docker -c 'make reset && make start && make wait-healthy' then setup script PASS (redeploys)
Playwright #295 UI make verify-issue-295 (needs make dev + Playwright browsers) PASS (1 passed, 6.4s)
Security review MR diff (PlasticDigits) PASS (0 medium+ findings)
Bugbot review threads stale indexer, idempotency, stale deploy skip RESOLVED

Notes

  • Issue #295 is already closed; verification confirms the ladder rung count UX fix. No Closes #295.
  • Issue #276 (contract griefing gate) remains open; this MR aligns local deploy with main's factory_create_pair fee path (#318).
  • If deploy fails mid-run (stale chain state): ./scripts/setup-cloud-agent-localterra.sh --fresh --skip-build
## Summary Cloud Agent sessions could not run manual `/limits` QA because `frontend-dapp/.env.local` was missing and LocalTerra was not provisioned. This MR adds a one-command setup path, documents it in `AGENTS.md`, fixes `deploy-dex-local.sh` for the factory pair-creation uluna fee (#276 local deploy path), and adds Playwright verification for GitLab #295. **Merge conflict resolution (9ec5c0d):** Merged `main` into this branch. Conflicts in `Makefile` and `scripts/deploy-dex-local.sh` resolved by keeping all MR targets (`verify-issue-295`, `setup-cloud-localterra`) alongside main targets (`test-setup-browser`, `verify-issue-274`, `verify-issue-276`), and adopting main's `factory_create_pair` helper (#276/#318) instead of the MR's inline `--amount` attachment. **Bugbot follow-ups (cd4389d, 4dca4a6):** - **Stale indexer after redeploy** — `_start_indexer_tmux` restarts `indexer-dev` when deploy ran (`DEPLOY_RAN=1`). - **Idempotency** — `_deploy_up_to_date` skips build/deploy when stamp, `.env.local`, artifacts, and git HEAD align. - **Stale deploy skip after reset** — `_deploy_up_to_date` also probes the factory on LCD (Q1); `make reset` without `--fresh` no longer skips redeploy on stale stamp/env. **Risk-ack fix (0f2d3c2):** `make verify-issue-295` against plain `make dev` pre-seeds `cl8y-dex-risk-ack` in localStorage. ## Changes - **`scripts/setup-cloud-agent-localterra.sh`** — dockerd, infra, deploy, `.env.local`, indexer tmux. Flags: `--skip-build`, `--fresh`, `--start-frontend`. - **`make setup-cloud-localterra`** - **`AGENTS.md`** — Cloud Agent LocalTerra + `.env.local` + Chrome #295 steps; LCD probe cross-link (Q1) - **`scripts/deploy-dex-local.sh`** — uses `factory_create_pair` helper (reads on-chain fee; #276/#318) - **`make verify-issue-295`** + Playwright spec + `playwright.local-dev.config.ts` ## Verification checklist | Item | Command | Result | |------|---------|--------| | Merge conflicts resolved | `git merge origin/main` on MR branch | PASS | | Shell script syntax | `bash -n scripts/deploy-dex-local.sh scripts/setup-cloud-agent-localterra.sh` | PASS | | Frontend lint | `make lint-frontend` | PASS | | QA LCD helper unit tests | `sg docker -c './scripts/qa/test-verify-deploy.sh && ./scripts/qa/test-localterra-host-curl.sh'` | PASS | | Pair-creation fee (#276) | `make verify-issue-276` | PASS | | Deploy idempotency (stamp + LCD) | `sg docker -c './scripts/setup-cloud-agent-localterra.sh --skip-build --no-indexer'` (2nd run) | PASS (skips deploy) | | Redeploy after `make reset` (no `--fresh`) | `sg docker -c 'make reset && make start && make wait-healthy'` then setup script | PASS (redeploys) | | Playwright #295 UI | `make verify-issue-295` (needs `make dev` + Playwright browsers) | PASS (1 passed, 6.4s) | | Security review | MR diff (PlasticDigits) | PASS (0 medium+ findings) | | Bugbot review threads | stale indexer, idempotency, stale deploy skip | RESOLVED | ## Notes - Issue **#295** is already **closed**; verification confirms the ladder rung count UX fix. No `Closes #295`. - Issue **#276** (contract griefing gate) remains open; this MR aligns local deploy with main's `factory_create_pair` fee path (#318). - If deploy fails mid-run (stale chain state): `./scripts/setup-cloud-agent-localterra.sh --fresh --skip-build`
PlasticDigits commented 2026-06-05 05:45:14 +00:00 (Migrated from gitlab.com)

Security review

Commit reviewed: b4432f658f0b8a3b83ba1057298a0d2acce4d185

Scope: 7 files — Cloud Agent LocalTerra setup (scripts/setup-cloud-agent-localterra.sh, Makefile, AGENTS.md), local deploy pair-creation fee attachment (scripts/deploy-dex-local.sh), and GitLab #295 Playwright UI verification (playwright.local-dev.config.ts, e2e spec, verify script).

Outcome: FINDINGS: 0 medium+

Security review: no medium+ findings on this diff.

Review notes

  • Changes are limited to local dev / Cloud Agent VM tooling and a Playwright UI smoke test; no production runtime, auth, or on-chain contract logic is modified.
  • setup-cloud-agent-localterra.sh accepts only fixed flags (--skip-build, --infra-only, --fresh, etc.); make targets and deploy invocations use hardcoded arguments — no attacker-controlled shell injection path identified.
  • deploy-dex-local.sh adds a constant PAIR_CREATION_FEE_ULUNA=100000000 on create_pair executes. Local factory still instantiates with pair_creation_fee_uluna: "0"; factory contract refunds attached uluna when fee is zero (see execute_create_pair refund path). No fund-loss or authz bypass.
  • PLAYWRIGHT_BASE_URL defaults to 127.0.0.1:5173 in dev-only test config; not a production SSRF surface.
  • Dev mnemonic handling remains in existing deploy-dex-local.sh / .env.development flow (documented, dev-only); not newly introduced exposure in this MR.

Inline threads: none (no findings to anchor).

## Security review **Commit reviewed:** `b4432f658f0b8a3b83ba1057298a0d2acce4d185` **Scope:** 7 files — Cloud Agent LocalTerra setup (`scripts/setup-cloud-agent-localterra.sh`, `Makefile`, `AGENTS.md`), local deploy pair-creation fee attachment (`scripts/deploy-dex-local.sh`), and GitLab #295 Playwright UI verification (`playwright.local-dev.config.ts`, e2e spec, verify script). **Outcome:** `FINDINGS: 0` medium+ Security review: **no medium+ findings** on this diff. ### Review notes - Changes are limited to **local dev / Cloud Agent VM tooling** and a **Playwright UI smoke test**; no production runtime, auth, or on-chain contract logic is modified. - `setup-cloud-agent-localterra.sh` accepts only fixed flags (`--skip-build`, `--infra-only`, `--fresh`, etc.); `make` targets and deploy invocations use hardcoded arguments — no attacker-controlled shell injection path identified. - `deploy-dex-local.sh` adds a constant `PAIR_CREATION_FEE_ULUNA=100000000` on `create_pair` executes. Local factory still instantiates with `pair_creation_fee_uluna: "0"`; factory contract refunds attached uluna when fee is zero (see `execute_create_pair` refund path). No fund-loss or authz bypass. - `PLAYWRIGHT_BASE_URL` defaults to `127.0.0.1:5173` in dev-only test config; not a production SSRF surface. - Dev mnemonic handling remains in existing `deploy-dex-local.sh` / `.env.development` flow (documented, dev-only); not newly introduced exposure in this MR. **Inline threads:** none (no findings to anchor).
ghost1 commented 2026-06-05 07:13:18 +00:00 (Migrated from gitlab.com)

added 1 commit

  • 0f2d3c2d - fix(e2e): seed risk ack for #295 verify against make dev

Compare with previous version

added 1 commit <ul><li>0f2d3c2d - fix(e2e): seed risk ack for #295 verify against make dev</li></ul> [Compare with previous version](/PlasticDigits/cl8y-dex-terraclassic/-/merge_requests/51/diffs?diff_id=1836071267&start_sha=b4432f658f0b8a3b83ba1057298a0d2acce4d185)
ghost1 commented 2026-06-05 07:13:24 +00:00 (Migrated from gitlab.com)

changed the description

changed the description
PlasticDigits commented 2026-06-05 07:13:34 +00:00 (Migrated from gitlab.com)

changed the description

changed the description
ghost1 commented 2026-06-05 07:13:41 +00:00 (Migrated from gitlab.com)

changed the description

changed the description
ghost1 commented 2026-06-05 07:15:43 +00:00 (Migrated from gitlab.com)
Stale Security Review comment
Stale Security Review comment

Cursor Bugbot has reviewed your changes and found 2 potential issues.
Bugbot Autofix is ON. A cloud agent has been kicked off to fix the reported issues.

Reviewed by Cursor Bugbot for commit 0f2d3c2d34. Configure here.

<details> <summary>Stale Security Review comment</summary> <details> <summary>Stale Security Review comment</summary> <!-- BUGBOT_REVIEW --> Cursor Bugbot has reviewed your changes and found 2 potential issues.<!-- BUGBOT_AUTOFIX_REVIEW_FOOTNOTE_BEGIN --> <sup>Bugbot Autofix is [ON](https://www.cursor.com/dashboard/bugbot). A cloud agent has been kicked off to fix the reported issues. <!-- BUGBOT_AUTOFIX_AGENT_LINK --></sup> <!-- BUGBOT_AUTOFIX_REVIEW_FOOTNOTE_END --> <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 0f2d3c2d34c478a3f108beb1b32dd11c34d6472f. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> </details> </details>
ghost1 commented 2026-06-05 07:15:44 +00:00 (Migrated from gitlab.com)

Stale indexer after redeploy

Medium Severity

After a new deploy (including --fresh), _start_indexer_tmux exits early when indexer-dev already exists, so the running indexer keeps its old indexer/.env and Postgres state while deploy-dex-local.sh writes new addresses and may reset volumes.

Additional Locations (1)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 0f2d3c2d34. Configure here.

### Stale indexer after redeploy **Medium Severity** <!-- DESCRIPTION START --> After a new deploy (including `--fresh`), `_start_indexer_tmux` exits early when `indexer-dev` already exists, so the running indexer keeps its old `indexer/.env` and Postgres state while `deploy-dex-local.sh` writes new addresses and may reset volumes. <!-- DESCRIPTION END --> <!-- BUGBOT_BUG_ID: 00e914c6-9ba8-4a7e-9c0f-b7ddb7248590 --> <!-- LOCATIONS START scripts/setup-cloud-agent-localterra.sh#L106-L111 scripts/setup-cloud-agent-localterra.sh#L185-L189 LOCATIONS END --> <details> <summary>Additional Locations (1)</summary> - [`scripts/setup-cloud-agent-localterra.sh#L185-L189`](https://gitlab.com/PlasticDigits/cl8y-dex-terraclassic/-//blob/0f2d3c2d34c478a3f108beb1b32dd11c34d6472f/scripts/setup-cloud-agent-localterra.sh#L185-L189) </details> <div><a href="https://cursor.com/open?link=eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9DVVJTT1IiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OmU5ZmE5OTk0LTM4N2EtNDRiMS1iZTAwLTdmN2FmZWM0NWQxMSIsImVuY3J5cHRpb25LZXkiOiJfWFVCcE5vZVNaVDJxY0pLVHpma2taeEdoekREeDA3V0p1TXJsWnJGWENzIiwiYnJhbmNoIjoiY3Vyc29yL2Nsb3VkLWxvY2FsdGVycmEtc2V0dXAtNDdlZiIsInJlcG9Pd25lciI6IlBsYXN0aWNEaWdpdHMiLCJyZXBvTmFtZSI6ImNsOHktZGV4LXRlcnJhY2xhc3NpYyJ9fQ" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/fix-in-cursor-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/fix-in-cursor-light.png"><img alt="Fix in Cursor" width="115" height="28" src="https://cursor.com/assets/images/fix-in-cursor-dark.png"></picture></a>&nbsp;<a href="https://cursor.com/agents?link=eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9XRUIiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OmU5ZmE5OTk0LTM4N2EtNDRiMS1iZTAwLTdmN2FmZWM0NWQxMSIsImVuY3J5cHRpb25LZXkiOiJfWFVCcE5vZVNaVDJxY0pLVHpma2taeEdoekREeDA3V0p1TXJsWnJGWENzIiwiYnJhbmNoIjoiY3Vyc29yL2Nsb3VkLWxvY2FsdGVycmEtc2V0dXAtNDdlZiIsInJlcG9Pd25lciI6IlBsYXN0aWNEaWdpdHMiLCJyZXBvTmFtZSI6ImNsOHktZGV4LXRlcnJhY2xhc3NpYyIsInByTnVtYmVyIjo1MSwiY29tbWl0U2hhIjoiMGYyZDNjMmQzNGM0NzhhM2YxMDhiZWIxYjMyZGQxMWMzNGQ2NDcyZiIsInByb3ZpZGVyIjoiZ2l0bGFiIiwiaG9zdG5hbWUiOiJnaXRsYWIuY29tIn19" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/fix-in-web-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/fix-in-web-light.png"><img alt="Fix in Web" width="99" height="28" src="https://cursor.com/assets/images/fix-in-web-dark.png"></picture></a></div> <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 0f2d3c2d34c478a3f108beb1b32dd11c34d6472f. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup>
ghost1 commented 2026-06-05 07:15:44 +00:00 (Migrated from gitlab.com)

Idempotency claim never implemented

Low Severity

The header says the script skips build/deploy when artifacts and .env.local match .qa-deploy-stamp, but no code reads the stamp or skips those steps—every run rebuilds (unless --skip-build) and always runs deploy-dex-local.sh.

Additional Locations (1)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 0f2d3c2d34. Configure here.

### Idempotency claim never implemented **Low Severity** <!-- DESCRIPTION START --> The header says the script skips build/deploy when artifacts and `.env.local` match `.qa-deploy-stamp`, but no code reads the stamp or skips those steps—every run rebuilds (unless `--skip-build`) and always runs `deploy-dex-local.sh`. <!-- DESCRIPTION END --> <!-- BUGBOT_BUG_ID: 40e22f2d-f346-4f43-ba4f-25bb1732dc8c --> <!-- LOCATIONS START scripts/setup-cloud-agent-localterra.sh#L3-L5 scripts/setup-cloud-agent-localterra.sh#L44-L46 LOCATIONS END --> <details> <summary>Additional Locations (1)</summary> - [`scripts/setup-cloud-agent-localterra.sh#L44-L46`](https://gitlab.com/PlasticDigits/cl8y-dex-terraclassic/-//blob/0f2d3c2d34c478a3f108beb1b32dd11c34d6472f/scripts/setup-cloud-agent-localterra.sh#L44-L46) </details> <div><a href="https://cursor.com/open?link=eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9DVVJTT1IiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90Ojg5OGI4ZmM3LTczODktNGQyMS1iMDEyLTg3ZDc2NGY5OWFlNiIsImVuY3J5cHRpb25LZXkiOiIzck1xTkFBS1drZ1g2UE9ZZmZablBxcEZvM0dLdVl1MS0zRTBibGRtZUlBIiwiYnJhbmNoIjoiY3Vyc29yL2Nsb3VkLWxvY2FsdGVycmEtc2V0dXAtNDdlZiIsInJlcG9Pd25lciI6IlBsYXN0aWNEaWdpdHMiLCJyZXBvTmFtZSI6ImNsOHktZGV4LXRlcnJhY2xhc3NpYyJ9fQ" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/fix-in-cursor-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/fix-in-cursor-light.png"><img alt="Fix in Cursor" width="115" height="28" src="https://cursor.com/assets/images/fix-in-cursor-dark.png"></picture></a>&nbsp;<a href="https://cursor.com/agents?link=eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9XRUIiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90Ojg5OGI4ZmM3LTczODktNGQyMS1iMDEyLTg3ZDc2NGY5OWFlNiIsImVuY3J5cHRpb25LZXkiOiIzck1xTkFBS1drZ1g2UE9ZZmZablBxcEZvM0dLdVl1MS0zRTBibGRtZUlBIiwiYnJhbmNoIjoiY3Vyc29yL2Nsb3VkLWxvY2FsdGVycmEtc2V0dXAtNDdlZiIsInJlcG9Pd25lciI6IlBsYXN0aWNEaWdpdHMiLCJyZXBvTmFtZSI6ImNsOHktZGV4LXRlcnJhY2xhc3NpYyIsInByTnVtYmVyIjo1MSwiY29tbWl0U2hhIjoiMGYyZDNjMmQzNGM0NzhhM2YxMDhiZWIxYjMyZGQxMWMzNGQ2NDcyZiIsInByb3ZpZGVyIjoiZ2l0bGFiIiwiaG9zdG5hbWUiOiJnaXRsYWIuY29tIn19" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/fix-in-web-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/fix-in-web-light.png"><img alt="Fix in Web" width="99" height="28" src="https://cursor.com/assets/images/fix-in-web-dark.png"></picture></a></div> <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 0f2d3c2d34c478a3f108beb1b32dd11c34d6472f. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup>
ghost1 commented 2026-06-05 07:24:28 +00:00 (Migrated from gitlab.com)

changed this line in version 3 of the diff

changed this line in [version 3 of the diff](/PlasticDigits/cl8y-dex-terraclassic/-/merge_requests/51/diffs?diff_id=1836089943&start_sha=0f2d3c2d34c478a3f108beb1b32dd11c34d6472f#978651c3167ac0029f25b557d1b9bc784c963a03_111_122)
ghost1 commented 2026-06-05 07:24:29 +00:00 (Migrated from gitlab.com)

added 1 commit

  • cd4389db - Fix stale indexer restart and implement deploy idempotency in cloud setup

Compare with previous version

added 1 commit <ul><li>cd4389db - Fix stale indexer restart and implement deploy idempotency in cloud setup</li></ul> [Compare with previous version](/PlasticDigits/cl8y-dex-terraclassic/-/merge_requests/51/diffs?diff_id=1836089943&start_sha=0f2d3c2d34c478a3f108beb1b32dd11c34d6472f)
ghost1 commented 2026-06-05 07:24:57 +00:00 (Migrated from gitlab.com)

resolved all threads

resolved all threads
ghost1 commented 2026-06-05 07:26:16 +00:00 (Migrated from gitlab.com)
Stale Security Review comment

Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix is ON. A cloud agent has been kicked off to fix the reported issue.

Reviewed by Cursor Bugbot for commit cd4389dbf4. Configure here.

<details> <summary>Stale Security Review comment</summary> <!-- BUGBOT_REVIEW --> Cursor Bugbot has reviewed your changes and found 1 potential issue.<!-- BUGBOT_AUTOFIX_REVIEW_FOOTNOTE_BEGIN --> <sup>Bugbot Autofix is [ON](https://www.cursor.com/dashboard/bugbot). A cloud agent has been kicked off to fix the reported issue. <!-- BUGBOT_AUTOFIX_AGENT_LINK --></sup> <!-- BUGBOT_AUTOFIX_REVIEW_FOOTNOTE_END --> <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit cd4389dbf462b03df767f8028750e4882286d0a4. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> </details>
ghost1 commented 2026-06-05 07:26:17 +00:00 (Migrated from gitlab.com)

Stale deploy skip after reset

Medium Severity

_deploy_up_to_date only compares git HEAD, .qa-deploy-stamp, and frontend-dapp/.env.local. After LocalTerra volumes are wiped (e.g. make reset) without --fresh, deploy is still skipped while .env.local keeps old contract addresses, so a new chain never gets contracts.

Additional Locations (1)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit cd4389dbf4. Configure here.

### Stale deploy skip after reset **Medium Severity** <!-- DESCRIPTION START --> `_deploy_up_to_date` only compares git HEAD, `.qa-deploy-stamp`, and `frontend-dapp/.env.local`. After LocalTerra volumes are wiped (e.g. `make reset`) without `--fresh`, deploy is still skipped while `.env.local` keeps old contract addresses, so a new chain never gets contracts. <!-- DESCRIPTION END --> <!-- BUGBOT_BUG_ID: 950a0c7e-669f-4075-9fe4-3dc4e223d910 --> <!-- LOCATIONS START scripts/setup-cloud-agent-localterra.sh#L176-L178 scripts/setup-cloud-agent-localterra.sh#L106-L117 LOCATIONS END --> <details> <summary>Additional Locations (1)</summary> - [`scripts/setup-cloud-agent-localterra.sh#L106-L117`](https://gitlab.com/PlasticDigits/cl8y-dex-terraclassic/-//blob/cd4389dbf462b03df767f8028750e4882286d0a4/scripts/setup-cloud-agent-localterra.sh#L106-L117) </details> <div><a href="https://cursor.com/open?link=eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9DVVJTT1IiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OjQ5ZTU5ZWQ1LTY1NGYtNGQ4NC05NzIyLTZhNDY2NTgxOTJlZCIsImVuY3J5cHRpb25LZXkiOiJYR0xUV3Rlb2xGa21qM0hzdi1PSXdyYnh1Mm1iTHNmNHNyeXlNcXlYLThBIiwiYnJhbmNoIjoiY3Vyc29yL2Nsb3VkLWxvY2FsdGVycmEtc2V0dXAtNDdlZiIsInJlcG9Pd25lciI6IlBsYXN0aWNEaWdpdHMiLCJyZXBvTmFtZSI6ImNsOHktZGV4LXRlcnJhY2xhc3NpYyJ9fQ" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/fix-in-cursor-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/fix-in-cursor-light.png"><img alt="Fix in Cursor" width="115" height="28" src="https://cursor.com/assets/images/fix-in-cursor-dark.png"></picture></a>&nbsp;<a href="https://cursor.com/agents?link=eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9XRUIiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OjQ5ZTU5ZWQ1LTY1NGYtNGQ4NC05NzIyLTZhNDY2NTgxOTJlZCIsImVuY3J5cHRpb25LZXkiOiJYR0xUV3Rlb2xGa21qM0hzdi1PSXdyYnh1Mm1iTHNmNHNyeXlNcXlYLThBIiwiYnJhbmNoIjoiY3Vyc29yL2Nsb3VkLWxvY2FsdGVycmEtc2V0dXAtNDdlZiIsInJlcG9Pd25lciI6IlBsYXN0aWNEaWdpdHMiLCJyZXBvTmFtZSI6ImNsOHktZGV4LXRlcnJhY2xhc3NpYyIsInByTnVtYmVyIjo1MSwiY29tbWl0U2hhIjoiY2Q0Mzg5ZGJmNDYyYjAzZGY3NjdmODAyODc1MGU0ODgyMjg2ZDBhNCIsInByb3ZpZGVyIjoiZ2l0bGFiIiwiaG9zdG5hbWUiOiJnaXRsYWIuY29tIn19" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/fix-in-web-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/fix-in-web-light.png"><img alt="Fix in Web" width="99" height="28" src="https://cursor.com/assets/images/fix-in-web-dark.png"></picture></a></div> <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit cd4389dbf462b03df767f8028750e4882286d0a4. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup>
ghost1 commented 2026-06-05 07:27:43 +00:00 (Migrated from gitlab.com)

added 1 commit

  • 4dca4a6e - Fix stale deploy skip after volume reset in cloud setup script

Compare with previous version

added 1 commit <ul><li>4dca4a6e - Fix stale deploy skip after volume reset in cloud setup script</li></ul> [Compare with previous version](/PlasticDigits/cl8y-dex-terraclassic/-/merge_requests/51/diffs?diff_id=1836095678&start_sha=cd4389dbf462b03df767f8028750e4882286d0a4)
ghost1 commented 2026-06-05 07:27:56 +00:00 (Migrated from gitlab.com)

changed the description

changed the description
ghost1 commented 2026-06-05 07:28:07 +00:00 (Migrated from gitlab.com)

resolved all threads

resolved all threads
ghost1 commented 2026-06-05 09:43:31 +00:00 (Migrated from gitlab.com)

added 1 commit

  • 5aee0ac0 - docs(cloud): note LCD probe in setup script deploy skip (Q1)

Compare with previous version

added 1 commit <ul><li>5aee0ac0 - docs(cloud): note LCD probe in setup script deploy skip (Q1)</li></ul> [Compare with previous version](/PlasticDigits/cl8y-dex-terraclassic/-/merge_requests/51/diffs?diff_id=1836360787&start_sha=4dca4a6e6bb4c8cd008f3cbd3d6c016c4b8fc50a)
PlasticDigits commented 2026-06-05 09:43:38 +00:00 (Migrated from gitlab.com)

changed the description

changed the description
ghost1 commented 2026-06-05 09:43:43 +00:00 (Migrated from gitlab.com)

changed the description

changed the description
ghost1 commented 2026-06-05 09:58:43 +00:00 (Migrated from gitlab.com)

added 50 commits

  • 5aee0ac0...531d00ef - 49 commits from branch main
  • 9ec5c0db - Merge main into cursor/cloud-localterra-setup-47ef

Compare with previous version

added 50 commits <ul><li>5aee0ac0...531d00ef - 49 commits from branch <code>main</code></li><li>9ec5c0db - Merge main into cursor/cloud-localterra-setup-47ef</li></ul> [Compare with previous version](/PlasticDigits/cl8y-dex-terraclassic/-/merge_requests/51/diffs?diff_id=1836390444&start_sha=5aee0ac0cd2c526ab985bf7cddbda1534997bc1a)
ghost1 commented 2026-06-05 09:58:56 +00:00 (Migrated from gitlab.com)

changed the description

changed the description
PlasticDigits commented 2026-06-05 09:59:00 +00:00 (Migrated from gitlab.com)

changed the description

changed the description
PlasticDigits (Migrated from gitlab.com) merged commit 816fec5d92 into main 2026-06-05 10:00:06 +00:00
PlasticDigits commented 2026-06-05 10:00:07 +00:00 (Migrated from gitlab.com)

mentioned in commit 816fec5d92

mentioned in commit 816fec5d925dd8401056472a1cea5adf5df010b5
ghost1 commented 2026-06-05 10:01:08 +00:00 (Migrated from gitlab.com)

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

Bugbot Autofix is ON, but it could not run because the branch was deleted or merged before autofix could start.

Reviewed by Cursor Bugbot for commit 9ec5c0db10. Configure here.

<!-- BUGBOT_REVIEW --> Cursor Bugbot has reviewed your changes and found 1 potential issue. <!-- BUGBOT_FIX_ALL --> <a href="https://cursor.com/open?link=eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9BTExfSU5fQ1VSU09SIiwiZGF0YSI6eyJyZWRpc0tleSI6ImJ1Z2JvdC1tdWx0aTpjMjk2ODE5OS03MDk4LTQ5ZjgtOGVkZS1jN2ZlYTdmM2QwYzgiLCJlbmNyeXB0aW9uS2V5IjoidEw3SEstWW5sX19BTmVvUEQ5alZjRDVWeDJ0LUlwdEJHUjlEelpraVhSOCIsImJyYW5jaCI6ImN1cnNvci9jbG91ZC1sb2NhbHRlcnJhLXNldHVwLTQ3ZWYiLCJyZXBvT3duZXIiOiJQbGFzdGljRGlnaXRzIiwicmVwb05hbWUiOiJjbDh5LWRleC10ZXJyYWNsYXNzaWMifX0" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/fix-in-cursor-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/fix-in-cursor-light.png"><img alt="Fix All in Cursor" width="115" height="28" src="https://cursor.com/assets/images/fix-in-cursor-dark.png"></picture></a> <!-- /BUGBOT_FIX_ALL --> <!-- BUGBOT_AUTOFIX_REVIEW_FOOTNOTE_BEGIN --> <sup>Bugbot Autofix is ON, but it could not run because the branch was deleted or merged before autofix could start.</sup> <!-- BUGBOT_AUTOFIX_REVIEW_FOOTNOTE_END --> <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 9ec5c0db10b6a9844353aaea71ff75582e21a61f. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup>
ghost1 commented 2026-06-05 10:01:10 +00:00 (Migrated from gitlab.com)

Dead dockerd tmux blocks restart

Medium Severity

_ensure_dockerd only starts dockerd when no dockerd tmux session exists. If docker info fails but a leftover session remains after a crashed daemon, the script never launches a new dockerd and exits after the wait loop, blocking make setup-cloud-localterra until the session is removed manually.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 9ec5c0db10. Configure here.

### Dead dockerd tmux blocks restart **Medium Severity** <!-- DESCRIPTION START --> `_ensure_dockerd` only starts `dockerd` when no `dockerd` tmux session exists. If `docker info` fails but a leftover session remains after a crashed daemon, the script never launches a new `dockerd` and exits after the wait loop, blocking `make setup-cloud-localterra` until the session is removed manually. <!-- DESCRIPTION END --> <!-- BUGBOT_BUG_ID: 6dda9c88-f982-49b7-8ddd-8f8fc8bc8ad2 --> <!-- LOCATIONS START scripts/setup-cloud-agent-localterra.sh#L63-L80 LOCATIONS END --> <div><a href="https://cursor.com/open?link=eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9DVVJTT1IiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OmI4OTFhNDEwLTk4MzktNDIyYS05OGFiLTg5ODgwYTYzYWUyMyIsImVuY3J5cHRpb25LZXkiOiJ1YkdKd0k1S0l4OERUQTNOOXZhNFhEV3Rkc2ZtV2hNbkJKc0RJcFRfV0w4IiwiYnJhbmNoIjoiY3Vyc29yL2Nsb3VkLWxvY2FsdGVycmEtc2V0dXAtNDdlZiIsInJlcG9Pd25lciI6IlBsYXN0aWNEaWdpdHMiLCJyZXBvTmFtZSI6ImNsOHktZGV4LXRlcnJhY2xhc3NpYyJ9fQ" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/fix-in-cursor-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/fix-in-cursor-light.png"><img alt="Fix in Cursor" width="115" height="28" src="https://cursor.com/assets/images/fix-in-cursor-dark.png"></picture></a>&nbsp;<a href="https://cursor.com/agents?link=eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9XRUIiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OmI4OTFhNDEwLTk4MzktNDIyYS05OGFiLTg5ODgwYTYzYWUyMyIsImVuY3J5cHRpb25LZXkiOiJ1YkdKd0k1S0l4OERUQTNOOXZhNFhEV3Rkc2ZtV2hNbkJKc0RJcFRfV0w4IiwiYnJhbmNoIjoiY3Vyc29yL2Nsb3VkLWxvY2FsdGVycmEtc2V0dXAtNDdlZiIsInJlcG9Pd25lciI6IlBsYXN0aWNEaWdpdHMiLCJyZXBvTmFtZSI6ImNsOHktZGV4LXRlcnJhY2xhc3NpYyIsInByTnVtYmVyIjo1MSwiY29tbWl0U2hhIjoiOWVjNWMwZGIxMGI2YTk4NDQzNTNhYWVhNzFmZjc1NTgyZTIxYTYxZiIsInByb3ZpZGVyIjoiZ2l0bGFiIiwiaG9zdG5hbWUiOiJnaXRsYWIuY29tIn19" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/fix-in-web-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/fix-in-web-light.png"><img alt="Fix in Web" width="99" height="28" src="https://cursor.com/assets/images/fix-in-web-dark.png"></picture></a></div> <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 9ec5c0db10b6a9844353aaea71ff75582e21a61f. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup>
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!769
No description provided.