Applying changes
When the workspace is ready, buildprint apply pushes your committed local changes back to Bubble. It is the final step of the sync → edit → check → apply loop.
buildprint applyWhat apply does
Runs
buildprint checkin memory against the current worktree. Any error-level issues abort the apply.Auto-commits any uncommitted changes in the workspace with the message
Apply from <appId>/<branch>. If you want different commit messages, commit before running apply.Diffs the committed state against the Bubble snapshot ref for the current branch, compiles a minimal set of Bubble
/writeoperations, and sends them.On success, advances the local snapshot ref to match what Bubble now contains.
buildprint apply always emits a JSON summary. Shape: { ok, appId, branch, seconds, kind: "applied" | "unchanged", applied, summary? }. Scripts can rely on that line.
Positional args
buildprint apply <appId> <branch>If you pass positional appId and branch, they must match the values inferred from the workspace. A mismatch fails immediately with a clear message - it is a safety net, not a way to redirect the apply.
What apply refuses to do
Apply from a workspace whose branch folder name doesn't match the checked-out git branch.
Apply with open error-level check issues unless
--no-checkis set.Apply an obviously tiny local snapshot over a large workspace without
--allow-large-apply.
When Bubble rejects the write
Bubble can refuse the write if the user has not granted permissions. This is only applicable within Buildprint sandboxes, where we enforce branch / editing permissions. If using the Buildprint CLI on your own local machine, we do not enforce editing or branch restrictions.
Previewing before applying
Use
git diffandgit statusto review your local changes.Run
buildprint check(with--allif you want full coverage) to catch issues before apply.