Skip to content

chore(deps): bump sei-config to v0.0.28 across all three modules - #509

Merged
bdchatham merged 1 commit into
mainfrom
chore/sei-config-v0.0.28
Aug 31, 2026
Merged

chore(deps): bump sei-config to v0.0.28 across all three modules#509
bdchatham merged 1 commit into
mainfrom
chore/sei-config-v0.0.28

Conversation

@bdchatham

Copy link
Copy Markdown
Collaborator

Bumps sei-config v0.0.27 → v0.0.28 in all three Go modules. Pins only; no source change.

Why

v0.0.28 carries storage.state_commit.write_mode_enable_auto (sei-config#51) and the pointer-resolution fix that shipped with it (sei-config#52). Until the pin moves, the sidecar's override resolution rejects the new key as unknown, so a node cannot be pinned to an explicit state-commit write mode through spec.overrides.

All three modules move together so the schema stays consistent across the controller, the sidecar that resolves overrides, and the shared API types.

What the bump unlocks, verified

Both keys the release makes reachable now resolve through the controller's own dependency:

storage.state_commit.write_mode_enable_auto      = false   validIntent=true  resolved
storage.state_commit.write_mode_enable_auto      = true    validIntent=true  resolved
consensus.unsafe_bypass_commit_timeout_override  = true    validIntent=true  resolved

default WriteModeEnableAuto is nil: true

That last line is what keeps this behaviour-neutral: the field defaults to nil, so an unset field renders no key and every existing node keeps the binary's own default. The legacy tag is sc-write-mode-enable-auto,omitempty, so nil genuinely omits.

consensus.unsafe_bypass_commit_timeout_override becomes settable for the first time — no existing node can carry it, because setting a pointer field failed before sei-config#51.

Testing

Check Result
go build ./... in all three modules pass
go test ./... in all three modules pass
make tidy-check (go mod tidy -diff per module) pass
make verify-generated pass
golangci-lint v2.12.1 with --new-from-merge-base, all three modules 0 issues each

The lint run matches CI's invocation and version. I ran it before pushing this time — the same check caught a real goconst finding on the last controller PR that my other verifiers missed.

Rollout note

The harbor rollout for the previous bump has settled: all five nodes are on bd9a558 with NodeUpdateInProgress=False and SidecarReady=True, and the controller lease is held by a bd9a558 pod.

sei-protocol/platform#1584 (the frozen RPC node) is deliberately paused so this change can catch up. Landing it now would mean rolling all five harbor nodes twice, and a frozen node's pod replacement is not free — it re-enters block sync and has to reach its freeze height again. One roll, with the node created once on the final image.

🤖 Generated with Claude Code

v0.0.28 carries storage.state_commit.write_mode_enable_auto (sei-config#51) and
the pointer-resolution fix that shipped with it (#52). Until the pin moves, the
sidecar's override resolution rejects the new key as unknown, so a node cannot
be pinned to an explicit state-commit write mode through spec.overrides.

All three modules move together so the schema stays consistent across the
controller, the sidecar that resolves overrides, and the shared API types.

Pins only; no source change. Verified that both keys the release unlocks now
resolve through ValidateIntent and ResolveIntent, and that
WriteModeEnableAuto defaults to nil so an unset field renders no key — which is
what keeps this bump behaviour-neutral for every existing node.

The pointer fix also makes consensus.unsafe_bypass_commit_timeout_override
settable for the first time; no existing node can carry it, because setting a
pointer field failed before.
@cursor

cursor Bot commented Aug 31, 2026

Copy link
Copy Markdown

PR Summary

Low Risk
Dependency pin only with no application code changes; operational impact is limited to newly settable override keys, with nil defaults preserving current behavior.

Overview
Pins github.com/sei-protocol/sei-config from v0.0.27 to v0.0.28 in the root controller, sidecar, and sidecarapi modules (including matching go.sum entries). There are no Go source changes—only dependency metadata.

The bump keeps the override/config schema aligned everywhere the controller, sidecar, and shared API types resolve spec.overrides. v0.0.28 is what makes newer keys (notably storage.state_commit.write_mode_enable_auto and consensus.unsafe_bypass_commit_timeout_override) recognized instead of rejected as unknown during sidecar override resolution. Existing nodes should stay unchanged when those fields are unset, because defaults omit them.

Reviewed by Cursor Bugbot for commit e7b3c81. Bugbot is set up for automated code reviews on this repo. Configure here.

@bdchatham
bdchatham merged commit d0397cb into main Aug 31, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant