Expand description
The node’s own merge queue (D68).
The bridge queues pull requests from somebody else’s forge. A node
has no pull requests; it has proposals, which are pushes to
refs/for/<branch>/<user>/<topic> admitted by the propose grant
(D53, D60). This is the reading that turns those refs into a round,
and the landing that writes the round’s result back where the log
decides.
Two things differ from the bridge’s composition, and both come from the same fact: here the log is the source of truth.
- A landing is real. It moves
refs/heads/<branch>, so it is anOpKind::SetRefcarrying the value the round started from as its compare-and-swapprev. A push that beat the round makes the landing fail rather than clobber. - The node moves no git ref itself.
crate::Platform::reconcile_git_refsalready treats a commit the log names and git does not as git being behind, and writes it. The log leads and git follows, which is the direction D21 fixed.
Structs§
- Proposal
- One proposal in a round.
- Proposal
Round - The proposals aimed at one branch of one repository, plus the base they are aimed at.
- RefLanding
- Lands by moving the branch the proposals were aimed at (D68).
Constants§
- QUEUE_
CHANNEL - The channel the node’s queue authors under.
Type Aliases§
- Scope
Source - Where a landing reads the scope it signs: this node’s id and a head its window still holds.