diff --git a/scripts/generate_pack.py b/scripts/generate_pack.py index 93956a36..a7a2a8e4 100644 --- a/scripts/generate_pack.py +++ b/scripts/generate_pack.py @@ -453,7 +453,10 @@ def generate_pack( if verification_mode == "existence": print(f" Generated {zip_path}: {total_files} files ({total_files - extra_count} platform{extras_msg}, {len(missing_files)} missing) [verification: existence]") else: - print(f" Generated {zip_path}: {total_files} files, {verified_checks}/{total_checks} checks verified, {len(untested_files)} untested, {len(missing_files)} missing [verification: {verification_mode}]") + checks_detail = "" + if total_checks != total_files: + checks_detail = f" ({total_checks - total_files} duplicate/inner checks)" + print(f" Generated {zip_path}: {total_files} files, {verified_checks}/{total_checks} checks verified{checks_detail}, {len(untested_files)} untested, {len(missing_files)} missing [verification: {verification_mode}]") return zip_path diff --git a/scripts/verify.py b/scripts/verify.py index 0e55fa2a..3beeba3e 100644 --- a/scripts/verify.py +++ b/scripts/verify.py @@ -219,10 +219,17 @@ def verify_platform(config: dict, db: dict) -> dict: untested = sum(1 for r in results if r["status"] == Status.UNTESTED) missing = sum(1 for r in results if r["status"] == Status.MISSING) + # Count unique files (by system/destination) for reporting + unique_files = set() + for r in results: + dest = r.get("path") or r["name"] + unique_files.add(dest) + return { "platform": platform, "verification_mode": mode, "total": len(results), + "unique_files": len(unique_files), "ok": ok, "untested": untested, "missing": missing, @@ -259,11 +266,14 @@ def main(): if not args.json: mode = result["verification_mode"] + uf = result["unique_files"] + total = result["total"] + checks_detail = f" ({total - uf} duplicate/inner checks)" if total != uf else "" if mode == "existence": - print(f"{result['platform']}: {result['ok']}/{result['total']} present, " + print(f"{result['platform']}: {uf} files, {result['ok']}/{total} checks present{checks_detail}, " f"{result['missing']} missing [verification: {mode}]") else: - print(f"{result['platform']}: {result['ok']}/{result['total']} verified, " + print(f"{result['platform']}: {uf} files, {result['ok']}/{total} checks verified{checks_detail}, " f"{result['untested']} untested, {result['missing']} missing [verification: {mode}]") for d in result["details"]: