diff --git a/00-META/process/07-feature-branches.md b/00-META/process/07-feature-branches.md index 1a13b2d6..442d6498 100644 --- a/00-META/process/07-feature-branches.md +++ b/00-META/process/07-feature-branches.md @@ -57,8 +57,13 @@ 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. +A milestone is one piece of functionality, possibly spanning several modules, repositories and dependencies such as +an SDK change (the operator, 2026-10-21). Its pull requests in every repository share the milestone's branch name, +so they are one delivery group (ADR 0482, which holds that a change across repositories is one group, one plan and +one Approve, and that its developer orders no release). Nothing of the milestone merges until every issue of it is +built, reviewed and checked; then the one Approve and one tiered delivery plan release it all, the plan's tiers +keeping a dependency such as the SDK before its dependents. A small fix found during the milestone rides in this +group, 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 diff --git a/00-META/process/08-small-fixes.md b/00-META/process/08-small-fixes.md index 62050f49..11f887fb 100644 --- a/00-META/process/08-small-fixes.md +++ b/00-META/process/08-small-fixes.md @@ -16,14 +16,13 @@ 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 branch of that repository (playbook 07's shared feature branch) -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. +**A fix found during a milestone rides in that milestone's group** (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 piece of functionality +released once as one delivery group (ADR 0482). A small fix in a repository the running milestone touches, mesh-sdk +and mesh-controller above all, is built as below but on the milestone's branch, so its pull request joins the group +and merges with it. 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. ## The aim @@ -126,8 +125,8 @@ reading itself and uses one subagent only for the review. (`git grep -n '/AC'`); 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. +- A fix found during a milestone is named in the lead's report with the group it rides in, or with the reason it + went alone. `mesh-delivery.deliveries` shows the milestone's members in one group and one delivery plan per + milestone; a merge of mesh-sdk or mesh-controller outside the group, with no reported reason, is this rule skipped. - The repository's own clone says `main` (`git -C branch --show-current`); another branch there is a fix built outside a worktree (issue 1010). diff --git a/00-META/process/playbooks.html b/00-META/process/playbooks.html index 365f89fc..7a84f58b 100644 --- a/00-META/process/playbooks.html +++ b/00-META/process/playbooks.html @@ -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/- 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)"], + steps:["Read the issue and the code; settle any open question.","Write the acceptance criteria.","Move the issue to fixing.","Build on fix/- 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.","During a milestone: ride in its delivery group, 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","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."}, + 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, one per fix"], + check:"The forge's checks; the review record; the tracker's move; one delivery group and one delivery plan 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.",