+
    j)                       a  0 t $ ^ RIHt ^ RIt^ RIHt ]P                  ! 4       R,          R,          tRRRR	R
R/tRRR	RRR/t	R]
R&   RRRR/t ! R R4      tR R ltR# )    )annotationsN)Pathz.codexzmodels_cache.jsonsolzgpt-5.6-solterrazgpt-5.6-terralunazgpt-5.6-lunamediumultra&dict[str, tuple[str, tuple[str, ...]]]FALLBACK_EFFORTSmedproc                  b    ] tR t^tRR R lltR R ltR R ltR R	 ltR
 R ltR R lt	Rt
R# )ModelCatalogNc                    V ^8  d   QhRRRR/# )   pathzPath | NonereturnNone )formats   "G/home/user/overdeck-private-tests/subrouter-s5-systray/model_catalog.py__annotate__ModelCatalog.__annotate__   s     L L[ LD L    c                	L    \        Vf   \        M
\        V4      4      V n        R # N)_loadCATALOG_PATHr   _entries)selfr   s   &&r   __init__ModelCatalog.__init__   s    dllT
Kr   c                    V ^8  d   QhRRRR/# )r   modelstrr   boolr   )r   s   "r   r   r      s     & &3 &4 &r   c                	    WP                   9   # r   r   )r    r$   s   &&r   knownModelCatalog.known   s    %%r   c                   V ^8  d   QhRR/# )r   r   tuple[str, ...]r   )r   s   "r   r   r   !   s     , , ,r   c                	>    \        \        V P                  4      4      # r   )tuplesortedr   )r    s   &r   modelsModelCatalog.models!   s    VDMM*++r   c                    V ^8  d   QhRRRR/# )r   r$   r%   r   r,   r   )r   s   "r   r   r   $   s     ) )s ) )r   c                	^    V P                   P                  V4      pV'       d
   V^,          # R# )   r   r   getr    r$   entrys   && r   supported_effortsModelCatalog.supported_efforts$   s'    !!%( uQx(b(r   c                    V ^8  d   QhRRRR/# )r   r$   r%   r   z
str | Noner   )r   s   "r   r   r   (   s     + +C +J +r   c                	^    V P                   P                  V4      pV'       d
   V^ ,          # R# )r   Nr5   r7   s   && r   default_effortModelCatalog.default_effort(   s'    !!%( uQx*d*r   c               $    V ^8  d   QhRRRRRR/# )r   r$   r%   effortr   r   )r   s   "r   r   r   ,   s!      C   r   c           
         V P                  V4      pV'       g   \        RV R24      h\        P                  W"4      pVR8X  d   WC9  d
   VR	,          pWC9  d%   \        RV RV RRP	                  V4       R24      hV# )
zCanonicalize `effort` for `model`, or raise ValueError naming what fits.

`pro` resolves to the highest tier the model actually offers, so a caller
asking for the best available never has to know the tier names.
zunknown model ''r	   zunsupported reasoning effort 'z' for model 'z' (supported: z, ))r9   
ValueErrorEFFORT_ALIASESr6   join)r    r$   r@   	supported	canonicals   &&&  r   resolve_effortModelCatalog.resolve_effort,   s     **51	ugQ788"&&v6	I$>!"I%0eW M#yy34A7  r   r(   r   )__name__
__module____qualname____firstlineno__r!   r)   r0   r9   r=   rJ   __static_attributes__r   r   r   r   r      s&    L&,)+ r   r   c                    V ^8  d   QhRRRR/# )r   r   r   r   r
   r   )r   s   "r   r   r   @   s     - - -? -r   c                    \         P                  ! V P                  R R7      4      p/ pTP                  R4      ;'       g    .  F  p\        T\
        4      '       g   K  TP                  R4      pTP                  R4      ;'       g    . p\        ;QJ d    . R T 4       F  NK  	  5M! R T 4       4      p\        T\        4      '       d	   T'       g   K  TP                  R4      pYv9   d   TMT^ ,          T3Y$&   K  	  T;'       g    \        \        4      #   \        \         P                  3 d    \        \        4      u # i ; i)zutf-8)encodingr0   slugsupported_reasoning_levelsc              3     "   T FM  p\        V\        4      '       g   K  \        VP                  R 4      \        4      '       g   KB  VR ,          x  KO  	  R# 5i)r@   N)
isinstancedictr6   r%   ).0levels   & r   	<genexpr>_load.<locals>.<genexpr>L   sA      
%& +5eii6I3+O E(OOs   A"AAdefault_reasoning_level)jsonloads	read_textOSErrorJSONDecodeErrorrX   r   r6   rW   r.   r%   )r   rawentriesr$   rT   levelseffortsdefaults   &       r   r   r   @   s   &jj9: 79G"((b(%&&yy 78>>B% 

%% 

 

 $$$G))56$+$6GAJP ) ,,d+,,% T))* &$%%&s   &D *EE)lowrh   r   highxhighmaxr	   )r   ri   )r   )rh   r   rj   rk   rl   )__conditional_annotations__
__future__r   r^   pathlibr   homer   MODEL_ALIASESr   __annotations__rF   r   r   )rm   s   @r   <module>rs      s    " "   yy{X%(;; 
=_
N NSI< 8  5'2# #L-r   