import base64
import hashlib
import json
import os
from pathlib import Path
root=Path(__file__).resolve().parents[1]
os.umask(0o077)
data=json.loads((root/'private/media_copy.json').read_text())
dest=root/'shared/event_sample';dest.mkdir(mode=0o700,exist_ok=False)
proof=[]
for item in data['items']:
    assert item['name'] in ('thumbnail.jpg','clip.mp4')
    raw=base64.b64decode(item['base64'],validate=True)
    assert len(raw)==item['bytes'] and hashlib.sha256(raw).hexdigest()==item['sha256']
    (dest/item['name']).write_bytes(raw)
    proof.append({key:item[key] for key in ('name','bytes','sha256')})
(root/'shared/media_transfer.json').write_text(json.dumps(proof,indent=2)+'\n')
print(json.dumps({'verified_files':len(proof),'total_bytes':sum(x['bytes'] for x in proof)}))
