+
    qdj                        ^ RI Ht ^ RIHt ^ RIHt ^ RIHtHtH	t	 ^ RI
HtHtHt ^ RIHtHtHtHt ^ RIHt  ! R R	]]4      tR
 R ltR R ltR R lt ! R R4      tR# )    )annotations)Enum)Any)AccountAccountRegistryAuthorityMode)LOCAL_AUTHORITY_NAMEensure_local_authority_endpointgateway_health_snapshot)AuthorityMigrationCoordinatorMigrationAcceptanceMigrationErrorSubrouterMigrationAdmin)HealthStatusc                  &    ] tR t^tRtRtRtRtRtR# )GatewayAccountStatenativetestingactivepaused N)	__name__
__module____qualname____firstlineno__NATIVETESTINGACTIVEPAUSED__static_attributes__r       e/home/user/overdeck-private-tests/workstation-ai-indicator/modules/systray/gateway_account_manager.pyr   r      s    FGFFr!   r   c                    V ^8  d   QhRRRR/# )   accountr   returnr   r   )formats   "r"   __annotate__r(      s     
& 
&7 
&/B 
&r!   c                b   V P                   pVf   \        P                  # VP                  '       d   \        P                  # VP
                  \        P                  8X  d   \        P                  # VP
                  \        P                  8X  d   \        P                  # \        P                  # N)authority_bindingr   r   quiescedr   moder   SUBROUTER_DARKr   	SUBROUTERr   )r%   bindings   & r"   gateway_account_stater1      s~    ''G")))")))||}333"***||}...")))%%%r!   c                    V ^8  d   QhRRRR/# )r$   r%   r   r&   strr   )r'   s   "r"   r(   r(   )   s     & & &S &r!   c                    \         P                  R \         P                  R\         P                  R\         P                  R/\        V 4      ,          # )NativezGateway testingGatewayzGateway paused)r   r   r   r   r   r1   )r%   s   &r"   gateway_state_labelr7   )   sI    ""H##%6""I""$4	
 G$& &r!   c                    V ^8  d   QhRRRR/# )r$   providerr3   r&   r   r   )r'   s   "r"   r(   r(   2   s     ? ?# ?2E ?r!   c                    \        RRRRRRRRR7      pV R8X  d   \        R
/ VBRRRRRR/B # V R8X  d   \        R
/ VBRR/B # \        R	4      h)zRelease-level compatibility evidence for workstation-local custody.

These are structural candidate gates. Per-account cutover additionally requires
a fresh authority-owned login and a ready exact-route health response.
T)cliresume	streamingquota_healthrepairrestartexact_routeno_provider_credentialscodex	responsesrealtime
app_serverclaudehttp_ssez"unsupported local Gateway providerr   )dictr   r   )r9   commons   & r"   _installed_local_acceptancerK   2   s      $	F 7" 


 
 	
 	
 8";V;d;;
=
>>r!   c                  z    ] tR t^NtRtRRRR/R R lltR R ltR	 R
 ltR R ltR R lt	R R lt
R R ltRtR# )LocalGatewayAccountManagerzSystray-facing account custody manager for workstation-local Subrouter.

Systray remains the sole account registry. Subrouter stores provider credentials
only for accounts whose Systray record carries an authority binding.
adminNclockc               (    V ^8  d   QhRRRRRRRR/# )	r$   registryr   rN   zSubrouterMigrationAdmin | NonerO   z
Any | Noner&   Noner   )r'   s   "r"   r(   'LocalGatewayAccountManager.__annotate__U   s2     
 
!
 .	

 
 

r!   c               	    Wn         T;'       g    \        V4      V n        \        VV P                  VR 7      V n        R# ))rO   N)rQ   r   rN   r   coordinator)selfrQ   rN   rO   s   &&$$r"   __init__#LocalGatewayAccountManager.__init__U   s8     !??5h?
8JJ
r!   c                    V ^8  d   QhRRRR/# )r$   slugr3   r&   r   r   )r'   s   "r"   r(   rS   d   s      C G r!   c                	    V P                   P                  4        F  pVP                  V8X  g   K  Vu # 	  \        V4      hr*   )rQ   listrZ   KeyError)rV   rZ   r%   s   && r"   current"LocalGatewayAccountManager.currentd   s6    }}))+G||t# , tnr!   c                   V ^8  d   QhRR/# r$   r%   r   r   )r'   s   "r"   r(   rS   j   s     
 
W 
r!   c                	6   \        V P                  VP                  4      4      \        P                  Jd   \        R 4      h\        V P                  P                  4       V P                  P                  V P                  VP                  4      \        R7      # )z"account is already Gateway-managed)authority_name)r1   r^   rZ   r   r   r   r
   rQ   base_dirrU   
stage_darkr	   rV   r%   s   &&r"   stage LocalGatewayAccountManager.stagej   sr     gll!;<DWD^D^^ !EFF'(>(>?**LL&7K + 
 	
r!   c                   V ^8  d   QhRR/# ra   r   )r'   s   "r"   r(   rS   r   s     

 

 

r!   c                	   V P                  VP                  4      p\        V4      \        P                  Jd   \        R 4      h\        V P                  P                  4       \        V P                  P                  V4      pVP                  \        P                  Jd    \        VP                  ;'       g    R4      hV P                  P                  V\!        VP"                  4      4      # )z!account is not in Gateway testingzGateway is not ready)r^   rZ   r1   r   r   r   r
   rQ   rd   r   statusr   OKdetailrU   promoterK   tool)rV   r%   r^   healths   &&  r"   activate#LocalGatewayAccountManager.activater   s    ,,w||, )1D1L1LL !DEE'(>(>?()?)?I==/ !H!H2HII''0>
 	
r!   c                   V ^8  d   QhRR/# ra   r   )r'   s   "r"   r(   rS   ~   s     H Hg Hr!   c                	j    V P                   P                  V P                  VP                  4      4      # r*   )rU   cancel_darkr^   rZ   rf   s   &&r"   cancel!LocalGatewayAccountManager.cancel~   s&    ++DLL,FGGr!   c                    V ^8  d   QhRRRR/# )r$   r%   r   r&   r   )r'   s   "r"   r(   rS      s     K Kg K' Kr!   c                	j    V P                   P                  V P                  VP                  4      4      # r*   )rU   begin_rollbackr^   rZ   rf   s   &&r"   rz   )LocalGatewayAccountManager.begin_rollback   s&    ..t||GLL/IJJr!   c                    V ^8  d   QhRRRR/# )r$   r%   r   native_healthr   r   )r'   s   "r"   r(   rS      s     
 
 
C 
r!   c               	n    V P                   P                  V P                  VP                  4      VR 7      # ))r}   )rU   complete_rollbackr^   rZ   )rV   r%   r}   s   &&$r"   r   ,LocalGatewayAccountManager.complete_rollback   s2    11LL&m 2 
 	
r!   )rN   rU   rQ   )r   r   r   r   __doc__rW   r^   rg   rq   rv   rz   r   r    r   r!   r"   rM   rM   N   sE    
 15	

 !



HK
 
r!   rM   N)
__future__r   enumr   typingr   account_registryr   r   r   authority_clientr	   r
   r   authority_migrationr   r   r   r   health_clientr   r3   r   r1   r7   rK   rM   r   r!   r"   <module>r      sT    "   D D 
  '#t 
&&?89
 9
r!   