
    1jN?                       d Z ddlmZ ddlZddlZddlZddlZddlZddlZddl	Z	ddl
Z
ddlZddlZddlZddlZddlZddlZddlZddlmZmZmZmZ ddlmZ ddlmZmZ  ed      Z ed      Z ed	      Z ed
      ZdZdZ dZ!dZ"dZ#dZ$dZ%dZ&dZ'dZ(dZ)dZ*dZ+ G d de,      Z-d+dZ.d,d-dZ/d.dZ0d/dZ1d0dZ2d1dZ3d2d Z4d2d!Z5d3d"Z6d2d#Z7d4d$Z8d5d%Z9d4d&Z:d6d'Z;d7d(Z<d1d)Z=e>d*k(  r e? e=             y)8zIMinimal one-use isolated DualCoach launcher with one append-only receipt.    )annotationsN)UTCdatedatetimetime)Path)AnyCallablez)/home/cube/.hermes/profiles/dualcoachtestzR/home/cube/.hermes/profiles/dualcoachtest/.strict-runtime/dac4e812/venv/bin/pythonzu/home/cube/projects/richard/traning coach/.omo/evidence/task26/task26-strict-final-candidate-successor-v3-st_01a00f35zk/home/cube/projects/richard/traning coach/.omo/evidence/task26/task26-isolated-runtime-dac4e812-st_01a0122b@b6d78bc1e68ead7340d92b534fe3a6d0257c8aa2b02cd3d58e43215fbd8a3443@dac4e81281e8ab7f5c46461e79d405998e0273fe9f98dc09ff67b73528083092@6283a4cf71ba9982c8e75bce88f09997f6eb786a88b788f7858199aeaadb27a9@f93106b16643227e2ef9dec67a5bbd497e1d353e779da62287898a087071af87@ee787fb63fd8ce61d35eb2d7a43c11d7e7adef268c1d09a0a40c1d881b8ea742@fb48a1931828ee60ab3812faf795550bf4e672a54c56f78cd10dcf674c45560d
8527916639
8693203710dual_coach_pilot_test_botz4hermes-gateway-dualcoachtest-strict-dac4e812.servicez-dualcoach-lifecycle-observer-b6d78bc1.servicez$hermes-gateway-dualcoachtest.servicei  c                      e Zd Zy)BlockedN)__name__
__module____qualname__     /home/cube/projects/richard/traning coach/.omo/evidence/task26/task26-minimal-isolated-launch-st_01a0123b/run-20260818-one-use/launch.pyr   r      s    r   r   c                d    t        j                  | j                               j                         S N)hashlibsha256
read_bytes	hexdigest)paths    r   shar#      s     t/@ A K K MMr   c           	         t        j                  | ddd      }|rB|j                  r6t        d|j                   d| d|j                  j                                |S )NTF)textcapture_outputcheckzcommand failed (z): z: )
subprocessrun
returncoder   stderrstrip)argsokrs      r   commandr0      sX    >>$D5A1<<w)9!,,s4(RTUVU]U]UcUcUeTf'ghh	r   c           	     `   t        j                  |t        j                  t              j                         d|ddd      dz   j                         }t        j                  | t        j                  t        j                  z  t        j                  z  t        j                  z  t        t        dd      z  d      }t        j                  |d       t        j                  ||       t        j                   |       t        j"                  |       y # t        j"                  |       w xY w)	N)eventat_utcT,:)	sort_keys
separatorsensure_ascii

O_NOFOLLOWr     )jsondumpsr   nowr   	isoformatencodeosopenO_WRONLYO_APPENDO_CREAT	O_CLOEXECgetattrfchmodwritefsyncclose)receiptr2   valuesrawfds        r   appendrQ      s    
jj%c):)D)D)FPP[_kt  CG  H  IM  M  U  U  WGGGBKK+BJJ6r||CGB|\]D^^_deii5288Bs+RXXb\
((2,"((2,s   ?AD D-c                    t        ddd| ddddddg
d      }t        d	 |j                  j                         D              S )
N/usr/bin/systemctl--usershowz-pActiveStateSubStateMainPIDFc              3  J   K   | ]  }d |v s|j                  d d        yw)=   N)split.0xs     r   	<genexpr>zstate.<locals>.<genexpr>!   s#     G%:cQhQWWS^%:s   	##)r0   dictstdout
splitlines)unitr/   s     r   statere      sE    
 &d=jY]^ghinoGQXX%8%8%:GGGr   c                     dd l } | j                  t        dz  j                               d   d   d   d   }dD ci c]  }|||   
 c}S c c}w )Nr   config.yaml	platformstelegramextraadaptive_nutrition
activationdeliverydelivery_enabled)yaml	safe_loadPROFILE	read_text)rp   aks      r   flagsrv   "   sY    >>7=(3356{CJOPWXYmnEFEA1Q4EFFFs   Ac                    d} t         dz  t         dz  t         dz  fD ]}  }|j                         st        j                  |j	                               t        t              r| t              z  } Vt        t              sg| t        fddD              z  }  | S # t        j
                  $ r- | t        |j	                         j                               z  } Y w xY w)Nr   zdata/scheduled-deliveries.jsonlz(data/owner-actions/draft-deliveries.jsonz:data/onboarding/telegram-publication-outbox-v1/ledger.jsonc              3  T   K   | ]  }t        j                  |g              ! y wr   )lenget)r^   ru   values     r   r`   z!delivery_count.<locals>.<genexpr>-   s#     )sHr1#eii"o*>Hrs   %()
deliveriesrecordsitemsentries)rr   existsr=   loadsrs   JSONDecodeErrorry   rc   
isinstancelistra   sum)totalr"   r{   s     @r   delivery_countr   &   s    77@j8jkr  tp  lp  qT	ZZ()udUCJ.U%uc)sHr)s&ssu q 	 
		Ruc$..*:*E*E*G&HHu(Rs   #B  =C C c                    t        t              ddddk7  rt        d      t        t              j	                  d      dvrt        d      d	D  cg c]  } t
        | z   }} |D cg c]  }|j                         st        |        }}|rt        d
dj                  |      z         t               }|ddddk7  rt        d      t               rt        d      t        ddt        t        j                               ddg      j                  }t        d |j!                         D              rt        d      dd|dddS c c} w c c}w )N0inactivedead)rX   rV   rW   z#installed service not inactive/deadrV   )Nr   failedz transient gateway already active)	customers/registry.jsongateway.lockgateway.pidgateway_state.jsonstate.dbsessionsdata/onboardingdata/owner-actionsdata/customerszlive authorities not empty: r5   Frl   zconfig flags not falsezdeliveries not zeroz/usr/bin/psz-uz-ozargs=c              3  8   K   | ]  }d |v xs t         |v   yw)lifecycle_observer_v7.pyN)UNITr]   s     r   r`   zbaseline.<locals>.<genexpr>9   s#     No"a'44194os   zstale target monitor/runtimezinactive/deademptyr   )serviceauthoritiesrv   r|   monitors)re   BASE_SERVICEr   r   rz   rr   r   strjoinrv   r   r0   rB   getuidrb   anyrc   )r_   	forbiddenplivesafepss         r   baseliner   /   sH   	,CjFSS[b  dI  \J  VJ	$KOOM"*DDGTvLwFw  {  |   {!GAI   {  | /y!AHHJs1vy/6sxx~EF
Fg%
HHPWXpPqJqG$9::]4BIIK 0g>?FFNbmmoNNV]^|V}P}"ST`abb |/s   E'E=Ec                 P   t        t        j                        j                         t        j                         k7  s4t        j
                  t        t        j                  j                        k7  rt        d      t        t        dz        t        k7  rt        d      t        j                  t        dz  j                               } t        j                  t        dz  j                               }| j                  d      dk7  s0| j                  d      t         k7  s| j                  d      t"        k7  rt        d	      |j                  d      dk7  s8|j                  d
