Cut a branch per release
A release branch cut from main is the snapshot everything is built from. Building from main while main moves is the bug that makes two artifacts in one release disagree.
Verify the pair
A test that runs the application against its stated library version, run as part of the release. That test is the only thing that makes the pair a fact rather than a note.