Coverage for src / agent_contracts / config / schema.py: 100%

12 statements  

« prev     ^ index     » next       coverage.py v7.13.1, created at 2026-01-09 00:42 +0900

1"""Configuration schema definitions. 

2 

3Pydantic-based configuration models for the framework. 

4""" 

5from __future__ import annotations 

6 

7from typing import Dict, List 

8from pydantic import BaseModel, Field 

9 

10 

11class SupervisorConfig(BaseModel): 

12 """Supervisor configuration.""" 

13 max_iterations: int = 10 

14 terminal_response_types: List[str] = Field(default_factory=list) 

15 

16 

17class InterviewConfig(BaseModel): 

18 """Interview configuration.""" 

19 max_turns: int = 10 

20 max_questions: int = 5 

21 

22 

23class FrameworkConfig(BaseModel): 

24 """Framework-wide configuration. 

25  

26 Can be loaded from YAML. 

27  

28 Example: 

29 config = FrameworkConfig( 

30 supervisor=SupervisorConfig(max_iterations=10), 

31 ) 

32 set_config(config) 

33 """ 

34 supervisor: SupervisorConfig = Field(default_factory=SupervisorConfig) 

35 interview: Dict[str, InterviewConfig] = Field(default_factory=dict)