#!/usr/bin/env python3 """Actual HTTP upload → durable comparison worker → private result/SVG check.""" import argparse import json import os from pathlib import Path import time import httpx p=argparse.ArgumentParser();p.add_argument('old_file',type=Path);p.add_argument('new_file',type=Path);p.add_argument('--url',default='http://127.0.0.1:8000');args=p.parse_args() with httpx.Client(base_url=args.url,timeout=60) as client: response=client.post('/api/compare',headers={'X-API-Key':os.environ.get('API_KEY','')}, files={'old_file':(args.old_file.name,args.old_file.read_bytes()),'new_file':(args.new_file.name,args.new_file.read_bytes())}) assert response.status_code==202,response.text created=response.json();identifier=created['comparison_id'];headers={'X-Viewer-Token':created['viewer_token']};base='/api/v1/comparisons/'+identifier assert client.get(base).status_code==404 deadline=time.monotonic()+120 while time.monotonic()