Sync Boatstack from Intelligence Flow Labs @ 2364eaedaefb - #130
Merged
operator-stack-publisher[bot] merged 1 commit intoJul 27, 2026
Merged
Conversation
operator-stack-publisher
Bot
deleted the
sync/intelligence-flow-2364eaedaefb
branch
July 27, 2026 07:25
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this sync releases
Migrations are graded by running them, not by reading them
The guard treats a committed migration as data. A migration file, however destructive its SQL looks,
does not change any database by sitting in a diff; the deploy pipeline applies it later. So the guard
allows it, which is why committing a migration no longer blocks work. The open question was how to catch
a migration that is genuinely unsafe, since its text alone cannot tell you.
This release adds effect grading. A project can declare how its migrations are applied and verified. The
grader runs those commands against a fresh, disposable database, then reads the result: the migration
passes only if it applies and the verification holds, and fails otherwise. The database is provisioned
per run and torn down after, so the effect is real but contained. A project that declares no such
commands is unaffected — grading is skipped.
This puts the judgment where it belongs. The static guard never guesses a migration's effect from its
text; the effect is observed by executing it in a sandbox, the same way the deploy pipeline would. A
safe forward change grades clean, and a change that drops a populated table is caught — the exact case
the text-only guard cannot and should not decide.
Projection provenance
Generated from
operatorstack/intelligence-flow@2364eaedaefbe73d8996108dfac261c38b0ce2b3.Review provenance, tests, and examples before merging.