Repository navigation
feat(plan): include each changed model's diffs in plan JSON - #1407
Merged
Merged
Conversation
sqb plan --json now carries the query diff, config diff and schema findings that the text plan prints under a changed model, so other tools can show the same detail. The text plan reads the same diffs and only colours them. A plan read from the server drops the query and config diffs for someone who may not read SQL on every node, as it already did for Python diffs. A location drops model diffs from a plan that would otherwise exceed the server's size limit, so a large change still plans.
kvlonge
enabled auto-merge (squash)
November 10, 2026 23:44
…an docs skill Move the plan failure report into the shared execution helpers so the plan document module exposes only plan_document, and regenerate the bundled docs skill page for the new plan JSON keys.
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.
Why
sqb planprints each changed model's query diff, config diff and schema findings, butsqb plan --jsonleft them out, so the UI and other tools could not show the same detail.Changes
query_diff,config_diffandschema_findingsper changed model. The text plan reads the same diffs and only colours them, and its output is unchanged.models[].query_diffandconfig_difffor a reader withoutview_sqlon every current node, as it already did for Pythonidentity_diff.sqb planoutput up to eight times the plan size cap. A plan over the cap keeps its plan and drops the model diffs, instead of failing as too large to show. A failed plan is never read as a plan.BEGIN_COMMIT_OVERRIDE
feat(plan):
sqb plan --jsonnow includes each changed model's query diff, config diff and schema findings, as the text plan prints themEND_COMMIT_OVERRIDE
Verification
view_sqlgets no model diffs.-D warnings), rustfmt and fensu are clean.full-verifybuilds and tests this on main.