chore: cut seictl v0.0.69 (seed P2P reachability) - #241
Conversation
Patch bump `version.json` v0.0.68 → v0.0.69 to cut a release. On merge, the Releaser workflow (triggered by the version.json change) tags and publishes v0.0.69. Includes since v0.0.68: - #240 — sei-config v0.0.23 → v0.0.24, which fixes seed mode's config defaults Cut because the sidecar resolves ConfigIntent, so the sidecar's sei-config version is what a seed actually boots on — not the controller's. Seed support in sei-k8s-controller#499/#500 stays inert until this image ships. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
PR SummaryLow Risk Overview There are no application code changes in this PR; the release is intended to ship the already-merged sei-config v0.0.24 dependency so seed nodes get correct P2P listen defaults and related seed-mode configuration when the sidecar resolves config. Reviewed by Cursor Bugbot for commit dc013a0. Bugbot is set up for automated code reviews on this repo. Configure here. |
|
Suggested version: Changes in diff --git a/go.mod b/go.mod
index 36a5e33..c95c9cc 100644
--- a/go.mod
+++ b/go.mod
@@ -16,7 +16,7 @@ require (
github.com/pelletier/go-toml/v2 v2.2.4
github.com/prometheus/client_golang v1.23.2
github.com/sei-protocol/sei-chain v0.0.29-fix.0.20260326202429-c9b42951fef7
- github.com/sei-protocol/sei-config v0.0.23
+ github.com/sei-protocol/sei-config v0.0.24
github.com/sei-protocol/sei-k8s-controller v0.0.0-20260622210026-978577b63c78
github.com/sei-protocol/seilog v0.0.3
github.com/urfave/cli/v3 v3.6.1
Automatically created GitHub ReleaseA draft GitHub Release has been created. |
Patch bump
version.jsonv0.0.68 → v0.0.69 to cut a release. On merge, the Releaser workflow tags and publishes v0.0.69, and Containerize pushesghcr.io/sei-protocol/seictl:v0.0.69for amd64/arm64.Includes since v0.0.68
Why this cut matters more than a usual dependency bump
The sidecar resolves
ConfigIntent, so the sidecar's sei-config version — not the controller's — is what a node actually boots on. Seed support in sei-k8s-controller#499 / #500 is merged and released, but it stays inert until this image ships.The failure mode if it doesn't is quiet. On sei-config v0.0.23, seed mode inherits the base default of a loopback P2P listen address, so a seed binds
127.0.0.1:26656and is reachable by nobody — while booting clean, passing its TCP readiness probe against localhost, and reporting healthy. A seed that no peer can dial looks identical to a working one from inside the cluster.v0.0.24 also disables the listeners a seed has no business running (REST, gRPC, gRPC-web, EVM HTTP+WS), sets the tx indexer to
null, turns off StateStore with pruning everything, and adds a validation guard rejecting seed mode with pex disabled — a seed exists to exchange peer addresses, and seid will not start without it.Sidecar code changes
None. The bump carries only
go.mod/go.sumplus two tests (sidecar/tasks/config_apply_test.go) asserting a seed resolves to a reachable listen address and that a pex-disabled seed is rejected. That the sidecar needed no changes to support an entirely new node mode is the mode-config layering working as designed: the controller emits{Mode, Overrides}, the sidecar callsResolveIntent, and sei-config owns every per-mode default.Verification
go build ./...clean;go test ./...green across all 16 packages.🤖 Generated with Claude Code