"""Check generated logo assets against an expected manifest.
Usage: check_assets.py <output-dir> <manifest.json>
manifest.json is a JSON list of expected relative paths, e.g.:
["favicon-32.png", "favicon-96.png", "favicon.ico", "apple-touch-icon-180.png"]
Fails if any expected file is missing, or is present but zero bytes.
print("Usage: check_assets.py <output-dir> <manifest.json>", file=sys.stderr)
out_dir = Path(sys.argv[1])
manifest = json.loads(Path(sys.argv[2]).read_text(encoding="utf-8"))
for rel_path in manifest:
print(f"❌ missing expected asset: {rel_path}")
elif p.stat().st_size == 0:
print(f"❌ asset exists but is zero bytes: {rel_path}")
print(f"✅ {rel_path} ({p.stat().st_size} bytes)")
if __name__ == "__main__":