Skip to content

Contract boundary tests #11

@RBhupi

Description

@RBhupi

Add unit tests for contracts and module boundaries

contracts/ defines the interfaces that all modules depend on. There are no tests verifying that contract types are enforced at module boundaries or that invalid inputs are rejected before entering pipeline logic.

  • Passing a wrong type at a contract boundary raises immediately
  • Missing required field in contract dataclass raises on construction
  • Each module's run() output satisfies the downstream module's input contract
  • No module imports directly from another module (enforced via import check)

Constraints
Pure unit tests — no pipeline execution, no real data
Import boundary test can use ast or importlib to inspect dependencies statically

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions