actions/* + lib/* + CHANGELOG — merge upstream 0.6.0 onto the forge tree, and port every gh call site it brought (#198) #204
1 changed files with 47 additions and 43 deletions
90
BUILDER.md
90
BUILDER.md
|
|
@ -150,52 +150,56 @@ such as the panel roster live in that repo's own CONTRIBUTING.)
|
||||||
That repo's `.github/labels.conf` governs over its CONTRIBUTING roster,
|
That repo's `.github/labels.conf` governs over its CONTRIBUTING roster,
|
||||||
being what the state machine reads; where it names no roster, ask triage
|
being what the state machine reads; where it names no roster, ask triage
|
||||||
on the authorizing issue rather than guess. An off-panel reviewer may be
|
on the authorizing issue rather than guess. An off-panel reviewer may be
|
||||||
requested, said to be advisory and not required. **A review request
|
requested, said to be advisory and not required.
|
||||||
requires a green check at the head**, whether or not an engine enforces
|
|
||||||
it: a red check is the author's own signal, so fix it and push, then
|
**A review request requires a green check at the head**, whether or not
|
||||||
request. The one exception is a failure genuinely outside the PR — a
|
an engine enforces it: a red check is the author's own signal, so fix it
|
||||||
runner outage, a flaky dependency, a failure already on the default
|
and push, then request. The one exception is a failure genuinely outside
|
||||||
branch — and only where the request says so and names the evidence ("the
|
the PR — a runner outage, a flaky dependency, a failure already on the
|
||||||
same job fails identically on `origin/main` at `<sha>`"); silence about a
|
default branch — and only where the request says so and names the
|
||||||
red check is what is prohibited, and an argued exception shifts the
|
evidence ("the same job fails identically on `origin/main` at `<sha>`");
|
||||||
burden to the author. *Green* is a ruled term (operator, 2026-07-27),
|
silence about a red check is what is prohibited, and an argued exception
|
||||||
read in two steps. **First take the check's word at this head**: its
|
shifts the burden to the author.
|
||||||
newest entry by start time — not completion, a cancelled run outliving
|
|
||||||
its replacement's start — and never a `CANCELLED` entry while the same
|
*Green* is a ruled term (operator, 2026-07-27), read in two steps.
|
||||||
check has a non-cancelled one there. A check whose entries at the head
|
**First take the check's word at this head**: its newest entry by start
|
||||||
are all cancelled has not reported at all and is not green — a collapse,
|
time — not completion, a cancelled run outliving its replacement's start
|
||||||
not a new class, and the gate partitions alike, dropping a cancelled
|
— and never a `CANCELLED` entry while the same check has a non-cancelled
|
||||||
entry only where a non-cancelled survivor remains and leaving an
|
one there. A check whose entries at the head are all cancelled has not
|
||||||
all-cancelled context blocking (#139, #276). **Then classify that entry
|
reported at all and is not green — a collapse, not a new class, and the
|
||||||
by `conclusion`, never `status`**, which can disagree with it (#259). No
|
gate partitions alike, dropping a cancelled entry only where a
|
||||||
conclusion is not green: a configured run in progress is waited on, and
|
non-cancelled survivor remains and leaving an all-cancelled context
|
||||||
waiting is compliance, not a stall. Cancelled or stale is not green,
|
blocking (#139, #276). **Then classify that entry by `conclusion`, never
|
||||||
*stale* being a superseded head's check, which a head-scoped rollup never
|
`status`**, which can disagree with it (#259). No conclusion is not
|
||||||
shows. Skipped or neutral is green, those being deliberate "passed / not
|
green: a configured run in progress is waited on, and waiting is
|
||||||
applicable" conclusions. No checks configured is green — the third ruled
|
compliance, not a stall. Cancelled or stale is not green, *stale* being a
|
||||||
case, not an argued exception, so the request goes out at once with no
|
superseded head's check, which a head-scoped rollup never shows. Skipped
|
||||||
evidence owed; that never covers nothing-answered-yet, and the machine
|
or neutral is green, those being deliberate "passed / not applicable"
|
||||||
partitions alike, admitting the ask on `SUCCESS` and `NONE` (#236). The
|
conclusions. No checks configured is green — the third ruled case, not an
|
||||||
costs behind the line are asymmetric: a false green spends a
|
argued exception, so the request goes out at once with no evidence owed;
|
||||||
three-reviewer round, a false red one author session. What the machine
|
that never covers nothing-answered-yet, and the machine partitions alike,
|
||||||
drops from the rollup before grading is crew's to describe.
|
admitting the ask on `SUCCESS` and `NONE` (#236). The costs behind the
|
||||||
|
line are asymmetric: a false green spends a three-reviewer round, a false
|
||||||
|
red one author session. What the machine drops from the rollup before
|
||||||
|
grading is crew's to describe.
|
||||||
2. **Wait for every verdict, then answer the round whole** — one reply
|
2. **Wait for every verdict, then answer the round whole** — one reply
|
||||||
covering every point, stating what changed and what was verified. That
|
covering every point, stating what changed and what was verified. That
|
||||||
reply is the written record: the engine mirrors it under the PR body's
|
reply is the written record: the engine mirrors it under the PR body's
|
||||||
**Round log**, newest last, marked with the round's head so a retry is a
|
**Round log**, newest last and marked with the round's head, which makes
|
||||||
no-op, so you owe the reply and no body edit; a round answered without
|
a retry a no-op; you owe the reply and no body edit, and a round answered
|
||||||
one is recorded as such and never blocks handoff. Then push the fixes and
|
without one is recorded as such and never blocks handoff. Then push the
|
||||||
re-request **by head, not by verdict**. A push makes every approval stale
|
fixes and re-request **by head, not by verdict**. A push makes every
|
||||||
— an approval is of a specific tree, and the handoff predicate counts
|
approval stale — an approval is of a specific tree, and the handoff
|
||||||
only approvals at the current head — so **every panelist is re-requested,
|
predicate counts only approvals at the current head — so **every panelist
|
||||||
approvers included**; one left un-re-requested can never approve the tree
|
is re-requested, approvers included**; one left un-re-requested can never
|
||||||
you shipped (#26, #39). Only where the head did not move — answered with
|
approve the tree you shipped (#26, #39). Only where the head did not move
|
||||||
argument or evidence, nothing pushed — do you re-request just the
|
— answered with argument or evidence, nothing pushed — do you re-request
|
||||||
non-approvers, the engine absorbing a re-request at an unchanged head —
|
just the non-approvers; the engine absorbs a re-request at an unchanged
|
||||||
its mechanism crew's to describe (#94). **The re-request carries the same
|
head, and its mechanism is crew's to describe (#94). **The re-request
|
||||||
green-check-at-head precondition**, argued exception included: a fix push
|
carries the same green-check-at-head precondition**, argued exception
|
||||||
whose check comes up red is your next fix, not the panel's. Prefer
|
included: a fix push whose check comes up red is your next fix, not the
|
||||||
verification over argument — add the test that settles the doubt.
|
panel's. Prefer verification over argument — add the test that settles
|
||||||
|
the doubt.
|
||||||
3. Never dismiss a review, never merge, never mark your own work as passed.
|
3. Never dismiss a review, never merge, never mark your own work as passed.
|
||||||
A blocking point you disagree with is answered with evidence or escalated
|
A blocking point you disagree with is answered with evidence or escalated
|
||||||
in the PR; silence and force-forward are not options, and a panel
|
in the PR; silence and force-forward are not options, and a panel
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue