Skip to content

Conversation

@m4sterbunny
Copy link
Contributor

Description

Cleans up t/f syntax to either <true|false> (when value must be passed with option) or [=<true|false>] (when flag is sufficient)

Warning: this does NOT act to confirm all settings are correct per ,. vs. []. It DOES confirm that where arity=1 which is a reliable method to know that value is required, then is documented as <> required.

The list of those options that are documented and those that may be valid but not yet documented is:

auto-log-bloom-caching-enabled (arity is 1 and set to required <true|false>)
bonsai-limit-trie-logs-enabled
color-enabled
discovery-enabled (arity is 1 and set to required <true|false>)
engine-jwt-disabled
engine-rpc-enabled
era1-import-prepipeline-enabled
genesis-state-hash-cache-enabled
graphql-http-enabled
graphql-mtls-enabled
history-expiry-prune
json-pretty-print-enabled
metrics-enabled
metrics-push-enabled
p2p-enabled (arity is 1 and set to required <true|false>)
plugin-continue-on-error (arity is 1 and set to required <true|false>)
random-peer-priority-enabled
receipt-compaction-enabled (arity not 1 but is set as required <true|false>, not edited)
remote-connections-limit-enabled
revert-reason-enabled
rpc-http-authentication-enabled
rpc-http-enabled
rpc-http-tls-ca-clients-enabled
rpc-http-tls-client-auth-enabled
rpc-http-tls-enabled
rpc-ws-authentication-enabled
rpc-ws-enabled
rpc-ws-ssl-client-auth-enabled
rpc-ws-ssl-enabled
snapsync-server-enabled
snapsync-synchronizer-pre-checkpoint-headers-only-enabled
snapsync-synchronizer-transaction-indexing-enabled
strict-tx-replay-protection-enabled
tx-pool-enable-balance-check
tx-pool-enable-save-restore
tx-pool-no-local-priority
version-compatibility-protection

Not documented, arity = 1--> confirm is live and is boolean:

peerDiscoveryEnabled
poaDiscoveryRetryBootnodes
compress
dnsEnabled
dnsUpdateEnabled
natMethodFallbackEnabled
enableOptimizedOpcodes

Issue(s) fixed

Fixes #Partial for 1722

Preview

Signed-off-by: m4sterbunny <harrie.bickle-ext@consensys.net>
@m4sterbunny m4sterbunny requested a review from a team as a code owner December 11, 2025 13:15
@vercel
Copy link

vercel bot commented Dec 11, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
besu-docs Ready Ready Preview Comment Dec 11, 2025 2:49pm

@m4sterbunny
Copy link
Contributor Author

m4sterbunny commented Dec 11, 2025

CLI Options Default and Fallback Values

Note, I am NOT relying on cursor's "requires explicit value" logic (see issue for more on this) only using this to verify defaults.

Option Name Default Value Fallback Value Ultimate Value When Passed as Flag
auto-log-bloom-caching-enabled true (none) Requires explicit value (arity=1)
bonsai-limit-trie-logs-enabled true true true
color-enabled null (none) null (requires explicit value)
discovery-enabled true (none) Requires explicit value (arity=1)
engine-jwt-disabled false (none) false
engine-rpc-enabled false (none) false
era1-import-prepipeline-enabled false (none) Requires explicit value (arity=0..1)
genesis-state-hash-cache-enabled false (none) false
graphql-http-enabled false (none) false
graphql-mtls-enabled false (none) false
graphql-tls-enabled false (none) false
history-expiry-prune false (none) false
json-pretty-print-enabled false (none) false
metrics-enabled false (none) false
metrics-push-enabled false (none) false
p2p-enabled true (none) Requires explicit value (arity=1)
plugin-continue-on-error false (none) Requires explicit value (arity=1)
random-peer-priority-enabled false (none) false
receipt-compaction-enabled true true true
remote-connections-limit-enabled true (none) true
revert-reason-enabled false (none) false
rpc-http-authentication-enabled false (none) false
rpc-http-enabled false (none) false
rpc-http-tls-ca-clients-enabled false (none) false
rpc-http-tls-client-auth-enabled false (none) false
rpc-http-tls-enabled false (none) false
rpc-ws-authentication-enabled false (none) false
rpc-ws-enabled false (none) false
rpc-ws-ssl-client-auth-enabled false (none) false
rpc-ws-ssl-enabled false (none) false
snapsync-server-enabled false true true
snapsync-synchronizer-pre-checkpoint-headers-only-enabled true (none) Requires explicit value (arity=0..1)
snapsync-synchronizer-transaction-indexing-enabled false (none) Requires explicit value (arity=0..1)
strict-tx-replay-protection-enabled false true true
tx-pool-enable-balance-check false true true
tx-pool-enable-save-restore false true true
tx-pool-no-local-priority false true true
version-compatibility-protection null (none) null (requires explicit value)

Notes

  • Default Value: The value assigned to the field in code (field initialization)
  • Fallback Value: The value from fallbackValue annotation parameter in PicoCLI @Option annotation (if present)
  • Ultimate Value When Passed as Flag:
    • If fallbackValue is present: When the option is passed as --option (without a value), PicoCLI uses the fallback value
    • If arity = "1" and no fallback: The option requires an explicit value (e.g., --option=true or --option=false)
    • If arity = "0..1" and no fallback: The option can be passed as a flag, but behavior depends on PicoCLI defaults (typically uses the default value)
    • If no arity specified and no fallback: The option can be passed as a flag and uses the default value

Options with Both Default and Fallback Values

  1. bonsai-limit-trie-logs-enabled: Default = true, Fallback = true → Ultimate = true
  2. receipt-compaction-enabled: Default = true, Fallback = true → Ultimate = true
  3. snapsync-server-enabled: Default = false, Fallback = true → Ultimate = true
  4. strict-tx-replay-protection-enabled: Default = false, Fallback = true → Ultimate = true
  5. tx-pool-enable-balance-check: Default = false, Fallback = true → Ultimate = true
  6. tx-pool-enable-save-restore: Default = false, Fallback = true → Ultimate = true
  7. tx-pool-no-local-priority: Default = false, Fallback = true → Ultimate = true
  8. enableOptimizedOpcodes: Default = true, Fallback = true → Ultimate = true

@m4sterbunny
Copy link
Contributor Author

Undocumented Options (arity=1, boolean)

Option Name Default Value Fallback Value Ultimate Value When Passed as Flag
peerDiscoveryEnabled true (none) Requires explicit value (arity=1)
poaDiscoveryRetryBootnodes true (none) Requires explicit value (arity=1)
compression-enabled true (none) Requires explicit value (arity=1)
dnsEnabled false (none) Requires explicit value (arity=1)
dnsUpdateEnabled false (none) Requires explicit value (arity=1)
natMethodFallbackEnabled true (none) Requires explicit value (arity=1)
enableOptimizedOpcodes true true true

Signed-off-by: m4sterbunny <harrie.bickle-ext@consensys.net>
Copy link
Contributor

@bgravenorst bgravenorst left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@m4sterbunny m4sterbunny merged commit 0ca1f6e into main Dec 15, 2025
10 checks passed
@m4sterbunny m4sterbunny deleted the 1722-consistent-syntax-clean branch December 15, 2025 08:02
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.

4 participants