Skip to content

feat(conf): default --entry-layer to kernel - #4076

Draft
igor-sirotin wants to merge 1 commit into
masterfrom
conf/default-entry-layer-kernel
Draft

feat(conf): default --entry-layer to kernel#4076
igor-sirotin wants to merge 1 commit into
masterfrom
conf/default-entry-layer-kernel

Conversation

@igor-sirotin

@igor-sirotin igor-sirotin commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

Description

Flips the --entry-layer default from channels to kernel, so the node runs
transport-only unless asked otherwise. --entry-layer=channels restores the old
behaviour.

Protocol flags are unchanged — the individual CLI defaults already match what
applyMode(Core) was setting. Gone by default: messaging client, reliable
channel manager, messaging REST endpoints.

Only the CLI default moves; LogosDelivery.new and parseLogosDeliveryConf
still default to channels.

Changes

  • cli_args: entryLayer defaults to kernel.
  • messaging_conf: toWakuNodeConf pins entryLayer = channels, so a conf
    derived from a MessagingClientConf doesn't inherit the new CLI default.
  • api_example opts into channels; test for the new default.

The node binary is most often run as a transport-only service/fleet node, so
`logosdeliverynode` no longer mounts the messaging client and reliable channel
manager unless asked. Protocol flags are unchanged in the default case: the
individual CLI defaults already match what `applyMode(Core)` was setting.

Only the CLI default moves. `LogosDelivery.new(entryLayer = ...)` and
`parseLogosDeliveryConf` keep defaulting to `channels`, so the Nim and C library
entry points are unaffected. `MessagingClientConf.toWakuNodeConf` pins
`entryLayer = channels` for the same reason it already pins `mode`: a conf
derived from a messaging config is by construction not kernel-only.
@igor-sirotin
igor-sirotin force-pushed the conf/default-entry-layer-kernel branch from c903ff2 to 5fd3a25 Compare July 28, 2026 21:28
@github-actions

Copy link
Copy Markdown

You can find the images built from this PR at

quay.io/wakuorg/nwaku-pr:4076
quay.io/wakuorg/nwaku-pr:4076-logosdeliverynode

Built from 3e82e72

@Ivansete-status Ivansete-status left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

LGTM! I just added a minor nit. Go ahead if you feel confident about it.
Cheers.

conf.mode = mode
# Derived from a `MessagingClientConf`, so never kernel-only: don't inherit the
# CLI default. `LogosDeliveryConf.init` overwrites this with the caller's layer.
conf.entryLayer = EntryLayer.channels

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Should the level be "messaging" in this case? ( I might be missing something .)

@igor-sirotin
igor-sirotin marked this pull request as draft July 31, 2026 14:54
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.

2 participants