Aggiungi CreoBom.cs: parser esatto del formato .asm via record binari

Porting C# del reverse engineering della struttura a record del .asm Creo
(sezione "members" + parametro "ConfigName" per le family table): legge
esattamente i componenti diretti e genera la stessa BOM esportata da Creo,
senza le euristiche testuali (conteggio occorrenze) di AssemblyComponentScanner.
Resta uno script di analisi indipendente, non integrato nella GUI.

Aggiorna anche formato-asm.md (non e' piu' vero che "non esiste un parser
strutturale") e architettura.md (script mancante nell'elenco).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
davideandClaude Sonnet 5 committed 2026-09-21 15:41:14 +02:00
1 parent 3cfc040fb0
commit 35009b5cd3
4 files changed
+631 -4

No files matched your search

+5
View File
@@ -151,6 +151,11 @@ dipendenze extra con `#:package Nome@versione` in testa al file):
Pro-E).
- **BomViaDb.cs** — come sopra ma con la tokenizzazione generica validata contro il DB, per
intercettare anche i nomi alfabetici delle parti commerciali.
- **CreoBom.cs** — indipendente dagli altri: legge esattamente la struttura a record del
binario `.asm` (sezione `members` + parametro `ConfigName`, vedi
`docs/formato-asm-record.md`) invece di contare occorrenze di codici nel testo. Risolve i
sottoassiemi cercandoli in cartelle locali (`-p`), non contro `cad_index.db`. Non sostituisce
l'euristica di `AssemblyComponentScanner` nella GUI né negli altri script.
- **Analyze.cs** — dump del contesto testo/hex attorno a un pattern in un file binario, per
investigare a mano nuovi falsi positivi prima di toccare la regex di
`AssemblyComponentScanner`.