You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(e2e): restore over-stripped fallback guards in upgrade-chain.sh (review)
phenix flagged that the gov-authority query lost its `|| true`, so under
`set -euo pipefail` a transient kubectl-exec/query failure terminates the
script and the fallback + diagnostic become unreachable. Auditing that
revealed the carve from the grab-bag had actually dropped ALL 10 of main's
`|| true` in this file, not just the intended image-load one — including two
more fallback-critical query paths (proposal-id) and four best-effort
kubectl scale/wait guards.
Reset upgrade-chain.sh to main and re-applied only the intended changes: image
load -> kind_load_image (fail loudly, the one deliberate removal), the
post-restart per-validator + EVM RPC gates, and the two gov-authority queries
converted to the explicit `if ! gov_authority=$(...); then gov_authority=""; fi`
form per the review (preserves the fallback explicitly instead of relying on
`|| true`). The other seven defensive `|| true` are preserved.
Validated on the governance upgrade path (which the earlier hardfork run did
not exercise): full gov e2e 5/5 — gov-authority query resolves, proposal
submitted/voted 4/4, chain upgrades and resumes, all post-upgrade tests pass.
Signed-off-by: puneetmahajan <59960662+puneet2019@users.noreply.github.com>
- (types,utils) [#320](https://github.com/mocachain/moca/pull/320) Delete dead ethermint-era files orphaned by the `rpc/`/`x/evm`/`x/erc20` removals: `types/{block,gasmeter,int,protocol,validation,constant}.go`, `types/openapiutil/`, and `utils/eth/eth.go` — every exported symbol verified unreferenced across the repo and all known external consumers (moca-storage-provider, moca-go-sdk, moca-challenger). Externally-used files (`chain_id.go` — `ParseChainID` is production code in the storage provider's signer — `grn.go`, `s3util`, `resource`, `common`) are untouched.
65
65
- (client) [#321](https://github.com/mocachain/moca/pull/321) Delete the dead `client/testnet.go` (579 LOC): an unreferenced near-duplicate of `cmd/mocad/cmd/testnet.go`, which is what the `mocad testnet` command actually wires.
66
66
- (types,server) [#322](https://github.com/mocachain/moca/pull/322) Use cosmos/evm's `HasDynamicFeeExtensionOption` and `NewIndexTxCmd` instead of the in-tree copies (semantically identical; both already operated on cosmos/evm's own types) — the only two fork-neutral swaps the five-folder sweep found.
67
-
- (e2e) [#324](https://github.com/mocachain/moca/pull/324) Fix the hardfork-upgrade e2e flake ("Chain did not reach height N within 240s"): the new-binary image load into kind could fail silently (`kind load ... || true`) and readiness accepted a single healthy pod as "chain resumed" while 2/3 quorum was still absent. Load images via `docker save | ctr import` with verification (`kind_load_image`), and gate post-restart on every validator's own RPC plus the EVM JSON-RPC (`wait_for_all_validator_rpcs`, `wait_for_evm_rpc_ready`); also delete stale kind clusters on fresh builds so containerd can't serve an old image SHA under the new tag.
68
67
69
68
- (contracts) [#314](https://github.com/mocachain/moca/pull/314) Slim `contracts/` to what moca actually uses (mirroring cosmos/evm's top-level `contracts/` convention): delete the four ERC20 test doubles (`MinterBurnerDecimals`, `Burnable`, `DirectBalanceManipulation`, `MaliciousDelayed`) — dead since the `x/erc20` removal (#221), available upstream where still needed — plus their `.sol` sources, artifacts, and npm manifest. The moca-specific `ERC721NonTransferable` (bucket/object/group NFT facade the storage keeper mints/burns through) stays put, now pinned by a guard test covering its ABI surface, fixed token/hub addresses, and its intentionally bytecode-less (ABI-only) nature. Slither retargets to `solidity/`; the now-subjectless solhint workflow and broken `lint-contracts` Make targets are removed.
0 commit comments