tree_commit
Apply change-sets atomically while preserving the tree's invariant: refuse any set that creates new rule violations unless each is explicitly acknowledged, preventing silent red-state changes.
Instructions
Apply a change-set — [{op: 'set'|'delete', path, node?}] — atomically,
under authoring's one invariant: the committed tree's red set never changes
silently. Green stays green; a set that would CREATE reds is refused whole
(nothing written) and returns them by name; commit deliberately by naming
each in acknowledge — the acknowledgment is recorded on the root. Use
this over bare tree_set when a change should stand or fall with its
consequences; drafts that are legitimately incomplete belong in one
change-set with what completes them.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| changes | Yes | ||
| acknowledge | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||