import asyncio
from app.agents.base_agent import BaseAgent
from app.models.schemas import SubReview, RagStatus


class ToneAgent(BaseAgent):
    """
    Tone Agent - STUB implementation.

    Returns mock Green status. Full tone analysis requires implementation.
    """

    name = "Tone Agent"

    async def analyze(self, file_data: bytes, file_type: str) -> SubReview:
        """
        Stub implementation that returns mock Green status.

        Args:
            file_data: Raw bytes of the file (not used in stub)
            file_type: MIME type of the file (not used in stub)

        Returns:
            SubReview with Green status and stub notice
        """
        # Simulate some processing time for realistic UX
        await asyncio.sleep(0.5)

        return SubReview(
            ragStatus=RagStatus.GREEN,
            feedback="[STUB] Tone of voice analysis passed. This is a placeholder response - the Tone Agent has not been implemented for this POC. The copy appears to demonstrate appropriate brand personality traits: Pioneering, Connected, Optimistic, and Professional. Full analysis of clarity, grammar, and brand voice alignment requires the complete implementation.",
            issues=[]
        )
