Commit Graph
621 Commits
Author SHA1 Message Date
jochen c192576f6b to-be 56: the betterbird module owns Betterbird's whole configuration, shown without a credential (issue 586, ADR 0329)
mesh/merge-gate head c192576f6b2f merged into trunk b236b306c42a — pass: the change touches no module of the mesh's graph
mesh/repo-check head c192576f6b2f merged into trunk b236b306c42a — pass: its merge-check.sh passed
mesh/delivery delivered
The design said the tools answer no address and declared only the accounts. It
now names ADR 0329 and ADR 0326, the five new settings and prefs as one entry per
preference (§8), what the tools show (§6), and how each part is checked.
2026-10-13 02:03:13 +02:00
jochen f7c677a3a7 To-be 46: the session gets its key within seconds, not at once (review of #334)
mesh/merge-gate head f7c677a3a712 merged into trunk 87f24d6b6903 — pass: the change touches no module of the mesh's graph
mesh/repo-check head f7c677a3a712 merged into trunk 87f24d6b6903 — pass: its merge-check.sh passed
mesh/delivery delivered
The tool waits for the router's word before it answers, as ADR 0332 §5 says.
2026-10-12 23:15:12 +02:00
jochen a5333f8ecb To-be 46: an agent session asks the operator through its module and reads the answer by a key (issue 589, ADR 0332)
mesh/merge-gate head a5333f8ecbcc merged into trunk 87f24d6b6903 — pass: the change touches no module of the mesh's graph
mesh/repo-check head a5333f8ecbcc merged into trunk 87f24d6b6903 — pass: its merge-check.sh passed
mesh/delivery superseded: a newer head of the same pull request
Gives ADR 0332 its home in the design of the conversation with the operator, beside how an asker gets its answer.
2026-10-12 22:44:52 +02:00
jochen d69c8929e9 To-be 45 §5: say urgent is never held to the desktop's rhythm, and give clause 4 its outside-a-start case and the cap (ADR 0318, review 97)
mesh/merge-gate head d69c8929e9df merged into trunk a0e51c061b5e — pass: the change touches no module of the mesh's graph
mesh/repo-check head d69c8929e9df merged into trunk a0e51c061b5e — pass: its merge-check.sh passed
mesh/delivery delivered
2026-10-12 21:13:10 +02:00
jochen c6d92446e6 To-be 45 §5: say what the holder does while the controller cannot be read, and that every fold and hold is recorded (ADR 0318, issue 271)
mesh/merge-gate head c6d92446e697 merged into trunk a0e51c061b5e — pass: the change touches no module of the mesh's graph
mesh/repo-check head c6d92446e697 merged into trunk a0e51c061b5e — pass: its merge-check.sh passed
mesh/delivery superseded: a newer head of the same pull request
2026-10-12 21:09:24 +02:00
jochen 1ed6424bcc Merge remote-tracking branch 'origin/main' into fix/271-channel-reads-open-state-before-it-speaks
# Conflicts:
#	03-DESIGN/01-to-be/45-a-core-that-cannot-fail-silently.md
2026-10-12 21:09:11 +02:00
jochen ac5bdeb178 To-be 45 §5: match ADR 0318 version 10, so an urgent message is never folded and a backlog gets its answers (issue 271)
mesh/merge-gate head ac5bdeb17860 merged into trunk a0e51c061b5e — fail: head ac5bdeb17860 does not merge cleanly into trunk a0e51c061b5e: in conflict 03-D…
mesh/repo-check head ac5bdeb17860 merged into trunk a0e51c061b5e — fail: head ac5bdeb17860 does not merge cleanly into trunk a0e51c061b5e: in conflict 03-D…
mesh/delivery superseded: a newer head of the same pull request
2026-10-12 21:07:37 +02:00
jschoubben 7456e24563 List ADR 0325 among the decisions to-be 45 carries
mesh/merge-gate head 7456e24563a9 merged into trunk 9b7cab7978d2 — pass: the change touches no module of the mesh's graph
mesh/repo-check head 7456e24563a9 merged into trunk 9b7cab7978d2 — pass: its merge-check.sh passed
mesh/delivery delivered
2026-10-12 20:39:12 +02:00
jschoubben 52c19c0628 Name the take of a shared folder in the core's writers table (ADR 0325 §8, issue 567)
mesh/delivery superseded: a newer head of the same pull request
mesh/merge-gate head 52c19c062842 merged into trunk 9b7cab7978d2 — pass: the change touches no module of the mesh's graph
mesh/repo-check head 52c19c062842 merged into trunk 9b7cab7978d2 — pass: its merge-check.sh passed
The controller sends a machine the take act on the operator's warrant, on mesh.node.<node>.ask.access-act;
the machine verifies the mesh's signature and records the act. Rule 1 asks every kind of state to name its
one writer.
2026-10-12 20:38:23 +02:00
jschoubben 09916e2bbc Say in to-be 47 what ADR 0323 leaves as it is, and give to-be 45's revision its own paragraph
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 delivered
mesh/delivery-group group feat/341-a-merge-check-judges-the-merge delivered: every member is delivered
The review asked that the trunk-less verdicts, mesh-delivery's trunk head, the
refuse-ask race and the lost check's recheck be said, and found the revision
spliced mid-paragraph.
2026-10-12 17:46:42 +02:00
jschoubben e373474db7 Give ADR 0323 its place in to-be 47, to-be 45 §9 and the glossary (issue 341)
mesh/delivery-group group feat/341-a-merge-check-judges-the-merge checking: 0 of 3 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
A merge check now judges the head merged into a named trunk commit and its
verdict goes out of date when the trunk moves; the designs and the glossary say
so, with the tests that hold it.
2026-10-12 17:29:59 +02:00
jochen f63e60a4a1 Give ADR 0313 a home in design 47, the delivery budget it extends
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 delivered
The knowledge base's whole-set cited rule (to-be 55, ADR 0313's own review)
refuses to accept a record nothing cites. Design 47 already builds on
ADR 0282's delivery budget, which ADR 0313 extends with the operator's
wider fix-time target, so it is the record's home.
2026-10-12 15:29:38 +02:00
jochen 12e59b3c42 to-be 55: a drafted clause may be changed, and a clause another record links keeps its number (issue 494, ADR 0321)
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 delivered
Names ADR 0321 in its home, so the knowledge base's cited rule holds through
the design that carries it.
2026-10-12 14:15:03 +02:00
mesh-admin a3bde3657d Merge pull request 'To-be 47: a covered stop reads covered and stays listed; a one-machine module is covered (issue 480)' (#328) from design/47-a-covered-stop into main 2026-10-12 11:56:36 +00:00
jochen e8cff1646a Carry ADR 0309 and ADR 0319 in one paragraph of to-be 27, replacing the 0309 paragraph alone (issue 415)
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 delivered
2026-10-12 13:50:33 +02:00
jschoubben 94e7e044b9 Say in to-be 47 that a covered stop reads covered and stays listed, and that a one-machine module is covered (issue 480)
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 delivered
2026-10-12 13:50:29 +02:00
mesh-admin d0e23b1dbf Merge pull request 'Give ten uncited decisions their homes in the designs they change (issue 504)' (#324) from fix/504-homes-for-uncited-decisions into main 2026-10-12 11:45:28 +00:00
jochen 26fbade21a To-be 45 §5: say what the operator-channel holder now does about history (issue 271, ADR 0318)
mesh/merge-gate out of date: judged against a trunk it does not name, the trunk is now a0e51c061b5e; judged again on a recheck or when it is merged
mesh/repo-check out of date: judged against a trunk it does not name, the trunk is now a0e51c061b5e; judged again on a recheck or when it is merged
mesh/delivery superseded: a newer head of the same pull request
PR #88 (merged 2026-10-06) already fixed the holder to read open state first,
coalesce bursts and hold a start grace minute, after a new consumer replayed a
morning's 96 settled events as fresh alerts. §5 still only said a rate cap; this
names the rules actually built, under ADR 0318.
2026-10-12 13:29:37 +02:00
jochen fe4f62c712 to-be 55: a failed whole-set rule is a warning to the operator and leaves the module healthy, and cited is judged in the review (issue 504)
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 delivered
The operator decided on 2026-10-12, on issue 504, that a rule of the
record set that fails is a fault of the records, not the module failing:
health says only whether the module works (issue 508's principle), so a
finding must not hold a walk at the module's first-node gate.
2026-10-12 13:28:12 +02:00
jochen 23ef14d0ba Give ten uncited decisions their homes in the designs they change (issue 504)
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 delivered
The knowledge base's cited rule failed for ADR 0303, 0306-0312, 0314 and 0315: accepted,
and nothing cited them. Each design that owes the decision now names it in its decisions
and says it in prose, so the records can name these designs as their homes.
2026-10-12 13:24:48 +02:00
mesh-admin ca9d11ea60 Merge pull request 'Adopt a mail account the profile already holds instead of adding it twice (issue 345, ADR 0317)' (#323) from feat/345-adopt-existing-accounts into main 2026-10-12 10:55:13 +00:00
jochen 953038833c Keep recorded accounts by their keys, and name them by place, never by name (ADR 0317 review)
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 delivered
2026-10-12 12:45:00 +02:00
mesh-admin 4bd3624c2e Merge pull request 'Say that a condition's looks are kept beside the bucket, not in it (issue 420)' (#321) from fix/420-condition-looks-beside-the-bucket into main 2026-10-12 10:43:27 +00:00
jochen ef452a7219 Name the optional key that settles an ambiguous match, and how the ask shows the accounts (ADR 0317)
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery superseded: a newer head of the same pull request
mesh/merge-gate pass: the change touches no module of the mesh's graph
2026-10-12 12:43:23 +02:00
jochen 091ad0aa68 Adopt an account the profile already holds instead of adding it twice (issue 345, ADR 0317) 2026-10-12 12:42:30 +02:00
jochen db92ca73ff Record the operator's answer: Owl's pinned copy stays in the private artifact store (issue 345, ADR 0316)
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/delivery delivered
mesh/repo-check pass: its merge-check.sh passed
2026-10-12 12:29:07 +02:00
jochen 2059175b89 Design the mail client set up by the mesh: Betterbird pinned, Owl by policy, accounts without credentials (issue 345, ADR 0316)
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-12 12:22:51 +02:00
jochen 3a636a18f2 Say that a condition's looks are kept beside the bucket, not in it (issue 420)
mesh/delivery delivered
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 45 section 2's field table put the count of observations, the last observed
time and the evidence in the conditions bucket, which made every look a write and
broke ADR 0289's rule that a bucket is written only on a change.
2026-10-12 12:11:53 +02:00
jschoubben a0291235a2 Say ADR 0305 is accepted in to-be 24, and name the media catalogue among its code (issue 526)
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 delivered
mesh/delivery-group group feat/526-a-provider-delivers-what-its-software-issued delivered: every member is delivered
2026-10-12 01:20:24 +02:00
jschoubben 540f82768e Name ADR 0305's check clause and the late binder's hour in to-be 24 (issue 526)
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-12 01:09:13 +02:00
jschoubben 393bac573d Give ADR 0305 its place in to-be 24: a provider hands on the credential its software issued (issue 526)
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/526-a-provider-delivers-what-its-software-issued rejected: a member's own check failed
mesh/delivery superseded: a newer head of the same pull request
A token a media server got from its vendor could only be typed in per consumer; the vault now takes it
from the provider, sealed to one call, and keeps it as the provision's one credential.
2026-10-12 01:06:06 +02:00
mesh-admin 7ec783dbb0 Merge pull request 'Add Media as the eleventh domain, with its words (ADR 0302)' (#319) from feat/302-media-domain into main 2026-10-11 19:42:59 +00:00
jschoubben 56b7a9084a Add Media as the eleventh domain, with its words (ADR 0302)
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 delivered
ADR 0302 made Media a domain: content, kind, media release, library,
media file, media-importer, download client, engine and grab now have
one meaning each. Release already meant two things, so the Media sense
is qualified in the homonyms.
2026-10-11 21:32:15 +02:00
jschoubben ce67b65c10 Say in to-be 47 that a stop's closed window cuts the batch's unrelated merges early (review of #232, issue 459)
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 delivered
mesh/delivery-group group feat/459-a-stop-re-walks-the-others delivered: every member is delivered
2026-10-11 21:16:05 +02:00
jschoubben f8efb08b3d Say in to-be 47 where a stop's other merges go, what stays on the machines, and that a stopped merge never ships by a walk (ADR 0299's insight, issue 459) 2026-10-11 21:16:05 +02:00
jschoubben d954e34277 Give ADR 0299 its home in to-be 47: a stop ends only its own change on a shared walk (issue 459) 2026-10-11 21:16:05 +02:00
mesh-admin 3d42834908 Merge pull request 'To-be 47 names ADR 0298: the bus's grants arrive before a walk's gate (issue 490)' (#315) from design/47-the-grants-step into main 2026-10-11 19:15:44 +00:00
jschoubben f95f758c87 Give ADR 0300 its place in to-be 53: the tracker's record is a log of operations (issue 508)
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 delivered
ADR 0300 was accepted with no home, so the knowledge base's whole-set rule fails and holds every rollout of mesh-knowledge.
2026-10-11 20:38:02 +02:00
jschoubben 34bdb1a34f Give ADR 0298 its place in to-be 47: the bus's grants arrive before a walk's gate (issue 490)
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 delivered
2026-10-11 19:22:05 +02:00
jschoubben c3cc29180e Name a linked fix, withdrawn and abandoned in the glossary, and give ADR 0294 its place in to-be 53 (issue 483)
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 delivered
ADR 0294 itself now lives in the knowledge base, proposed there, since the records left hq (issue 426).
2026-10-11 18:01:46 +02:00
jschoubben 0afc8cc5f8 Name the commit the knowledge base's records now come from, and link research with touches and decisions with rests-on (review of #312)
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: THE CHANGE ALTERS ITS OWN CHECK (merge-check.sh): main's version judged it; the change's judges the pull requests after it merges; it…
mesh/delivery delivered
2026-10-11 13:25:21 +02:00
jschoubben 418261213c Remove the decision records and research efforts, which the knowledge base now holds whole (issue 426)
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: THE CHANGE ALTERS ITS OWN CHECK (merge-check.sh): main's version judged it; the change's judges the pull requests after it merges; it…
mesh/delivery superseded: a newer head of the same pull request
ADR 0290 rule 9: once the import is checked record by record, hq keeps no copy.
The records and efforts are removed; every link or path to them reads "ADR NNNN" or
"research NNN"; a design's decisions: lists "ADR NNNN". 02-DECISIONS keeps a pointer
README with the reading order's six topics, which the knowledge base reads through the
records module; 01-RESEARCH keeps a pointer README. The checks drop the rules that
judged records (the knowledge base holds each at propose; checks/README.md says where)
and refuse a record written here again. Playbooks 01 and 02 and the skills write and
read records with the knowledge base's verbs.
2026-10-11 12:56:09 +02:00
jschoubben 4ea4cf6529 ADR 0290 rule 8 and to-be 55: a refresh repairs drafted records too, as a new version
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/delivery superseded: a newer head of the same pull request
mesh/repo-check pass: its merge-check.sh passed
2026-10-11 12:38:04 +02:00
jschoubben d2de5ddf8c To-be 55 and ADR 0248: say exactly what the links and refresh do, and why the index moved
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-11 12:30:39 +02:00
jschoubben 510f7aecf1 To-be 55: the rests-on and touches links and the import's refresh; ADR 0248's index now comes from the knowledge base
mesh/delivery superseded: a newer head of the same pull request
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-11 12:29:32 +02:00
jschoubben d5eaba1359 ADR 0290: the knowledge base reviews a proposal itself, through a fresh judgement, since the mesh proves machines and not agents
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 delivered
2026-10-11 11:20:55 +02:00
mesh-admin 331e8d0bbe Merge pull request 'Proposed: ADR 0293, an ask the controller made is delivered again to its seat's worker (issue 334)' (#310) from decisions/334-the-controllers-own-ask-is-delivered-again into main 2026-10-11 02:36:25 +00:00
jschoubben f9677dabea Accept ADR 0293 on the operator's word, and give it its place in to-be 45 (issue 334)
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 delivered
The operator chose 2026-10-11 to let the controller deliver its own given-up asks again; every other ask stays drop-only.
2026-10-11 04:21:12 +02:00
mesh-admin d1edcf544b Merge pull request 'ADR 0290: hq keeps no copy of the records (issue 435)' (#308) from decisions/0290-no-copy-in-hq into main 2026-10-11 01:39:30 +00:00
jschoubben 267a04ccad Point ADR 0240 rule 5 and ADR 0283 decision 1 at ADR 0292, and give it its home in to-be 48 (issue 405)
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-11 03:09:14 +02:00