Test Plan¶
Unit Tests¶
Area |
First tests |
|---|---|
Identifiers |
invalid chars, empty ids, max length |
Representations |
missing sample axis, rank/axis mismatch, ragged rules |
Schema |
duplicate sample ids, duplicate sources, source validation |
Fingerprint |
source-order independence, schema hash, data-plan hash |
Plans |
unresolved choices, empty plans, declared output representation |
Planner |
fixture schema/model-input/adapters produce expected data plan |
Alignment |
stable |
Feature fusion |
singleton-source broadcast over reference repetitions, deterministic synthetic outer rows, duplicate unnamespaced column refusal, incoherent presence-mask refusal, ambiguous repeated non-reference source refusal |
Collation |
rectangular feature blocks to row-major tensors, ragged row padding, truncation side rules, presence/value-validity masks, non-numeric feature refusal |
Relations |
duplicate observations, group consistency, augmentation origin validity |
Coordinator envelope |
explicit schema version, published envelope JSON Schema version, shared conformance-pack digests, unsupported schema version refusal, schema/plan/relation fingerprint validation |
Handles |
materialization request/envelope fingerprint match, opaque data/view handle traceability, requested source-id relation scoping |
Views/features/targets |
sample/source/augmentation filtering, requested sample-order preservation, repetition-preserving identity, observation-level feature alignment, feature-column filtering, feature representation mismatch refusal, sample-level target de-duplication |
Feature buffers |
typed numeric buffer projection, duplicate feature/observation/column refusal, row-major f64 matrix shape/mask validation, finite-value validation for valid entries, deterministic manifests and fingerprints, store-level duplicate feature-set refusal, core arena bind/project/release lifecycle, source/relation coverage bindings for materialized handles |
ABI |
null pointer handling, invalid JSON, valid fingerprint, coordinator identity plus numeric target/multi-target/feature/fused-feature Arrow exports, feature-collation JSON and |
Error taxonomy |
Rust |
Conformance Tests¶
Add after providers exist:
handle arena refuses schema/plan/relation mismatch and missing required relations;
provider views return identical identity, feature and target rows independent of handle order;
provider-backed multi-source feature fusion matches the pure Rust fusion kernel for repeated reference rows, missing sources and outer joins;
provider-backed feature collation matches the pure Rust collation kernel for single-source and fused feature blocks, in both JSON and
DagMlDataTensorF64ABI-owned forms;production provider buffer arenas expose the same data-handle binding manifests as the in-memory conformance provider;
Python and Rust providers return identical provider-vtable identity, feature and target Arrow tables;
path solver returns same plan independent of adapter registration order;
schema fingerprint rejects incompatible predict-time schemas.