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.

References