pub fn verify_released_schema_structure(
actual: &Connection,
domain: &SchemaDomain,
released_objects: &[SchemaObject],
build_released: fn(&Transaction<'_>) -> Result<(), Error>,
) -> Result<(), String>Expand description
Verify an on-disk predecessor against a frozen released schema builder by exact physical structure, ignoring the stored CREATE text.
Same authority boundary as verify_released_schema_fingerprint (private
in-memory builder, exact owned object names/kinds, foreign co-tenant
objects ignored), but the normalized sqlite_schema SQL is deliberately
excluded from the comparison. Pre-ledger binaries re-issued their DDL
across releases, so lexical drift the whitespace normalizer keeps (for
example identifier quoting) is not release-stable evidence for those
catalogs.
Everything PRAGMA-visible remains exact: table xinfo (column order, names,
declared types, NOT NULL, defaults, primary-key positions), foreign keys,
and explicit-index uniqueness/partiality plus xinfo (column order,
direction, collation). Text-only clauses such as CHECK constraints are
invisible here; register this verifier only for released schemas that had
none.