import json
from pathlib import Path

with open(r".agents/teamwork/spec_miner_techart_3/drq_summary.json", "r", encoding="utf-8") as f:
    drqs = json.load(f)

lines = []
lines.append("=" * 80)
lines.append(f"Total DRQs: {len(drqs)}")
total_delivs = sum(d["total_deliverables"] for d in drqs)
total_albedo = sum(len(d["albedo_pngs"]) for d in drqs)
total_normals = sum(len(d["normals"]) for d in drqs)
total_emissives = sum(len(d["emissives"]) for d in drqs)
total_metals = sum(len(d["metals"]) for d in drqs)
total_jsons = sum(len(d["jsons"]) for d in drqs)

lines.append(f"Total deliverables across 21 DRQs: {total_delivs}")
lines.append(f"Albedo PNGs: {total_albedo}")
lines.append(f"Normal Maps: {total_normals}")
lines.append(f"Emissive Masks: {total_emissives}")
lines.append(f"Metal Shaders: {total_metals}")
lines.append(f"JSON Metadata: {total_jsons}")
lines.append("=" * 80)

for d in drqs:
    lines.append(f"[{d['id']}] {d['title']}")
    lines.append(f"  Category: {d['category']} | Prio: {d['priority']} | Total Files: {d['total_deliverables']}")
    if d['normals']:
        lines.append(f"  Normals ({len(d['normals'])}): {[Path(x).name for x in d['normals']]}")
    if d['emissives']:
        lines.append(f"  Emissives ({len(d['emissives'])}): {[Path(x).name for x in d['emissives']]}")
    if d['metals']:
        lines.append(f"  Metals ({len(d['metals'])}): {[Path(x).name for x in d['metals']]}")
    if d['jsons']:
        lines.append(f"  JSONs ({len(d['jsons'])}): {[Path(x).name for x in d['jsons']]}")
    lines.append(f"  All Deliverables: {[Path(x).name for x in d['all_delivs']]}")
    lines.append("-" * 60)

out_file = Path(r".agents/teamwork/spec_miner_techart_3/summary.txt")
out_file.write_text("\n".join(lines), encoding="utf-8")
print("Wrote summary.txt successfully")
