Coverage for little_loops / config / orchestration.py: 100%

9 statements  

« prev     ^ index     » next       coverage.py v7.12.0, created at 2026-05-22 16:19 -0500

1"""Orchestration configuration dataclass. 

2 

3Covers host CLI selection and related orchestration settings. 

4""" 

5 

6from __future__ import annotations 

7 

8from dataclasses import dataclass 

9from typing import Any 

10 

11 

12@dataclass 

13class OrchestrationConfig: 

14 """Orchestration settings, primarily host CLI selection. 

15 

16 ``host_cli`` mirrors the ``LL_HOST_CLI`` environment variable and is used 

17 by :func:`~little_loops.host_runner.apply_host_cli_from_config` to export 

18 the config value into the environment before :func:`~little_loops.host_runner.resolve_host` 

19 runs. The env var takes precedence if already set. 

20 """ 

21 

22 host_cli: str | None = None 

23 

24 @classmethod 

25 def from_dict(cls, data: dict[str, Any]) -> OrchestrationConfig: 

26 """Create OrchestrationConfig from dictionary.""" 

27 return cls( 

28 host_cli=data.get("host_cli"), 

29 )