diff --git a/03-DESIGN/01-to-be/47-delivery-from-commit-to-delivered.md b/03-DESIGN/01-to-be/47-delivery-from-commit-to-delivered.md index e57c90ee..4a17493d 100644 --- a/03-DESIGN/01-to-be/47-delivery-from-commit-to-delivered.md +++ b/03-DESIGN/01-to-be/47-delivery-from-commit-to-delivered.md @@ -4,6 +4,7 @@ status: in-progress code: [mesh-controller, mesh-catalog modules/mesh-delivery] updated: 2026-10-16 decisions: + - "ADR 0395" - "ADR 0382" - "ADR 0350" - "ADR 0335" @@ -389,6 +390,17 @@ only once it is built. A group's state is derived from its members and its composed check, and is shown, never stored apart from them. + +## A move of the trunk asks every check again + +*ADR 0395, changing ADR 0323 ยง4.* When the forge's holder hears a repository's trunk move, mesh-delivery asks the +check of every active open pull request into that trunk against its new head at once, so a verdict is current by +the time anyone looks. A pull request has at most one check at a time: a check against an older trunk commit, +waiting or running, is dropped or ended when a newer one is asked for it, as a new head already ends its old head's +check (issue 726). The build queue keeps delivery builds first; then checks of pull requests marked ready, then the +rest, the most recently pushed first. A pull request with no push and no ready mark for 7 days is left out until a +push, a ready mark or a recheck wakes it. A recheck also takes a delivery that is still proposed (issue 888). + ## What every transition does In this order, each by its owner: