import os,json,sys
from pathlib import Path
from source_guard import validate_alignment
root=Path(__file__).resolve().parent;result,digest=validate_alignment(sys.argv[1],root/'input.wav');token=os.environ.get('HF_TOKEN','').strip();assert token,'HF_TOKEN is missing or empty; complete model access first'
import whisperx
from whisperx.diarize import DiarizationPipeline
audio=whisperx.load_audio(str(root/'input.wav'))
pipeline=DiarizationPipeline(token=token,device='cpu')
intervals=pipeline(audio,min_speakers=2,max_speakers=2)
output=whisperx.assign_word_speakers(intervals,result);output['inputSha256']=digest
(root/'diarized.json').write_text(json.dumps(output,ensure_ascii=False,indent=2))
