v0.1.12 — Performance + migration hotfix
Performance (measured against real 76-table store):
db_get_schema444 → 0 SQLite calls per invocation (batched column knowledge lookup, was N+1)load_config()now cached at module level — was re-parsing TOML on every tool callget_relationshipsBFS now loads all edges once, traverses in pure Python — no lock held during traversalsave_cached_schema+discover_relationships_bulkconverted toexecutemany
Critical hotfix on top of v0.1.11:
The v0.1.11 column-case migration crashed with PRIMARY KEY constraint violation when two mixed-case rows would lowercase to the same key (e.g. JobStatus and JOBSTATUS both → jobstatus). Affected anyone upgrading from v0.1.10 → v0.1.11 with pre-existing annotations.
Fix: dedupe in Python (last write wins) and rewrite the table atomically. Idempotent guard so the migration only runs when needed.
Tests: 185/185 pass.