mirror of
https://github.com/Egonex-AI/Understand-Anything.git
synced 2026-06-22 10:58:03 +08:00
dd8b724c99
Fixes #152. Phase 3d step 3 instructed the LLM to "merge with existing fingerprints (keep unchanged files as-is)" but the prose was vague enough that the LLM-written script frequently wrote only the freshly re-analyzed batch entries to fingerprints.json, discarding every other file's fingerprint. The next auto-update saw N-batch_size files with no stored fingerprint → classified as STRUCTURAL → exceeded the 30-file threshold → FULL_UPDATE permanently, burning hundreds of thousands of tokens on every subsequent commit. Replace the four-bullet description with an explicit LOAD-PATCH-SAVE script template: 1. LOAD ALL existing entries from fingerprints.json (never skip). 2. PATCH or REMOVE each path in filesToReanalyze (inline deletion handling so the spec doesn't need a separate deletedFiles list). 3. GUARD: if the file existed and was non-empty but loaded as {}, abort the write — silent load failure would otherwise clobber every fingerprint. 4. SAVE the full dict back. The reporter's dry-run showed this restores 81/97 files to COSMETIC classification on their project (zero LLM tokens) instead of all 97 incorrectly forced into STRUCTURAL. Note: a related ordering bug exists in skills/understand/SKILL.md Phase 7 (meta.json written before fingerprints.json — silent failure in step 2.5 leaves stale fingerprints). That's a separate fix in a different file and is intentionally not bundled here.
dd8b724c99
·
2026-05-18 09:58:45 +08:00
History