fix(config): correct meshtastic include nesting

- Changed orchestrator to use meshtastic: include meshtastic.yaml
- Added hoisting logic to extract connection/commands from wrapper
- Fixes restart loop caused by connection.type defaulting to serial

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
K7ZVX 2026-05-14 16:14:18 +00:00
commit 67ab2689fe

View file

@ -424,6 +424,14 @@ def load_config(config_dir: Path = Path("/data/config")) -> Config:
# Load orchestrator with !include support # Load orchestrator with !include support
_logger.debug(f"Loading config from {orchestrator_path}") _logger.debug(f"Loading config from {orchestrator_path}")
data = _load_yaml_with_includes(orchestrator_path) data = _load_yaml_with_includes(orchestrator_path)
# Hoist meshtastic.connection and meshtastic.commands to top level
# meshtastic.yaml contains both sections under wrapper keys
if "meshtastic" in data and isinstance(data["meshtastic"], dict):
meshtastic = data.pop("meshtastic")
if "connection" in meshtastic:
data["connection"] = meshtastic["connection"]
if "commands" in meshtastic:
data["commands"] = meshtastic["commands"]
# Load local.yaml # Load local.yaml
local_path = config_dir / "local.yaml" local_path = config_dir / "local.yaml"