test(ingest): SQL connector + load-bearing + golden, detach-proven (I4)

New: test_ingest_sql.py (connector mechanics + typed rendering + dispatch), test_ingest_sql_loadbearing.py (SQL seams: typed-NULL, typed-REAL, navigability via unchanged okf), test_ingest_golden_sql.py + examples/ingest-golden-sql/ (byte-frozen sqlite golden; NULL->empty, 4200.0->4200.0 and escape discriminate a typed impl from naive ones). Updated: sql-source refusal test repointed to http (I6); manifest schema-breadth comment. Each new seam proven RED at its detach point.

Refs: shared/ingest-spec.md 11 golden + load-bearing table
This commit is contained in:
Kjell Tore Guttormsen 2026-07-04 06:56:02 +02:00
commit 4f45fe6037
11 changed files with 446 additions and 5 deletions

View file

@ -163,7 +163,7 @@ def test_base_url_embedded_credentials_rejected() -> None:
def test_sql_and_http_variants_validate() -> None:
# Schema breadth (brief assumption 1): the polymorphic §4 schema validates all three
# source variants; only the `file` connector EXECUTES in I2 (sql → I4, http → I6).
# source variants; the `file` and `sql` connectors EXECUTE (I2, I4), http → I6.
sql = ManifestV1.model_validate(
_variant(source={"type": "sql", "id": "db", "connection_ref": "PROJ_DB"})
)