+
    „WÝj[  ã                  óº   € R t ^ RIHt ^ RIt^ RIHt ^ RIHt ]P                  ! ]	4      t
Rt]! 0 Rm4      tRs]! RR7       ! R	 R
4      4       tR R ltR R ltR# )z.Configuration for shared-metrics transmission.)ÚannotationsN)Ú	dataclass)Úurlparsez/https://telemetry.nousresearch.com/v1/telemetryFT)Úfrozenc                  ó:   € ] tR t^t$ RtR]R&   R]R&   R]R&   RtR# )	Ú
SendConfigzResolved transmission settings.ÚboolÚenabledÚsendÚstrÚendpoint© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú__annotations__Ú__static_attributes__r   ó    ÚgC:\Users\johnn\AppData\Local\hermes\hermes-agent\hermes_cli\observability\shared_metrics_send_config.pyr   r      s   ‡ á)ð ƒMà
ƒJà‡Mr   r   c               ó    € V ^8„  d   QhRRRR/# )é   r   r   Úreturnr   r   )Úformats   "r   Ú__annotate__r   $   s   € ÷ Oñ O ð O¨ñ Or   c                óÌ   €  \        V 4      pTP                  R8X  d   R# TP                  R8H  ;'       d    TP                  ;'       g    R\        9   #   \         d     R# i ; i)zUReject plaintext destinations unless they are loopback (so tests can use local HTTP).FÚhttpsTÚhttpÚ )r   Ú
ValueErrorÚschemeÚhostnameÚ_LOCAL_HOSTS)r   Úparseds   & r   Ú_endpoint_is_safer%   $   s^   € ðÜ˜(Ó#ˆð ‡}�}˜ÔÙØ�=‰=˜FÑ"×NÐN¨¯©×(=Ð(=¸2Ä,Ñ'NÐNøô	 ô Úðús   ‚A ÁA#Á"A#c               ó    € V ^8„  d   QhRRRR/# )r   Úconfigzdict | Noner   r   r   )r   s   "r   r   r   /   s   € ÷ *Oñ *O ð *O°
ñ *Or   c                óò  € \        V \        4      '       d   T M/ pVP                  R4      p\        V\        4      '       d   TM/ pVP                  R4      p\        V\        4      '       d   TM/ pVP                  R4      RJ pVP                  R4      RJ pV'       d>   V'       g6   \        '       g   Rs\        P                  R4       \        RR\        R7      # VP                  R	4      p\        V\        4      '       d   VP                  4       '       g   \        pVP                  4       pV'       d6   \        V4      '       g%   \        P                  R
V4       \        VRVR7      # \        WEVR7      # )zËResolve transmission settings from config (endpoint: config > production default).

``send`` is False whenever transmission cannot legitimately happen, so callers never
have to re-check the combination.
Ú	telemetryÚshared_metricsr	   Tr
   u¬   telemetry.shared_metrics.send is true but telemetry.shared_metrics.enabled is false â€” nothing is collected, so nothing can be sent. Enable collection or turn sending off.F)r	   r
   r   r   zkRefusing to send shared metrics to %r: telemetry must use https (or a localhost http endpoint for testing).)Ú
isinstanceÚdictÚgetÚ_warned_send_without_collectionÚloggerÚerrorr   ÚDEFAULT_ENDPOINTr   Ústripr%   )r'   Úrawr)   Úsharedr	   Úsend_requestedr   s   &      r   Úresolve_send_configr6   /   s,  € ô ˜v¤t×,Ò,‰&°"€CØ—‘˜Ó$€IÜ'¨	´4×8Ò8‘	¸b€IØ�]‰]Ð+Ó,€FÜ! &¬$×/Ò/‰V°R€Fà�j‰j˜Ó# tÐ+€GØ—Z‘Z Ó'¨4Ð/€NçŸgç.Ó.Ø.2Ð+Ü�L‰Lð$ôô  %¨eÔ>NÔOÐOà�z‰z˜*Ó%€HÜ�h¤×$Ò$¨H¯N©N×,<Ò,<Ü#ˆØ�~‰~Ó€HçÔ/°×9Ò9Ü�‰ð:àô	
ô
  '°ÀÔIÐIä˜gÀXÔNÐNr   >   Ú	localhostú::1ú[::1]ú	127.0.0.1)r   Ú
__future__r   ÚloggingÚdataclassesr   Úurllib.parser   Ú	getLoggerr   r/   r1   Ú	frozensetr#   r.   r   r%   r6   r   r   r   Ú<module>rA      sj   ðÙ 4å "ã Ý !Ý !à	×	Ò	˜8Ó	$€ð EÐ áÒCÓD€ð #(Ð ñ �$Ô÷ð ó ðõO÷*Or   