GovParamChange task times out (never terminalizes) when the target node has tx-index disabled — /tx confirmation error mis-mapped to inclusion-undetermined
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 48/100
Research direction
Start with the marker-adoption path and /tx confirmation handling described in the issue, then trace how a committed DeliverTx result reaches wire.GovTxResult and status.outputs.govParamChange. Done means a committed non-zero code is terminal, is not re-broadcast, and preserves code, codespace, and raw_log instead of timing out; no test or file path is named in the issue.
Written by the indexing model from the issue text.
Description
Summary
A GovParamChange submit whose tx commits with a non-zero DeliverTx code (e.g. code 5 insufficient funds) is retried until the controller task timeout instead of being classified terminal and surfaced with its raw_log. The operator sees only an opaque Failed / reason: Timeout after 10m, with an empty status.outputs — the real, immediate on-chain error is hidden.
This contradicts the intended completion contract (a committed tx whose DeliverTx code ≠ 0 should report Failed terminal with the decoded wire.GovTxResult).
Evidence (arctic-1, prod-use2, 2026-07-22)
- SeiNodeTask
arctic-1/govparam-disable-ibc-outbound, task ided2391f6-3980-57e7-82f1-d1fed8f94421,spec.timeoutSeconds: 600. - Signed tx
8F8730FF8B60428B7C657782158336A8EFD709636028D6A376C46BCE7B2332F0committed at height 175023023 with:codespace: sdk,code: 5,raw_log: "80598000usei is smaller than 3500000000usei: insufficient funds"(proposer could not escrow the 3,500 SEI initial deposit; balance 80.6 SEI).
- Sidecar log shows the engine re-adopting the same in-flight tx from the marker and re-broadcasting it every ~30s —
run=4…run=19— never detecting that the adopted tx had already committed withcode != 0:msg="adopting in-flight tx from marker" ... txHash=8F8730FF...2332F0 msg="proposal broadcast" ... changes=[ibc/OutboundEnabled] txHash=8F8730FF... - Final CR state:
phase: Failed,conditions[Failed].reason: Timeout,status.task.err: timeout, nostatus.outputs/ no txHash / no code.
Expected
When the marker-adopted tx is found committed on-chain with code != 0:
- classify the run terminal (Failed) immediately — do not re-broadcast;
- decode and surface
code/codespace/raw_loginto thewire.GovTxResult→status.outputs.govParamChangeso the controller/operator sees the real error; - (controller side, sei-protocol/sei-k8s-controller) render that terminal error on the SeiNodeTask condition message instead of a generic
Timeout.
Impact
Turns a ~5-second, self-explanatory insufficient funds into a 10-minute silent timeout. Directly cost investigation time on the arctic-1 IBC-outbound op and is the reason a straightforward deposit-sizing mistake was not obvious. Applies to any DeliverTx-rejected gov submit (fee, sequence, deposit, validation).
Related
- Gov completion contract: seictl#219, sei-k8s-controller#453 (
wire.GovTxResultconsumer). - Operational guard added in gov-ops skill (deposit-affordability pre-submit gate + DeliverTx code-5 detector) so the bad submit is blocked before broadcast; this issue is the controller/sidecar-side fix so that when a bad tx does land, the failure is legible.
- Dominant language
- Go
- Stars
- 1
- Forks
- 3
- Avg merge
- 2h 56m
- Merged PRs (30d)
- 14
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from sei-protocol/seictl
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
sei-protocol/seictl#212 ·
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
sei-protocol/seictl#178 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
sei-protocol/seictl#176 ·
-
Difficulty 5/5 Over a week Newbie friendliness 30/100
sei-protocol/seictl#174 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 52/100
sei-protocol/seictl#171 ·
All issues in sei-protocol/seictl
Similar issues
-
optimization optimization:agents-md-curator
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
githubnext/gh-aw-cao#13143 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
blinklabs-io/bursa#904 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
yanet-platform/ipfw-go#129 ·
-
bug confmap/provider/googlesecretmanagerprovider needs triage
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
open-telemetry/opentelemetry-collector-contrib#51273 · 2 comments ·
-
bug: AI Gateway client filter lists "Unknown" twice when NULL and literal Unknown clients coexist Openbug
Difficulty 2/5 1-3 hours Newbie friendliness 90/100