Why these changes hang together:
- Rename `waku/node/kernel_api/` to `waku/node/waku_node/`: the folder
holds the node's protocol APIs, so it should carry the node's name
rather than the legacy "kernel_api" label.
- Collapse the old `kernel_api.nim` aggregator into the top-level
`waku/waku_node.nim` barrel, and drop `net_config`/`health_monitor`
from it. Those aren't the node's concern; consumers that used them
now import them directly (clearer, explicit deps).
- Move the `WakuNode` type from `node_types.nim` into `waku_node.nim`.
`node_types.nim` only existed to dodge a `WakuNode`/`SubscriptionManager`
import cycle that Nim actually handles fine, so the type now lives in
one obvious home and the indirection module is deleted.
- Extract `ShardSubscription` and `EdgeFilterSubState` into their own
small modules: they are standalone value types with no back-reference
to the node. `SubscriptionManager` stays with `WakuNode` on purpose
(it is the node's subscription subsystem; the relationship is real).
Verified: `wakunode2` and `libwaku` build; representative node tests pass.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* LogosDeliveryAPI: NodeConfig -> WakluNodeConf + mode selector and logos.dev preset
* Adjustment made on test, logos.dev preset
* change default agentString from nwaku to logos-delivery
* Add p2pReliability switch to presets and make it default to true.
* Borrow entryNode idea from NodeConfig to WakuNodeConf to easy shortcut among diffrent bootstrap node list all needs different formats
* Fix rateLimit assignment for builder
* Remove Core mode default as we already have a defaul, user must override
* Removed obsolate API createNode with NodeConfig - tests are refactored for WakuNodeConf usage
* Fix failing test due to twn-clusterid(1) default has overwrite for maxMessagSize. Fix readme.
* Rename waku_api to rest_api and underlying rest to endpoint for clearity
* Rename node/api to node/kernel_api to suggest that it is an internal accessor to node interface + make everything compile after renaming
* make waku api a top level import
* fix use of relative path imports and use default to root rather in case of waku and tools modules