
    ^j(                        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 Zd Zd Zd	 Zed
k    rS	  ej         e                       dS # e$ r0Z ede ej                    ej        d           Y dZ[dS dZ[ww xY wdS )    N)datetimetimezone)Path   u   [^\W_]+(?:['’-][^\W_]+)*c                     t           | z  }|                                st          d|            t          j        |                    d                    S )Nzmissing utf-8encoding)PROJECTis_fileRuntimeErrorjsonloads	read_text)relpaths     script/complete-project.pyloadr      sP    S=D<<>> -+c++,,,:dnngn66777    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sha.<locals>.<lambda>   s    &++o">"> r   r   )hashlibsha256openiterupdate	hexdigest)r   digestblockr   s      @r   shar$      s    ^F	4 !F>>>>DD 	! 	!EMM%    	!! ! ! ! ! ! ! ! ! ! ! ! ! ! ! s   ,A##A'*A'c           	      |    |                      d|                      d|                      d                              S )N
word_countspoken_word_countaggregate_word_countget)drafts    r   report_wordsr,      s2    99\599-@%))LbBcBc#d#deeer   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          d          }t          d          }t          d          }t          d          }t          d          }d t          dd          D             }d                    |          dz   }t          dz  }t          dz  }t          dz  }t          dz  }t          dz  }t          dz  }t          dz  }|                    d !          }t          |          -t          t                              |                    }t          d"z  }|	                                rt          |          nd }|
                    d#          pi } t                      }!d$d%h}"|
                    d&          d'u o+|
                    d(          d)k    ot          |           |"k    }#|#r|"D ]}$| 
                    |$          pg }%|#oYt          |%          dk    oF|%d*         
                    d+          d,k    o't          |%d*         
                    d-                    }#|%r.|!                    |%d*         
                    d.                     |#ot          |!          dk    od |!v}#t          d/ |
                    d0g           D             i           }&|
                    d1          d2k    o|
                    d3          d4k    on|
                    d1          |
                    d1          k    oB|
                    d3          |
                    d3          k    o|
                    d5          d'u }'|||||	|
