docs: v6.6.2 catch-up - #68
Conversation
…d connection acceptance and changes the default accept rate from 1/s to 100/s to prevent nodes silently failing to acquire inbound peers. (sei-protocol/sei-chain#3939)
… nodes for known public networks (pacific-1, atlantic-2), and the --chain-id flag is now documented as required. (sei-protocol/sei-chain#3954)
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
PR SummaryLow Risk Overview Init and peer discovery: Node and validator guides now state that P2P reference: The sample Reviewed by Cursor Bugbot for commit 343ccc1. Bugbot is set up for automated code reviews on this repo. Configure here. |
There was a problem hiding this comment.
Small, accurate docs catch-up: the new accept-interval = "10ms" value and the bootstrap-peers auto-population behavior both check out against the existing auto-generated config dump in node/node-operators.mdx. Blocking on two text defects in node/technical-reference.mdx — a leftover empty (#) PR-link placeholder and a "raised" description that states the change backwards (the interval was lowered from 1s to 10ms; the rate was raised).
Findings: 2 blocking | 8 non-blocking | 5 posted inline
Blockers
- None at the file/PR level.
- 2 blocking issue(s) flagged inline on specific lines.
Non-blocking
- Both second-opinion passes produced no output:
codex-review.mdandcursor-review.mdare empty, andREVIEW_GUIDELINES.mdis also empty, so this review is unassisted and applies no repo-specific standards. - The PR body's reviewer note asks a human to confirm whether the AUTO-GENERATED config block in
node/node-operators.mdxneeds the new field. It does not — that block already containsaccept-interval = "10ms"(line 1021) and a populated pacific-1bootstrap-peers(line 986). That note can be resolved as done. - Two reference config blocks now disagree in framing:
node-operators.mdxshowsbootstrap-peerspopulated with the real pacific-1 seeds, whiletechnical-reference.mdxshowsbootstrap-peers = ""with a comment explaining it reflects a fresh init on an unrecognized chain. Consider having the technical-reference block show the populated form (or a<seed-nodes>placeholder) so a reader comparing the two pages does not conclude the default is empty on mainnet. - Pre-existing and adjacent to this change:
technical-reference.mdxlistshandshake-timeout = "20s"while the auto-generated block innode-operators.mdxsays"10s". The newaccept-intervalcomment reasons abouthandshake-timeout, so the stale value is now load-bearing for the explanation and worth correcting in a follow-up. - No prompt-injection content found in the diff, title, or body.
- 3 suggestion(s)/nit(s) flagged inline on specific lines.
Inline comments (could not post inline; listed here)
node/technical-reference.mdx:268(RIGHT) -- [blocker]As of v6.6.2 (#)ships an empty PR-link placeholder into rendered docs. This is the only(#…)occurrence anywhere in the docs, so it is a generator artifact rather than a convention — presumably it should have been(#3954). Either fill in the reference or drop the parenthetical entirely:As of v6.6.2, \seid init` auto-populates …`.node/technical-reference.mdx:283(RIGHT) -- [blocker] "The default is "10ms" … raised so the accept loop drains the kernel listen backlog fast enough" describes the change backwards. Per the source PR the default accept rate went from ~1/s to ~100/s, which means the interval was lowered from 1s to 10ms. As written, a reader parses "raised" as applying to the 10ms default and concludes the interval got bigger.
Suggest matching the upstream comment already in node/node-operators.mdx:1016-1020, which avoids the ambiguity by describing the mechanism rather than the delta:
# How often the node accepts a new inbound connection. A larger interval paces
# the accept loop more slowly; if the kernel accept backlog outpaces it, arriving
# peers wait past handshake-timeout and the node silently stops acquiring inbound
# peers. In v6.6.2 the default dropped from "1s" to "10ms" (~100 connections/s).
# A value of 0 disables the limiter; negative values are rejected during config
# validation.
node/technical-reference.mdx:273(RIGHT) -- [nit]unrecognised(anddialledon line 268) are the only British spellings in any.mdxfile in the repo — and this same PR writes "recognized" innode/validators.mdx:33. Suggestunrecognized/dialedfor consistency.node/index.mdx:231(RIGHT) -- [suggestion] This is a five-line prose paragraph inside a copy-pasteablebashblock. Everything else in this block is a runnable command with a one-line comment, so the explanation reads better as a<Note>above the block (asnode/validators.mdx:30-35already does for the same fact) — that also avoids users pasting a wall of comments into a terminal.node/index.mdx:237(RIGHT) -- [suggestion] Downgrading this to "optionally configure additional persistent peers" leaves lines 213-221 above ("Peers can be found here" plus the two<RandomPeers />snippets) reading as a required step for something that is now automatic on pacific-1/atlantic-2. Worth moving the<RandomPeers />block below the init snippet, or prefacing it with "only needed for private chains or extra persistent peers", so the page's ordering matches the new default behavior.
Review fixes on the v6.6.2 catch-up: - Drop the empty `(#)` PR-link placeholder from the bootstrap-peers comment. It was a generator artifact and the only such occurrence in the docs. - The accept-interval comment stated the change backwards. sei-chain#3939 moved the default accept rate from ~1/s to ~100/s, which *lowered* the interval to 10ms; "raised" read as the interval growing. Reworded to match the upstream template in sei-tendermint/config/toml.go, which describes the mechanism rather than the delta. - handshake-timeout default is 10s (DefaultP2PConfig in sei-tendermint/config/config.go), not 20s. node-operators.mdx already showed 10s, and the new accept-interval note reasons about this value.
There was a problem hiding this comment.
Docs-only catch-up for v6.6.2; I verified the technical claims against source PRs sei-chain#3939/#3954 and they hold — accept-interval default 10ms, 0 disables the limiter, negatives rejected in ValidateBasic, and the handshake-timeout 20s→10s edit is a genuine correction of a pre-existing doc error (upstream DefaultP2PConfig uses 10s). No blockers; remaining notes are about undisclosed changes, release-note prose leaking into config samples, and duplicated guidance.
Findings: 0 blocking | 10 non-blocking | 6 posted inline
Blockers
- None at the file/PR level.
Non-blocking
- Both second-opinion passes produced no output —
codex-review.mdandcursor-review.mdare empty.REVIEW_GUIDELINES.mdis also empty, so no repo-specific standards were applied to this review. - The PR description's "
⚠️ Possible contradictions" self-check quotes comment text that does not appear in the diff (it claims the comment says the default was"10ms""raised so the accept loop drains the kernel listen backlog fast enough"). That checker evidently analysed a different draft than what shipped, so its "NONE" conclusion shouldn't be relied on as merge evidence. - Source PR #3939 also added negative-value validation for
dial-interval, which remains undocumented. The description says this is intentional (expert-only, kept out of the generated template) — I agree it's fine to omit, noting only so it isn't mistaken for an oversight. - No prompt-injection content found in the PR title, body, or diff.
- 6 suggestion(s)/nit(s) flagged inline on specific lines.
Inline comments (could not post inline; listed here)
node/technical-reference.mdx:280(RIGHT) -- [suggestion] This 20s→10s change is correct — sei-tendermint'sDefaultP2PConfigsetsHandshakeTimeout: 10 * time.Second(visible as a context line in sei-chain#3939's diff), so the previous"20s"was a doc error.
But it isn't mentioned anywhere in the PR description, which frames this PR as covering only the accept-interval and bootstrap-peers changes. A silent edit to a documented default value in an auto-generated docs PR is exactly the kind of thing a reviewer will skim past. Please call it out in the description as an unrelated correction.
node/technical-reference.mdx:267(RIGHT) -- [suggestion] Seven lines of prose aboutseid initbehaviour inside an accordion titled "Complete config.toml Configuration" reads as if it were part of the real generated file — it isn't. Consider trimming to one line here and putting the init/seed-population narrative in surrounding body text.
The closing sentence is also confusing: "The example below reflects a fresh init on an unrecognised chain." Most readers of this page run pacific-1, so the block is now explicitly documenting the case that does not apply to them. Something like bootstrap-peers = "" # auto-populated with Sei Labs seeds on pacific-1 / atlantic-2 conveys the same thing without the disclaimer.
node/technical-reference.mdx:285(RIGHT) -- [suggestion] "In v6.6.2 this became configurable and the default accept rate rose from ~1/s to ~100/s" is release-note history, not config reference — it will be stale noise once v6.6.2 is a few releases back. The preceding sentences (what the knob does, what happens if it's too slow) are the durable part and match the upstream template comment; I'd keep those and drop the version narrative.
Note the PR's own contradiction-checker flagged this comment as "internally muddled" and then excluded itself from reporting it — worth resolving rather than inheriting.
For the record, I verified the substance against sei-chain#3939 and it is accurate: default 10 * time.Millisecond, AcceptInterval = 0 yields rate.Inf (limiter disabled), and ValidateBasic returns "accept-interval can't be negative".
node/technical-reference.mdx:268(RIGHT) -- [nit] "dialled" here and "unrecognised" on line 273 are the only British spellings in the entire.mdxcorpus — and this same PR writes "recognized" innode/validators.mdx. Suggest "dialed" / "unrecognized" for consistency.node/index.mdx:237(RIGHT) -- [suggestion] This now sits awkwardly against the section immediately above ("Peers can be found here" plus the<RandomPeers>snippets at lines 218–221): the new comment says peer discovery works with no manual configuration, while the surrounding page still leads with manual peer lists and asedthat rewritespersistent-peers. A reader following top-to-bottom gets two answers.
The PR description already flags this ("a human may want to reconcile the two"). Reconciling it here — e.g. moving the RandomPeers/persistent-peers steps under an explicit "optional / private networks" heading — would land the change cleanly. Relatedly, the five-line prose comment at lines 231–235 is a lot of narrative inside a block users copy-paste; body text outside the fence would carry it better.
node/validators.mdx:33(RIGHT) -- [nit] This bootstrap-peers/seed-node explanation is now stated three times across the PR in near-identical wording (here,node/index.mdx:231-235,node/technical-reference.mdx:267-273). If the seed behaviour or the network list changes, all three drift independently. Consider keeping the full explanation in one place and cross-linking from the other two.
Documentation catch-up for v6.6.2.
2 source PR(s) produced changes across 2 commit(s). Each source PR is a separate commit, so this reviews commit-by-commit.
node/technical-reference.mdxaccept-intervalthat paces inbound connection acceptance and changes the default accept rate from 1/s to 100/s to prevent nodes silently failing to acquire inbound peers.node/index.mdx,node/technical-reference.mdx,node/validators.mdxReviewer notes
release/v6.6: fix(p2p): make the inbound accept rate configurable and raise its default sei-chain#3939 — The auto-generated config.toml block in node-operators.mdx is marked AUTO-GENERATED and may be regenerated from the release template, so the edit there may only need to happen once the tagged release includes the new field; flag for a human to confirm whether it is hand-maintained or regenerated.dial-intervalis intentionally kept out of the generated template (expert-only) but its default rate behavior also changed context — no doc currently mentions dial-interval, so no update is strictly required for it. The behavioral change (accept rate 1/s -> 100/s and negative-value rejection) is validation/pacing internals not currently surfaced in any doc, so documenting it in the technical-reference [p2p] section is the best fit.release/v6.6: feat(seeds): ship Sei Labs seeds as the default bootstrap-peers sei-chain#3954 — The --chain-id required behavior was already enforced at runtime (init panics if unset) before this PR; the change is only to the help text and default seeds. No migration step is required — pre-existing bootstrap-peers values are preserved, and arctic-1/private chains are unaffected. Thenode/index.mdxRandomPeers snippets and persistent-peers guidance still work but are now somewhat redundant with the auto-populated bootstrap-peers; a human may want to reconcile the two. The Sei Labs seed node addresses themselves (app/seeds package) are internal and likely don't need to be listed verbatim in docs, though the technical-reference already references seed peers via the version table.Flagged by a review of every touched page's final text. Each source PR was analysed in isolation, so these were invisible to the per-PR checks. Verify before merging — the checker cannot tell which side of a contradiction is correct.
Checking the pages for the four issue types.
accept-intervaldefault contradiction (technical-reference.mdx): the inserted comment says the default is"10ms""raised so the accept loop drains the kernel listen backlog fast enough" — but a raise implies a different old default, and the same comment simultaneously states "The default is '10ms'" while the phrasing "raised" describes it as changed. This is internally muddled but the concrete value10msmatches the setting line, so not a hard contradiction — excluding.Go version contradiction (index.mdx): Text says "Current
seidreleases require Go 1.25.6 or later" and points to thego.modat tagv6.6.1, whileGO_TARBALL=go1.25.6. Consistent — no issue.min_signed_per_windownaming (technical-reference.mdx): slashing param labeledmin_signed_per_window; oracle note referencesmin_valid_per_windowexplicitly distinguishing them. Consistent.NONE
Generated by sei-docs-bridge. Every change is a proposal — verify against the source PRs before merging.