Skip to content

feat(typespec): nested OBJECT/STRUCT schema fidelity (item 102) - #300

Merged
discreteds merged 7 commits into
developfrom
feature/nested-struct-object-schema-fidelity
Aug 18, 2026
Merged

feat(typespec): nested OBJECT/STRUCT schema fidelity (item 102)#300
discreteds merged 7 commits into
developfrom
feature/nested-struct-object-schema-fidelity

Conversation

@discreteds

Copy link
Copy Markdown
Member

Summary

Implements item 102: recursive FieldSpec.object_fields for nested OBJECT/STRUCT schema fidelity.

  • Adds recursive plain-dict and Frictionless x-mountainash.object_fields round-trips.
  • Resolves nested struct dtypes for Polars, PyArrow, Narwhals, and Ibis schema strings; preserves Pandas' bare object representation.
  • Extracts nested struct fields recursively from Polars and PyArrow, with backend_type=None for struct fields so resolver round-trips remain valid.
  • Adds Polars-only conform stage-5e STRUCT materialization with nested inner casts and explicit non-Polars DtypeMappingError coverage.
  • Registers and documents MA-CONF-04 for ibis-sqlite struct construction limitations; regenerates coverage artifacts.
  • Marks the central design spec implemented.

Verification

  • Full suite: 23106 passed, 81 skipped, 3470 xfailed, 49 warnings.
  • Combined touched-test selection: 5852 passed, 57 skipped, 670 xfailed.
  • Nested struct smoke scenario: ALL SMOKE CHECKS PASSED.
  • Ruff: passed on modified files.
  • Mypy: reports six pre-existing diagnostics in optional-library stubs and existing extraction annotations; no diagnostics in the new resolver/conform paths.

Notes

Conform STRUCT materialization intentionally remains Polars-only, matching the design and existing LIST/category conform precedent. Cross-backend tests assert DtypeMappingError off Polars; ibis-sqlite is marked with MA-CONF-04 because it cannot construct struct-typed tables.

@discreteds
discreteds merged commit c4c2f14 into develop Aug 18, 2026
4 checks passed
@discreteds
discreteds deleted the feature/nested-struct-object-schema-fidelity branch August 18, 2026 04:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant