Test Details Overview

Reduce `nodeconfig.hpp` includes with `nano::indirect<T>` wrapper

Replace 30+ heavy subsystem config includes with forward declarations.
Config members stored as `nano::indirect<T>` - a value-semantic heap wrapper
that provides deep copy, move, implicit conversion to T&, and -> access.

- Introduce `nano::indirect<T>` (nano/lib/indirect.hpp), similar to proposed
  std::indirect (P3019)
- Store all subsystem configs as `indirect<T>` in node_config, removing
  direct includes of active_elections.hpp, network.hpp, vote_cache.hpp, etc.
- Copy/move/dtor of node_config are all `= default` in the .cpp
- Simplify to single constructor taking network_params
- Access pattern: config.active_elections->size (via operator->)
  and implicit conversion where T const& is expected

__________

Type: commit

Hash: 30ee7305cde3e728f6f58e46f381487889368194

Created: 3 day(s) ago

__________

gr0v1ty/nano-node:30ee7305cde3e728f6f58e46f381487889368194

Test Results

Test Case Status Duration Median Deviation Log Graph