update sharding defaults from previous discussions

This commit is contained in:
fryorcraken 2025-08-05 15:27:48 +10:00
parent e92d2f8d8e
commit 1e312bc2c3
No known key found for this signature in database
GPG Key ID: A82ED75A8DFC50A4

View File

@ -102,6 +102,7 @@ types:
fields: fields:
mode: mode:
type: string type: string
# For now, a mode **must** be passed by the developer
constraints: ["edge", "relay"] constraints: ["edge", "relay"]
description: "The mode of operation of the Waku node. Core protocols used by the node are inferred from this mode." description: "The mode of operation of the Waku node. Core protocols used by the node are inferred from this mode."
network_config: network_config:
@ -109,6 +110,7 @@ types:
default: TheWakuNetworkPreset default: TheWakuNetworkPreset
store_confirmation: store_confirmation:
type: bool type: bool
# Until further dogfooding, assuming default false, usage of SDS should be preferred
default: false default: false
description: "No-payload store hash queries are made to confirm whether outbound messages where received by remote store node." description: "No-payload store hash queries are made to confirm whether outbound messages where received by remote store node."
@ -117,6 +119,8 @@ types:
fields: fields:
boostrap_nodes: boostrap_nodes:
type: array<string> type: array<string>
# Default means the node does not bootstrap, it is not ideal but practical for local development
# TODO: get feedback
default: "" default: ""
description: "Bootstrap nodes, entree and multiaddr formats are accepted." description: "Bootstrap nodes, entree and multiaddr formats are accepted."
static_store_nodes: static_store_nodes:
@ -125,13 +129,14 @@ types:
description: "Only the passed nodes are used for store queries, discovered store nodes are discarded." description: "Only the passed nodes are used for store queries, discovered store nodes are discarded."
cluster_id: cluster_id:
type: uint type: uint
default: 1
sharding_mode: sharding_mode:
constraints: ["auto", "static"] constraints: ["auto", "static"]
# The default network config is TheWakuNetwork, but if a dev override it, then we still provide a sharding default
default: "auto"
auto_sharding_config: auto_sharding_config:
type: option<AutoShardingConfig> type: option<AutoShardingConfig>
default: none default: DefaultAutoShardingConfig
description: "The auto-sharding config, if sharding mode is `auto`" description: "The auto-sharding config, if sharding mode is `auto`"
AutoShardingConfig: AutoShardingConfig:
type: struct type: struct
@ -173,6 +178,13 @@ values:
type: AutoShardingConfig type: AutoShardingConfig
fields: fields:
numShardsInCluster: 8 numShardsInCluster: 8
# If TheWakuNetworkPreset is not used, autosharding is one cluster is applied by default
# This is a safe default that abstract shards (content topic shard derivation), and enables scaling at a later stage
DefaultAutoShardingConfig:
type: AutoShardingConfig
fields:
numShardsInCluster: 1
``` ```
#### Extended definitions #### Extended definitions