Make a small fix in mesh-sdk or mesh-controller ride with the milestone's release, so each is delivered once per milestone

This commit is contained in:
2026-10-21 18:04:49 +02:00
parent d5d8212204
commit c6fc663019
3 changed files with 17 additions and 3 deletions
+2
View File
@@ -57,6 +57,8 @@ opened once and delivered once. It is never cut into steps for its size or for t
merge check, an Approve and a delivery plan of waiting, so the fewest cuts is the fastest. Milestones are cut by
release order when the design is broken up (playbook [04](04-build-handoff.md)); a release-order dependency found
inside a milestone is a fault of that cut, said to the operator, never a silent extra step.
mesh-sdk and mesh-controller each have one release per milestone: a small fix in either rides with it, as
playbook [08](08-small-fixes.md) says.
**One design is built at a time** (the operator, 2026-10-17). While the milestones of one design are being
built, no milestone of another design starts: its issues stay `open`, and nobody moves them to `diagnosing` or
+12
View File
@@ -16,6 +16,15 @@ hour is a feature.
**Who runs it.** Anyone who writes code, engineers and agents alike.
**A fix to mesh-sdk or mesh-controller rides with the milestone's release** (the operator, 2026-10-21, after a day
with ten mesh-sdk merges, each rebuilding about forty dependent modules, and eight mesh-controller merges, each
sending a delivery to every node). Playbook [07](07-feature-branches.md) makes a milestone one release; mesh-sdk
and mesh-controller each have one release per milestone, and a small fix in either does not merge alone. It is
built on a branch of its own as above, but merged into the running milestone's release branch of that repository
and reviewed there with the rest of the release. The exception is a fault that is broken for the operator now
(something they see failing at this moment): it goes alone as a small fix, and the lead's report says why. With no
milestone running in that repository, the fix starts one release of its own.
## The aim
A small fix spends its time on the fix, and runs the long part once: **one try before the review, one review, one check run,
@@ -117,5 +126,8 @@ reading itself and uses one subagent only for the review.
(`git grep -n '<issue>/AC<n>'`); one without is step 1 skipped.
- An issue in `fixing` with nobody on it shows in `issue-tracker.list` with `flag: abandoned`; a stopped fix
moves it back to `open` with its note.
- A fix in mesh-sdk or mesh-controller is named in the lead's report with the release it rides with, or with the
reason it went alone; `mesh-delivery.deliveries` shows at most one merge of each of these repositories per
milestone, plus the reported exceptions. A second merge without a reported reason is this rule skipped.
- The repository's own clone says `main` (`git -C <clone> branch --show-current`); another branch there is a
fix built outside a worktree (issue 1010).
+3 -3
View File
@@ -473,11 +473,11 @@ const P = [
{n:"08",name:"Small fixes",kind:"build",c:"--build",
trig:"One issue in one repository, about an hour of work.",
who:"The session, with one reviewer on the larger model.",
steps:["Read the issue and the code; settle any open question.","Write the acceptance criteria.","Move the issue to fixing.","Build on fix/<issue>-<slug> in its own worktree.","A test that fails today first, on behaviour. (new)","Push and try before the review. (new)","One review of the commit and its try.","Push the reviewed head; open the pull request.","The operator's Approve; the merge; the delivery plan.","Prove the fix live and resolve the same hour."],
steps:["Read the issue and the code; settle any open question.","Write the acceptance criteria.","Move the issue to fixing.","Build on fix/<issue>-<slug> in its own worktree.","A test that fails today first, on behaviour. (new)","Push and try before the review. (new)","One review of the commit and its try.","Push the reviewed head; open the pull request.","The operator's Approve; the merge; the delivery plan.","Prove the fix live and resolve the same hour.","In mesh-sdk or mesh-controller: ride with the milestone's release, unless broken for the operator now. (new)"],
prod:"One pull request, one delivery, a resolved issue.",
next:"—",bounds:"About an hour · one try before the review, one review, one check",
prev:["A fix reviewed after its pull request opened","A long part run twice","A fix waiting on someone else's delivery"],
check:"The forge's checks; the review record; the tracker's move."},
prev:["A fix reviewed after its pull request opened","A long part run twice","A fix waiting on someone else's delivery","Ten SDK merges and eight controller merges in a day"],
check:"The forge's checks; the review record; the tracker's move; one merge of each shared repository per milestone."},
{n:"09",name:"Cleanup",kind:"side",c:"--side",
trig:"The operator asks, or merged branches, stale pull requests and old worktrees pile up.",
who:"A session on the operator's word; the operator decides every deletion.",