
    j                        d Z ddlmZ ddlmZ ddlmZ ddlmZ ddl	m
Z
  G d de      Z G d	 d
e      Z G d de      Z edd       G d d             Z edd       G d d             Zy)z3Value objects for the customer cleanup transaction.    )annotations)Mapping)	dataclass)Path)MappingProxyTypec                      e Zd ZdZy)CleanupErrorz Base error for customer cleanup.N__name__
__module____qualname____doc__     t/home/cube/projects/richard/.worktrees/nutricoach-v140-impl/dualcoach/profile/checkin_cli/customer_cleanup_models.pyr	   r	      s    *r   r	   c                      e Zd ZdZy)CleanupIntegrityErrorzBA cleanup source, journal, or archive failed integrity validation.Nr
   r   r   r   r   r      s    Lr   r   c                      e Zd ZdZy)CleanupBlockedErrorz9Live or ambiguous authority prevents destructive cleanup.Nr
   r   r   r   r   r      s    Cr   r   T)frozenslotsc                  T    e Zd ZU ded<   ded<   ded<   ded<   ded<   ded<   d	ed
<   y)CleanupReceiptstrcustomer_keyoperation_idphaser   archive_rootmanifest_pathjournal_pathboolarchive_verifiedN)r   r   r   __annotations__r   r   r   r   r      s+    Jr   r   c                      e Zd ZU ded<   ded<   ded<   ded<   ded	<   ded
<   ded<   ded<   ded<   ded<   ded<   e	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd       Zy)AuthorityInventoryr   r   r!   disablednonconsentingzMapping[str, int]
categoriesintactive_countpending_countunknown_countorphan_countr"   journal_committedterminalc       
            t        |||dk(  |dk(  |dk(  |dk(  |	|
f      } | |||t        t        |            |||||	|
|      S )Nr   )r   r&   r'   r(   r*   r+   r,   r-   r"   r.   r/   )allr   dict)clsr   r&   r'   r(   r*   r+   r,   r-   r"   r.   r/   s               r   buildzAuthorityInventory.build0   sy     AQQA	
 	 %''Z(89%''%-/
 	
r   N)r   r   r&   r!   r'   r!   r(   zdict[str, int]r*   r)   r+   r)   r,   r)   r-   r)   r"   r!   r.   r!   returnr%   )r   r   r   r#   classmethodr4   r   r   r   r%   r%   "   s    N!!N$
 $
 	$

 $
 #$
 $
 $
 $
 $
 $
  $
 
$
 $
r   r%   N)r   
__future__r   collections.abcr   dataclassesr   pathlibr   typesr   
ValueErrorr	   r   r   r   r%   r   r   r   <module>r=      s    9 " # !  "+: +ML MD, D $d#  $ $d#2
 2
 $2
r   