i       j                  di       j                  d      t$        k7  rt        d      i }dD ]  }t'        j(                  |      j*                  }t-        |t              st        d|z         t        |      j                         }t        j                  j                  |j.                  vrt        d|z         t        |      ||<    i }ddt0        fddt2        ffD ]  \  }}}	t&        j4                  j7                  |      j                  d      }
|
t        d|z         t        j                  |
      }t        |d   j9                  dd      j9                  dd            }|j:                  |k7  st        |      |	k7  rt        d|z         |d   |	d||<    t        j                  ||t        dS )Nzwrong isolated interpreterz	SEAL.jsonzruntime seal driftzruntime-receipt.jsonstatusREADY_ISOLATED_RUNTIME	candidatepreserved_product_candidatezruntime binding mismatchverificationprofile_configr   zruntime receipt mismatch)gatewayzgateway.platforms.telegram!gateway.platforms.dualcoach_admincheckin_clicheckin_cli.customer_adminri   zimport has no origin: znon-isolated import: zhermes-agentz$hermes_agent-0.17.0-py3-none-any.whlzphysique-checkin-cliz+physique_checkin_cli-0.1.0-py3-none-any.whlzdirect_url.jsonzdirect_url missing: urlzfile:// z%20 zdirect_url wheel mismatch: )r   wheel_sha256)interpreterorigins
direct_urlruntime_seal_sha256)r   sys
executableresolvePYTHONprefixr   parentr   r#   RUNTIMERUNTIME_SEALr=   r   rs   rz   FULLPRODUCT
CONFIG_SHA	importlibimport_module__file__r   parents
HERMES_SHAPROFILE_SHAmetadatadistributionreplacename)sealrM   r   r   module_fileorigindirectdistwheelwantdirect_textr{   sources                r   installed_proofr   ;   s     "FNN$44

CH\H\D]8]el  nJ  fK  `Kl*':N2O,O
jj'+%0023TZZQgIgHrHrHt=uWHHX00DHH[4I44OSWS[S[\ySz  }D  TD  LS  Tn  Lo  FoKK33w{{>RT7U7Y7YZjkm7n7r7rs{7|  I  8I  QX  Ys  Qt  Kt	 PT%%d+44+	K	$G4LT4Q,R&R	k		"	"	$&]]/w?VW[?[7\1\F'$- P 	()OPZ[]s  ub  cn  ]o  p_T%  --d3==>OP+(>t(C DD

;%U5\-A-A)B-O-W-WX]^a-b(c[[%3v;,G<YZ^<^4_._El$7&, p ~~Vbnoor   c           	     v   | j                         r	 ||       ry | j                  j                  dd       t        j                  dd      }|j                  t        j                        }|dk  s7|j                  |t        j                  | j                        t              dk  rt        d      t        j                         }|j                  |t        j                         t!        j"                         |z   }	 	 |t!        j"                         z
  }|dk  s'|j                  t%        dt'        |dz                    st        d	t)        |       z         t        j*                  |d
       | j                         r ||       r	 t        j,                  |       y # t        j,                  |       w xY w)NT)r   exist_okz	libc.so.6)	use_errnor   zinotify subscription failedr[   i  zevent timeout: i   )r   r   mkdirctypesCDLLinotify_init1rB   rG   inotify_add_watchfsencode	IN_EVENTSr   selectpollregisterPOLLINr   	monotonicmaxintr   readrL   )r"   	predicatetimeoutlibcrP   r   deadlinelefts           r   	wait_pathr   P   s?   KKMiov4.kk+-$2D2DR\\2RrqDD""2bkk$++&>yI!KSZ[xSyMykkmT]]2fmm4t~~?OPW?Wh!!4
AgTYYs1Sd^45WEVWZ[_W`E`=a7a772e
kkm	$
((2, 	
 ((2,s    B	F!  F! !F8c                    t        j                  d      } t        j                  d      }dt        j                  t              j                  d      z   dz   t        j                         j                  d d z   }t        dz  }|j                  j                  d	       |j                  t        j                  d
t        t        ddg dd dd      dz          |j!                  d       t#        j$                         }| j'                  || j)                  |dt*        t*        d|t-        d      dd
ddd             |j)                  |d|j/                         ddd
ddd	      }|j1                  |j3                  t                    j5                  |t6        t              }||j8                  j:                  d
|j8                  j<                  |j>                  dS )Nr   z-gateway.platforms.telegram_customer_bootstraptask26_claim_z%Y%m%d%H%M%S_   r     moder[   r   )user_idchat_idtopic_idordinary_v1)versionowner	customersregistry_modediagnostic_session_digestr4   )r8   r:   r<   zDualCoach customer claimr   i     )meal_1meal_2meal_3z08:00)bot_usernameowner_id)customer_id
session_id
generationsid_hashcustomer_link) r   r   r   r?   r   strftimeuuiduuid4hexrr   r   r   
write_textr=   r>   OWNERchmodr   todayregister_customerCustomerDraftACTORdaytimer@   RoomBootstrapStoreroom_bootstrap_state_dir!prepare_rehearsal_customer_inviteBOT_USERNAMEsessionr	  r  r  )adminbootcustomerregistryr  draftmades          r   preparer$  ]   sR   ;<9CZCZ  \K  DLd
(,,s+44^D
DS
HIYIYZ\[\I]
]ho  qJ  iJ_g  LT  L[  L[  La  La  gl  La  Lm	TZZ1PUad5ert  FS  pt  !u  AJ  K  LP  P  Q  S[  Sa  Sa  bg  Shzz|U,,Xe6I6I(Smnstyz}  D  EL  MN  EO  PQ  RS  TX  Y\  ]y  7z  {(#=eoo>OPWXYZ[\`ad  fB  C
d;;GDEgghm  |H  RWg  XT\\-D-DRS_c_k_k_t_t  FJ  FX  FX  	Y  Yr   c                   | dz  }| dz  }t        dddt         ddt        t              t        t        dz        d	d
t        |      dt        |      g       t        |d d       t        dz  }t        dz  }t        dddt         dddt         dt         dt        j                  j                   dt        j                   dt        t              ddddddg       t        |d d       t        |d d       t        d  t        |j                         j                               D              }t        t              t        t              |d!   |d"   |d#   d$S )%Nzobserver-ready.jsonzobserver-events.jsonlz/usr/bin/systemd-runrT   z--unit=z	--collectz--property=Type=execr   observez--eventsz--readyc                l    t        j                  | j                               j                  d      dk(  S )Nr   ARMEDr=   r   rs   rz   r   s    r   <lambda>zstart_runtime.<locals>.<lambda>h   s#    $**Q[[]377A7Jr   
   r   z9data/onboarding/telegram-staff-membership-v1/events.jsonlz--property=Type=simplez--property=WorkingDirectory=z--setenv=HERMES_HOME=z--setenv=VIRTUAL_ENV=z--setenv=PATH=z=:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/binz-mzhermes_cli.mainz	--profiledualcoachtestr   r)   c                    t        j                  | j                               j                  di       j                  di       j                  d      dk(  S )Nrh   ri   re   	connectedr)  r*  s    r   r+  zstart_runtime.<locals>.<lambda>k   sA    $**Q[[]";"?"?B"O"S"ST^_a"b"f"fgn"oq|"|r   x   c                ^    t        d | j                         j                         D              S )Nc              3  j   K   | ]+  }t        j                  |      j                  d       dk(   - ywr2   subscription_armedNr=   r   rz   r]   s     r   r`   z2start_runtime.<locals>.<lambda>.<locals>.<genexpr>l   s-     uZtUV

1 1 1' :<P PZt   13)r   rs   rc   r*  s    r   r+  zstart_runtime.<locals>.<lambda>l   s"    CuZ[ZeZeZgZrZrZtuur      c              3     K   | ]A  }t        j                  |      j                  d       dk(  s+t        j                  |       C ywr3  r5  r]   s     r   r`   z start_runtime.<locals>.<genexpr>m   sG       C#MaQUQ[Q[\]Q^QbQbcjQk  nB  RBDJJqM#Ms
   ,A	A	subscription_epoch_idobserved_at_utcstaff_chat_inventory_sha256)r   observerr9  subscription_armed_at_utcr;  )r0   OBSERVER_UNITr   r   	CANDIDATEr   rr   r   r   nextreversedrs   rc   re   )tempreadyeventsgateway_statejournalarmeds         r   start_runtimerH  e   s`   !!$/F*F6
 GM?*CKPfgjkqgrsv  xA  B\  x\  t]  ^g  hr  sv  w}  s~  H  IL  MR  IS  
T  U
5J2N++W=x5xW
 GD6*:;G_b~  @G  H  aI  La  bi  aj  Jk  nC  DJ  DQ  DQ  DX  DX  CY  lZ  ]k  lr  ly  ly  kz  zw  [x  y|  }C  yD  EI  J[  \g  hw  xA  BG  
H  I
=|  ~A  B
7uvxy  C8G,=,=,?,J,J,L#M  C  C;%*>W\]tWu  SX  Yj  Sk  JO  Pm  Jn  	o  or   c                $  K   dd l }t        j                  d      j                  }t        j                  d      }t        dz  }|j                  t        j                  |j                               |j                  t        dz  j                                     }|j                  |d   k7  rt        d      | dz  }	|	j                  t        j                  t        t        t        t         t"        d	             |	j%                  d
        ||      4 d {   }
|j'                  |
|| dz  |	|t        dz  |d   t)        t*              |d   d|d   |d          d {   }d d d       d {    j-                  d      }|j-                  d      }t/        |t0              r|rt3        d |D              rt        d      t/        |t0              rt3        d |D              rt        d      |S 7 7 7 # 1 d {  7  sw Y   xY ww)Nr   ri   z0gateway.platforms.telegram_staff_membership_gater   rg   r;  zmembership inventory driftzdeployment.json)candidate_digestcandidate_core_digestcandidate_inventory_digesthermes_wheel_sha256profile_wheel_sha256r<   zmembership.jsonr  r	  r[   r9  r=  )
output_pathdeployment_receipt_pathregistry_pathconfig_pathr  customer_user_idbootstrap_session_idbootstrap_generationr9  r=  membership_resultsprivate_dm_resultsc              3  B   K   | ]  }|j                  d       dv  yw)r   >   r   kickedNrz   r]   s     r   r`   zmembership.<locals>.<genexpr>x   s"     4ngmbcQUU8_L]5]gm   zleft/kicked proof missingc              3  B   K   | ]  }|j                  d       du  yw)identity_separatedTNrZ  r]   s     r   r`   zmembership.<locals>.<genexpr>y   s#     'aY`TU.B(C4(OY`r[  z#private identity separation missing)rp   r   r   Botrr   build_staff_chat_inventoryr=   r   rs   rq   r   r   r  r>   r   r   r   r   r  create_pre_activation_evidencer   r  rz   r   r   r   )rB  preparedruntimetokenrp   r^  gater!  	inventory
deploymentbotresultgroupsprivates                 r   
membershiprk  o   s    Z(,,93J3JK}3~d
+
+t7V7VW[WaWabjbtbtbvWwx|  yG  yG  IP  Q^  I^  Hi  Hi  Hk  yl  8mYg;<<GLhDi>i""J$9$9$**Y]v}  \c  zD  \g  Fh  ;i  %j  lv  l|  l|  }B  lCJJ#223yTRcMc  }G  V^  kr  s@  k@  MU  Vc  Md  vy  z  v@  V^  _k  Vl  BC  Za  by  Zz  U\  ]x  Uy2  z  
z& J

'(&**=Q2R'6$v4ngm4n1nv}  Z  w[  q[74 C'aY`'a$aip  rW  jX  dX  
z JJJs\   DHG5HAG; G7!G;%H0G91BH7G;9H;HHH	Hc                @   t        j                  d      j                  } || dz  d      }t        |j                        dk7  s|j
                  "t        d|j                  j                  z         |j                  j                  t        |j
                        ddS )	Nr   providerT)receipt_directoryallow_billable_active_prober   zprovider readiness failed: znonpersistent readiness)rh  receipt_sha256probe)
r   r   provider_auth_checkr   exitreceipt_pathr   rh  r{   r#   )rB  rr  rh  s      r   rm  rm  {   s    ,,-PQeed:oZ^_a6..6gFcdjdqdqdwdwFw>x8x--%%s6;N;N7OXqrrr   c                n  K   t        j                  d      j                  } ||      4 d {   }|j                  t	        t
              d| z   d       d {   }d d d       d {    t        j                        t        |j                        dS 7 k7 A7 3# 1 d {  7  sw Y   CxY ww)Nri   `   DualCoach 시작 초대입니다. 아래 링크를 눌러 본인이 직접 시작해 주세요.
T)r   r%   disable_web_page_preview)
message_idr   )	r   r   r^  send_messager   r  r   rx  r   )linkrc  r^  rg  sents        r   sendr|     s     Z(,,JJ##*:*:3u:  Tw  x|  T|  VZ*:  +[  %[tJJ$//*S5FGG   %[JJJJsV   ,B5BB5(B BB B5*B+0B5B B5 B2&B)'B2.B5c                   t         t        fD ]  }t        ddd|gd        | dz  }|j                  dd       d	D ]f  }t        |z  }|j                         s|j                         r.||z  }|j                  j                  ddd
       t        j                  ||       h t        | dz  dd|t                      y )NrS   rT   stopFzrollback-archiver   T)r   r   )r   r   r   r   r   r   r   r   zstate.db-shmzstate.db-walr   )r   r   r   receipt.jsonlCLEAN_ROLLBACKBLOCKED_CLEAN_ROLLBACK)r   reasonr   )r   r>  r0   r   rr   r   
is_symlinkr   rB   renamerQ   r   )rootr  rd   archiverelr   targets          r   rollbackr     s    =!T7,@&QU+VW\#]!	 	 '--UD-"I xS	&]]_V..0
#+6v}}**4UD*QSUS\S\]cdjSk x _-5MU[emeopr   c                    t        j                         } | j                  dd       | j                         }t	        t
              j                         j                  }|dz  }	 t               }t               }|j                  dk(  rt        |dd||       y	|j                         r9t        d
 |j                         j                         D              rt!        d      t        |ddt#        j$                         j&                         t)               }|j+                  d      }t        |dfi | t	        dt-        j.                          d|d          }|j1                  d       t3        j4                  d      j7                  t8              j:                  j<                  }	t?        |      }
t        |dfi |
 tA        jB                  tE        |||
|	            }t        |d|d   |d   |d          tG        |      }t        |dfi | tI        tJ        dz        dk7  s6tI        t8        d z        tL        k7  stO               |d!   k7  stQ               d	k7  rt!        d"      t        |d#tR        tL        d	$       tU        jV                  d%|z   jY                               j[                         }t        |d&d't\        |d(   |d   |)       tA        jB                  t_        ||	            }t        |d.fd/d0d1| d2}t        |d3d3|d(   |d   |d   |tg        th              tg        tj              |d4   d0d5d5|6       tm        jn                  |       tq        d3       tq        |       y	# t`        $ r3}t        |d*d+tc        |      jd                  ,       t!        d-      |d }~ww xY w# tr        $ r}|j                  d7k(  r|j                         rxt        d8 |j                         j                         D              rJtu        |tw        |             n4# tr        $ r(}tq        d9| tx        jz                  :       Y d }~nd }~ww xY wtq        d;| tx        jz                  :       Y d }~y<d }~ww xY w)=Nr   )dry-runexecute)choicesr  r  DRY_RUNPASS_ZERO_MUTATIONS)r   	installedr   r   c              3  j   K   | ]+  }t        j                  |      j                  d       dk(   - ywr2   ONE_USENr5  r]   s     r   r`   zmain.<locals>.<genexpr>   s+     nMmdjjm//8)CMmr6  z&one-use marker exists; retry forbiddenr  CLAIMED)r   markerr  PREPAREDz
/run/user/z/dualcoach-r	  r   r   zgateway.configRUNTIME_READYMEMBERSHIP_READYevidence_sha256rV  rW  )r  rV  rW  PROVIDER_READYzcandidate-manifest.json@df51caefa45e62541f0656468195766ea6c4bb6f589b8b61ee16360befcda6f4rg   rv   zREADY invariant changedREADY)r   config_sha256r|   rv  INVITE_INTENTATTEMPTING_UNKNOWN_IS_TERMINALr  )r   destinationr  r	  message_sha256INVITE_UNKNOWNTERMINAL_NO_RETRY)r   
error_typez)invite outcome unknown; terminal no retryINVITE_RESULTSENT_EXACTLY_ONCEr[   )r   invite_countzCustomer 8527916639: open the single DualCoach invite in this private DM and tap Start yourself; do not send onboarding answers yet.READY_CUSTOMER_CLAIMrx  F)r   r  r	  membership_evidence_sha256rm  r   r<  invite_message_idr  rm   rn   exact_user_actionr  c              3  j   K   | ]+  }t        j                  |      j                  d       dk(   - ywr  r5  r]   s     r   r`   zmain.<locals>.<genexpr>   s8       7H  gGabtzz!}7H7H7QS\7\  gGr6  zROLLBACK FAILURE: )filez	BLOCKED:    )>argparseArgumentParseradd_argument
parse_argsr   r   r   r   r   r   r   rQ   r   r   rs   rc   r   r  r  r  r$  poprB   r   r   r   r   load_gateway_preflight_inputsrr   ri   secretrH  asyncior)   rk  rm  r#   r?  r   rv   r   r   r   r   rA   r!   r  r|  BaseExceptiontyper   re   r   r>  shutilrmtreeprint	Exceptionr  r   r   r+   )parserr-   r  rM   proofbasera  rz  rB  rc  rb  memberprovider_resultmessage_hashr{  exchandoffcleanups                     r   mainr     sA   !6#6#6vF[#6#\cictctcv^b  ~B  CK  ~L  ~T  ~T  ~V  ~]  ~]x|  gk  l{  g{  _f5%
4	YY	6');P[`jnoxy^^#nWM^M^M`MkMkMmnnv}  g  wh  qh)4::<3C3CD9(8<<8d&:_V^:_j[,1G0HIJ$DJJ\aJLb 01OOPWXaahh%

'vgoHH	ZXge<	=&vgN`qw  yJ  rK  _e  fz  _{  OU  Vj  Ok  @l4./&1A"TO"T,	,-/qqux  zA  BO  zO  vP  R\  v\  `e  `g  im  nu  iv  `v  zH  zJ  LM  zM  U\  ]v  Uw  Ow4jAN~~   C  DH   H  P  P  R  S  ]  ]  _,(HUZgop}g~  KS  T`  Ka  q}  ~KKT%()tR(;RTR Q''/ERZ[hRiu}  K  vL  hn  o@  hA  KZ  ch  im  cn  x}  ~K  xL  _c  dp  _q  @  LQ  [`  sz  {--u34eGnQ	 
  ~vg.>FYeijmenewewx  AH  It  Au  {~  {~  ~
 	 5	YY	gnn.3  7Hfmfwfwfy  gE  gE  gG  7H  4Hc#h
U(:7)&D#** U UU)C5szz*1	5so   %3N, H8N, M- 0A<N, -	N)6.N$$N))N, ,	Q45AQ/PQ/	Q	!Q?Q/Q		!Q//Q4__main__)r"   r   returnr   )T)r-   z	list[str]r.   boolr  z subprocess.CompletedProcess[str])rM   r   r2   r   rN   r	   r  None)rd   r   r  dict[str, str])r  zdict[str, bool])r  r   )r  dict[str, Any])r"   r   r   zCallable[[Path], bool]r   floatr  r  )rB  r   r  r  )
rB  r   ra  r  rb  r  rc  r   r  r  )rz  r   rc  r   r  r  )r  r   r  r   r  r  )@__doc__
__future__r   r  r  r   r   r   importlib.metadatar=   rB   r   r  statr(   r   r   r  r   r   r   r  pathlibr   typingr	   r
   rr   r   r?  r   r   r   r   r   r   r   r  r  r  r   r>  r   r   RuntimeErrorr   r#   r0   rQ   re   rv   r   r   r   r   r$  rH  rk  rm  r|  r  r  r   
SystemExitr   r   r   <module>r     sG   O " F  F  F  F  F  F  F  F 9 9   89`a
  G  H	z{G  RTO  ]_Q[M
  \^{,E5P;Kz]  Jp  }I
	 !l ! M

HGcp*Y	os
Hq58 Zz$&11r   