
    >nj                         d dl Z d dlZd dlZdZedz   Z e j
                   eed            Zed   D ]?  Zej                  dd      Z
e
j                  d	      rd
ne
j                  d      rdnded<   A ed   D ]?  Zej                  dd      Z
e
j                  d	      rd
ne
j                  d      rdnded<   A dD   ci c]     e fded   D               c} ed<    eedd      j                   e j                  edd             edz   Z eed      j!                         Z
dZedz    eed   d
         z   dz    eed   d         z   dz    eed   d         z   dz   Zee
v re
j)                  ee      Z
 eedd      j                  e
       i Z ej,                  e      D ]  Zedz   ez   Zej2                  j5                  e      s'edk7  s-ej2                  j7                  e       ej8                   eed      j!                               j;                         d ee<     eed!z   dd      j                   e j                  edd              e e j                  ed    ej8                   eed      j!                               j;                         ed"   d#   d$d%             yc c} w )&    Nz3/opt/struktur/reports/aa043-p43-r2/20260828T111347Zz/p43-r2-segmentation-audit.jsonutf8)encodingissuessource zyoutube:youtubez	obsidian:obsidianunknownsource_typecontrols)r   r	   r
   c              3   F   K   | ]  }|j                  d       k(    yw)r   N)get).0xts     &/opt/struktur/AA-043-P43-R2-correct.py	<genexpr>r      s     Hq155/2Hs   !by_source_typewF   )ensure_asciiindentz/AA-043-P43-R2.mdzTTaxonomie, Source-Typen und Auditklassen stehen in `p43-r2-segmentation-audit.json`.z? Korrigierte Issue-Verteilung nach canonical identity: YouTube=z, Obsidian=z, unbekannt=./zSHA256SUMS.jsonrb)sizesha256z/SHA256SUMS.jsonzp43-r2-segmentation-audit.jsonr   )r   report_sha256artifact_sha256)r   )jsonhashlibosDploadopendr   r   s
startswithsumwritedumpsrpreadoldstrnewreplacemlistdirnp2pathisfilegetsizer   	hexdigestprint)r   s   pr   <module>r<      s    71=^;^$))DF#$	
8 LA55"Q\\*5M	bcbnbnozb{T^  BKq'L	
: LA55"Q\\*5M	bcbnbnozb{T^  BKq'LRrsQQsHAhKHHHs  QsF  ! !*$**QE"K LDV499;!  BXS  ^a  bc  ^c  dg  hi  jz  h{  |E  hF  dG  ^G  HU  ^U  VY  Z[  \l  Zm  nx  Zy  Vz  ^z  {I  ^I  JM  NO  P`  Na  bk  Nl  Jm  ^m  nq  ^q  Z]!8qyyS!Q RV  " "1 %	A MAcE!GGGNN21//bggoob>Q[i[b[i[ijnoqrvjwj|j|j~[  \J  \J  \L  7M1M Q#v . 4 4ZTZZu\]5^ _ jdjj1%5#6~w~~VZ[]^bVcVhVhVjGkGuGuGw  KL  Mm  Kn  ow  Kx  y  GL  M  N ts   J=