docs: v6.7.0 catch-up - #95
Draft
seidroid[bot] wants to merge 41 commits into
Draft
seidroid[bot] wants to merge 41 commits into
seidroid[bot] wants to merge 41 commits into
Conversation
…trics for FlatKV state-commit, state-store, and receipt-store Pebble DBs, plus exposes FlatKV config fields in the server config template. (sei-protocol/sei-chain#3566)
…node's `mode` config field, adds a new `max_inbound_fullnode_peers` config field, moves the `autobahn-config-file` key to top-level in config.toml, and changes the `evmrpc` field in autobahn.json to be required on every validator. (sei-protocol/sei-chain#3525)
…er of calls allowed in an `eth_estimateGasAfterCalls` request, defaulting to 100. (sei-protocol/sei-chain#3631)
…, enabling runtime write-mode migration transitions without restarts, with important operator warnings about never using it on flatkv_only nodes. (sei-protocol/sei-chain#3581)
… cap concurrent logs subscriptions (default 1000), beyond which new logs subscriptions are rejected. (sei-protocol/sei-chain#3621)
…store configuration, adding a LittDB-based receipt store with a pebble tag index for eth_getLogs filtering. (sei-protocol/sei-chain#3620)
…st rate limiter and can reject requests with a 'server busy' error when the limit is exceeded. (sei-protocol/sei-chain#3646)
…lets operators disable the HashVault app-hash equivocation guard, and introduces HashVault recovery guidance for startup panics involving hash mismatches. (sei-protocol/sei-chain#3602)
…ilter-parallelism` (default 16) that bounds how many blocks a single eth_getLogs query scans concurrently in the littidx backend. (sei-protocol/sei-chain#3652)
…gured TraceTimeout and caps retained per-module state-access payload at 4 MiB (adding a 'truncated' field to the response), changing behavior to prevent OOM and unbounded traces. (sei-protocol/sei-chain#3653)
…max_concurrent_request_bytes) plus a new Prometheus metric to bound JSON-RPC request body sizes and concurrent request memory via pre-decode admission control. (sei-protocol/sei-chain#3648)
…with five new app.toml config fields (sc-hash-logger-*), enabled by default, for recording named block hashes for debugging/forensics. (sei-protocol/sei-chain#3647)
… with a durable gc-watermark file, adding six new config fields, changing the default GC period, and removing the CacheAwareGet API. (sei-protocol/sei-chain#3645)
Contributor
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Automations to automatically generate PRs for you. |
…ble that selects the config manager for seid; unset/'legacy' uses the existing path, 'v2' is a not-yet-implemented stub that errors, and invalid values fail hard. (sei-protocol/sei-chain#3671)
…ze, max-open-connections, keepalive/connection-age settings) with bounded defaults applied even when absent from older config files. (sei-protocol/sei-chain#3641)
…sh-only, --read-limit-mb) for computing/verifying lattice hashes and throttling scan throughput, and --output-dir is no longer required when using --lthash-only. (sei-protocol/sei-chain#3665)
… on every emitted metric series, which affects dashboards and alerting queries for node operators. (sei-protocol/sei-chain#3692)
…sus-unsafe binary variant using a lenient tx decoder (no body-bloat rejection) for replaying historical blocks. (sei-protocol/sei-chain#3691)
…` that caps retained struct-logger output per traced transaction on default debug_trace* endpoints, defaulting to 32 MiB (0 = unlimited). (sei-protocol/sei-chain#3677)
…block` and `compare` subcommands for inspecting and diffing hash log archives produced by the hashlogger. (sei-protocol/sei-chain#3676)
…osmos_only" value from v6.4/v6.5 app.toml files, mapping it to the current "memiavl_only" routing for backward-compatible upgrades. (sei-protocol/sei-chain#3704)
…annelSize, AutoFlushByteThreshold, KeymapManagerMaxBatchBytes, MetricsServeEndpoint) and tightens the maximum value size to 2^32-1 bytes (~4 GiB), rejecting larger values that previously could span the boundary. (sei-protocol/sei-chain#3683)
…ies them to baseapp, enabling pruning configuration (e.g., --pruning) to actually take effect. (sei-protocol/sei-chain#3725)
…, max_state_override_slots) that cap the size of state overrides in eth_call, eth_estimateGas, eth_estimateGasAfterCalls, and debug_traceCall, with correct go-ethereum SetStorage overlay semantics. (sei-protocol/sei-chain#3722)
…d global label and new metrics subsystems were added; internal metrics APIs were refactored to use global registries (not user-facing). (sei-protocol/sei-chain#3682)
…ckend, a new --memiavl-open-mode flag (snapshot/replay), and new --flatkv-dir/--memiavl-dir flags for comparing EVM logical state across backends on a migrating node. (sei-protocol/sei-chain#3711)
… use on debug_trace* endpoints, restricting to a native allowlist and disabling request-supplied JavaScript tracers by default. (sei-protocol/sei-chain#3718)
…) that compresses values on disk, introduces a v4 segment metadata format, lowers the max value size to 2^32-2 bytes, and restricts secondary keys to full-value aliases on compressed tables. (sei-protocol/sei-chain#3769)
…100,000) that bounds the total KV index entries all in-flight tx_search/block_search requests may visit, returning an error when the process-wide budget is exceeded. (sei-protocol/sei-chain#3708)
…ed persistence to a LittDB-backed BlockDB, adding new config file fields and new CLI flags to the gen-autobahn-config command for tuning BlockDB retention and GC. (sei-protocol/sei-chain#3707)
…nt, mint, params, slashing, upgrade) and expands bank, distribution, and gov precompiles with many new read-only query methods, plus a new AssociatePubKey transaction on the addr precompile. (sei-protocol/sei-chain#3767)
…g (last 256 blocks) plus a process-local cache, making the BLOCKHASH opcode return correct historical block hashes for the previous 256 blocks. (sei-protocol/sei-chain#3811)
…g_no_block` behavior so `eth_getLogs` now errors (instead of silently truncating) when a bounded or open-ended query exceeds the matched-log count or estimated heap-byte budget. (sei-protocol/sei-chain#3759)
…a before decoding it, so calls that supply too little gas are rejected and gas costs for existing precompile calls have increased slightly. (sei-protocol/sei-chain#3737)
…tartup on bind failure), the metrics server gains read/write/idle timeouts, and the max-open-connections config field's behavior is clarified. (sei-protocol/sei-chain#3819)
…ic gas model, changing how gas is metered and charged for these on-chain precompile calls (notably p256 now uses a fixed 3450 gas verification cost per RIP-7212). (sei-protocol/sei-chain#3813)
…eys (including recursive validation of nested multisig keys with depth and signature-count limits) before deriving addresses or persisting them, rejecting malformed pubkeys and deeply nested multisigs. (sei-protocol/sei-chain#3791)
…lRewards) are now read-only and no longer mutate validator-period state as of v6.7.0, making them idempotent. (sei-protocol/sei-chain#3738)
…sei-config-backed manager that performs advisory config validation (logging warnings for invalid fields) while booting identically to legacy; previously v2 was an unimplemented stub that errored. (sei-protocol/sei-chain#3678)
…allowing a validator operator to unjail their validator via the EVM precompile at the slashing precompile address. (sei-protocol/sei-chain#3825)
…onfig (max_request_body_bytes, max_concurrent_request_bytes) and adds a new ws_admission_timeout config field, with the WS frame size default dropping from 10 MiB to 5 MiB requiring operator action. (sei-protocol/sei-chain#3818)
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Documentation catch-up for v6.7.0.
41 source PR(s) produced changes across 41 commit(s). Each source PR is a separate commit, so this reviews commit-by-commit.
node/advanced-config-monitoring.mdxevm/reference.mdxmodeconfig field, adds a newmax_inbound_fullnode_peersconfig field, moves theautobahn-config-filekey to top-level in config.toml, and changes theevmrpcfield in autobahn.json to be required on every validator.evm/reference.mdxevm.max_estimate_gas_callslimits the number of calls allowed in aneth_estimateGasAfterCallsrequest, defaulting to 100.node/giga-storage-migration.mdxevm/reference.mdxevm.max_subscriptions_logsto cap concurrent logs subscriptions (default 1000), beyond which new logs subscriptions are rejected.node/giga-storage-migration.mdx,node/node-operators.mdxevm/reference.mdxnode/technical-reference.mdx,node/troubleshooting.mdxhash-vault-disabled-unsafethat lets operators disable the HashVault app-hash equivocation guard, and introduces HashVault recovery guidance for startup panics involving hash mismatches.node/advanced-config-monitoring.mdxreceipt-store.log-filter-parallelism(default 16) that bounds how many blocks a single eth_getLogs query scans concurrently in the littidx backend.evm/reference.mdx,evm/tracing/index.mdxnode/advanced-config-monitoring.mdxnode/advanced-config-monitoring.mdxnode/advanced-config-monitoring.mdxnode/technical-reference.mdxnode/technical-reference.mdxnode/technical-reference.mdx,node/troubleshooting.mdxnode/advanced-config-monitoring.mdxchain_idconstant label on every emitted metric series, which affects dashboards and alerting queries for node operators.node/technical-reference.mdxevm/tracing/index.mdxevm.max_trace_struct_log_bytesthat caps retained struct-logger output per traced transaction on default debug_trace* endpoints, defaulting to 32 MiB (0 = unlimited).node/giga-storage-migration.mdx,node/technical-reference.mdxhashlogcommand group to the seidb tool withget-blockandcomparesubcommands for inspecting and diffing hash log archives produced by the hashlogger.node/giga-storage-migration.mdxnode/advanced-config-monitoring.mdxnode/node-operators.mdx,node/technical-reference.mdxevm/reference.mdxnode/advanced-config-monitoring.mdxnode/technical-reference.mdx,node/troubleshooting.mdxevm/reference.mdx,evm/tracing/index.mdx,evm/tracing/javascript-tracers.mdx,evm/tracing/troubleshooting.mdxnode/advanced-config-monitoring.mdxnode/technical-reference.mdxmax-search-scan-budget(default 100,000) that bounds the total KV index entries all in-flight tx_search/block_search requests may visit, returning an error when the process-wide budget is exceeded.node/technical-reference.mdxdocs.json,evm/precompiles/auth.mdx,evm/precompiles/authz.mdx,evm/precompiles/cosmwasm-precompiles/addr.mdx,evm/precompiles/cosmwasm-precompiles/bank.mdx,evm/precompiles/evidence.mdx+7 moreevm/differences-with-ethereum.mdxevm/evm-parity/evm-compatibility.mdx,evm/reference.mdxmax_log_bytesEVM config field and changesmax_log_no_blockbehavior soeth_getLogsnow errors (instead of silently truncating) when a bounded or open-ended query exceeds the matched-log count or estimated heap-byte budget.evm/evm-parity/gas-and-fees.mdxnode/advanced-config-monitoring.mdx,node/node-operators.mdx,node/node-types.mdxevm/evm-parity/gas-and-fees.mdx,evm/precompiles/json.mdx,evm/precompiles/p256-precompile.mdxevm/transactions.mdxevm/precompiles/distribution.mdxnode/technical-reference.mdxevm/precompiles/example-usage.mdx,evm/precompiles/slashing.mdxevm/evm-parity/websocket.mdx,node/advanced-config-monitoring.mdx⛔ Failed final verification against the release tag
Each touched page was re-checked claim-by-claim against the
v6.7.0checkout after all commits were assembled. The items below contradict what actually ships at the tag and must be resolved before merging.evm/precompiles/example-usage.mdx(Available precompiles table, new 'Feegrant' row) — Feegrant is an available precompile at0x0000000000000000000000000000000000001010for querying fee allowancesevm/precompiles/feegrant.mdx(Address section / entire page) — The Feegrant precompile exists and is located at the fixed address 0x0000000000000000000000000000000000001010evm/precompiles/feegrant.mdx(Interface section) — Solidity interface IFeegrant with constants FEEGRANT_PRECOMPILE_ADDRESS / FEEGRANT_CONTRACT existsevm/precompiles/feegrant.mdx(Methods section) — Methods allowance(address,address), allowances(address,bytes), and allowancesByGranter(address,bytes) are exposed by the precompileevm/precompiles/feegrant.mdx(Interface / Methods / Notes sections) — Grant and AllowancesResponse structs, JSON-encoded allowance field, pagination via pageKey/nextKey, revert-on-value behaviourevm/precompiles/slashing.mdx(Final block at the bottom of the page) — All methods on the Slashing precompile are read-onlyviewqueries. Sending value to any of them reverts.unjail(line 201) with stateMutabilitynonpayable(line 209), and other nonpayable entries at lines 23, 82, 228. The page's ownunjailsection even states it 'is a state-mutating transaction'. Thus the claim that ALL methods are read-onlyviewqueries is false.evm/reference.mdx— verification could not complete: verifier exceeded 30 tool turnsnode/advanced-config-monitoring.mdx— verification could not complete: verifier exceeded 30 tool turnsnode/giga-storage-migration.mdx(### Operator-facing knobs — thesc-keys-to-migrate-per-blockparagraph and itstomlsample ([state-commit]/ sc-write-mode = "migrate_evm" / sc-keys-to-migrate-per-block = 1024)) —sc-keys-to-migrate-per-blockis anapp.toml[state-commit]config key that controls the per-block migration drain rate, with a default of1024and a constraint that the value must be> 0; shown in a TOML sample assc-keys-to-migrate-per-block = 1024.sc-keys-to-migrate-per-block,keys-to-migrate, andmigrate-per-blockall return no matches, and the[state-commit]template in sei-db/config/toml.go (lines 9–95) renders onlysc-write-modeandsc-write-mode-enable-auto, not this key. The drain rate is a governance parameter, not an app.toml knob: app/abci.go:64-93 readsmigration.NumKeysToMigratePerBlockfrom chain state (applyMigrationBatchSize), and app/migration/params.go:34-37 setsDefaultNumKeysToMigratePerBlock uint64 = 0(not 1024), with the comment that this gov param 'is the sole source of the per-block rate' and 'there is no node-local fallback'. An operator copying the sample sets a key that is never read.node/technical-reference.mdx— verification could not complete: not verified — run time budget exhausted mid-checknode/troubleshooting.mdx— verification could not complete: not verified — run time budget exhausted mid-checkReviewer notes
logsCount === 10000as a limit sentinel — reviewers may want to confirm whether that example should be updated to detect the new error response, but it is illustrative rather than authoritative. No migration step is required; defaults preserve prior count behavior (10000) and add a 64 MiB byte cap.rewards()view query, which is documented in evm/precompiles/distribution.mdx. The gRPC/legacy querier endpoints (DelegationRewards/DelegationTotalRewards) are not covered by a dedicated sei-docs page, so no other page needs updating. The old mutating behavior is preserved only for re-tracing pre-v6.7 blocks via debug_trace*, which could optionally be mentioned in evm/tracing/index.mdx, but this is an edge-case replay detail and likely not worth adding there. No migration step is required.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.
evm/evm-parity/evm-compatibility.mdx, the insertedeth_getLogsnote links to/node/node-operators/rpc-configuration;evm/evm-parity/gas-and-fees.mdxlinks to a non-existentrpc-configurationpage too — but more concretely, theeth_getLogsnote referencesmax_log_bytes/max_log_no_blockwhich matchesevm/reference.mdx, so no contradiction there. (Not a reportable category.)evm/precompiles/p256-precompile.mdx: the updated "Gas costs" section says the verification cost is a fixedP256VerifyGas = 3450gas, but the untouched "Performance considerations" section still states "Gas efficiency: 48,000 gas per verification". These describe the same cost two different ways on the same page.evm/reference.mdx(untouched "Filter and subscription limits") andevm/evm-parity/evm-compatibility.mdxboth usemax_log_no_block(default 10000), consistent. But the gas-and-fees SSTORE value stays 72,000 across pages — consistent. (No issue.)eth_getLogsbyte-limit identifier: the inserted compatibility-matrix note andevm/reference.mdxboth namemax_log_bytes— consistent. (No issue.)evm/precompiles/distribution.mdx: the inserted "Read-only as of v6.7.0"<Info>block sits between the### rewardsheading (and its sentence "Returns the reward information for a delegator across all validators.") and the method's Solidity signature code block, interrupting the heading's own content.Generated by sei-docs-bridge. Every change is a proposal — verify against the source PRs before merging.