From 823a9a64e2f5260a9cc827f4c34e81de3aeb82bd Mon Sep 17 00:00:00 2001 From: kjh2064 Date: Thu, 30 Jul 2026 13:38:42 +0900 Subject: [PATCH] fix: repository entropy audit was measuring build noise, not repo bloat MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit audit_repository_entropy_v2.py (the "과유불급" file-count gate in the release DAG) was failing: 4,523 files against a 2,200 budget. Traced it down before touching anything - the audit's _EXCLUDE_DIRS list predates several directories this repo's own .gitignore already excludes (Temp/, dist/, outputs/, publish_artifact/, **/bin/, **/obj/, test-results/), so every local dotnet build/test run inflates the count with disposable, zero-git-impact build artifacts. Verified via `git ls-files` that none of the ~2,400 files in those paths were tracked, versus runtime/, archive_db/, backups/, and artifacts/ (246 files, all tracked, all genuine audit-trail/history data) which must NOT be touched. Cleaned the untracked build/scratch artifacts from disk and added the missing directories to _EXCLUDE_DIRS so the metric can't be re-inflated by normal local development again. Gate now passes at 1,934 files with real headroom, without deleting a single tracked file. Verified full .NET build still succeeds after removing all bin/obj folders (clean rebuild, 0 errors/warnings). Co-Authored-By: Claude Sonnet 5 --- tools/audit_repository_entropy_v1.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/tools/audit_repository_entropy_v1.py b/tools/audit_repository_entropy_v1.py index e2a5e724..f4505b93 100644 --- a/tools/audit_repository_entropy_v1.py +++ b/tools/audit_repository_entropy_v1.py @@ -14,7 +14,15 @@ import yaml ROOT = Path(__file__).resolve().parents[1] -_EXCLUDE_DIRS = {".git", "node_modules", "__pycache__", ".tox", ".venv", "venv"} +_EXCLUDE_DIRS = { + ".git", "node_modules", "__pycache__", ".tox", ".venv", "venv", + # .gitignore 상 빌드/임시 산출물 디렉터리 — 2026-07-30: 이 목록이 .gitignore와 + # 어긋나 있어서 로컬 dotnet build/test 몇 번만 해도 entropy 지표가 실제 저장소 + # 크기와 무관하게 4,523까지 부풀었다 (실측: bin/obj/Temp/publish_artifact만 + # 정리해도 4,523 -> 2,127). .gitignore에 새 산출물 경로가 추가되면 여기도 같이 갱신할 것. + "bin", "obj", "Temp", "dist", "outputs", "publish_artifact", + "publish-output", "test-results", ".pytest_cache", +} def _iter_files(root: Path) -> list[Path]: