
     j                        d Z ddlmZ ddlZddlZddlZddlmZ  ee      j                         j                  Zej                  d   ZdZddd	d
dZddZddZedk(  r e e             y)zQCandidate-bound cleanup v6 preflight. Execution is intentionally unavailable now.    )annotationsN)Path   @b6d78bc1e68ead7340d92b534fe3a6d0257c8aa2b02cd3d58e43215fbd8a3443)z5task26-post-lifecycle-cleanup-v4-4a6c7ee5-st_01a00e68@188e9e630b53e9329ae185fc8c007aecb7988c16d174d325d68e8e004edb38e9)z5task26-post-lifecycle-cleanup-v5-4a6c7ee5-st_01a00ed7@0d5477d8cd143da0b254329341fdee7a90ae998d89b9f265b7c01ed48d77ba7f)z)task26-strict-rerun-retention-st_01a00ed5@f02a9671422b2d49aace2037dfbcfff461249ac79d4999d46bc09ddce638367d)z8task26-strict-rerun-customer-surface-capture-st_01a00ed6@fd973db6926fe12a87913814e9a15e1f396574e47d153e7221dd2efa72184484)v4v5	retentioncapturec                d    t        j                  | j                               j                         S )N)hashlibsha256
read_bytes	hexdigest)ps    cleanup_controller_v6.pyshar   !   s     >>!,,.)3355    c            	        t        j                         } | j                  dd       | j                  d       | j                  d       | j                  d       | j                  d       | j                  d       | j                         }t        j                         D ]2  \  }\  }}t        t        d	z  |z  d
z        |k7  s%t        d| d       t        d	z  t        d   d   z  dz  j                         }t        d	z  t        d   d   z  dz  j                         }d|vsd|vrt        d      |j                  xs d|j                  xs d|j                  xs d|j                  xs d|j                  xs dd}d|j                  dk(  rdndt         |dddddd d!}t#        t%        j&                  |d"             |j                  dk(  rdS dS )#Nmode)dry-runexecute)choicesz--membership-pre-sealz--membership-final-sealz--lifecycle-sealz--capture-receiptz--retention-publicationz.omo/evidence/task26z	SEAL.jsonzBLOCKED z seal driftr   r   zcleanup_controller.pyr   zdef write_allz"passes": 2z+BLOCKED predecessor safety contract missingz<FRESH_REQUIRED>z<V7_FINAL_REQUIRED>z<FINAL_IMAGE_REQUIRED>z <IMMUTABLE_PUBLICATION_REQUIRED>)membership_pre_sealmembership_final_seallifecycle_sealcapture_receiptretention_publicationz0task26-strict-cleanup-controller-v6-successor-v3r   PASS_DRY_RUN_EXECUTION_LOCKEDBLOCKEDT   )complete_write_atomicprocess_detection_passesarchive_before_mutationimmutable_retention_requiredF)schemastatus	candidatebindings	preservesexecution_permission)	sort_keys)argparseArgumentParseradd_argument
parse_argsSEALSitemsr   PROJECT
SystemExit	read_textr   r   r   r    r!   r   FULLprintjsondumps)	r   aname	directoryexpectedr   r   requiredreceipts	            r   mainrC   %   s   !ANN6#9N:NN*+NN,-NN%&NN&'NN,-	A',{{}##y(w//);kIJhVxv[9:: (5 	((5;q>9<SSik  	((5;q>9<SSik  b M$;FGG 44J8J!"!8!8!N<N**C.C,,H0H!"!8!8 ".-H E56VVy5H1i%)()'+,0	
 !&G 
$**W
-.)#1**r   __main__)r   r   returnstr)rE   int)__doc__
__future__r   r0   r   r;   pathlibr   __file__resolveparentROOTparentsr6   r9   r4   r   rC   __name__r7    r   r   <module>rR      s    W "    H~&&
,,q/I	(6*+Z z
TV
 r   