Coverage for src/local_deep_research/followup_research/models.py: 100%
9 statements
« prev ^ index » next coverage.py v7.14.1, created at 2026-06-03 23:15 +0000
« prev ^ index » next coverage.py v7.14.1, created at 2026-06-03 23:15 +0000
1"""
2Data models for follow-up research functionality.
3"""
5from dataclasses import dataclass
6from typing import Dict, Any
9@dataclass
10class FollowUpRequest:
11 """Request model for follow-up research."""
13 parent_research_id: str
14 question: str
15 strategy: str = "source-based" # Default delegate strategy
16 max_iterations: int = 1 # Quick summary by default
17 questions_per_iteration: int = 3
19 def to_dict(self) -> Dict[str, Any]:
20 """Convert to dictionary for API/service use."""
21 return {
22 "parent_research_id": self.parent_research_id,
23 "question": self.question,
24 "strategy": self.strategy,
25 "max_iterations": self.max_iterations,
26 "questions_per_iteration": self.questions_per_iteration,
27 }