Cover Public Boundaries with Integration Tests
TEST-COVER-PUBLIC-BOUNDARIES-WITH-INTEGRATION-TESTS
Summary
Use integration tests to prove public module, crate, or adapter boundaries. They catch composition failures unit tests miss, while local logic can stay unit-tested.
Rule
Cover public behavior across module boundaries with integration tests.
Why
Public behavior can break across module, crate, feature, or adapter boundaries even when unit tests pass. Integration tests prove that the pieces compose through the API shape users actually call.
Helps
- Catches wiring, visibility, feature, and cross-module regressions at the user-facing boundary.
Limits
Keep integration tests focused on public contracts. Use unit tests for dense local logic so integration tests do not become slow duplicates.
Agent Instruction
Use integration tests for public behavior that can break across modules, crates, features, or
adapters despite passing unit tests.Mechanisms
Supported by tests/ integration tests, example crates, feature-specific integration jobs, public
API fixtures, and end-to-end command tests where appropriate.