jochen
6b49ed613c
ADR 0287: a seat names the paths its holder owns, so a file's owner is read from the seat (issue 412, research 023)
2026-10-10 21:57:24 +02:00
mesh-admin
3cce6dda4b
Merge pull request 'ADR 0288: the object store stays on the maintained fork, and Garage is chosen only after the consumers' S3 features are counted (issue 413)' ( #300 ) from decisions/0288-the-object-store-after-minio into main
2026-10-10 19:54:13 +00:00
jochen
fb2d5d9f7f
Name what checks the fork's triggers and track the mirroring question and the missing kept-by (issues 421, 413)
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
2026-10-10 21:52:00 +02:00
jochen
b6c592cb9d
Record the maintained MinIO fork as the object store, and choose Garage only after the consumers' S3 features are counted (research 015, issue 413)
2026-10-10 21:52:00 +02:00
mesh-admin
16cfe6d8c3
Merge pull request 'Close ten research efforts their decisions already settled (issue 408)' ( #298 ) from fix/408-close-settled-research into main
2026-10-10 19:51:42 +00:00
jochen
907051c21d
Keep 012 and 027 open and give every leftover of the closed efforts an issue (issue 408)
...
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
The review found questions no record decides: 012's minimum-viable-node
half and 027's packaging, secrets, sizing and leftovers questions, so both
stay active. Where the record lives (006) is issue 414, and 037's two
other leftovers are issues 415 and 416; to-be 06 now points at issue 414.
2026-10-10 21:48:28 +02:00
jochen
f515d8b6b2
Close twelve research efforts their decisions already settled (issue 408)
...
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery superseded: a newer head of the same pull request
Ten graduated and two abandoned efforts still said active, so the record
read as open questions that later ADRs and designs had answered. Each now
names in became: what decided or overtook it. To-be 45's undecided item
moves from research 017 to issue 409, and research 037's shell follow-up
is issue 410.
2026-10-10 21:43:53 +02:00
mesh-admin
90666a4ac3
Merge pull request 'Renumber the fixing-status record to ADR 0284 (issue 406)' ( #296 ) from fix/renumber-0283-fixing-to-0284 into main
2026-10-10 19:42:41 +00:00
jochen
ace8f6c398
Renumber the fixing-status record to ADR 0284 (issue 406)
...
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
hq #294 (issue 386) and #295 (issue 399) both merged a record numbered 0283;
#294 landed first and keeps it. The branch that lands last renumbers.
2026-10-10 21:35:34 +02:00
mesh-admin
61255b56d4
Merge pull request 'ADR 0283: an agent moves an issue to fixing under its own name, and an issue is resolved only from fixing (issue 399)' ( #295 ) from feat/399-fixing-status into main
2026-10-10 19:13:24 +00:00
mesh-admin
536b193c7b
Merge pull request 'ADR 0283: a part waiting for the operator's secret or setting is said as waiting and passes the first-node gate (issue 386)' ( #294 ) from feat/386-a-wait-for-the-operator into main
2026-10-10 19:10:46 +00:00
jochen
2648d571b3
Point ADRs 0240 and 0254 at ADR 0283, bound a family member's name, and say the cost of a setting wait
...
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery-group group feat/386-a-wait-for-the-operator delivered: every member is delivered
From the review of hq#294.
2026-10-10 21:08:40 +02:00
jochen
8cdc9706e1
Use role names, not node names, in the worker examples (public repository)
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery-group group feat/399-fixing-status delivered: every member is delivered
2026-10-10 21:08:25 +02:00
jochen
21973e2e4a
ADR 0283: an agent moves an issue to fixing under its own name, and resolves only from fixing (issue 399)
...
mesh/delivery-group group feat/399-fixing-status checking: 0 of 2 member(s) ready
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery superseded: a newer head of the same pull request
Two agents could start on one issue without seeing each other, and an issue
could be resolved without anyone having said they started its fix. Adds the
status fixing, the issue's worker (by, who@node) with take-over and a stale
bound, and resolved only from fixing; settles what to-be 53 left out as
claims, under the new glossary word worker. Amends to-be 53, playbook 03 and
the hq-diagnose and hq-status skills, with pointer notes on ADR 0275 and 0281.
2026-10-10 21:07:13 +02:00
jochen
242a6c548b
ADR 0283: a part waiting for the operator's secret or setting is said as waiting and passes the first-node gate (issue 386)
...
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery-group group feat/386-a-wait-for-the-operator checking: 1 of 2 member(s) ready
mesh/delivery superseded: a newer head of the same pull request
A module whose only unhealthy part waited for the operator's secret failed
its gate, held every later walk and told the operator there was nothing to
do. The record adds a waits answer and a waiting state, checked by the
controller, read by the gate as waits for a person, and said as a
needs-operator condition naming the act; and secret families so each SMB
source's password is one hidden line at the desk prompt.
2026-10-10 21:05:29 +02:00
mesh-admin
5f4ff3a80b
Merge pull request 'To-be 47: handed to mesh-controller and mesh-delivery for ADR 0282's first slice (issue 382)' ( #291 ) from design/47-handoff-delivery-budget-slice-1 into main
2026-10-10 18:16:55 +00:00
mesh-admin
9e6f78f5eb
Merge pull request 'Accept ADRs 0164-0166 and cite them in to-be 42 (issue 398)' ( #293 ) from decisions/accept-0164-0166 into main
2026-10-10 18:04:25 +00:00
jochen
15d5383a94
Accept ADRs 0164-0166 and give them a home in to-be 42
...
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
The operator accepted them on 2026-10-10. The runtime seat and the default
half of declared settings are live; the rest is tracked by issue 398. To-be 42
cited them only as waiting, so it now names them.
2026-10-10 20:03:04 +02:00
mesh-admin
c6ed41c5ab
Merge pull request 'Accept ADR 0242: a recorded build moves only by a person's push' ( #292 ) from decisions/accept-0242 into main
2026-10-10 18:02:10 +00:00
jochen
a3e962f880
Accept ADR 0242: a recorded build moving only by a person's push is built and live
...
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
mesh-controller #115 and mesh-catalog #106 shipped it (issue 295 resolved);
upgrade shows mailu as record under this ADR, and to-be 44 and 45 cite it.
2026-10-10 20:00:40 +02:00
jochen
2995ea9e05
Hand to-be 47 over to its builders: ADR 0282's first slice starts in the controller and mesh-delivery
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
2026-10-10 19:59:33 +02:00
mesh-admin
8eca7b921e
Merge pull request 'ADR 0282 (proposed): a leaf fix runs healthy on every node within five minutes of its merge, a core module within ten' ( #289 ) from decisions/0282-a-leaf-fix-runs-healthy-everywhere-within-five-minutes-of-its-merge into main
2026-10-10 17:59:02 +00:00
jochen
0a6172640c
Accept ADR 0282: the operator decided the delivery budgets on 2026-10-10
...
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
To-be 47 lists the record among its decisions, ADR 0236 and ADR 0276 say
where their mechanism moves, and the glossary drops 'proposed'.
2026-10-10 19:57:07 +02:00
mesh-admin
e08aaae484
Merge pull request 'Research 044: the operator's direction, a mesh-monitor module, is the leading hypothesis' ( #290 ) from research/044-mesh-monitor-hypothesis into main
2026-10-10 17:56:56 +00:00
jochen
8b6c306cfd
ADR 0282: a core send sets aside a leaf judgement; the window row says how it was split; the repository rule cites ADR 0276
...
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery superseded: a newer head of the same pull request
From the independent review: a core delivery could wait on a leaf judgement past
its ten minutes, the window figure's split was not stated beside it, and the
one-repository rule was credited to the wrong issue.
2026-10-10 19:53:36 +02:00
jochen
f2250b4471
Research 044: the operator's direction, a mesh-monitor module, is the leading hypothesis
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
2026-10-10 19:52:05 +02:00
jochen
9414855fbe
ADR 0282 (proposed): a leaf fix runs healthy on every node within five minutes of its merge, a core module within ten
...
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery superseded: a newer head of the same pull request
The operator asked that a bug fix land on every node in under five minutes. 51
walks measured from the controller's own records put a leaf walk at a median of
6.0 minutes (7 of 20 within five) and say where the time goes: waiting behind
another walk, the first-node judgement, the merge window. The record weighs each
lever by what it would have saved, keeps three readings for core modules (ten
minutes, the measured worst being 8.8), and proposes the measure and condition
that check it. To-be 47 gains the section, the owners and five slices; the
glossary gains delivery time, delivery budget, core and leaf module.
2026-10-10 19:51:07 +02:00
mesh-admin
0cabe5d391
Merge pull request 'Research 045: a knowledge base the mesh writes (decisions, guidelines, policies)' ( #288 ) from research/045-a-knowledge-base-the-mesh-writes into main
2026-10-10 16:17:34 +00:00
mesh-admin
3c323370b7
Merge pull request 'Research 044: what leaves the controller next' ( #287 ) from research/044-what-leaves-the-controller-next into main
2026-10-10 16:17:30 +00:00
jochen
72f940d2c7
Open research 045: a knowledge base the mesh writes
...
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
The record is read-only and hand-written; numbers collide and private knowledge
has no home. Framed as questions, weighing git as the store against a store
with hq as its public export.
2026-10-10 18:14:29 +02:00
jochen
c148066de4
Open research 044: what leaves the controller next
...
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
Every controller change walks the core's tier and holds up every other walk
(issue 382), while most of the week's change sat in one package. Framed as
questions: which domain changes most and needs the core least.
2026-10-10 18:14:28 +02:00
mesh-admin
62efd13e07
Merge pull request 'ADR 0281, to-be 53 §11: an issue knows whether its fix is delivered, and a fix stuck after its merge is loud' ( #286 ) from decisions/0281-an-issue-knows-whether-its-fix-is-delivered into main
2026-10-10 16:13:06 +00:00
jochen
0336f4f04b
To-be 53: decisions in order; what it leaves out names the notifications it now has (review)
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
2026-10-10 18:11:46 +02:00
jochen
5ef7d4dc36
ADR 0281, to-be 53 §11: an issue knows whether its fix is delivered, and a fix stuck after its merge is loud
...
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery superseded: a newer head of the same pull request
The operator approved measuring, from the delivery's own events, whether each fix
an issue names reached the machines; delivered is not resolved, and a merged fix
that does not arrive must be said rather than found.
2026-10-10 18:08:38 +02:00
mesh-admin
d836092329
Merge pull request 'ADR 0279, to-be 53 §10: the issue tracker triages every new issue, and an issue is ready when what it depends on is delivered' ( #285 ) from decisions/0279-the-issue-tracker-triages-every-new-issue into main
2026-10-10 16:00:22 +00:00
jochen
d5aecc7a31
ADR 0279: set says who set a value in its event; a value is changed, not cleared
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
2026-10-10 17:54:55 +02:00
jochen
6b718eeca3
ADR 0279: a wontfix duplicate lets go only with its original; ready said once per spell; a delivery not asked is loud (review)
2026-10-10 17:54:48 +02:00
jochen
3e346e7cd7
ADR 0279: ready waits for the pull requests fixed-by names, not every entry
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery superseded: a newer head of the same pull request
2026-10-10 17:49:42 +02:00
mesh-admin
ccbe5a00b3
Merge pull request 'ADR 0275 slice 3: issue reports carry only opened; the tracker holds every status' ( #283 ) from process/issue-reports-carry-only-opened into main
2026-10-10 15:48:29 +00:00
jochen
daa9f171ae
Issue reports carry only opened: the tracker holds every status, so no copy can drift
...
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
The import of slice 3 (ADR 0275) was checked against every folder: no report changed since the
commit it read, and the tracker holds each report's status, owner, fix, design amendment, replay
and closing day. The keys are removed from all 361 reports, cycle.py refuses them in any report,
and the playbooks, skills and READMEs that still pointed at them name the tracker instead.
2026-10-10 17:44:18 +02:00
jochen
fa6acb04c9
ADR 0279, to-be 53 §10: the issue tracker triages every new issue, and an issue is ready when what it depends on is delivered
...
The operator asked for severity and what an issue needs to be estimated by the
judgement that already reads the backlog, and for dependencies between issues,
an issue being workable only once what it waits for is on the machines.
2026-10-10 17:38:06 +02:00
mesh-admin
d82dde3dca
Merge pull request 'ADR 0278, to-be 53 §9: the issue tracker checks every new issue for a duplicate' ( #281 ) from decisions/0278-the-issue-tracker-checks-each-new-issue-for-a-duplicate into main
2026-10-10 15:22:34 +00:00
jochen
5f2f520018
ADR 0278: the check's worst case is under the tool runner's two minutes, not one
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
2026-10-10 17:21:39 +02:00
jochen
f89c2c350d
ADR 0278: the check as a whole takes up to a minute, kept alive by the tool runner (issue 387); one judgement at a time
...
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery superseded: a newer head of the same pull request
Review found the two questions together exceed the consumer's ack wait, which the
tool runner did not extend; the record says so and names the fix it waits on.
2026-10-10 17:20:00 +02:00
jochen
cf3065c660
ADR 0278, to-be 53 §9: the issue tracker checks every new issue for a duplicate
...
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery superseded: a newer head of the same pull request
The operator asked for duplicates to be consolidated, and better, when an issue is
opened rather than on a schedule. A judgement needs a model, and the mesh had no
channel for one; the agent module answers one question with no tools, under the
node's licence, and the tracker acts only on a clear duplicate, closing the newer
issue and keeping its report on the older one.
2026-10-10 17:04:27 +02:00
mesh-admin
894be9971f
Merge pull request 'An issue's status lives in the issue tracker: playbook 03, cycle.py and the notes slice 3 of ADR 0275 asked for' ( #280 ) from process/issue-status-lives-in-the-tracker into main
2026-10-10 14:17:46 +00:00
jochen
6d1310f1ea
An issue's status lives in the issue tracker: playbook 03, cycle.py and the notes slice 3 of ADR 0275 asked for
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
2026-10-10 15:54:32 +02:00
mesh-admin
1ea678c6bd
Merge pull request 'ADR 0277: a trusted setting is proposed through a verb and set on the operator's warrant, and a module's own secret is asked for and typed at the desk' ( #278 ) from decisions/0277-a-trusted-setting-is-proposed-and-set-on-the-operators-warrant into main
2026-10-10 12:50:19 +00:00
mesh-admin
76bb721cf4
Merge pull request 'Issue 362 resolved: ADR 0276 gains the own-path batch rule and a progressive insight, to-be 45 gains S18 and S19' ( #277 ) from issues/362-resolved into main
2026-10-10 12:43:19 +00:00
jochen
3539446885
ADR 0277: the migrations are 0090 and 0091, and the code lands in two pull requests
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
2026-10-10 14:42:47 +02:00