Skip to content

nexum-runtime: give PresetBuilder an escape hatch to the component seams #509

Description

@mfw78

From review of #442 (comment). Confirmed still valid at HEAD. Predates #442. Target: L1 nexum-runtime.

PresetBuilder::launch (builder.rs:456) calls self.preset.components().build(...) directly, with no hook to override the components builder first. So the four component seams (with_chain / with_store / with_ext / with_logs) are unreachable from the preset shortcut:

RuntimeBuilder::new(cfg).runtime::<CoreRuntime>().launch()

The value-bound TypedBuilder path has with_components (builder.rs:516); the preset path has no equivalent. Not a logs-specific gap: all four seams share it.

Change

Give PresetBuilder a with_components-style escape hatch that reaches the component seams before launch, or document that the preset shortcut is intentionally all-or-nothing and embedders needing seam overrides drop to .runtime::<T>().with_components(...).

Acceptance criteria

  • Either a preset-level override reaching the component seams, or an explicit doc note that the preset shortcut bypasses them by design.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions