
    !pj                        d Z ddlmZ ddlmZ ddlmZ ddlmZmZ  G d de      Z	 G d d	e      Z
 G d
 de      Z G d de      Z G d de      Z G d de      Zy)zAria Pydantic Schemas (KAR-220 Phase 2 - Schema-Validation).

Pydantic-Models for Skill-I/O validation. Pilot: AKP-Briefing.
Pattern: schemas defined here, imported by skills, validated at I/O boundaries.
    )annotations)datetime)Literal)	BaseModelFieldc                  @    e Zd ZU ded<   ded<    edd      Zded	<   y
)TriagedItemstrvideo_idz%Literal['promote', 'skip', 'summary']verdictg      g      @gelefloat	avg_scoreN)__name__
__module____qualname____annotations__r   r        /root/aria/lib/aria_schemas.pyr	   r	      s    M22-Iu-r   r	   c                      e Zd ZU ded<   ded<   ded<    edd	      Zd
ed<   dZded<   dZded<    ed      Zd
ed<   ded<   ded<   ded<   dZ	ded<   y)DeepProcessedItemr
   r   z;Literal['Issue', 'Skill', 'Spike', 'Brain-Entry', 'Ignore']classificationz%Literal['P0', 'P1', 'P2', 'P3', 'P4']priority        g      ?r   r   
confidenceNz
str | Nonebrain_note_pathkar_issue_idr   cost_usdtitlechannelurlz
int | Noneduration_seconds)
r   r   r   r   r   r   r   r    r"   r&   r   r   r   r   r      s`    MOO33-J-"&OZ&#L*#smHe#JL	H#'j'r   r   c                  b    e Zd ZU  ed      Zded<    ed      Zded<    ed      Zded<   y)CostSnapshotr   r!   r   triagedeeptotalN)r   r   r   r   r)   r   r*   r+   r   r   r   r(   r(       s,    SMFE!3-D%C=E5 r   r(   c                  H    e Zd ZU  ed      Zded<   ded<   ded<   d	ed
<   y)BriefingWindowr   r!   intingestedzdict[str, int]triage_breakdownzlist[DeepProcessedItem]deepsr
   sinceN)r   r   r   r   r/   r   r   r   r   r-   r-   &   s!    QKHc$$""Jr   r-   c                  `    e Zd ZU dZ edd      Zded<   ded<   ded	<    ed
      Zded<   y)BriefingPayloadz.Final payload that goes through send_telegram.
   i   )
min_length
max_lengthr
   textchat_idboolis_full_briefingr   r!   r.   items_countN)r   r   r   __doc__r   r8   r   r<   r   r   r   r4   r4   -   s/    85D#5L{K"r   r4   c                  |    e Zd ZU dZded<   ded<   ded<    ed      Zded	<   ded
<    ed      Zded<   ded<   y)AkpIngestedVideoz'Output of aria-akp-ingest.py per video.r
   r   r$   r#   r   )gtr.   r&   r%   r!   transcript_charsraw_pathN)r   r   r   r=   r   r   r&   rA   r   r   r   r?   r?   5   s<    1MLJ!QKc'	H!QKc'Mr   r?   N)r=   
__future__r   r   typingr   pydanticr   r   r	   r   r(   r-   r4   r?   r   r   r   <module>rF      s`   
 #   %.) .(	 (!9 !Y #i #y r   