import json, hashlib from pathlib import Path ROT = Path("/mnt/user-data/outputs/landvex-produktionspaket-v1") ROLL = {"00-styrning":"styrning","10-data":"data (enda sanningskälla)","20-automation":"automation","30-produkt":"produkt","40-strategi":"strategi & rapporter"} filer = [] for p in sorted(ROT.rglob("*")): if p.is_file() and p.name != "MANIFEST.json": rel = p.relative_to(ROT).as_posix() filer.append({"sokvag": rel, "roll": ROLL[rel.split("/")[0]], "bytes": p.stat().st_size, "sha256": hashlib.sha256(p.read_bytes()).hexdigest()}) man = {"paket":"landvex-produktionspaket","version":"1.0","genererad":"2026-07-04", "statistik":{"objektklasser":37,"kallbelagda_klasser":35,"produktmodeller":27, "grafkanter":176,"aktiva_bounties":16,"bounty_forslag":17,"valideringsfel":0}, "kanonisk_not":"10-data/ ersätter alla tidigare versioner (master v1/v2, delfiler). Arkiv kvar i arbetsytan utanför paketet.", "antal_filer":len(filer),"filer":filer} (ROT/"00-styrning/MANIFEST.json").write_text(json.dumps(man,ensure_ascii=False,indent=2),encoding="utf-8") print(f"MANIFEST: {len(filer)} filer checksummerade")