+
    lHàj'  ã                  óf   € R t ^ RIHt ^ RIt^ RIHtHt RtR R ltRR R llt	R R	 lt
R
 R ltR# )a  Speed tier for ``delegate_task`` children.

A route's ``service_tier`` applies to that child only and is checked before any child is built: an unknown word,
or a tier the child's route or account does not offer, fails the spawn instead of the child silently running at
another tier.
)ÚannotationsN)ÚAnyÚOptionalc               ó    € V ^8„  d   QhRRRR/# )é   Ú	overridesr   Úreturnúdict[str, Any]© )Úformats   "Ú?/home/ubuntu/.hermes/hermes-agent/tools/delegate_tool_tuning.pyÚ__annotate__r      s   € ÷ ñ  Cð ¨Nñ ó    c                ó¦  € \         P                  ! \        V \        4      '       d   T M/ 4      P	                  4        UUu/ uF  w  rV\
        9  g   K  WbK  	  pppVP                  R4      p\        V\        4      '       dB   VP	                  4        UUu/ uF  w  rV\
        9  g   K  WbK  	  pppV'       d   WCR&   V# VR V# u uppi u uppi )z]Deep copy of *overrides* without a speed-tier key, at the top level or inside ``extra_body``.Ú
extra_body)ÚcopyÚdeepcopyÚ
isinstanceÚdictÚitemsÚ
_TIER_KEYSÚget)r   ÚkÚvÚcleanedÚextras   &    r   Úwithout_service_tierr      s½   € ä $§¢¼:ÀiÔQU×;VÒ;V©iÐ\^Ó _× eÑ eÔ gô 'Ñ g™˜Øœ:Ñ%ô ˆqŠtÑ g€Gñ 'à�K‰K˜Ó%€EÜ�%œ×ÒØ"'§+¡+¤-ÔG¡-™$˜!°1¼JÑ3F”�’¡-ˆÑGßØ$)�LÑ!ð €Nð ˜Ð%Ø€Nùó'ùó Hs   Á CÁCÂCÂ+Cc               ó0   € V ^8„  d   QhRRRRRRRRRRRR	/# )
r   ÚtierÚstrÚmodelr   ÚproviderÚbase_urlÚaccess_tokenr   zOptional[dict[str, Any]]r
   )r   s   "r   r   r      s8   € ÷ ñ  #ð ¨cð ¸Sð ÈCð Ø*-ðØ9Qñr   c                ót   € ^ RI Hp V! WW0R7      pV'       d    V R8X  d   ^ RIHp V! WW4R7      '       g   R# V# )z·Request overrides for *tier* on this route, or None when the route (or, for ultrafast, the route's own Codex
account, ``access_token``) does not offer it. The same gates as ``/fast``.)Úresolve_fast_mode_overrides)r!   r"   r   Ú	ultrafast)Úultrafast_offered)r!   r"   r#   N)Úhermes_cli.modelsr%   Úagent.codex_service_tiersr'   )r   r    r!   r"   r#   r%   Úfastr'   s   &&&&&   r   Ú_offered_tier_overridesr+      s5   € õ >Ù& uÈ(Ô^€Dß�˜Ô#Ý?á  ÀH×hÓhÙØ€Kr   c               ó$   € V ^8„  d   QhRRRRRR/# )r   Úwordr   Úcredsr	   r   r
   )r   s   "r   r   r   ,   s!   € ÷ )ñ )˜Cð )¨ð )Èñ )r   c           	     óP  € ^ RI HpHp  V! V 4      pVe   V'       d   WS9  d   \        RV  R24      h\	        VP                  R4      ;'       g    VP                  R4      4      pVP                  R4      ;'       g    \        VRR4      pVP                  R4      ;'       g    \        VRR4      pV'       d   VP                  R4      M\        VRR4      p	V'       d   VP                  R4      M\        VRR4      p
VP                  R	4      pVf%   VP                  R4      '       g   \        VR	R4      p/ pV'       d5   \        WXWyV
4      ;'       g    / pV'       g   \        R
V  RV RV R24      hR	/ \        V4      CVCRT;'       g    RRV/#   \         d    Rp EL’i ; i)zÄCreds keys for a per-task speed tier on the child's resolved route; a tier the route can't serve raises.
``task_tier_overrides`` is re-applied to the built child by :func:`pin_child_service_tier`.)ÚSTATIC_TIERSÚparse_exact_service_tierNzUnknown service_tier 'z"'. Use normal, fast, or ultrafast.r!   r"   r    Úapi_keyÚrequest_overrideszservice_tier 'z' is not available for model 'z' on provider 'z?'. Omit service_tier or choose a model/provider that offers it.Úservice_tierÚtask_tier_overrides)	Úagent.fast_moder0   r1   Ú
ValueErrorÚboolr   Úgetattrr+   r   )r-   r.   Úparent_agentr0   r1   r   Úpinnedr!   r    r"   r2   Úbaser*   s   &&&          r   Útask_service_tierr=   ,   s£  € ÷ GðÙ'¨Ó-ˆð ‚|Ÿ Ô!9ÜÐ1°$°Ð7YÐZÓ[Ð[ä�%—)‘)˜JÓ'×@Ð@¨5¯9©9°ZÓ+@ÓA€FØ�y‰y˜Ó$×OÐO¬°¸jÈ$Ó(O€HØ�I‰I�gÓ×FÐF¤'¨,¸ÀÓ"F€Eß(.ˆu�y‰y˜Ô$´G¸LÈ*ÐVZÓ4[€Hß&,ˆe�i‰i˜	Ô"´'¸,È	ÐSWÓ2X€GØ�9‰9Ð(Ó)€DØ‚|˜EŸI™I j×1Ò1Ü�|Ð%8¸$Ó?ˆØ€DßÜ& t°HÈÓP×VÐVÐTVˆßÜØ   Ð&DÀUÀGÈ?Ð[cÐZdð eOð Póð ð  Ð!GÔ$8¸Ó$>Ð!GÀ$Ð!GÈÐY]×YeÐYeÐaeØ! 4ð)ð )øô+ ô Ø‹ðús   ŠF ÆF%Æ$F%c               ó    € V ^8„  d   QhRRRR/# )r   r.   r	   r   ÚNoner
   )r   s   "r   r   r   K   s   € ÷ jñ j¨ð j¸Dñ jr   c                ór   € VP                  R4      pVf   R# / \        \        V RR4      4      CVCV n        R# )z¼Re-apply a task's speed tier to the built child: construction can merge a custom provider's ``extra_body``
(and its tier) back into ``request_overrides``. No-op for tasks that set no tier.r5   Nr3   )r   r   r9   r3   )Úchildr.   r*   s   && r   Úpin_child_service_tierrB   K   s?   € ð �9‰9Ð*Ó+€DØ‚|ÙØiÔ!5´g¸eÐEXÐZ^Ó6_Ó!`ÐiÐdhÐi€EÖr   )r4   Úspeed)N)Ú__doc__Ú
__future__r   r   Útypingr   r   r   r   r+   r=   rB   r
   r   r   Ú<module>rG      s/   ðñõ #ã ß  à&€
õ÷õ)÷>jr   