||||||||g}(i d6|
                    d&          d'u o"t          |          |k    od7|cxk    od8k    nc d9||k    o)|                                |                                k    d:|'d;|
                    d&          d'u o|
                    d<          d'u d=|
                    d>          -k    o3|
                    d?          -k    ot#          -fd@|(D                       dA|
                    d&          d'u o|
                    dB          dCk    o|
                    dD          d'u o|
                    dE          dFu ok|
                    dG          d*k    oR|
                    dH          -k    o9|	                                o%|
                    dI          t          |          k    dJ|
                    d&          d'u o|
                    dB          dKk    o |
                    dD          d'u o|
                    dE          dFu o|
                    dG          d*k    o|&
                    dL          |&
                    dM          k    o|&
                    dMd*          dk    os|	                                o_|	                                oK|
                    dH          t          |          k    o%|
                    dI          t          |          k    dN|
                    d&          d'u o|
                    dO          dPk    o|
                    dQ          d'u o|
                    dH          |
                    dI          k    o|
                    dR          |
                    dI          k    o|
                    dS          t          t          dz            k    oe|
                    dT          |
                    dU          k    o9|	                                o%|
                    dV          t          |          k    dW|
                    d&          d'u o|
                    dO          dPk    o|
                    dH          |
                    dH          k    o|
                    dI          |
                    dI          k    og|
                    dS          t          t          dz            k    o9|	                                o%|
                    dV          t          |          k    dX|	
                    d&          d'u o|	
                    dY          d'u dZ|

                    d&          d'u oA|

                    d[          dFu o*|

                    d\i           
                    d&          d'u d]|
                    d&          d'u o|
                    d\i           
                    d&          d'u o|
                    d^          d_k    o|
                    d`          |
                    dI          k    o[|
                    da          t          t          dz            k    o-|
                    db          t          t          d	z            k    dc|
                    d&          d'u o|
                    d(          d)k    o|
                    d\i           
                    dd          dFu oU|
                    dei           
                    df          d'u o*|
                    dei           
                    dg          d'u dh|
                    d&          d'u oC|
                    d(          d)k    o*|
                    d\i           
                    dd          dFu di|
                    d&          d'u o|
                    d(          djk    dk|
                    d&          d'u o|
                    d(          d)k    ot|
                    d\i           
                    dd          dFu oI|	                                o5|                                j        dlk     o||
                    dV          k    dm|
                    d&          d'u o|
                    dndo          dpk    |
                    d&          d'u oB|
                    dq          pi 
                    dr          pi 
                    ds          |k    |#dt})t#          |)                                          }*i dudd&|*dvt          j        dw|
                    dx          dy-dz|d{d|d}t-          |d|z  d~          d|
                    d          d|
                    d          |
                    dV          ddk|
                    d          |
                    d          |
                    dV          dd|
                    d          |
                    d          | dd|)dt/          |)                                          dt          |)          dt1          j        t4          j                                                  }+t          dz  },|,                    t=          j        |+dFd          dz   d !           |*sDtA          t=          j        dFd |)!                                D             ddF                     dS d)| d(<   d dD             | d<   |+d         | d<   t          dz                      t=          j        | dFd          dz   d !           tA          t=          j        d'|+d         |+d         d)ddF                     d*S )Nzscript/project-manifest.jsonzscript/story-brief.jsonzstory/draft-report.jsonzstory/promotion-report.jsonzstory/originality-report.jsonzlog/tts-pronunciation.jsonz log/intro-tts-pronunciation.jsonzlog/tts-verification.jsonzlog/intro-voice.jsonzlog/image-generation.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/metadata-verification.jsonzlog/postiz-media.jsonzlog/postiz-schedule.jsonc                 x    g | ]7}t           d |ddz                      d                                          8S )zstory/chapters/chapter-02dz.txtr   r	   )r   r   rstrip).0indexs     r   
<listcomp>zmain.<locals>.<listcomp>5   s]      F  F  FotDUDDDDDOOY`Oaahhjj  F  F  Fr   r      z



zstory/spoken-narration.txtzstory/story-canon.txtzstory/tts-pronunciation.txtzaudio/intro-voice-source.txtz#audio/intro-voice-pronunciation.txtzaudio/intro-voice.wavzaudio/story-full.wavr   r	   zoutput/final-upload.mp4postscmrq10vod000hj7cbt8zvuj6acmrpr0j9u000bj7cboqonlx4bverifiedTstatus	completedr   stateQUEUEidpublishDatec              3   L   K   | ]}|                     d           dk    |V   dS )sourceaudioNr)   )r1   rows     r   	<genexpr>zmain.<locals>.<genexpr>O   s:      llcswwW_O`O`dkOkOkcOkOkOkOkllr   lexiconprimary_story_familyuA   Thiên kim thật–giả / gia đình phản diện / trở vềsecondary_story_familyu   Cưới trước yêu saufamily_adherence_verifiedstoryi0*  i 2  
exact_joinstory_familyoriginality_inside_familyprimary_story_family_preservedcanon_chainspoken_sha256source_canon_sha256c              3   L   K   | ]}|                     d           k    V  dS )rP   Nr)   )r1   rC   canons     r   rD   zmain.<locals>.<genexpr>]   s        {|  {|  or{~  |C  |C  DY  [`  |a  |a  ej  |j  {|  {|  {|  {|  {|  {|r   narration_pronunciationkind	narrationreverse_verifiedsemantic_content_changedFnon_lexicon_changessource_sha256projection_sha256intro_pronunciationintrosource_countreplacement_countnarration_ttsvoicezngoc-huyen-vbeepronunciation_verifiedchunk_reconstruction_sha256pronunciation_receipt_sha256segments_completedsegments_totaloutput_sha256	intro_ttsprovider_imagesprovider_rendered_text_onlylayout_artwork_qatext_overlay_applied	visual_qa	intro_gpuencoder_required
h264_nvencintro_pronunciation_sha256"intro_pronunciation_receipt_sha256intro_voice_receipt_sha256footage_technicalrequiredserver_verificationmirror_appliedsource_audio_discardedfinal_technical
productionpassedupload_copyi ʚ;metadatatitle_lengthi  d   mediavideor   )r   scheduleversion
project_idtitlecanonical_titlecanon_sha256r&   tts_words_per_minute   predicted_tts_minutes   tts_duration_secondsduration_secondsfinaljob_id)r   r   output_bytes)r   bytesr   r   
slot_localslot_utc)r   r   r6   checkschecks_passedchecks_total
checked_atzlog/completion-report.json   )ensure_asciiindentc                     g | ]	\  }}||
S  r   )r1   keyvalues      r   r3   zmain.<locals>.<listcomp>}   s"    7j7j7j
Udi7j7j7j7jr   )r9   failed)r   c                     i | ]}|d S )r;   r   )r1   r   s     r   
<dictcomp>zmain.<locals>.<dictcomp>   s,      f  f  fck  f  f  fr   )capability_preflightstory_briefarchitecturer`   rI   pronunciationttsartworkr\   footager   	transcodepublish
completionsteps
updated_at)r9   r   r   manifest_status)"r   rangejoinr   r   r$   lenWORD_REfindallr   r*   setbooladdnextr,   
read_bytesallstatst_sizevaluesnameroundsumr   nowr   utc	isoformat
write_textr   dumpsprintitems).manifestbriefr+   	promotionoriginalityr   r[   r   intro_voiceimageslayoutr\   r   r   ry   r   r|   r   r   chaptersexpectedspoken_path
canon_pathpronunciation_pathintro_source_pathintro_projection_pathintro_voice_pathstory_audiospokenwordsuploadupload_hashr6   
timestampsexpected_integrationsschedule_okintegrationrows	audio_row	family_okchainr   r9   reportoutputrR   s.                                                @r   mainr       s   233H*++E*++E233I677K566MABB
*
+
+C-..K-..F.//F())E)**G())E899J011I455H())E.//H F  Fx}~  BD  yE  yE  F  F  FH}}X&&-H88K22J #@@"@@#&KK!8822K""G"44FE''((E00F!'!1!1;#f+++tKLL!!'REJ8:UV,,z**d2  Ex||H7M7MQ\7\  Eadejakak  pE  bEK V0 	; 	;K99[))/RD%x#d))q.xT!W[[=Q=QU\=\xaefjklfmfqfqrvfwfwaxaxK ;tAw{{=99:::!Uc*oo&:Ut:?Ull%8%<%<Y%K%KlllnpqqI		())-pp 	?II.//3NN	?MM011UYY?U5V5VV	? MM233uyyAY7Z7ZZ	? MM566$>  ':CQVX_afhrt}  @H  JO  QY  ZE:&&$.k<3F3F%3OkTY]bTkTkTkTkfkTkTkTkTkf(`Z-B-B-D-DH^H^H`H`-` 		 	$[__Z%@%@D%H  &G[__]}M~M~  CG  NG	
 	y}}_55>  |;??ShCiCimrCr  |wz  {|  {|  {|  {|  v{  {|  {|  {|  x|  x| 	"=#4#4Z#@#@D#H  $l]M^M^_eMfMfjuMu  $l  {H  {L  {L  M_  {`  {`  dh  {h  $l  mz  m~  m~  Y  mZ  mZ  ^c  mc  $l  hu  hy  hy  zO  hP  hP  TU  hU  $l  Zg  Zk  Zk  l{  Z|  Z|  @E  ZE  $l  J\  Jd  Jd  Jf  Jf  $l  kx  k|  k|  }P  kQ  kQ  UX  Yk  Ul  Ul  kl 	266zBBdJ   |	ObOfOfgmOnOnryOy   |	  R  V  V  Wi  j  j  nr  r   |	  wJ  wN  wN  Oi  wj  wj  ns  ws   |	  xK  xO  xO  Pe  xf  xf  jk  xk   |	  py  p}  p}  ~L  pM  pM  QZ  Q^  Q^  _r  Qs  Qs  ps   |	  xA  xE  xE  FY  [\  x]  x]  ab  xb   |	  gx  g@  g@  gB  gB   |	  G\  Gd  Gd  Gf  Gf   |	  k~  kB  kB  CR  kS  kS  WZ  [l  Wm  Wm  km   |	  rE	  rI	  rI	  J	]	  r^	  r^	  b	e	  f	{	  b	|	  b	|	  r|	 	,,4  N9I9IM^9^  Ncfcjcj  lD  dE  dE  IM  dM  N  RU  RY  RY  Zi  Rj  Rj  n{  n  n  @S  nT  nT  RT  N  Y\  Y`  Y`  a~  Y  Y  CP  CT  CT  Uh  Ci  Ci  Yi  N  nq  nu  nu  vT  nU  nU  Y\  ]d  gC  ]C  YD  YD  nD  N  IL  IP  IP  Qe  If  If  jm  jq  jq  rB  jC  jC  IC  N  HS  H[  H[  H]  H]  N  be  bi  bi  jy  bz  bz  ~A  BM  ~N  ~N  bN 	[__Z00D8  [[__W=U=UYj=j  [ozo~o~  @O  pP  pP  Tg  Tk  Tk  l{  T|  T|  p|  [  AL  AP  AP  Qd  Ae  Ae  i|  i@  i@  AT  iU  iU  AU  [  Ze  Zi  Zi  jH  ZI  ZI  MP  QX  [}  Q}  M~  M~  Z~  [  CS  C[  C[  C]  C]  [  bm  bq  bq  rA  bB  bB  FI  JZ  F[  F[  b[ 	6::j11T9ofjjIf>g>gko>o 	VZZ
33t;  d

Ka@b@bfk@k  dpvpzpz  |G  IK  qL  qL  qP  qP  Q[  q\  q\  `d  qd 	UYYz**d2  vuyyb7Q7Q7U7UV`7a7aei7i  vnsnwnw  yK  oL  oL  P\  o\  v  af  aj  aj  kG  aH  aH  L_  Lc  Lc  dw  Lx  Lx  ax  v  }B  }F  }F  Gk  }l  }l  ps  t{  ~`  t`  pa  pa  }a  v  fk  fo  fo  pL  fM  fM  QT  U\  _u  Uu  Qv  Qv  fv 	W[[44<  zXAVAVZeAe  zjqjuju  wB  DF  kG  kG  kK  kK  LV  kW  kW  [`  k`  z  el  ep  ep  qF  HJ  eK  eK  eO  eO  P`  ea  ea  ei  ei  z  nu  ny  ny  zO  QS  nT  nT  nX  nX  Yq  nr  nr  vz  nz 	599Z00D8  XUYYx=P=PT_=_  Xdidmdmny{}d~d~  eC  eC  DN  eO  eO  SX  eX 	jnnZ00D8aZ^^H=U=UYa=a  	y}}Z00D8  QY]]8=T=TXc=c  Qhqhuhu  wB  DF  iG  iG  iK  iK  LV  iW  iW  [`  i`  Q  ek  es  es  eu  eu  Q  z@  zE  zE  zG  zG  zO  R_  z_  Q  do  s|  s@  s@  AP  sQ  sQ  dQ!" 	HLL,,4anVY9Z9Z^a9a#$ :&&$.UYYw5G5G5M24R4RSZ4[4[4a_a3f3fgo3p3pt3'  F* 6==??##H1 (,8',,--/=u 	e 4S 	 us{A!6!6	
 	(: ; ; 	EIIh//599_;U;UVV 	)--"9"9IMMR`DaDamvmzmz  |K  nL  nL  M  M 	8<<#=#=8<<XbKcKcnstt 	& *3v}}+?+? BPQTU[Q\Q\ 	hl8<00::<<F 33F
djeAFFFMX_``` dje7j7jfllnn7j7j7jkkz  A  A  A  	B  	B  	Bq$HX f  f  6e  f  f  fHW#L1H\--99$*X\ajk:l:l:los:s  F9  G  G  G	$*$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   __name__exit	Exceptionexcr   stderrr   r   r   <module>r      s_     				 



 ' ' ' ' ' ' ' '      
$x..
 
 
"
"
*1
-
"*2BJ
?
?8 8 8  f f fd d dN z   *S**<<<< s   0B
 
B?%B::B?