36 std::vector<BadSlug>
bad;
TableBuild build_slug_tables(const fsw::config::Config &cfg)
Build the actuator / sensor / state slug tables from a loaded config.
Motorized ball valve position: raw ADC counts -> % open.
The whole parsed config.toml, restricted to what C++ consumes.
A name that could not be turned into a usable slug, reported so config can refuse it loudly.
Two config names in one namespace that slug to the same identifier — genuinely ambiguous.
What a script's slugs are allowed to name, built from the loaded config.
std::vector< SlugCollision > collisions
std::vector< BadSlug > bad