ó
    ±"³j¸  ã                  óÞ   • S SK Jr  S SKJr  S SKJr  S SKJr  S SKJ	r	  S SK
Jr  S SKJr  S SKJr  S S	KJr  S
SKJrJrJr  S
SKJr  SrSr      SS jrSS jr\ " S S\\   5      5       rg)é    )Úannotations)Ú	dataclass)ÚAgentInstructions)Ú
RunContext)ÚSystemPromptRunner)ÚTOOL_SEARCH_FUNCTION_TOOL_NAME)Ú
AgentDepsT)ÚAbstractToolset©ÚDeferredCapabilityLoaderToolseté   )ÚAbstractCapabilityÚCapabilityDescriptionÚCapabilityOrdering)ÚInstrumentationz�The following capabilities are deferred and can be loaded using the `load_capability` tool. A capability's tools stay hidden until it is loaded:uÒ   The following capabilities are deferred and can be loaded using the `load_capability` tool. A capability's tools stay hidden until it is loaded â€” load the capability first rather than searching for its tools:c              ƒ  ó˜   #   • U c  g [        U [        5      (       a  U $ [        [           " U 5      R	                  U5      I S h  v•N $  N7f©N)Ú
isinstanceÚstrr   r	   Úrun)ÚdescriptionÚctxs     Úq/home/mande/repo/quber/.venv/lib/python3.13/site-packages/pydantic_ai/capabilities/_deferred_capability_loader.pyÚ_resolve_capability_descriptionr      sD   é € ð ÑØÜ�+œs×#Ñ#ØÐÜ#¤JÒ/°Ó<×@Ñ@ÀÓE×EÐEÑEùs   ‚AA
ÁAÁA
c           	   ƒ  óâ  #   • U R                   R                  5        VVs0 s H9  u  pUR                  SL d  M  U[        UR	                  5       U 5      I S h  v•N _M;     nnnSR                  S UR                  5        5       5      n[        U R                  ;   =(       d*    [        S U R                  R                  5        5       5      nU(       a  [        O[        nU SU 3$  N�s  snnf 7f)NTÚ
c              3  óN   #   • U  H  u  pU(       a  S U SU 3OS U 3v •  M     g7f)z- z: N© )Ú.0Úcap_idr   s      r   Ú	<genexpr>Ú6_render_deferred_capability_catalog.<locals>.<genexpr>?   s1   é € ð ÚbqÑK^È6®ˆ"ˆVˆH�B�{�mÑ$¸2¸f¸X¸ÔFÒbqùs   ‚#%c              3  ób   #   • U  H%  oR                   =(       a    UR                  S L v •  M'     g 7fr   )Údefer_loadingÚcapability_id)r   Útool_defs     r   r!   r"   K   s,   é € ð LÚRdÀh×Ñ×A 8×#9Ñ#9¸TÐ#AÔAÒRdùs   ‚-/)ÚcapabilitiesÚitemsr$   r   Úget_descriptionÚjoinr   ÚtoolsÚanyÚvaluesÚ.DEFERRED_CAPABILITY_CATALOG_PREFIX_WITH_SEARCHÚ"DEFERRED_CAPABILITY_CATALOG_PREFIX)r   r    ÚcapÚcatalogÚentriesÚhas_search_surfaceÚprefixs          r   Ú#_render_deferred_capability_catalogr5   )   só   é € ð& ×+Ñ+×1Ñ1Ô3ôâ3‰KˆFØ×Ñ Ð$ó 	RˆÔ5°c×6IÑ6IÓ6KÈSÓQ×QÒQÙ3ð ñ ð
 �i‰iñ Øbi×boÑboÔbqóó €Gô 8¸3¿9¹9ÑD÷ Ìñ LØRU×R[ÑR[×RbÑRbÔRdóLó IÐö ;MÕ6ÔRtð ð ˆX�R˜�yÐ!Ð!ñ- Rùóùs.   ‚C/ C)¹C)ÁC'ÁC)Á BC/Ã'C)Ã)C/c                  ó6   • \ rS rSrSrSS jrS	S jrS
S jrSrg)ÚDeferredCapabilityLoaderéT   zRInternal capability that installs deferred capability catalog and loading support.c                ó   • [         $ r   )r5   ©Úselfs    r   Úget_instructionsÚ)DeferredCapabilityLoader.get_instructionsX   s   € Ü2Ð2ó    c                ó    • [        S[        /S9$ )NÚ	outermost)ÚpositionÚ
wrapped_by)r   r   r:   s    r   Úget_orderingÚ%DeferredCapabilityLoader.get_ordering[   s   € Ü!¨;ÄOÐCTÑUÐUr>   c                ó   • [        US9$ )N)Úwrappedr   )r;   Útoolsets     r   Úget_wrapper_toolsetÚ,DeferredCapabilityLoader.get_wrapper_toolset^   s   € Ü.°wÑ?Ð?r>   r   N)Úreturnz$AgentInstructions[AgentDepsT] | None)rJ   zCapabilityOrdering | None)rG   zAbstractToolset[AgentDepsT]rJ   z"AbstractToolset[AgentDepsT] | None)	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r<   rC   rH   Ú__static_attributes__r   r>   r   r7   r7   T   s   † á\ô3ôV÷@r>   r7   N)r   z(CapabilityDescription[AgentDepsT] | Noner   úRunContext[AgentDepsT]rJ   z
str | None)r   rQ   rJ   r   )Ú
__future__r   Údataclassesr   Úpydantic_ai._instructionsr   Úpydantic_ai._run_contextr   Úpydantic_ai._system_promptr   Ú%pydantic_ai.native_tools._tool_searchr   Úpydantic_ai.toolsr	   Úpydantic_ai.toolsetsr
   Ú0pydantic_ai.toolsets._deferred_capability_loaderr   Úabstractr   r   r   Úinstrumentationr   r/   r.   r   r5   r7   r   r>   r   Ú<module>r]      s‘   ðÝ "å !å 7Ý /Ý 9Ý PÝ (Ý 0Ý \÷ñ õ
 -ð;ð #ð
}ð /ðFØ9ðFà	ðFð ôFô("ðV ô
@Ð1°*Ñ=ó 
@ó ñ
@r>   