+
    iHàjÀ  ã                  ó@   € R t ^ RIHt ^ RIHt ] ! R R4      4       tR# )z„Per-attempt recovery bookkeeping (``TurnRetryState``) for the conversation turn loop.
Dependency-free so it imports without a cycle.)Úannotations)Ú	dataclassc                  óˆ  € ] tR t^	t$ RtRtR]R&   RtR]R&   RtR]R&   Rt	R]R&   Rt
R]R&   RtR]R	&   RtR]R
&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   ^ tR]R&   RtR]R&   RtR]R&   RtR]R&   RtR]R&   Rt R # )!ÚTurnRetryStatea6  One-shot recovery guards + restart signals for a single API-call attempt.

A fresh instance is created per ``api_call_count`` iteration; each guard fires at
most once, and ``restart_with_*`` signals tell the loop to rebuild and retry.
Loop-control (``retry_count``, ``max_retries``) stays as plain loop locals.FÚboolÚcodex_auth_retry_attemptedÚanthropic_auth_retry_attemptedÚnous_auth_retry_attemptedÚ'nous_paid_entitlement_refresh_attemptedÚwelcome_model_switch_attemptedÚwelcome_route_heal_attemptedÚcopilot_auth_retry_attemptedÚ"copilot_stale_cred_retry_attemptedÚvertex_auth_retry_attemptedÚthinking_sig_retry_attemptedÚ)invalid_encrypted_content_retry_attemptedÚ(native_compaction_reject_retry_attemptedÚimage_shrink_retry_attemptedÚ'multimodal_tool_content_retry_attemptedÚ#reasoning_mandatory_retry_attemptedÚoauth_1m_beta_retry_attemptedÚ!llama_cpp_grammar_retry_attemptedÚprimary_recovery_attemptedÚhas_retried_429Úaffordable_402_clamp_attemptedÚauth_failover_attemptedÚintÚauto_recovery_cycles_usedÚ restart_with_compressed_messagesÚ restart_with_length_continuationÚrestart_with_rebuilt_messagesÚ restart_with_redirected_messages© N)!Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   Ú__annotations__r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   Ú__static_attributes__r"   ó    Ú;/home/ubuntu/.hermes/hermes-agent/agent/turn_retry_state.pyr   r   	   s5  ‡ ñSð (-Ð Ó,Ø+0Ð" DÓ0Ø&+Ð˜tÓ+Ø49Ð+¨TÓ9ð ,1Ð" DÓ0Ø).Ð  $Ó.Ø).Ð  $Ó.ð 05Ð&¨Ó4Ø(-Ð Ó-ð */Ð  $Ó.Ø6;Ð-¨tÓ;Ø5:Ð,¨dÓ:Ø).Ð  $Ó.Ø49Ð+¨TÓ9Ø05Ð'¨Ó5Ø*/Ð! 4Ó/Ø.3Ð% tÓ3ð (-Ð Ó,Ø!€O�TÓ!à+0Ð" DÓ0à$)Ð˜TÓ)à%&Ð˜sÓ&ð .3Ð$ dÓ2Ø-2Ð$ dÓ2ð +0Ð! 4Ó/ð .3Ð$ d×2r*   r   N)r'   Ú
__future__r   Údataclassesr   r   r"   r*   r+   Ú<module>r.      s+   ðñ2õ #å !ð ÷23ð 23ó ò23r*   