Skip to content
SHAMPOO

Tool catalogue

lane_merge

Write · Conductor only · Jobs and lanes

lane_merge

  • Category: jobs_lanes
  • Access: write
  • Audience: administrative (ordinary users do not normally call this directly)

Purpose

Records one lane merge outcome. Call it when a lane's branch result must be memorialized as merged, conflicted, or skipped after execution and review truth exist.

Arguments

Required: lane_id, outcome.

Optional: result_commit.

  • lane_id.
  • outcome. Note: merged, conflicted, or skipped. merged needs execution done plus review approved plus a non-empty result_commit; conflicted needs in_progress or done; skipped needs a non-done lane.
  • result_commit. Note: Commit pointer recorded with the merge; required for merged.

Result

JSON object with lane_id and merge_state (the recorded outcome).

Boundaries

Requires the conductor role; the caller must also satisfy parent-quorum visibility (project scope AND participation, with conductor and star override). The pump never writes merge standing; it writes only job delivery, lease, and result facts. Operates only inside the caller's profile boundary.

Lifecycle / side effects

Records the merge outcome plus the commit pointer and records an audit/history event. Merge records; it never executes and never moves execution or review standing.

Errors

Missing conductor role is denied. Missing, malformed, or inaccessible lane reads as unknown_lane with no oracle. Gates that are not met are rejected as lane not mergeable. Unknown arguments are rejected.

Example

{
  "lane_id": "<uuid>",
  "outcome": "merged",
  "result_commit": "abc123"
}

Result shape:

{
  "lane_id": "<uuid>",
  "merge_state": "merged"
}

See also

lane_review, lane_set_state, lane_list, quorum_resolve, inbound_approve.

On this page