Create the stale state
- 1Create two Proposal Branches from the same accepted Plan Version.
- 2Validate and approve the first Branch in the Studio.
- 3Switch to the second Branch; its base version now trails the accepted Plan.
- 4Confirm the Branch shows STALE before attempting further review.
Detect conflicts
Use the Branch ID returned when you created the second Branch.
json
{
"tool": "venue.detect_proposal_conflicts",
"input": {
"branchId": "branch-3"
}
}- Read every conflict type, affected object ID, blocking state, and permitted resolution.
- A deleted dependency or effective Lock must remain explicit.
Rebase and resolve
json
{
"tool": "venue.rebase_proposal",
"input": {
"branchId": "branch-3",
"idempotencyKey": "tutorial-rebase-001"
}
}- 1Resolve remaining same-object or geometry conflicts with keep-plan, keep-proposal, or manual resolution only where the conflict permits it.
- 2Run venue.validate_layout again.
- 3Review any transformed Change with its new ID and lineage.
Completion criteria
- Unchanged Changes retain their stable Change IDs.
- Transformed Changes receive new IDs with explicit lineage.
- Validation evaluates the rebased fingerprint.
- Approval is enabled only after all blocking conflicts and hard failures are cleared.
Verify the workflow
Run the executable fixture from the repository root. Completion requires a zero exit code.
bash
node --test tests/venue-planner.test.mjs