4c0ed75090
issue 1025: mesh-delivery announces each merge on the Approve as the event merged, with its warrant
jschoubben2026-10-17 15:40:00 +02:00
05e6b583e2
Keep what ssh reads itself and linked key folders in ~/.ssh, and fail the sweep loudly (issue 1020, ADR 0417)
mesh-tools2026-10-17 13:36:27 +00:00
ce56b491cf
Merge pull request 'ssh-client keeps ~/.ssh to what it knows: sweep every other path into a kept folder (issue 1017, ADR 0415)' (#346) from fix/1017-retire-ssh-leftovers into main
mesh-tools2026-10-17 13:07:05 +00:00
9675babf52
Merge pull request 'mesh-delivery acts on events and keeps each pull request's key; the forge's announcements carry a message id (issues 975, 976, design 47 milestone 2)' (#345) from feat/events-and-queues into main
mesh-tools2026-10-17 12:52:42 +00:00
94f65cccd9
issue 975: an empty commit so mesh-delivery reads the group's after: line, which it reads only when a head is announced (the operator's word, 2026-10-17)
jschoubben2026-10-17 14:39:21 +02:00
acf075fa63
ssh-client keeps ~/.ssh to what it knows: sweep every other path into a kept folder (issue 1017, ADR 0415)
mesh-tools2026-10-17 12:38:16 +00:00
52f70f42b7
issue 975: a merge heard again changes nothing, and a verdict naming no trunk commit is not written to the key
jschoubben2026-10-17 14:10:14 +02:00
add91ff048
issue 976: the forge's announcements get a deterministic message id; the announcement files go, the poll's watermark is kept in the module's state
jschoubben2026-10-17 13:52:47 +02:00
2c8c1543ba
issue 975: the pull request's key written by compare-and-set, the ready flag on a ready mark's check, build-agent reads the key
jschoubben2026-10-17 13:48:54 +02:00
27ca8bbcff
issue 975: the acceptance over a real bus: a ready mark and its Approve are merged within seconds of their events
jschoubben2026-10-17 13:28:21 +02:00
0809a1f982
issue 975: a test that fails on a ticker and on a timer that names no bounded step it retries
jschoubben2026-10-17 13:25:33 +02:00
b5225d3a2f
issue 975: no forge poll; the open pull requests are read at start and when a merge check's status, a new head or a ready mark says they changed
jschoubben2026-10-17 13:25:03 +02:00
d675f5e7c6
issue 975: no tick and no reconcile loop; a look after each event, one timer for the steps that wait on the clock
jschoubben2026-10-17 13:23:25 +02:00
95e11464fe
issue 975: ready marks, verdicts and Approves ask the merge as events, not at the next minute
jschoubben2026-10-17 13:19:01 +02:00
a7d526838a
Merge pull request 'One forge user, nox-agent, for every machine's agents' SSH pushes, each machine's key titled by machine (issue 991, ADR 0410)' (#344) from fix/991-one-forge-agent-user into main
mesh-tools2026-10-17 00:51:08 +00:00
3a2560dc51
One forge user, nox-agent, for every machine's agents' SSH pushes, each machine's key titled by machine (issue 991, ADR 0410)
mesh-tools2026-10-17 00:46:43 +00:00
82df3bd589
Merge pull request 'Give the forge an ssh name of its own, so it no longer merges with the operator's entry for its machine (issue 955, ADR 0409)' (#343) from fix/955-forge-ssh-name into main
mesh-tools2026-10-17 00:05:57 +00:00
661b83249c
Give the forge an ssh name of its own, so it no longer merges with the operator's entry for its machine (issue 955, ADR 0409)
mesh-tools2026-10-17 00:01:42 +00:00
bb291b5ad8
Merge pull request 'Keep gitea's forge-account provider running when a watch is refused, so a later grant is picked up (issue 955)' (#342) from fix/955-provider-keeps-running into main
mesh-tools2026-10-16 23:30:28 +00:00
b159efd656
Keep gitea's forge-account provider running when a watch is refused, so a later grant is picked up (issue 955)
mesh-tools2026-10-16 23:26:01 +00:00
522780d5fc
Merge pull request 'Let gitea's forge-account provider read the assignments it learns its consumers from (issue 955)' (#341) from fix/955-gitea-reads-assignments into main
mesh-tools2026-10-16 23:11:16 +00:00
065ecd85f5
Let gitea's forge-account provider read the assignments it learns its consumers from (issue 955)
mesh-tools2026-10-16 23:05:10 +00:00
734a77f5a9
Merge pull request 'Feature agents-write-git, step 2: git over SSH with a key made on each machine (issue 955)' (#340) from feat/agents-write-git-ssh into main
mesh-tools2026-10-16 22:31:17 +00:00
ae9cda8531
Hand ssh-client's forge files to the provisioner client (issue 955)
mesh-tools2026-10-16 22:05:52 +00:00
6f45570d4c
Do not remove keys or entries before the machines' keys are read (issue 955 F)
jschoubben2026-10-16 22:54:31 +02:00
6fdf3629d3
Remove a machine's mesh keys and entry when its key is no longer reported (issue 955 F)
jschoubben2026-10-16 22:53:22 +02:00
5c64b71cd7
Test the forge-account provider whole against a real bus and a fake forge (issue 955 F5)
jschoubben2026-10-16 22:47:59 +02:00
1081a5f3ea
Declare the forge-account provision, its provider bundle, its fact and the keys it reads (issue 955 F4)
jschoubben2026-10-16 22:46:27 +02:00
c346bba34e
Add the forge-account provider: an agent account, its team and its machine key per consumer (issue 955 F3)
jschoubben2026-10-16 22:45:51 +02:00
165cbcb35f
Merge branch 'feat/agents-write-git-ssh' into feat/agents-write-git-ssh-s
fix-955-ssh2026-10-16 22:44:43 +02:00
9cb615f121
Prove the forge key process over a real bus in the merge check (issue 955 S4)
fix-955-ssh2026-10-16 22:44:36 +02:00
ad5a0f8e44
Place the forge's known host, SSH Host and git rewrite (issue 955 S3)
fix-955-ssh2026-10-16 22:43:51 +02:00
a4cdd05cb2
Declare ssh-client's keys state and its forge-account requirement (issue 955 S2)
fix-955-ssh2026-10-16 22:43:29 +02:00
b2009f1bb5
Keep the machine's forge SSH key and its keys entry (issue 955 S1)
fix-955-ssh2026-10-16 22:43:18 +02:00
8131c13634
Register and prune an agent account's mesh SSH keys through the forge API (issue 955 F2)
jschoubben2026-10-16 22:42:04 +02:00
c8dfbdc813
Lift the agent account code into internal/forgeaccount for the forge-account provider (issue 955 F1)
jschoubben2026-10-16 22:41:11 +02:00
017b729bc9
Merge pull request 'Serve postgres's consumers the port its server is published on, not the container's 5432 (issue 957)' (#339) from fix/957-postgres-serves-published-port into main
mesh-tools2026-10-16 20:15:33 +00:00
deb2020bd4
Serve postgres's consumers the port its server is published on, not the container's 5432 (issue 957)
lead-572026-10-16 21:56:15 +02:00
5652a14944
Merge pull request 'Feature agents-write-git, step 1: agents write with their own accounts, main stays closed, a merge into main waits for the operator (issues 948, 954)' (#338) from feat/agents-write-git into main
mesh-tools2026-10-16 19:45:36 +00:00
9acd1f51c5
Merge branch 'feat/agents-write-git' into feat/agents-write-git-d
fix-deliv-awg@novox2026-10-16 21:36:10 +02:00
4cccd817a0
End a group's ask and Approve when any member is pushed (issue 948, ADR 0398 §3)
fix-deliv-awg@novox2026-10-16 21:36:06 +02:00
3cdea45f90
Keep main's rule right at every start and copy a covering glob's checks (issue 948, review round 1)
fix-forge-awg2026-10-16 21:35:51 +02:00
4215b40547
Read the whole plan the controller writes: at, from, as, names and credential-tool (issue 954)
lead-572026-10-16 21:32:13 +02:00
0bfece71da
Merge branch 'feat/agents-write-git' into feat/agents-write-git-d
fix-deliv-awg@novox2026-10-16 21:29:58 +02:00
f61e00aeaa
Ask the operator to Approve a merge into main and merge only on the warrant (issue 948, ADR 0398 §3)
fix-deliv-awg@novox2026-10-16 21:29:55 +02:00
789aa0133f
Keep the guard's push wording for main (issue 948)
fix-forge-awg2026-10-16 21:28:49 +02:00
7807135a1b
Main takes no push and only mesh-tools merges, set by setup and guarded (issue 948, ADR 0398 §2)
fix-forge-awg2026-10-16 21:28:43 +02:00
417f69567c
Merge only into main: a ready mark on another base is left to its author (issue 948, ADR 0398 §4)
fix-deliv-awg@novox2026-10-16 21:26:53 +02:00
b0f86671b6
Give the agent's token write scopes and the agents write team (issue 948, ADR 0398 §1)
fix-forge-awg2026-10-16 21:25:59 +02:00
8d012fe4e2
Merge pull request 'Feature providers-after-switch-on, step 1: providers answer after the switch-on (issues 923, 928, 849, 945, 825)' (#337) from feat/providers-after-switch-on into main
mesh-tools2026-10-16 19:13:01 +00:00
d2992f81d1
Take mesh-sdk a4e7f48 in the modules that use its provider helper (issues 825, 849, 945)
lead-572026-10-16 20:59:14 +02:00
dcedd8d2b2
Give the route plan entries their credential-form, and read the entry's vault-name in the route providers' tests (issues 923, 945)
fix-cat-pas@novox2026-10-16 19:44:19 +02:00
302eab1431
Restore the test that both keycloak paths leave the same client, over the SDK's moved path (issue 849)
fix-cat-pas@novox2026-10-16 19:37:54 +02:00
b0dc3323c9
Run keycloak on the SDK's harness and moved path, dropping its copies (issue 849)
fix-cat-pas@novox2026-10-16 19:36:02 +02:00
33759f8b57
Run postgres on the SDK's harness and moved path, dropping its copies (issue 849)
fix-cat-pas@novox2026-10-16 19:35:22 +02:00
2f09dd8501
Merge branch 'feat/providers-after-switch-on' into feat/providers-after-switch-on-v
fix-vault-pas@novox2026-10-16 19:34:15 +02:00
5a00596908
Make the vault ask a software-issuing provider's tool itself for holders that hold nothing (issue 928)
fix-vault-pas@novox2026-10-16 19:34:11 +02:00
044a548cee
Pin that the client asks a refused or not-yet secret again (issue 928)
fix-vault-pas@novox2026-10-16 19:31:40 +02:00
0dab4475cd
Answer an unreadable assignment as not yet, never a refusal (issue 928)
fix-vault-pas@novox2026-10-16 19:30:15 +02:00
0b056edaaa
Prove the client fills gitea's origins and keycloak's hostname from route-proxy's entry for a controller-shaped plan entry (issue 923)
fix-cat-pas@novox2026-10-16 19:29:30 +02:00
cc9e7a72ee
Name the vault's credential vault-name in the client's bound-entry fixtures (issue 945)
fix-cat-pas@novox2026-10-16 19:29:30 +02:00
3817099b2c
Merge pull request 'Ask the plans again when the moved path starts before its runtime answers (issue 943)' (#336) from fix/943-moved-path-waits-for-runtime into main
mesh-tools2026-10-16 16:55:41 +00:00
6005c6001e
Ask the plans again when the moved path starts before its runtime answers (issue 943)
mesh-tools2026-10-16 16:52:52 +00:00
832a0afd18
Merge pull request 'Say once after a restart that nothing waits, so an old retirement condition clears (issue 937)' (#335) from fix/937-settle-after-restart into main
mesh-tools2026-10-16 16:45:30 +00:00
d7a880a608
Say once after a restart that nothing waits, so an old retirement condition clears (issue 937)
mesh-tools2026-10-16 16:42:39 +00:00
3ee754eb3b
Merge pull request 'Keep serving the consumers postgres's grant file gives on its moved path (issue 937)' (#334) from fix/937-postgres-grants-on-moved-path into main
mesh-tools2026-10-16 16:32:21 +00:00
6268f8f94b
Merge pull request 'Hold an ask no channel can carry now and offer it when one can (issue 926, ADR 0397)' (#333) from fix/926-a-held-ask-waits-for-a-channel into main
mesh-tools2026-10-16 16:28:21 +00:00
41cdd03208
Keep serving the consumers postgres's grant file gives on its moved path (issue 937)
mesh-tools2026-10-16 16:25:52 +00:00
77d751fe83
Test the router whole over the real bus: a held ask is offered when a channel can carry it (issue 926, ADR 0397)
jschoubben2026-10-16 17:57:52 +02:00
c211762813
Hold an ask no channel can carry now and offer it when one can; show held and why (issue 926, ADR 0397)
jschoubben2026-10-16 17:51:26 +02:00
08188663fa
Merge pull request 'mesh-files holds node-files: file work on a node with trash, owned paths and an act log, no shell needed (issue 900, ADR 0394)' (#332) from feat/900-node-files into main
mesh-tools2026-10-16 14:25:12 +00:00
d4a9260847
Merge remote-tracking branch 'origin/main' into feat/900-node-files
jschoubben2026-10-16 16:15:45 +02:00
8b53a36632
Merge pull request 'mesh-delivery: mark-ready writes label then comment in the order the forge counts; a label awaiting its comment is not cleared (issue 913, issue 873)' (#331) from feat/913-mark-ready into main
jschoubben2026-10-16 13:47:38 +00:00
5d98bcc0db
mesh-files: the holder of node-files, reads and writes with trash, owned paths and an act log, so file work on a node needs no shell (issue 900, ADR 0394)
jschoubben2026-10-16 14:50:03 +02:00
2d1b20364f
mesh-delivery: an empty-head ready mark is cleared only after a minute, and not right after mark-ready; clearer wording (issue 913, issue 873)
jschoubben2026-10-16 14:35:58 +02:00
741b729ad4
mesh-delivery: mark-ready labels then comments the head in the order the forge counts; an empty-head clear says why (issue 913, issue 873)
jschoubben2026-10-16 14:33:50 +02:00
3db85a0dde
Merge pull request 'Feature 57 (config and provisioning): release the catalogue' (#330) from release/57-config-and-provisioning into main
mesh-tools2026-10-16 10:57:56 +00:00
a31ad48b02
Restore the blank last line the patch route dropped from ten files, so the branch holds the reviewed tree (issue 875)
mesh-tools2026-10-16 09:43:59 +00:00
0260ae92f6
Feature 57 (config and provisioning): release the catalogue, the reviewed release branch merged with main, on top of main
mesh-tools2026-10-16 09:42:45 +00:00
ee1b15d7f0
Merge pull request 'A delivering group says success on mesh/delivery-group, so its later members can merge (issue 902)' (#329) from fix/902-group-member-merges-while-delivering into main
mesh-tools2026-10-16 09:16:36 +00:00
8efe499db9
A delivering group says success on mesh/delivery-group, so its later members can merge (issue 902)
mesh-tools2026-10-16 09:12:53 +00:00
173c5d5ef4
Merge pull request 'Put a group's composed check out of date when a member is rechecked (issue 867, ADR 0323 §6)' (#327) from fix/867-recheck-asks-the-group-again into main
mesh-tools2026-10-16 01:20:20 +00:00
c7c784161d
Put a group's composed check out of date when a member is rechecked (issue 867, ADR 0323 §6)
mesh-toolsandClaude2026-10-16 01:17:58 +00:00
0fdacb9839
Merge pull request 'mesh-mail: a send ask the operator channel can carry (issue 868)' (#326) from fix/868-a-send-ask-the-channel-can-carry into main
mesh-tools2026-10-16 00:08:21 +00:00
b0e4a12c88
mail_send's ask: judge messenger's real words, carry the content rule at run time, match display-name recipients (issue 868, review round 1)
jochen2026-10-16 02:04:32 +02:00
a76b0742ff
mail_send's ask names recipients and masks addresses so the operator channel can carry it (issue 868)
jochen2026-10-16 01:57:06 +02:00
21a499ba59
Merge pull request 'Group siblings: mesh-delivery names member heads; the forge re-pends and refuses on a sibling's move (issue 867, ADR 0382)' (#325) from fix/867-group-siblings into main
mesh-tools2026-10-15 23:53:10 +00:00
de9d29dc65
Keep a group member's siblings and refuse its merge until the group passed and every sibling is reviewed (issue 867, ADR 0382)
mesh-toolsandClaude2026-10-15 23:27:13 +00:00
62ec68355c
Merge pull request 'mesh-mail-notifier asks its own machine's node-notifier (issue 865)' (#324) from fix/865-notifier-asks-its-own-machine into main
mesh-tools2026-10-15 21:34:27 +00:00
6a5e6510ca
Merge pull request 'The clipboard service waits for an older daemon's lock, and the history sees the daemon (hq issues 860, 862)' (#323) from fix/860-862-the-clipboard-takes-over-quietly into main
mesh-tools2026-10-15 21:31:46 +00:00
3f97d2d50d
mesh-mail-notifier: Send names its own machine's node-notifier (issue 865)
jochen2026-10-15 23:27:24 +02:00
6112233649
Probe clipmenud's lock with flock's default conflict status, which BusyBox shares (issue 862)
jschoubben2026-10-15 23:27:19 +02:00
8c2d7e5f97
Merge pull request 'mesh-mail-notifier: the watcher runs in its runtime, not a process that exits at once (issue 859)' (#322) from fix/859-notifier-runs-in-its-runtime into main
mesh-tools2026-10-15 21:21:12 +00:00
21ebbffed4
Count clipmenud when it runs as a bash script (issue 860)
jschoubben2026-10-15 23:18:22 +02:00
31120ed580
mesh-mail-notifier: watch retries a subscribe refusal instead of exiting (issue 859, review round 1)
jochen2026-10-15 23:17:14 +02:00
cf304d8629
Wait quietly for clipmenud's session lock; count the operator's clipmenud (issues 860, 862)
jschoubben2026-10-15 23:15:35 +02:00
12d7852082
mesh-mail-notifier: the watcher runs in the base invocation, not a separate notify process (issue 859)
jochen2026-10-15 23:13:34 +02:00
c9848f4fb8
Merge pull request 'The clipboard keeps its history running and keeps it to itself (hq issues 743, 750)' (#320) from fix/743-750-the-clipboard-keeps-history-and-keeps-it-to-itself into main
mesh-tools2026-10-15 21:02:04 +00:00