Add tiered .asc parser with companion netlist resolution

Implement three-tier resolution for LTspice .asc schematic files:

1. Companion netlist - finds .net/.cir/.sp beside the .asc (automatic)
2. LTspice generation - invokes LTspice binary (opt-in via --generate-netlist)
3. Metadata-only fallback - extracts component refs/values without connectivity

Safety: DataCompleteness enum forces callers to check completeness.
CLI blocks diagram generation on METADATA_ONLY with clear remediation.
Metadata enrichment is additive-only with protected field guards.

Also: update project URLs to Gitea, add .asc usage docs to README,
fix pre-existing ruff warning in test_single_module.py.
This commit is contained in:
Ryan Malloy 2026-02-13 04:59:03 -07:00
parent ad03798b4d
commit 08c92bfefb
9 changed files with 833 additions and 61 deletions

View file

@ -186,7 +186,7 @@ class TestSingleModuleLayoutOptimization:
[{"H": [1, 3]}, {"W1": [1, 2]}, {"CA": [1, 2]}],
[{"H": [2, 4]}, {"W2": [1, 2]}, {"CB": [1, 2]}],
]
result_c, _, result_cn = _optimize_single_layout(
result_c, _, _result_cn = _optimize_single_layout(
"H", connectors, {}, connections
)
# Header should be regrouped: [A1, A2, B1, B2]