
    E^j                     l   d dl Z d dlZd dlZd dlZd dlmZmZ d dlmZ  ee          	                                j
        d         Z ej        dej                  ZddhZd Zd	 Zd
 Zd Zedk    rA	  e e                      # e$ r%Z ede ej                    ed          dZ[ww xY wdS )    N)datetimetimezone)Path   u   [\wÀ-ỹĐđ]+cmrq10vod000hj7cbt8zvuj6acmrpr0j9u000bj7cboqonlx4bc                     t           | z  }|                                st          d|            t          j        |                                          S )Nzmissing )PROJECTexistsRuntimeErrorjsonloads	read_text)relpaths     script/complete-project.pyloadr      sL    S=D;;== -+c++,,,:dnn&&'''    c                    t          j                    }|                     d          5 t          fdd          D ]}|                    |           	 d d d            n# 1 swxY w Y   |                                S )Nrbc                  .                          d          S )Ni   )read)handles   r   <lambda>zdigest.<locals>.<lambda>   s    &++o">"> r   r   )hashlibsha256openiterupdate	hexdigest)r   hasherblockr   s      @r   digestr#      s    ^F	4 !F>>>>DD 	! 	!EMM%    	!! ! ! ! ! ! ! ! ! ! ! ! ! ! ! s   ,A##A'*A'c                     t          |                     d          t                    o| d                             d          du S )N	visual_qaverifiedT)
isinstancegetdict)rows    r   visualr+      s<    cggk**D11^c+6F6J6J:6V6VZ^6^^r   c                    " t          d          } t          d          }t          d          }t          d          }t          d          }t          d          }t          d          }t          d          }t          d	          }t          d
          }	t          d          }
t          d          }t          d          }t          d          }t          t          d          d                   }d t          d|dz             D             }d                    |          dz   }t          dz  }|                                }t          |          "t          dz  }|                                rt          |          nd }|                    d          pi }t                      }|                    d          du o0|                    d          dk    ot          |          t          k    }|rt          D ]}}|                    |          pg }|o1t          |          dk    o|d                             d          dk    }|r.|                    |d                             d                     ~|ot          |          dk    od |v}|                    d           }|*|                    d!          pi                     d           }||||||	|
|||g
}|                    d"|                    d#                    }|                    dd          du o*|t          t                              |                    k    |du o||k    |                    d$          "k    oL|                    d%          "k    o3|                    d&          "k    ot          "fd'|D                       |                    d          du o|                    d          du |                    d          du oE|                    d(          |                    d)          k    o|                    d*d          dk    |                    d          du ot!          |          |                    d          du ot!          |          |                    d          du on|                    d          dk    oU|                    d+i                               d,          du o*|                    d+i                               d-          du |	                    d          du o'|	                    d          dk    ot!          |	          |
                    d          du o|
                    d          d.k    |                    d          du oq|                    d          dk    oXt!          |          oI|                                o5|                                j        d/k     o||                    d0          k    |                    d          du oB|                    d1          pi                     d2          pi                     d3          |k    t          |          t          k    |d4}t          |                                          }i d5dd|d6t          j        d7|                     d8          d9"d:t          t                              |                    d;d<d=t+          t          t                              |                    d<z  d>          d?|                    d*          d@|	                    dA          |	                    d+          pi                     dB          t          |	                    dC          pi                     dD          pi                     dEd                    |	                    d0          dFdG|                    dA          |                    dH          |                    d0          dIdJ|                    dK          |                    dL          |dMdN|dOt-          |                                          dPt          |          dQt/          j        t2          j                                                  }t          dRz  } |                     t;          j        |dSdTU          dz              |sDt?          t;          j        dSdV |                                 D             dWdSX                     dS d| d<   dYD ]}!d| !                    dZi           |!<   |dQ         | d[<   t          dz                      t;          j        | dSdTU          dz              t?          t;          j        d|dO         |dP         dd\dSX                     dS )]Nzscript/project-manifest.jsonzstory/draft-report.jsonzstory/promotion-report.jsonzstory/originality-report.jsonzstory/promotion-receipt.jsonzlog/tts-verification.jsonzimage/layout-manifest.jsonzlog/intro-render.jsonzlog/footage-job.jsonzlog/final-render.jsonz log/production-verification.jsonzlog/upload-transcode.jsonzlog/postiz-media.jsonzlog/postiz-schedule.jsonzscript/production-plan.jsonexpected_chaptersc                 z    g | ]8}t           d z  d|ddz                                                                  9S )zstory/chapterszchapter-02dz.txt)r
   r   strip).0indexs     r   
<listcomp>zmain.<locals>.<listcomp>1   s]      L  L  Lbg++.H.H.H.H.HHSSUU[[]]  L  L  Lr   r   z


