Files
zeekay b02994124a control-plane stores through hanzoai/orm, and opens without cgo
gorm is gone from the module. The schema layer runs on hanzoai/orm/relational
over hanzoai/sqlite; the query layer is untouched, because it was already raw SQL
on a *sql.DB — 81 such calls against 39 gorm references in one 7000-line file.

This also makes the package work cgo-free for the first time. It opened through
mattn, whose cgo-free build is a stub that accepts sql.Open and fails at the
first statement: `Binary was compiled with 'CGO_ENABLED=0' ... This is a stub`.
Measured on the storage suite: 63 failures before, 0 now, on BOTH builds. No test
that passed before fails now.

The schema is unchanged where it counts. Same 30 tables. Compared index by index
on what each one indexes — table, columns, uniqueness — nothing was lost. Index
NAMES move to xorm's IDX_/UQE_ convention, and did_registry's uniqueness on
root_did becomes a named index instead of an inline table constraint: the same
guarantee, differently expressed. No FOREIGN KEY was dropped because this schema
declared none. NOT NULL rises from 111 to 133 — stricter, and only on a database
created fresh, since Sync2 adopts an existing one rather than rebuilding it.
2026-08-21 08:30:52 -07:00
..