§
    D‹%j  ã                   ó,   — d dl mZmZmZ d„ Zd„ Zd„ ZdS )é    )ÚApiHealthMonitorÚRequestBudgetÚRetryPolicyc                  ó  — t          d¬¦  «        } |                      t          d¦  «        ¦  «         |                      t          d¦  «        ¦  «         |                      ¦   «          |                      ¦   «          |                      ¦   «         d         dk    sJ ‚|                      ¦   «         d         dk    sJ ‚|                      ¦   «         d         dk    sJ ‚|                      ¦   «         d         dk    sJ ‚| j        d	u sJ ‚d S )
Né   )Úmax_stale_context_countz429 Too Many RequestszNo route to hostÚapi_429_countÚno_route_countÚws_reconnect_countÚstale_context_countT)r   Úrecord_errorÚ	ExceptionÚOSErrorÚrecord_ws_reconnectÚrecord_stale_contextÚreportÚdegraded_mode_active)Úhs    útests/test_api_health.pyÚ<test_api_health_records_429_no_route_stale_and_degraded_moder      s  € Ý°Ð3Ñ3Ô3€AØ‡N‚N•9Ð4Ñ5Ô5Ñ6Ô6Ð6Ø‡N‚N•7Ð-Ñ.Ô.Ñ/Ô/Ð/Ø×ÒÑÔÐØ×ÒÑÔÐØ8Š8‰:Œ:oÔ&¨!Ò+Ð+Ð+Ð+Ø8Š8‰:Œ:Ð&Ô'¨1Ò,Ð,Ð,Ð,Ø8Š8‰:Œ:Ð*Ô+¨qÒ0Ð0Ð0Ð0Ø8Š8‰:Œ:Ð+Ô,°Ò1Ð1Ð1Ð1ØÔ! TÐ)Ð)Ð)Ð)Ð)Ð)ó    c                  óø   — t          dd¬¦  «        } |                      d¬¦  «        du sJ ‚|                      d¬¦  «        du sJ ‚|                      d¬¦  «        d	u sJ ‚|                      d
¬¦  «        du sJ ‚d S )Né   é<   )Úmax_requestsÚwindow_secondsiè  )ÚnowTié  iê  Fi%  )r   Úallow)Úbs    r   Ú-test_request_budget_blocks_aggressive_pollingr       s–   € Ý 1°RÐ8Ñ8Ô8€AØ7Š7tˆ7ÑÔ Ð$Ð$Ð$Ð$Ø7Š7tˆ7ÑÔ Ð$Ð$Ð$Ð$Ø7Š7tˆ7ÑÔ Ð%Ð%Ð%Ð%Ø7Š7tˆ7ÑÔ Ð$Ð$Ð$Ð$Ð$Ð$r   c                  ór   ‡ — t          ddd¬¦  «        Š ˆ fd„t          d¦  «        D ¦   «         g d¢k    sJ ‚d S )Nç      à?é
   r   )Ú
base_delayÚ	max_delayÚjitterc                 ó:   •— g | ]}‰                      |¦  «        ‘ŒS © )Údelay_for_attempt)Ú.0ÚiÚps     €r   ú
<listcomp>zBtest_retry_policy_exponential_backoff_sequence.<locals>.<listcomp>   s'   ø€ Ð5Ð5Ð5 qˆA×Ò Ñ"Ô"Ð5Ð5Ð5r   é   )r"   g      ð?g       @g      @)r   Úrange)r,   s   @r   Ú.test_retry_policy_exponential_backoff_sequencer0      sO   ø€ Ý˜s¨b¸Ð;Ñ;Ô;€AØ5Ð5Ð5Ð5­E°!©H¬HÐ5Ñ5Ô5Ð9MÐ9MÐ9MÒMÐMÐMÐMÐMÐMr   N)Úsrc.hyperliquid.api_healthr   r   r   r   r    r0   r(   r   r   ú<module>r2      s_   ðØ SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ Sð
*ð 
*ð 
*ð%ð %ð %ðNð Nð Nð Nð Nr   