From 8baa50ec7b5651ab033b9819833f71118532a067 Mon Sep 17 00:00:00 2001 From: "allen.wu" Date: Mon, 22 Jun 2026 11:56:39 +0800 Subject: [PATCH 1/3] fix: audit phase 3 --- bindings/go.mod | 4 +-- bindings/go.sum | 2 ++ common/go.mod | 4 +-- common/go.sum | 2 ++ contracts/go.mod | 4 +-- contracts/go.sum | 2 ++ node/go.mod | 4 +-- node/go.sum | 4 +++ node/hakeeper/block_fsm.go | 21 +++++++++---- node/hakeeper/config.go | 20 +++++++++++++ node/hakeeper/rpc/auth.go | 55 +++++++++++++++++++++++++++------- node/hakeeper/rpc/auth_test.go | 44 +++++++++++++++++++++++++++ node/hakeeper/rpc/server.go | 17 +++++++++-- ops/l2-genesis/go.mod | 4 +-- ops/l2-genesis/go.sum | 2 ++ ops/tools/go.mod | 4 +-- ops/tools/go.sum | 4 +++ token-price-oracle/go.mod | 2 +- token-price-oracle/go.sum | 2 ++ tx-submitter/go.mod | 4 +-- tx-submitter/go.sum | 2 ++ 21 files changed, 173 insertions(+), 34 deletions(-) diff --git a/bindings/go.mod b/bindings/go.mod index 67d4cd834..6f42946bc 100644 --- a/bindings/go.mod +++ b/bindings/go.mod @@ -2,9 +2,9 @@ module morph-l2/bindings go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260617072029-29056623cdb0 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 -replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc +replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 require github.com/morph-l2/go-ethereum v1.10.14-0.20251219060125-03910bc750a2 diff --git a/bindings/go.sum b/bindings/go.sum index 52b1efc97..380cb33db 100644 --- a/bindings/go.sum +++ b/bindings/go.sum @@ -111,6 +111,8 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc h1:2Umr8WRDBKwCgGrQQ8yCdhn71bCuMJuecId2ClK80DU= github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc/go.mod h1:nkVzHjQWCOjvukQW8ittlwX+Xz9gmVHrP7mUi7zoHTs= +github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 h1:n/1vutNb2x2tzNvVZvfU8frb5nI8hEBcRyX0oEVMtU0= +github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68/go.mod h1:nkVzHjQWCOjvukQW8ittlwX+Xz9gmVHrP7mUi7zoHTs= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU= diff --git a/common/go.mod b/common/go.mod index 5e8fdceb8..cf06a63a9 100644 --- a/common/go.mod +++ b/common/go.mod @@ -2,9 +2,9 @@ module morph-l2/common go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260617072029-29056623cdb0 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 -replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc +replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 require ( github.com/holiman/uint256 v1.2.4 diff --git a/common/go.sum b/common/go.sum index 9d54134aa..459879917 100644 --- a/common/go.sum +++ b/common/go.sum @@ -150,6 +150,8 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc h1:2Umr8WRDBKwCgGrQQ8yCdhn71bCuMJuecId2ClK80DU= github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc/go.mod h1:nkVzHjQWCOjvukQW8ittlwX+Xz9gmVHrP7mUi7zoHTs= +github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 h1:n/1vutNb2x2tzNvVZvfU8frb5nI8hEBcRyX0oEVMtU0= +github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68/go.mod h1:nkVzHjQWCOjvukQW8ittlwX+Xz9gmVHrP7mUi7zoHTs= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= diff --git a/contracts/go.mod b/contracts/go.mod index 04e49e149..d84ba009d 100644 --- a/contracts/go.mod +++ b/contracts/go.mod @@ -2,9 +2,9 @@ module morph-l2/contract go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260617072029-29056623cdb0 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 -replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc +replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 require ( github.com/iden3/go-iden3-crypto v0.0.16 diff --git a/contracts/go.sum b/contracts/go.sum index 9e675ad15..52a43e10c 100644 --- a/contracts/go.sum +++ b/contracts/go.sum @@ -138,6 +138,8 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc h1:2Umr8WRDBKwCgGrQQ8yCdhn71bCuMJuecId2ClK80DU= github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc/go.mod h1:nkVzHjQWCOjvukQW8ittlwX+Xz9gmVHrP7mUi7zoHTs= +github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 h1:n/1vutNb2x2tzNvVZvfU8frb5nI8hEBcRyX0oEVMtU0= +github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68/go.mod h1:nkVzHjQWCOjvukQW8ittlwX+Xz9gmVHrP7mUi7zoHTs= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= diff --git a/node/go.mod b/node/go.mod index 3c42bd6fd..96676ef2e 100644 --- a/node/go.mod +++ b/node/go.mod @@ -2,9 +2,9 @@ module morph-l2/node go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260617072029-29056623cdb0 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 -replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc +replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 require ( github.com/cenkalti/backoff/v4 v4.1.3 diff --git a/node/go.sum b/node/go.sum index 99b6e15f1..ecb727425 100644 --- a/node/go.sum +++ b/node/go.sum @@ -416,8 +416,12 @@ github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lN github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc h1:2Umr8WRDBKwCgGrQQ8yCdhn71bCuMJuecId2ClK80DU= github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc/go.mod h1:nkVzHjQWCOjvukQW8ittlwX+Xz9gmVHrP7mUi7zoHTs= +github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 h1:n/1vutNb2x2tzNvVZvfU8frb5nI8hEBcRyX0oEVMtU0= +github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68/go.mod h1:nkVzHjQWCOjvukQW8ittlwX+Xz9gmVHrP7mUi7zoHTs= github.com/morph-l2/tendermint v0.3.8-0.20260617072029-29056623cdb0 h1:LcRbLo0pQXev4z/6i65mVr/9XoFE9Zf7+tcqKItpE+M= github.com/morph-l2/tendermint v0.3.8-0.20260617072029-29056623cdb0/go.mod h1:qpiwqfcCB89dBYfqVJOc/HjGxDp3OdDlthgttJJYyRs= +github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 h1:7aM6NX2PLj7WRGnQBJ3bfVlByLVsJagVzvjuQjcUeUk= +github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732/go.mod h1:qpiwqfcCB89dBYfqVJOc/HjGxDp3OdDlthgttJJYyRs= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= diff --git a/node/hakeeper/block_fsm.go b/node/hakeeper/block_fsm.go index d299df5c4..08bb68d53 100644 --- a/node/hakeeper/block_fsm.go +++ b/node/hakeeper/block_fsm.go @@ -19,7 +19,9 @@ type FSMDecodeError struct{ Err error } func (e *FSMDecodeError) Error() string { return fmt.Sprintf("FSM decode: %v", e.Err) } func (e *FSMDecodeError) Unwrap() error { return e.Err } -// FSMApplyError is returned when the business callback (geth applyBlock / saveSignature) fails. +// FSMApplyError is the panic value raised when the business callback +// (geth applyBlock / saveSignature) fails. FSM apply must not fail silently; +// see BlockFSM.Apply for why this is fatal rather than a returned error. type FSMApplyError struct { Height uint64 Err error @@ -77,10 +79,12 @@ func (f *BlockFSM) SetOnBlockApplied(fn func(*types.BlockV2) error) { // - Decode failure → returns FSMDecodeError. For the leader this propagates via // Future.Response() and triggers a panic (invariant violation). For followers // it is logged by Raft. -// - onApplied failure → returns FSMApplyError. For the leader this triggers a -// panic via Commit(). For followers, the block is NOT delivered to blockCh -// and appliedHeight is NOT advanced; the follower becomes degraded and -// requires manual resync. +// - onApplied failure → panics with FSMApplyError. Raft applies each committed +// entry exactly once and never retries, and a follower's Apply return value +// is discarded, so logging-and-skipping would strand geth at height-1 +// forever (the next block's parent never lands) — a silent gap. Panicking +// fails the node fast (leader and follower alike) so process supervision / +// alerting catches it instead of the node silently diverging. // - Success → block is delivered to blockCh (for P2P broadcast) and // appliedHeight is advanced (for snapshot/log compaction). func (f *BlockFSM) Apply(l *raft.Log) interface{} { @@ -105,7 +109,12 @@ func (f *BlockFSM) Apply(l *raft.Log) interface{} { if fn != nil { t1 := time.Now() if err := fn(block); err != nil { - return &FSMApplyError{Height: block.Number, Err: err} + // Fail-fast: Raft applies each committed entry exactly once and does + // not retry, and a follower's Apply return value is discarded. A + // silent skip would strand geth at height-1 forever (the next + // block's parent never lands). Panic so leader and follower alike + // crash loudly and get caught by process supervision / alerting. + panic(&FSMApplyError{Height: block.Number, Err: err}) } onAppliedDur = time.Since(t1) } else { diff --git a/node/hakeeper/config.go b/node/hakeeper/config.go index 654b53ed5..f81e8d62b 100644 --- a/node/hakeeper/config.go +++ b/node/hakeeper/config.go @@ -207,6 +207,26 @@ func (c *Config) Validate() error { return fmt.Errorf("invalid rpc.listen_port: %d", c.RPC.ListenPort) } + // Raft timing sanity. A non-positive heartbeat disables liveness; a leader + // lease >= heartbeat destabilizes leadership (hashicorp/raft also requires + // LeaderLeaseTimeout <= HeartbeatTimeout). + if c.Timeout.Heartbeat <= 0 { + return fmt.Errorf("timeout.heartbeat must be > 0, got %s", c.Timeout.Heartbeat) + } + if c.Timeout.LeaderLease <= 0 { + return fmt.Errorf("timeout.leader_lease must be > 0, got %s", c.Timeout.LeaderLease) + } + if c.Timeout.LeaderLease >= c.Timeout.Heartbeat { + return fmt.Errorf("timeout.leader_lease (%s) must be less than timeout.heartbeat (%s)", + c.Timeout.LeaderLease, c.Timeout.Heartbeat) + } + + // TrailingLogs must be positive: snapshotting with 0 trailing logs truncates + // entries a lagging follower still needs, breaking catch-up. + if c.Snapshot.TrailingLogs == 0 { + return fmt.Errorf("snapshot.trailing_logs must be > 0") + } + // AdvertisedAddr must be a routable address (IP or hostname) after Resolve(). if c.Consensus.AdvertisedAddr != "" { host, _, err := net.SplitHostPort(c.Consensus.AdvertisedAddr) diff --git a/node/hakeeper/rpc/auth.go b/node/hakeeper/rpc/auth.go index 297417d6e..f30b4bc42 100644 --- a/node/hakeeper/rpc/auth.go +++ b/node/hakeeper/rpc/auth.go @@ -54,20 +54,43 @@ func authMiddleware(token string, next http.Handler) http.Handler { }) } -// requiresAuth reports whether the request body contains any write JSON-RPC method. -// Handles both single requests ({...}) and batch requests ([...]). +// requiresAuth reports whether the request body must carry a write-auth token. +// +// It is fail-closed: it returns true (require a token) for anything it cannot +// positively prove to be read-only. Parsing mirrors the downstream +// go-ethereum JSON-RPC server (rpc/json.go readBatch + parseMessage): a +// streaming decoder reads the first JSON value (trailing bytes ignored) and a +// batch is split element-by-element. Using the same parser as the server, plus +// failing closed on any decode error, removes the differential where a +// malformed body classified as "no write method" by the middleware is still +// executed as a write method by the server. func requiresAuth(body []byte) bool { trimmed := bytes.TrimSpace(body) if len(trimmed) == 0 { - return false + return true + } + + // Read exactly the first JSON value, like the server's codec does. A second + // value or trailing bytes are ignored by both, so we classify what the + // server will actually execute. + dec := json.NewDecoder(bytes.NewReader(trimmed)) + var raw json.RawMessage + if err := dec.Decode(&raw); err != nil { + return true } - if trimmed[0] == '[' { - var batch []rpcEnvelope - if err := json.Unmarshal(trimmed, &batch); err != nil { - return false + if isJSONBatch(raw) { + bd := json.NewDecoder(bytes.NewReader(raw)) + if _, err := bd.Token(); err != nil { // consume '[' + return true } - for _, req := range batch { + for bd.More() { + var req rpcEnvelope + if err := bd.Decode(&req); err != nil { + // The server decodes batch elements independently; an element we + // can't classify might still be executed, so fail closed. + return true + } if writeRPCMethods[req.Method] { return true } @@ -76,8 +99,20 @@ func requiresAuth(body []byte) bool { } var req rpcEnvelope - if err := json.Unmarshal(trimmed, &req); err != nil { - return false + if err := json.Unmarshal(raw, &req); err != nil { + return true } return writeRPCMethods[req.Method] } + +// isJSONBatch reports whether the first non-whitespace byte is '[', matching +// go-ethereum's rpc.isBatch so batch detection stays identical to the server. +func isJSONBatch(raw json.RawMessage) bool { + for _, c := range raw { + if c == 0x20 || c == 0x09 || c == 0x0a || c == 0x0d { + continue + } + return c == '[' + } + return false +} diff --git a/node/hakeeper/rpc/auth_test.go b/node/hakeeper/rpc/auth_test.go index 766003bb3..4775df114 100644 --- a/node/hakeeper/rpc/auth_test.go +++ b/node/hakeeper/rpc/auth_test.go @@ -117,3 +117,47 @@ func TestAuthMiddleware_BodyReadable(t *testing.T) { t.Fatalf("body not restored: got %q", captured) } } + +// --- parser-mismatch / fail-closed regression tests --- + +// A trailing byte after a valid object: the downstream streaming decoder ignores +// it and still executes the write method, so the middleware must require a token. +func TestAuthMiddleware_TrailingGarbageAfterWrite_NoToken_Returns401(t *testing.T) { + h := authMiddleware("secret", okHandler) + body := `{"jsonrpc":"2.0","method":"ha_removeServer","params":["node-2",1],"id":1}X` + req := httptest.NewRequest(http.MethodPost, "/", bytes.NewBufferString(body)) + req.Header.Set("Content-Type", "application/json") + rr := httptest.NewRecorder() + h.ServeHTTP(rr, req) + if rr.Code != http.StatusUnauthorized { + t.Fatalf("expected 401 for trailing-garbage write request, got %d", rr.Code) + } +} + +// A non-object leading element makes a strict whole-batch unmarshal fail, but the +// server decodes batch elements independently and would run the write method. +func TestAuthMiddleware_BatchInvalidElementThenWrite_NoToken_Returns401(t *testing.T) { + h := authMiddleware("secret", okHandler) + body := `[123,{"jsonrpc":"2.0","method":"ha_removeServer","params":["node-2",1],"id":1}]` + req := httptest.NewRequest(http.MethodPost, "/", bytes.NewBufferString(body)) + req.Header.Set("Content-Type", "application/json") + rr := httptest.NewRecorder() + h.ServeHTTP(rr, req) + if rr.Code != http.StatusUnauthorized { + t.Fatalf("expected 401 for batch with invalid element + write method, got %d", rr.Code) + } +} + +// Fail-closed: a body that cannot be proven read-only must require a token. +func TestAuthMiddleware_UnparseableBody_NoToken_Returns401(t *testing.T) { + h := authMiddleware("secret", okHandler) + for _, body := range []string{"", " ", "not-json", "123"} { + req := httptest.NewRequest(http.MethodPost, "/", bytes.NewBufferString(body)) + req.Header.Set("Content-Type", "application/json") + rr := httptest.NewRecorder() + h.ServeHTTP(rr, req) + if rr.Code != http.StatusUnauthorized { + t.Fatalf("expected 401 for unparseable body %q, got %d", body, rr.Code) + } + } +} diff --git a/node/hakeeper/rpc/server.go b/node/hakeeper/rpc/server.go index 3cea4ee9b..90ad0216d 100644 --- a/node/hakeeper/rpc/server.go +++ b/node/hakeeper/rpc/server.go @@ -41,9 +41,20 @@ func New(log log.Logger, listenAddr string, listenPort int, cons ConsensusAdapte addr := fmt.Sprintf("%s:%d", listenAddr, listenPort) httpSrv := &http.Server{ - Addr: addr, - Handler: mux, - ReadHeaderTimeout: 10 * time.Second, + Addr: addr, + Handler: mux, + // Bound every phase so a slow client cannot pin a goroutine/connection + // indefinitely (slowloris). Requests/responses are tiny control-plane + // JSON-RPC, so the read side is kept tight. WriteTimeout is the handler + // execution budget: a write method runs a Raft membership op that waits up + // to raftTimeout (5s, see ha_service.go) before returning a clean error, + // so this must stay above 5s; otherwise the connection is cut mid-op while + // the Raft op keeps running server-side (WriteTimeout does not cancel the + // handler). 10s = 5s raft budget + margin for JSON/scheduling. + ReadHeaderTimeout: 5 * time.Second, + ReadTimeout: 10 * time.Second, + WriteTimeout: 10 * time.Second, + IdleTimeout: 60 * time.Second, } return &Server{ diff --git a/ops/l2-genesis/go.mod b/ops/l2-genesis/go.mod index 410643622..f724cc7a5 100644 --- a/ops/l2-genesis/go.mod +++ b/ops/l2-genesis/go.mod @@ -2,9 +2,9 @@ module morph-l2/morph-deployer go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260617072029-29056623cdb0 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 -replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc +replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 require ( github.com/holiman/uint256 v1.2.4 diff --git a/ops/l2-genesis/go.sum b/ops/l2-genesis/go.sum index b4f8800d6..b2e349864 100644 --- a/ops/l2-genesis/go.sum +++ b/ops/l2-genesis/go.sum @@ -141,6 +141,8 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc h1:2Umr8WRDBKwCgGrQQ8yCdhn71bCuMJuecId2ClK80DU= github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc/go.mod h1:nkVzHjQWCOjvukQW8ittlwX+Xz9gmVHrP7mUi7zoHTs= +github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 h1:n/1vutNb2x2tzNvVZvfU8frb5nI8hEBcRyX0oEVMtU0= +github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68/go.mod h1:nkVzHjQWCOjvukQW8ittlwX+Xz9gmVHrP7mUi7zoHTs= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= diff --git a/ops/tools/go.mod b/ops/tools/go.mod index bfaffcfa6..db5105413 100644 --- a/ops/tools/go.mod +++ b/ops/tools/go.mod @@ -2,9 +2,9 @@ module morph-l2/tools go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260617072029-29056623cdb0 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 -replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc +replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 require ( github.com/morph-l2/go-ethereum v1.10.14-0.20251219060125-03910bc750a2 diff --git a/ops/tools/go.sum b/ops/tools/go.sum index 41263a51f..37d7ca7df 100644 --- a/ops/tools/go.sum +++ b/ops/tools/go.sum @@ -163,8 +163,12 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc h1:2Umr8WRDBKwCgGrQQ8yCdhn71bCuMJuecId2ClK80DU= github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc/go.mod h1:nkVzHjQWCOjvukQW8ittlwX+Xz9gmVHrP7mUi7zoHTs= +github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 h1:n/1vutNb2x2tzNvVZvfU8frb5nI8hEBcRyX0oEVMtU0= +github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68/go.mod h1:nkVzHjQWCOjvukQW8ittlwX+Xz9gmVHrP7mUi7zoHTs= github.com/morph-l2/tendermint v0.3.8-0.20260617072029-29056623cdb0 h1:LcRbLo0pQXev4z/6i65mVr/9XoFE9Zf7+tcqKItpE+M= github.com/morph-l2/tendermint v0.3.8-0.20260617072029-29056623cdb0/go.mod h1:qpiwqfcCB89dBYfqVJOc/HjGxDp3OdDlthgttJJYyRs= +github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 h1:7aM6NX2PLj7WRGnQBJ3bfVlByLVsJagVzvjuQjcUeUk= +github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732/go.mod h1:qpiwqfcCB89dBYfqVJOc/HjGxDp3OdDlthgttJJYyRs= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= diff --git a/token-price-oracle/go.mod b/token-price-oracle/go.mod index 3ad4235b3..fbcceb2a3 100644 --- a/token-price-oracle/go.mod +++ b/token-price-oracle/go.mod @@ -2,7 +2,7 @@ module morph-l2/token-price-oracle go 1.24.0 -replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc +replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 replace ( github.com/VictoriaMetrics/fastcache => github.com/VictoriaMetrics/fastcache v1.12.2 diff --git a/token-price-oracle/go.sum b/token-price-oracle/go.sum index 0a08c7fb7..4ea23f410 100644 --- a/token-price-oracle/go.sum +++ b/token-price-oracle/go.sum @@ -145,6 +145,8 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc h1:2Umr8WRDBKwCgGrQQ8yCdhn71bCuMJuecId2ClK80DU= github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc/go.mod h1:nkVzHjQWCOjvukQW8ittlwX+Xz9gmVHrP7mUi7zoHTs= +github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 h1:n/1vutNb2x2tzNvVZvfU8frb5nI8hEBcRyX0oEVMtU0= +github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68/go.mod h1:nkVzHjQWCOjvukQW8ittlwX+Xz9gmVHrP7mUi7zoHTs= github.com/morph-l2/remote-signer-client/go v0.0.0-20260312080033-d078d86ddbe9 h1:d2nKLUgiEJsQmpSWEiGbsC+sZXQCM4y/3EzyXkoMM60= github.com/morph-l2/remote-signer-client/go v0.0.0-20260312080033-d078d86ddbe9/go.mod h1:slD6GmYEwLHn4Yj/kO8/1QF3iaYlVVAXg2ZnGr8SW/8= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= diff --git a/tx-submitter/go.mod b/tx-submitter/go.mod index 8f75532d8..1984e6b34 100644 --- a/tx-submitter/go.mod +++ b/tx-submitter/go.mod @@ -2,9 +2,9 @@ module morph-l2/tx-submitter go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260617072029-29056623cdb0 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 -replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc +replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 require ( github.com/consensys/gnark-crypto v0.16.0 diff --git a/tx-submitter/go.sum b/tx-submitter/go.sum index 0b827da1c..3495c86df 100644 --- a/tx-submitter/go.sum +++ b/tx-submitter/go.sum @@ -163,6 +163,8 @@ github.com/morph-l2/externalsign v0.3.1 h1:UYFDZFB0L85A4rDvuwLNBiGEi0kSmg9AZ2v8Q github.com/morph-l2/externalsign v0.3.1/go.mod h1:b6NJ4GUiiG/gcSJsp3p8ExsIs4ZdphlrVALASnVoGJE= github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc h1:2Umr8WRDBKwCgGrQQ8yCdhn71bCuMJuecId2ClK80DU= github.com/morph-l2/go-ethereum v0.0.0-20260608072528-fe02cc1f10bc/go.mod h1:nkVzHjQWCOjvukQW8ittlwX+Xz9gmVHrP7mUi7zoHTs= +github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 h1:n/1vutNb2x2tzNvVZvfU8frb5nI8hEBcRyX0oEVMtU0= +github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68/go.mod h1:nkVzHjQWCOjvukQW8ittlwX+Xz9gmVHrP7mUi7zoHTs= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= From 9f7b6997dbffe40ae3a0a19e9cba77c034755b4e Mon Sep 17 00:00:00 2001 From: "allen.wu" Date: Mon, 22 Jun 2026 14:06:15 +0800 Subject: [PATCH 2/3] fix: update tendermint go mod --- bindings/go.mod | 2 +- common/go.mod | 2 +- contracts/go.mod | 2 +- node/go.mod | 2 +- node/go.sum | 2 ++ ops/l2-genesis/go.mod | 2 +- ops/tools/go.mod | 2 +- ops/tools/go.sum | 2 ++ tx-submitter/go.mod | 2 +- 9 files changed, 11 insertions(+), 7 deletions(-) diff --git a/bindings/go.mod b/bindings/go.mod index 6f42946bc..320f7cfa0 100644 --- a/bindings/go.mod +++ b/bindings/go.mod @@ -2,7 +2,7 @@ module morph-l2/bindings go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 diff --git a/common/go.mod b/common/go.mod index cf06a63a9..f39b970b5 100644 --- a/common/go.mod +++ b/common/go.mod @@ -2,7 +2,7 @@ module morph-l2/common go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 diff --git a/contracts/go.mod b/contracts/go.mod index d84ba009d..283a105a0 100644 --- a/contracts/go.mod +++ b/contracts/go.mod @@ -2,7 +2,7 @@ module morph-l2/contract go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 diff --git a/node/go.mod b/node/go.mod index 96676ef2e..4442a92a7 100644 --- a/node/go.mod +++ b/node/go.mod @@ -2,7 +2,7 @@ module morph-l2/node go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 diff --git a/node/go.sum b/node/go.sum index ecb727425..673dbf929 100644 --- a/node/go.sum +++ b/node/go.sum @@ -422,6 +422,8 @@ github.com/morph-l2/tendermint v0.3.8-0.20260617072029-29056623cdb0 h1:LcRbLo0pQ github.com/morph-l2/tendermint v0.3.8-0.20260617072029-29056623cdb0/go.mod h1:qpiwqfcCB89dBYfqVJOc/HjGxDp3OdDlthgttJJYyRs= github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 h1:7aM6NX2PLj7WRGnQBJ3bfVlByLVsJagVzvjuQjcUeUk= github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732/go.mod h1:qpiwqfcCB89dBYfqVJOc/HjGxDp3OdDlthgttJJYyRs= +github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e h1:cTeHNzxDG9qr2iP6rgo2ql+0gHBeKDh9svonHus5HGw= +github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e/go.mod h1:qpiwqfcCB89dBYfqVJOc/HjGxDp3OdDlthgttJJYyRs= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= diff --git a/ops/l2-genesis/go.mod b/ops/l2-genesis/go.mod index f724cc7a5..1f752c1d3 100644 --- a/ops/l2-genesis/go.mod +++ b/ops/l2-genesis/go.mod @@ -2,7 +2,7 @@ module morph-l2/morph-deployer go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 diff --git a/ops/tools/go.mod b/ops/tools/go.mod index db5105413..ec8e5483d 100644 --- a/ops/tools/go.mod +++ b/ops/tools/go.mod @@ -2,7 +2,7 @@ module morph-l2/tools go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 diff --git a/ops/tools/go.sum b/ops/tools/go.sum index 37d7ca7df..eda73ceed 100644 --- a/ops/tools/go.sum +++ b/ops/tools/go.sum @@ -169,6 +169,8 @@ github.com/morph-l2/tendermint v0.3.8-0.20260617072029-29056623cdb0 h1:LcRbLo0pQ github.com/morph-l2/tendermint v0.3.8-0.20260617072029-29056623cdb0/go.mod h1:qpiwqfcCB89dBYfqVJOc/HjGxDp3OdDlthgttJJYyRs= github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 h1:7aM6NX2PLj7WRGnQBJ3bfVlByLVsJagVzvjuQjcUeUk= github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732/go.mod h1:qpiwqfcCB89dBYfqVJOc/HjGxDp3OdDlthgttJJYyRs= +github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e h1:cTeHNzxDG9qr2iP6rgo2ql+0gHBeKDh9svonHus5HGw= +github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e/go.mod h1:qpiwqfcCB89dBYfqVJOc/HjGxDp3OdDlthgttJJYyRs= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= diff --git a/tx-submitter/go.mod b/tx-submitter/go.mod index 1984e6b34..567f33366 100644 --- a/tx-submitter/go.mod +++ b/tx-submitter/go.mod @@ -2,7 +2,7 @@ module morph-l2/tx-submitter go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 From 54b2c21adcc4bd0ea9fdd617072d81d2fbf71880 Mon Sep 17 00:00:00 2001 From: "allen.wu" Date: Mon, 22 Jun 2026 16:32:59 +0800 Subject: [PATCH 3/3] fix: update tendermint go mod --- bindings/go.mod | 2 +- common/go.mod | 2 +- contracts/go.mod | 2 +- node/go.mod | 2 +- node/go.sum | 2 ++ ops/l2-genesis/go.mod | 2 +- ops/tools/go.mod | 2 +- ops/tools/go.sum | 2 ++ tx-submitter/go.mod | 2 +- 9 files changed, 11 insertions(+), 7 deletions(-) diff --git a/bindings/go.mod b/bindings/go.mod index 320f7cfa0..a7e367650 100644 --- a/bindings/go.mod +++ b/bindings/go.mod @@ -2,7 +2,7 @@ module morph-l2/bindings go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622082553-4abd48c31b4d replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 diff --git a/common/go.mod b/common/go.mod index f39b970b5..27aece86d 100644 --- a/common/go.mod +++ b/common/go.mod @@ -2,7 +2,7 @@ module morph-l2/common go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622082553-4abd48c31b4d replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 diff --git a/contracts/go.mod b/contracts/go.mod index 283a105a0..c5b7b4a56 100644 --- a/contracts/go.mod +++ b/contracts/go.mod @@ -2,7 +2,7 @@ module morph-l2/contract go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622082553-4abd48c31b4d replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 diff --git a/node/go.mod b/node/go.mod index 4442a92a7..0fc622953 100644 --- a/node/go.mod +++ b/node/go.mod @@ -2,7 +2,7 @@ module morph-l2/node go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622082553-4abd48c31b4d replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 diff --git a/node/go.sum b/node/go.sum index 673dbf929..3ef32ca0e 100644 --- a/node/go.sum +++ b/node/go.sum @@ -424,6 +424,8 @@ github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 h1:7aM6NX2PL github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732/go.mod h1:qpiwqfcCB89dBYfqVJOc/HjGxDp3OdDlthgttJJYyRs= github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e h1:cTeHNzxDG9qr2iP6rgo2ql+0gHBeKDh9svonHus5HGw= github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e/go.mod h1:qpiwqfcCB89dBYfqVJOc/HjGxDp3OdDlthgttJJYyRs= +github.com/morph-l2/tendermint v0.3.8-0.20260622082553-4abd48c31b4d h1:/LRd3UtaefI+IzFE6cdODGJTOrmWKdzrRGAMPMgeQMs= +github.com/morph-l2/tendermint v0.3.8-0.20260622082553-4abd48c31b4d/go.mod h1:qpiwqfcCB89dBYfqVJOc/HjGxDp3OdDlthgttJJYyRs= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= diff --git a/ops/l2-genesis/go.mod b/ops/l2-genesis/go.mod index 1f752c1d3..935fabaea 100644 --- a/ops/l2-genesis/go.mod +++ b/ops/l2-genesis/go.mod @@ -2,7 +2,7 @@ module morph-l2/morph-deployer go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622082553-4abd48c31b4d replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 diff --git a/ops/tools/go.mod b/ops/tools/go.mod index ec8e5483d..c7d4bd2c8 100644 --- a/ops/tools/go.mod +++ b/ops/tools/go.mod @@ -2,7 +2,7 @@ module morph-l2/tools go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622082553-4abd48c31b4d replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68 diff --git a/ops/tools/go.sum b/ops/tools/go.sum index eda73ceed..d045a3c0a 100644 --- a/ops/tools/go.sum +++ b/ops/tools/go.sum @@ -171,6 +171,8 @@ github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732 h1:7aM6NX2PL github.com/morph-l2/tendermint v0.3.8-0.20260622034124-c3cd60c45732/go.mod h1:qpiwqfcCB89dBYfqVJOc/HjGxDp3OdDlthgttJJYyRs= github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e h1:cTeHNzxDG9qr2iP6rgo2ql+0gHBeKDh9svonHus5HGw= github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e/go.mod h1:qpiwqfcCB89dBYfqVJOc/HjGxDp3OdDlthgttJJYyRs= +github.com/morph-l2/tendermint v0.3.8-0.20260622082553-4abd48c31b4d h1:/LRd3UtaefI+IzFE6cdODGJTOrmWKdzrRGAMPMgeQMs= +github.com/morph-l2/tendermint v0.3.8-0.20260622082553-4abd48c31b4d/go.mod h1:qpiwqfcCB89dBYfqVJOc/HjGxDp3OdDlthgttJJYyRs= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= diff --git a/tx-submitter/go.mod b/tx-submitter/go.mod index 567f33366..e449de10b 100644 --- a/tx-submitter/go.mod +++ b/tx-submitter/go.mod @@ -2,7 +2,7 @@ module morph-l2/tx-submitter go 1.24.0 -replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622055959-eed7fed8ce2e +replace github.com/tendermint/tendermint => github.com/morph-l2/tendermint v0.3.8-0.20260622082553-4abd48c31b4d replace github.com/morph-l2/go-ethereum => github.com/morph-l2/go-ethereum v1.10.14-0.20260622034103-0d7e79c95a68