zstory/spoken-narration.txtzoutput/final-upload.mp4postsr&   Tstatus	completedr   stateQUEUEpublishDateexact_sequential_joinspoken_narrationtotal_wordstotalspoken_sha256source_sha256promoted_canon_sha256c              3   L   K   | ]}|                     d           k    V  dS )source_canon_sha256N)r(   )r1   r*   canons     r   	<genexpr>zmain.<locals>.<genexpr>J   s        qw  qw  eh  ru  ry  ry  zO  QV  rW  rW  [`  r`  qw  qw  qw  qw  qw  qwr   segments_completedsegments_totalduration_secondsserver_verificationmirror_appliedsource_audio_discardedpassedi ʚ;output_sha256mediavideor   )draft_verified
exact_joincanon_chainstory_gatesttslayoutintrofootagefinalproduction_gateupload_copyrN   schedule_exact_twoschedule_queue_same_timestampversion
project_idtitlestory_titlecanon_sha256
word_counttts_words_per_minute   predicted_tts_minutes   tts_duration_secondsrX   job_iddurationprobeformatsize)rh   rH   bytesr   rZ   output_bytes)rh   rm   r   schedule
slot_localslot_utc)rp   rq   r5   checkschecks_passedchecks_total
checked_atzlog/completion-report.jsonF   )ensure_asciiindentc                     g | ]	\  }}||
S  rz   )r1   keyvalues      r   r3   zmain.<locals>.<listcomp>m   s"    7j7j7j
Udi7j7j7j7jr   )r&   failed)rw   )storyrT   imagesrU   rV   rW   final_rendermetadata	transcodeuploadro   steps
updated_at)r&   rs   rt   manifest_status)"r   intrangejoinr
   r   r#   r   r(   setTARGETSlenaddWORD_REfindallallr+   statst_sizevaluesnameroundsumr   nowr   utc	isoformat
write_textr   dumpsprintitems
setdefault)#manifestdraft	promotionoriginalitypromotion_receiptrT   rU   rV   rW   rX   
productionr   rN   ro   r-   chaptersexpectedspoken_pathspokenr   upload_hashr5   
timestampsschedule_okintegrationrows
exact_flag
chain_rowsdraft_wordsrr   r&   reportoutputsteprD   s#                                     @r   mainr   !   s   233H*++E233I677K;<<
*
+
+C.//F())E)**G())E899J011I())E.//HD!>??@STUU L  Lkpqr  uF  IJ  uJ  lK  lK  L  L  LH{{8$$t+H88K""$$F;E00F$*MMOO=&...KLL!!'REJ,,z**d2vx||H7M7MQ\7\vadejakakovavK V" 	; 	;K99[))/RD%\#d))q.\T!W[[=Q=QU\=\K ;tAw{{=99:::!Uc*oo&:Ut:?U233Jii 2339r>>?VWW
S&%%YX]_ghJ))M599W+=+=>>K))J55=m+QTU\UdUdekUlUlQmQmBm D(?Vx-? }}_55>  w;??SbCcCcglCl  w  rC  rG  rG  H_  r`  r`  di  ri  w  nq  qw  qw  qw  qw  lv  qw  qw  qw  nw  nw }}Z00D8`[__Z=X=X\`=`wwz""d*  Qsww7K/L/LPSPWPWXhPiPi/i  Qnqnunu  wI  KL  oM  oM  PQ  oQ**Z((D0CVF^^:&&$.@6%==;;z**d2  vw{{87L7LP[7[  v`g`k`k  mB  DF  aG  aG  aK  aK  L\  a]  a]  ae  ae  v  jq  ju  ju  vK  MO  jP  jP  jT  jT  Um  jn  jn  rv  jv:&&$.g599X3F3F+3UgZ`afZgZg%>>*55=f*..QYBZBZ^fBf }}Z00D8  jY]]8=T=TXc=c  jhnoxhyhy  j  E  L  L  N  N  j  SY  S^  S^  S`  S`  Sh  kx  Sx  j  }H  LU  LY  LY  Zi  Lj  Lj  }j:&&$.UYYw5G5G5M24R4RSZ4[4[4a_a3f3fgo3p3pt3!%jjG3)4 F  6==??##H1H 	gl 	m,,	
 	 	c'//&1122 	 	 s7??6+B+B'C'Cc'I1!M!M 	(: ; ; 	EIIh//eiiPeFfFfFljlEqEqr|E}E}  IL  OT  OX  OX  Y`  Oa  Oa  Og  eg  Nl  Nl  mu  Nv  Nv  N|  z|  MA  MA  BH  JK  ML  ML  IM  IM  Y^  Yb  Yb  cr  Ys  Ys  t  t 	)--"9"9IMMR`DaDamvmzmz  |K  nL  nL  M  M 	8<<#=#=8<<XbKcKcnstt 	& 	V]]__-- 	F  	hl8<00::<<!F$ 33F
djeAFFFMNNN dje7j7jfllnn7j7j7jkkz  A  A  A  	B  	B  	Bq$HX H = =1<GR((..#L1H\--99$*X\ajk:l:l:los:sttt	$*$9Pbhiwbx  NY  Z  Z  in  o  o  o  p  p  p1r   __main__zCompletion blocked: )file)r   r   resysr   r   pathlibr   __file__resolveparentsr
   compileUNICODEr   r   r   r#   r+   r   __name__
SystemExit	Exceptionexcr   stderrrz   r   r   <module>r      sU     				 



 ' ' ' ' ' ' ' '      
$x..
 
 
"
"
*1
-
"*'
4
4&(C
D( ( (  _ _ _T T Tn zj      *S**<<<<jmm s   4B B1 B,,B1