13ffae7706
mesh-delivery: a walk answers every merge it carries, never a delivery that ended (hq issue 362, ADR 0276)
jochen2026-10-10 13:05:50 +02:00
aafda6e870
claude-code: leave the judging of a proposal's channel to the router, and hear its refusal (hq ADR 0274)
jochen2026-10-10 13:04:17 +02:00
ac41b6d052
Merge pull request 'mesh-issues: the issue tracker, so an issue's number comes from one counter no two openers share (hq ADR 0275, to-be 53 slice 1)' (#172) from feat/the-issue-tracker into main
mesh-admin2026-10-10 11:00:55 +00:00
c41c32cb71
Merge pull request 'claude-code: an agent proposes a shared instruction section, and every node takes it only on the operator's warrant (hq ADR 0274)' (#170) from feat/claude-code-instructions-proposed into main
mesh-admin2026-10-10 10:56:37 +00:00
6f2c76ee71
mesh-issues: an open whose write may have landed never says nothing was opened, and a module must itself be registered
jochen2026-10-10 12:56:16 +02:00
2493e3e048
Add mesh-issues, the issue tracker, so an issue's number comes from one counter no two openers share (hq ADR 0275, to-be 53 slice 1)
jochen2026-10-10 12:51:08 +02:00
52f34d362a
Merge pull request 'route-proxy and build-agent name the package they compile; a rename is said under both names (hq ADR 0267, issue 363)' (#169) from fix/0267-the-images-name-the-package-they-compile into main
mesh-admin2026-10-10 10:25:29 +00:00
e4edab3fd0
claude-code: refuse variation selectors, blank letters and underlined or HTML headings; re-check every field at render; forget refusals the router no longer keeps (hq ADR 0274 review)
jochen2026-10-10 03:55:45 +02:00
490f76e234
claude-code: hold the review's findings on proposed instructions (hq ADR 0274)
jochen2026-10-10 03:52:03 +02:00
74e1be97ab
claude-code: an agent proposes a shared instruction section, and every node takes it only on the operator's warrant (hq ADR 0274)
jochen2026-10-10 03:40:48 +02:00
f4fb0a7461
Name the package each controller-repository image compiles, and say a renamed file under both names (hq ADR 0267, issue 363)
jochen2026-10-10 02:58:31 +02:00
48bda475e5
Merge pull request 'dunst: a tap chooses a notification's action (hq issue 360)' (#167) from fix/dunst-tap-chooses-action into main
mesh-admin2026-10-09 22:21:09 +00:00
553b71916e
Merge pull request 'claude-code: claude in the operator's zsh starts the agent's session where the machine names an agent account (hq ADR 0266)' (#168) from feat/claude-is-the-agents-session into main
mesh-admin2026-10-09 22:20:51 +00:00
378c2b2ce8
claude-code: claude in the operator's zsh starts the agent's session where the machine names an agent account (hq ADR 0266)
jochen2026-10-10 00:16:53 +02:00
f055898089
dunst: the menu takes no typed text, so a typed line never becomes a choice
jochen2026-10-10 00:11:45 +02:00
f76396de6f
dunst: leave the rofi package to the rofi module, which the merge gate requires
jochen2026-10-10 00:11:00 +02:00
2a16d39a3d
dunst: a tap chooses a notification's action, so a touchpad can answer the desk (hq issue 360)
jochen2026-10-10 00:07:07 +02:00
db84ebf48e
Merge pull request 'claude-code: declare the account agents run as and claude-agent (hq ADR 0266)' (#141) from feat/the-agent-account-is-declared into main
mesh-admin2026-10-09 21:59:39 +00:00
b240085e0a
Close the review's gaps round the agent account (hq ADR 0266)
jochen2026-10-09 23:48:15 +02:00
b382045721
Merge remote-tracking branch 'origin/main' into feat/the-agent-account-is-declared
jochen2026-10-09 23:37:04 +02:00
ac7400d20c
Merge pull request 'Refuse a daemon's line in what a module shows: the operator types nox (hq ADR 0272, issue 356)' (#165) from fix/356-the-operator-types-nox-lines-checked into main
mesh-admin2026-10-09 17:34:09 +00:00
dd14526870
Refuse a daemon's line in what a module shows: the operator types nox (hq ADR 0272, issue 356)
jochen2026-10-09 18:32:59 +02:00
c07d6890f4
Merge pull request 'mesh-cli: carry what a pipe or a file gives standard input, for the controller's terminal (hq ADR 0259 §10, ADR 0272)' (#164) from feat/mesh-cli-carries-standard-input into main
mesh-admin2026-10-09 15:58:49 +00:00
c7d2eefb50
Merge pull request 'telegram and desk-channel: channels of their own (hq ADR 0259)' (#134) from feat/asks-answered-on-any-channel-channels into main
mesh-admin2026-10-09 15:48:33 +00:00
5542766ee4
Merge pull request 'rofi: node-launcher's hidden prompt, answered sealed to the asker (hq ADR 0259 §10)' (#135) from feat/a-secret-given-at-the-desk into main
mesh-admin2026-10-09 15:27:11 +00:00
f5158ce5bf
telegram, desk-channel: move to mesh-sdk go/v0.1.10, the tag of mesh-sdk #12's merge
jschoubben2026-10-09 16:24:16 +02:00
f5cbfd850c
rofi: write the hidden prompt from names and say the controller asks, never with the caller's words
jschoubben2026-10-09 12:17:45 +02:00
41b9e2d613
telegram, desk-channel: move to mesh-sdk 16984aa, rebased on its main
jschoubben2026-10-09 14:03:53 +02:00
ad5a85398e
Serve node-launcher's hidden prompt, answering sealed to the asker, so a secret typed at the desk is never in the clear (hq ADR 0259 §10)
jochen2026-10-08 17:11:59 +02:00
723e5f8cce
telegram: say the desktop client's gap is a known one the router does not enforce (hq issue 344)
jschoubben2026-10-09 12:30:45 +02:00
0284204989
desk-channel: run as its own account, and show a link's code only where a notifier heard unpaused will show it, kept in no history
jschoubben2026-10-09 12:08:45 +02:00
c161521e49
dunst: keep what is shown once out of the history, and say whether notifications are paused
jschoubben2026-10-09 12:07:35 +02:00
711e674ab1
telegram: take a tap only on a message showing the words this channel put there, and say where an approval from Telegram means something
jschoubben2026-10-09 12:06:18 +02:00
d991ef6b55
telegram, desk-channel: move to mesh-sdk 7690299, whose digests are over named fields (the review of 2026-10-09)
jschoubben2026-10-09 12:05:02 +02:00
76db269c83
telegram, desk-channel: move to mesh-sdk d4077b4, where a warrant names the ask's digest (hq ADR 0259 §6)
jschoubben2026-10-09 10:40:30 +02:00
0d9ec84a9c
Run telegram as its own account in a runtime of its own, keep its offset per update, and keep no copy of a secret on the desk (hq ADR 0259 §8)
jochen2026-10-08 18:40:25 +02:00
a412389725
Add telegram and the desk as channels of their own, each judging nothing and holding only its own secret (hq ADR 0259)
jochen2026-10-08 16:57:05 +02:00
8754de747d
messenger: judge the break-glass file's owner by a faked owner both ways, so the test holds under root
jschoubben2026-10-09 16:48:38 +02:00
ca07c5ab3b
messenger: move to mesh-sdk go/v0.1.10, the tag of mesh-sdk #12's merge
jschoubben2026-10-09 16:24:14 +02:00
3826741f62
messenger: ask the root-free word fresh before taking an ask
jschoubben2026-10-09 14:09:41 +02:00
d136806745
messenger: an early desk unlink bars nothing, root lifts any bar, no root-free ask inside the work, no button without its effect (the confirmation review of 2026-10-09)
jschoubben2026-10-09 14:03:36 +02:00
ff79defc2b
messenger: approve only on the controller's recent word that root is free, and close the review's gaps (hq ADR 0259)
jschoubben2026-10-09 12:11:18 +02:00
f30089c288
sudo: count any sudo rule as root, fail on what cannot be judged, and commit no binary
jschoubben2026-10-09 12:11:18 +02:00
c1d299336b
messenger: send an ask's message alone even when only one answer can be given there
jschoubben2026-10-09 11:03:35 +02:00
1fc88b9915
messenger: tell the operator, by name and number, when another account answers a question meant for them
jschoubben2026-10-09 10:40:52 +02:00
8b00ffbfe9
messenger: name the ask's digest in every warrant, and bind the router's own asks to their act (hq ADR 0259 §6)
jschoubben2026-10-09 10:17:15 +02:00
a6965448f0
Show a link's code as a message no channel keeps
jochen2026-10-08 18:39:39 +02:00
debb897c21
Run the router as its own account, ask unlinking of the linked account, and take no approval where an agent can become root (hq ADR 0259 §7, §8)
jochen2026-10-08 18:39:09 +02:00
c2c75ceb3b
Make the messenger the router: it holds every ask, judges each answer and issues the warrant its asker acts on, and keeps no channel's client (hq ADR 0259)
jochen2026-10-08 16:57:12 +02:00
d902e1550e
Merge pull request 'mesh-delivery: cover a held merge whose module a backlog walk carried to every machine (hq issue 351)' (#163) from fix/a-release-carried-module-counts-as-sent into main
mesh-admin2026-10-09 15:03:36 +00:00
4e14ef9835
mesh-delivery: cover a held merge whose module a backlog walk carried to every machine (hq issue 351)
jschoubben2026-10-09 16:48:52 +02:00
f3dcb9dc5a
mesh-cli: carry what a pipe or a file gives standard input with the line, at most 64 KiB
jschoubben2026-10-09 16:50:46 +02:00
a6a9a818d2
Answer the review of hq issue 348's catalogue change
jschoubben2026-10-09 15:04:43 +02:00
a0049f3e4e
dnsmasq: bind each address once, at start, after it exists (hq issue 348)
jschoubben2026-10-09 13:50:20 +02:00
12de28c81d
docker: read the resolver file a container really uses (hq issue 348)
jochen2026-10-09 13:33:23 +02:00
0f6986aead
netcheck: ask one named resolver, and list what listens here (hq issue 348)
jochen2026-10-09 13:27:39 +02:00
3d8b52c9f4
docker: say where the runtime's event history begins, so a short history never reads as a quiet one (hq issue 348)
jochen2026-10-09 13:24:58 +02:00
2b2397abe0
dnsmasq: ask the resolver a real question, and restart it when it stops answering (hq issue 348)
jschoubben2026-10-09 13:37:39 +02:00
954e3e2087
Merge pull request 'nfs-server: check every share against where the backup seat keeps its data, on every pass (review follow-up of #136)' (#142) from fix/shares-review-followups into main
mesh-admin2026-10-09 12:55:40 +00:00
26d6af3589
Merge pull request 'mounts: never leave a failed mount unit when a source is away, or the failure of a unit it takes over (hq ADR 0263 rules 4 and 6)' (#162) from fix/mounts-leaves-no-failed-unit into main
mesh-admin2026-10-09 12:55:38 +00:00
26f9c6e10d
nfs-server: one test per guard (each stray guard, the failed-reload retry, the empty data list, the walk's stop, a stopping pass); say that a start drops hand-made exports and that unknown backup paths are a deliberate warning (review of #142)
jochen2026-10-09 14:45:03 +02:00
7320d99a11
Make nfs-server reconcile the kernel's exports with its file, so a failed reload or a withdrawn grant is not left exported while the module says it is healthy; warn on a stale or unknown backup list
jochen2026-10-08 21:39:36 +02:00
72a6d062dc
Let SIGTERM cancel a running pass and bound nfs-server's clean-up at 10 s, so a hanging command cannot keep the export file past the stop timeout
jochen2026-10-08 21:23:21 +02:00
87d6a5549c
Check every share against where the backup seat keeps its data on every pass, so the hour a clean look is believed cannot hide a new repository
jochen2026-10-08 21:16:05 +02:00
6d3cb73e3b
mounts: gofmt the clearing tests
jochen2026-10-09 14:43:25 +02:00
02eab5aa8e
mounts: test the clearing loop, the look's own clearing and a disk's presence; clear only a taken-over unit's earlier failure; clear and re-arm an automount that gave up; refuse a transient unit of the same name (review of #162)
jochen2026-10-09 14:43:16 +02:00
0f330fc57d
mounts: clear a failed mount of its own whose source was away, and the failure of a unit it takes over, so neither is said as the machine's own failed unit (hq ADR 0263 rules 4 and 6)
jochen2026-10-09 14:26:01 +02:00
9e4267bf28
Merge pull request 'mesh-cli at go/v0.1.9, and the unannounced pull request's number (hq ADR 0272, issue 347)' (#160) from feat/272-the-tagged-sdk-and-the-pull-requests-number into main
mesh-admin2026-10-09 11:54:32 +00:00
a082615b8c
Merge pull request 'gitea: the forge's tools never weaken protection or merge past the checks (hq ADR 0266 §7, route B)' (#153) from fix/the-forge-tools-never-weaken-protection into main
mesh-admin2026-10-09 11:49:43 +00:00
645961a87b
mesh-cli at go/v0.1.9, and the unannounced pull request's number (hq ADR 0272, issue 347)
jochen2026-10-09 13:41:59 +02:00
1dca181e03
Put every repository path through the segment helper, gitea_open_pulls's included
jochen2026-10-09 13:41:35 +02:00
46fe6fff64
Merge remote-tracking branch 'origin/main' into fix/the-forge-tools-never-weaken-protection
jochen2026-10-09 13:41:02 +02:00
ceab9a03b7
Merge pull request 'Announce a pull request opened after its push, and say one nobody checks (hq issue 347)' (#159) from fix/347-a-pull-request-opened-after-its-push-is-never-checked into main
mesh-admin2026-10-09 11:38:48 +00:00
8ff8197a32
Merge pull request 'mesh-cli: the operator's command on every node, nox in zsh (hq ADR 0272)' (#156) from feat/272-mesh-cli into main
mesh-admin2026-10-09 11:38:44 +00:00
5eab586116
Put no caller's text in a forge path unjudged: every segment checked, every sent path checked again
jochen2026-10-09 13:35:15 +02:00
32d55beb47
Say a pull request nobody checks as a delivery held, owned by mesh-delivery (hq issue 347)
jochen2026-10-09 13:14:36 +02:00
bcc6b3f52a
gitea README: how to see a late-opened pull request announced (hq issue 347)
jochen2026-10-09 12:58:13 +02:00
213950e334
Merge remote-tracking branch 'origin/main' into fix/the-forge-tools-never-weaken-protection
jochen2026-10-09 12:57:16 +02:00
ea772a9cce
Let gitea_api send only the query keys it needs, never sudo, and never approve a pull request
jochen2026-10-09 12:57:16 +02:00
67bce7e189
Announce a pull request opened after its push, and say one nobody checks (hq issue 347)
jochen2026-10-09 12:55:09 +02:00
e9f5727cad
Merge pull request 'xorg: list the server's windows, and cut a window's screenshot from the screen (hq issue 345)' (#154) from fix/xorg-windows-and-window-screenshot into main
mesh-admin2026-10-09 10:51:01 +00:00
1833045c33
Merge pull request 'picom: the backend and damage tracking are each machine's settings (hq issue 345)' (#157) from feat/picom-backend-and-damage-settings into main
mesh-admin2026-10-09 10:50:58 +00:00
65308a7bce
Merge pull request 'betterbird: a module for the mail and calendar client (hq issue 345)' (#155) from feat/betterbird-module into main
mesh-admin2026-10-09 10:50:54 +00:00
a783ac9478
Merge pull request 'xdg: keep the folders file trusted, so only the terminal sets the folders (hq issue 346)' (#158) from fix/xdg-user-dirs-trusted-again into main
mesh-admin2026-10-09 10:50:51 +00:00
6f1c559d93
mesh-cli: say an outcome not known, and hold the module to placing one file (review of hq ADR 0272)
jochen2026-10-09 12:49:14 +02:00
a588eb5983
xdg: keep the folders file trusted, so only the terminal sets the folders (hq issue 346)
jschoubben2026-10-09 12:40:04 +02:00
2d2c694306
betterbird: know a composer by its instance alone, and bound a restart's worst case (review of #155)
jschoubben2026-10-09 12:34:06 +02:00
ca1bd18de6
picom: keep the configuration trusted, so only the terminal sets the backend (review of #157)
jschoubben2026-10-09 12:33:41 +02:00
ff648ad32b
Send the path gitea_api judged, keep a pull request's base, merge only into a guarded branch, and delete only the tools' own idle repositories
jochen2026-10-09 12:26:37 +02:00
73f2962bab
picom: the backend and damage tracking are each machine's settings (hq issue 345)
jschoubben2026-10-09 12:25:08 +02:00
4fe8958dda
xorg: refuse a window that is not on the screen, and keep an inline screenshot within the bus (review of #154)
jschoubben2026-10-09 12:23:51 +02:00
3629089ced
betterbird: never lose an unsent message, never answer an address, and keep the test apart (review of #155)
jschoubben2026-10-09 12:22:47 +02:00
e1e043c088
Take out a mounts binary a local build left in this branch
jochen2026-10-09 12:16:58 +02:00
2594a24b35
mesh-cli: the operator's command on every node, nox in zsh (hq ADR 0272)
jochen2026-10-09 12:11:21 +02:00
52a4827983
xorg: list the server's windows, and cut a window's screenshot from the screen (hq issue 345)
jschoubben2026-10-09 12:05:41 +02:00
a7953b969d
betterbird: a module for the mail and calendar client, so its windows and preferences can be seen and declared (hq issue 345)
jschoubben2026-10-09 12:05:56 +02:00
080c113d69
Let the forge's tools never weaken protection or merge past the checks
jochen2026-10-09 11:47:36 +02:00
eacda6e3ae
claude-code: make the agent account at the home its node names
jochen2026-10-09 11:02:52 +02:00
6d32975ca6
Refuse the agent-home gap reached through a module's own directory or a literal home
jochen2026-10-08 21:46:18 +02:00
87862f3bf5
Refuse an archive or a file written into under the agent's home
jochen2026-10-08 21:16:29 +02:00