from dataclasses import dataclass, field from typing import Optional, List from pydantic import BaseModel, Field from agents.coders.state import AgentState from contracts.IssueContext import IssueContext class GatherOutput(BaseModel): state: AgentState issue_context: IssueContext pending_questions: List[str] = Field(default_factory=list) run_id: str = "" attempt: int = 0