Tracker
Roadmap search
Versions, deliverables, workstreams, tasks, and pages
Contracts and edge cases
articleStandard
src/content/docs/platform-spec/compiler/codegen-and-ir/lowering-contract/contracts-and-edge-cases.mdx
import SpecArticleChrome from '@beskid/beskid-ui/platform-spec/SpecArticleChrome.astro';
<SpecArticleChrome />Normative contracts
- Producer crates must emit data in a shape accepted by downstream consumers.
- Consumer crates must not silently reinterpret the contract surface.
- Contract regressions must be captured as compile-time or test-time failures, not hidden runtime drift.
Edge cases to monitor
- Partial refactors that update only one side of a crate boundary.
- Symbol/name changes that compile locally but break cross-crate integration.
- Fixtures that pass in isolation but fail in end-to-end harnesses.
Failure handling expectations
When contract checks fail, diagnostics should point contributors to the responsible boundary crate and to the corresponding conformance fixture.