Commit Graph
601 Commits
Author SHA1 Message Date
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
jschoubben 594dd9ce51 ADR 0290: hq keeps no copy of the records once they leave it, on the operator's word (issue 435)
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 02:09:01 +02:00
jschoubben a5d1e0fbf6 ADR 0290 rewritten on the operator's word: a decision record lives whole in the knowledge base, reviewed and accepted there; and cycle.py sees issues that live only in the tracker (issue 436)
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 02:05:02 +02:00
jschoubben b174269ec1 ADR 0290 and 0291: the operator's confirmations, no folder rule before issue 427, the verb return, the documents' row in to-be 53, and both senses of knowledge base
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 01:25:11 +02:00
jschoubben d606b4382f ADR 0290 and 0291: the knowledge base holds each record's structure and clauses, and an issue lives whole in the tracker (research 045)
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 01:01:42 +02:00
mesh-admin eac30272ee Merge pull request 'ADR 0283: the username lives in its sources entry, and the needs-operator words as built (issue 386)' (#297) from fix/386-username-in-sources into main 2026-10-10 20:25:24 +00:00
jochen c79e416757 ADR 0285: say in every condition's message which issue tracks it and where it stands (issue 400)
The operator could not tell from a notification whether its cause was
known, tracked and being fixed. An issue tracks a condition by its key;
the tracker answers which issues track which conditions, and the router
says it in every message about the condition. Amends to-be 53 and 45,
playbook 03 and the glossary, and points ADR 0253 at the new line.
2026-10-10 22:09:24 +02:00
jochen 9be659b18c Say how the writer tells its own lost acknowledgement from a former holder, list D16, and fix the settings heading (review of #303)
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-10 22:05:17 +02:00
jochen 5a3513b819 Keep the epoch out of a mirror's value, age purge markers, say a lost event, and check every rule (review of #303) 2026-10-10 22:05:17 +02:00
jochen f90b74bf26 ADR 0289: the controller mirrors its records into buckets written only on a change (issue 419, research 036 G2)
Nodes, assignments, walks, builds and settings could be seen only by polling verbs, and a setting
changed with no event. Each becomes a record mirror: a bucket written from the store after the commit
and only when the value differs, one event per write, compared with the store on every self-check run
(D17, mirror-drifted, healer H6). The write-only-on-a-change rule from issue 326 now holds for every
bucket; the conditions bucket breaks it and issue 420 tracks that. The effort stays active for G1, G3
and the views.
2026-10-10 22:05:17 +02:00
jochen 8060c20fda Separate the release paragraph from the execute bullet, and say the third call asks again
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-10 22:00:27 +02:00
jochen 1d6ee8885a Bind old runners through the bus, say when the same call asks anew, and leave release unmarked until the controller's warrant passes the mark (review) 2026-10-10 22:00:27 +02:00
jochen 9b0c6741e7 ADR 0286: a tool or verb marked in its manifest runs only on the operator's approval of that one call (issue 417)
Graduates research 039. The tool runner (and the controller for its own verbs) asks the operator
through the existing operator-channel asks and runs the exact call once on the warrant, reusing the
act digest and warrant check of ADR 0259 and the shown-in-shape form of ADRs 0274 and 0277, so
risky agent calls stop resting on the agent's restraint. Amends to-be 46 and hands it off.
2026-10-10 22:00:27 +02:00
jochen 906d702b8d Narrow ADR 0287's claimant rule to any seat naming the path, and correct two facts the review found
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-10 21:57:24 +02:00
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
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
mesh/delivery delivered
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 9a2a2006b1 Cover ADR 0283's check row 7 with the insight, and align to-be 48 with the words as built
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
From the review of hq#297.
2026-10-10 21:44:11 +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
jochen a3ac9fd547 Carry an SMB source's username in its sources entry, since a key naming a user may have no default (issue 386)
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
The live module check refused mesh-catalog#190's smb-users setting (ADR 0262);
ADR 0283 decision 7 gets a dated insight, to-be 52 and the 0263 note follow.
2026-10-10 21:42:54 +02: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
mesh/delivery delivered
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