Change Validation¶
Change validation should make it obvious whether a package edit is safe, risky, or mis-scoped.
Validation Model¶
flowchart LR
meaning["shared type or schema meaning"]
downstream["downstream consumer proof"]
migration["migration proof"]
verdict["safe, risky, or mis-scoped"]
meaning --> downstream --> migration --> verdict
This page should frame validation as consumer protection. Foundation changes are safe only when shared meaning, migrations, and downstream use still line up without silent coercion.
Review Rules¶
- validate every shared-type change against downstream consumers
- require migration proof for durable payload changes
- reject silent coercion that hides a breaking semantic shift
First Proof Check¶
packages/bijux-proteomics-foundation/testssrc/bijux_proteomics_foundation/schema.pyandmigrations.pysrc/bijux_proteomics_foundation/serialization.py
Design Pressure¶
Foundation validation fails when migration success is treated as enough proof on its own. The package has to prove that durable meaning still matches what downstream consumers believe they are reading.