chore(ops): post-merge #171 operator redeploy, live execute verify, Woodpecker #172

Open
opened 2026-09-12 02:39:27 +00:00 by PlasticDigits · 3 comments

Summary

After merging #171 / #170, production still needs the operator image that contains INV-OP-W11/W12, a live execute + Hash Verification check, and Woodpecker actually enabled on this repo.

Do not reopen #170 for this. Code is on main (2906caa).

Tasks

  1. Redeploy operator (Coolify / host). Confirm the running binary includes execute_queue + with_retryable_rpc_fallback on withdrawExecute*.
  2. Live AC1 / AC2. Dest-approved Terra Classic → BNB (or other EVM dest) after the cancel window: operator withdrawExecuteMint / Unlock without a manual cast send. Then /verify?hash= shows verified + dest Executed.
  3. Live AC3. While dest is still Approved-not-executed, /verify?hash= stays Pending and shows cancel remaining and/or the GL-127 EVM rate-limit banner (not a blank Approved card).
  4. Woodpecker. main requires ci/woodpecker/pr/woodpecker. This repo currently has no webhook and no .woodpecker.yaml, so the check never posts and PRs cannot merge without force_merge. Enable the project on ci.cl8y.com, add a digest-pinned .woodpecker.yaml (operator writers:: / rpc_fallback + frontend hash-verify unit tests at minimum; do not skip scanners without a recorded reason), and confirm a PR pipeline posts success. Needs WOODPECKER_TOKEN (bao-exec) and wg0 to the vault if enabling from the workstation.

Out of scope

  • Manual unstick of individual live hashes (ops bot)
  • #164 MegaETH/LCD approval, #127 Transfer Status copy, #139 Terra history
  • Publishing live xchain ids or operator logs on Forgejo

Acceptance

  • Operator redeployed from main @ 2906caa or later
  • At least one dest-approved EVM execute lands without a manual contract call, or Verify names the on-chain limiter
  • /verify?hash= matches AC2/AC3 on that row
  • A new PR on this repo gets ci/woodpecker/pr/woodpecker success without force_merge
## Summary After merging [#171](https://git.cl8y.com/code/cl8y-bridge-monorepo/pulls/171) / [#170](https://git.cl8y.com/code/cl8y-bridge-monorepo/issues/170), production still needs the operator image that contains INV-OP-W11/W12, a live execute + Hash Verification check, and Woodpecker actually enabled on this repo. Do not reopen #170 for this. Code is on `main` (`2906caa`). ## Tasks 1. **Redeploy operator** (Coolify / host). Confirm the running binary includes `execute_queue` + `with_retryable_rpc_fallback` on `withdrawExecute*`. 2. **Live AC1 / AC2.** Dest-approved Terra Classic → BNB (or other EVM dest) after the cancel window: operator `withdrawExecuteMint` / `Unlock` without a manual `cast send`. Then `/verify?hash=` shows **verified** + dest **Executed**. 3. **Live AC3.** While dest is still Approved-not-executed, `/verify?hash=` stays **Pending** and shows cancel remaining and/or the GL-127 EVM rate-limit banner (not a blank Approved card). 4. **Woodpecker.** `main` requires `ci/woodpecker/pr/woodpecker`. This repo currently has **no** webhook and **no** `.woodpecker.yaml`, so the check never posts and PRs cannot merge without `force_merge`. Enable the project on `ci.cl8y.com`, add a digest-pinned `.woodpecker.yaml` (operator `writers::` / `rpc_fallback` + frontend hash-verify unit tests at minimum; do not skip scanners without a recorded reason), and confirm a PR pipeline posts success. Needs `WOODPECKER_TOKEN` (`bao-exec`) and `wg0` to the vault if enabling from the workstation. ## Out of scope - Manual unstick of individual live hashes (ops bot) - #164 MegaETH/LCD approval, #127 Transfer Status copy, #139 Terra history - Publishing live xchain ids or operator logs on Forgejo ## Acceptance - [ ] Operator redeployed from `main` @ `2906caa` or later - [ ] At least one dest-approved EVM execute lands without a manual contract call, or Verify names the on-chain limiter - [ ] `/verify?hash=` matches AC2/AC3 on that row - [ ] A new PR on this repo gets `ci/woodpecker/pr/woodpecker` success without `force_merge`
Author
Owner

Ops progress (agent)

Done

  • Digest-pinned .woodpecker.yaml is on PR #173 (issue/172, 915d3ec). Steps: gitleaks, operator writers:: + rpc_fallback, frontend hash-verify unit tests. cargo-audit stays in .github/workflows/test.yml until a digest-pinned audit image exists (recorded in the yaml).
  • Forgejo still has no Woodpecker webhook and the PR has no ci/woodpecker/* statuses yet. The project is not enabled on https://ci.cl8y.com.
  • Live Hash Verification at https://bridge.cl8y.com/verify does not yet contain the dest-approved EVM blocker copy from #171 (cancel remaining / rate-limit / awaiting-execute). Frontend production must be redeployed from main @ 2906caa or later for AC2/AC3. Do not publish live hash ids here.

Blocked (need operator)

Workstation site wg0 is down, so bao-exec cannot reach OpenBao. That blocks Coolify API redeploy, Woodpecker repo enable via API, and cl8y-pm assigner inbox POST.

After wg0 is up, the same agent path can: bao-exec Coolify operator (+ frontend) redeploy, POST Woodpecker activate for this repo, and file remaining inbox cards. Live AC1 still needs a dest-approved EVM execute after the cancel window (or Verify naming the on-chain limiter).

Inbox cards were not filed (assigner token is vault-backed).

Operator copy-paste (desktop)

sudo wg-quick up wg0
source ~/.config/openbao/env.sh && bao login -no-print -method=cert -path=workstation-cert name=answorld-pop-os && bao-exec --check

Then on https://ci.cl8y.com: enable code/cl8y-bridge-monorepo so PR #173 can post ci/woodpecker/pr/woodpecker.

Redeploy from Coolify (or existing frontend host): operator and frontend from main @ 2906caa or later. Confirm the running operator includes execute_queue / with_retryable_rpc_fallback.

Not closing this issue. AC: operator redeploy, live AC1–AC3, Woodpecker success on a PR.

## Ops progress (agent) ### Done - Digest-pinned `.woodpecker.yaml` is on PR https://git.cl8y.com/code/cl8y-bridge-monorepo/pulls/173 (`issue/172`, `915d3ec`). Steps: gitleaks, operator `writers::` + `rpc_fallback`, frontend hash-verify unit tests. cargo-audit stays in `.github/workflows/test.yml` until a digest-pinned audit image exists (recorded in the yaml). - Forgejo still has **no** Woodpecker webhook and the PR has **no** `ci/woodpecker/*` statuses yet. The project is not enabled on https://ci.cl8y.com. - Live Hash Verification at https://bridge.cl8y.com/verify does **not** yet contain the dest-approved EVM blocker copy from #171 (cancel remaining / rate-limit / awaiting-execute). Frontend production must be redeployed from `main` @ `2906caa` or later for AC2/AC3. Do not publish live hash ids here. ### Blocked (need operator) Workstation site `wg0` is down, so `bao-exec` cannot reach OpenBao. That blocks Coolify API redeploy, Woodpecker repo enable via API, and cl8y-pm assigner inbox POST. After `wg0` is up, the same agent path can: `bao-exec` Coolify operator (+ frontend) redeploy, `POST` Woodpecker activate for this repo, and file remaining inbox cards. Live AC1 still needs a dest-approved EVM execute after the cancel window (or Verify naming the on-chain limiter). Inbox cards were **not** filed (assigner token is vault-backed). ### Operator copy-paste (desktop) ``` sudo wg-quick up wg0 source ~/.config/openbao/env.sh && bao login -no-print -method=cert -path=workstation-cert name=answorld-pop-os && bao-exec --check ``` Then on https://ci.cl8y.com: enable `code/cl8y-bridge-monorepo` so PR #173 can post `ci/woodpecker/pr/woodpecker`. Redeploy from Coolify (or existing frontend host): operator **and** frontend from `main` @ `2906caa` or later. Confirm the running operator includes `execute_queue` / `with_retryable_rpc_fallback`. Not closing this issue. AC: operator redeploy, live AC1–AC3, Woodpecker success on a PR.
Author
Owner

Status

Landed #174 on main (4586378). ci/woodpecker/pr/woodpecker succeeded on that PR without force_merge. The follow-up push pipeline on main also succeeded. Operator and frontend were redeployed from that commit (2906caa or later).

AC3 observed live: Hash Verification on a dest Approved-not-executed row stayed Pending, hash-matched, and showed Awaiting operator execute after the cancel window (not a blank Approved card).

AC1 / AC2 still open. Leftover dest-approved EVM payouts are under TokenRegistry minPerTransaction (0.1 tokena-cb / tdec-cb). After the 0.50% fee, a 0.1 send becomes 0.0995 and dest-execute is terminal. Existing Terra-src pending rows on BNB are still unapproved. Need a new Terra Classic → BNB (or other EVM dest) whose dest payout is at least 0.1 (send 0.11 or more). No manual withdrawExecute* / cast send.

Assigner could not attach inbox cards to this repo (code/cl8y-bridge-monorepo is not in the cl8y-pm link allowlist). Copy-paste commands are in the agent reply, not on this issue as live hashes.

Leaving this issue open until one above-min dest-execute is verified.

## Status Landed [#174](https://git.cl8y.com/code/cl8y-bridge-monorepo/pulls/174) on `main` (`4586378`). `ci/woodpecker/pr/woodpecker` succeeded on that PR without `force_merge`. The follow-up push pipeline on `main` also succeeded. Operator and frontend were redeployed from that commit (`2906caa` or later). **AC3 observed live:** Hash Verification on a dest Approved-not-executed row stayed **Pending**, hash-matched, and showed **Awaiting operator execute** after the cancel window (not a blank Approved card). **AC1 / AC2 still open.** Leftover dest-approved EVM payouts are under TokenRegistry `minPerTransaction` (`0.1` tokena-cb / tdec-cb). After the 0.50% fee, a `0.1` send becomes `0.0995` and dest-execute is terminal. Existing Terra-src pending rows on BNB are still unapproved. Need a **new** Terra Classic → BNB (or other EVM dest) whose dest payout is at least `0.1` (send `0.11` or more). No manual `withdrawExecute*` / `cast send`. Assigner could not attach inbox cards to this repo (`code/cl8y-bridge-monorepo` is not in the cl8y-pm link allowlist). Copy-paste commands are in the agent reply, not on this issue as live hashes. Leaving this issue open until one above-min dest-execute is verified.
Author
Owner

Status

Landed #174 on main (4586378). ci/woodpecker/pr/woodpecker succeeded on that PR without force_merge. The follow-up push pipeline on main also succeeded. Operator and frontend were redeployed from that commit (2906caa or later).

AC3 observed live: Hash Verification on a dest Approved-not-executed row stayed Pending, hash-matched, and showed Awaiting operator execute after the cancel window (not a blank Approved card).

AC1 / AC2 still open. Leftover dest-approved EVM payouts are under TokenRegistry minPerTransaction (0.1 tokena-cb / tdec-cb). After the 0.50% fee, a 0.1 send becomes 0.0995 and dest-execute is terminal. Existing Terra-src pending rows on BNB are still unapproved. Need a new Terra Classic → BNB (or other EVM dest) whose dest payout is at least 0.1 (send 0.11 or more). No manual withdrawExecute* / cast send.

Assigner could not attach inbox cards to this repo (code/cl8y-bridge-monorepo is not in the cl8y-pm link allowlist). Copy-paste commands are in the agent reply, not on this issue as live hashes.

Leaving this issue open until one above-min dest-execute is verified.

## Status Landed [#174](https://git.cl8y.com/code/cl8y-bridge-monorepo/pulls/174) on `main` (`4586378`). `ci/woodpecker/pr/woodpecker` succeeded on that PR without `force_merge`. The follow-up push pipeline on `main` also succeeded. Operator and frontend were redeployed from that commit (`2906caa` or later). **AC3 observed live:** Hash Verification on a dest Approved-not-executed row stayed **Pending**, hash-matched, and showed **Awaiting operator execute** after the cancel window (not a blank Approved card). **AC1 / AC2 still open.** Leftover dest-approved EVM payouts are under TokenRegistry `minPerTransaction` (`0.1` tokena-cb / tdec-cb). After the 0.50% fee, a `0.1` send becomes `0.0995` and dest-execute is terminal. Existing Terra-src pending rows on BNB are still unapproved. Need a **new** Terra Classic → BNB (or other EVM dest) whose dest payout is at least `0.1` (send `0.11` or more). No manual `withdrawExecute*` / `cast send`. Assigner could not attach inbox cards to this repo (`code/cl8y-bridge-monorepo` is not in the cl8y-pm link allowlist). Copy-paste commands are in the agent reply, not on this issue as live hashes. Leaving this issue open until one above-min dest-execute is verified.
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-bridge-monorepo#172
No description provided.