0f159a1662
Fix review round 2 of the wait list and its hooks (issues 1629, 1743, 1744, ADR 0490)
jochen2026-10-21 18:43:03 +02:00
f0beea153e
Key a wait list by name, not session id, so it survives a /clear (issues 1629, 1744, ADR 0490)
jochen2026-10-21 18:32:50 +02:00
7a7a403485
Merge pull request 'Files go through the store: object-store links, node-files upload/download, a document converter, and brother printing a key, a path on any machine or a web link (design 60 F3, ADR 0468)' (#417) from feat/files-through-the-store into main
mesh-tools2026-10-21 16:31:22 +00:00
02a8837348
Fix review round 1 of the wait list and its hooks (issues 1629, 1743, 1744)
jochen2026-10-21 18:23:42 +02:00
0fa427dad3
Add the plugin's Stop hook so a written-down wait is never left unwatched (issue 1743)
jochen2026-10-21 18:08:13 +02:00
37628f4bce
Add the plugin's SessionStart hook so a session learns its own id (issue 1744)
jochen2026-10-21 18:07:36 +02:00
6cf51173d5
Give the Service its own fetch client and open-document waits instead of reading package variables from background goroutines, which a test or reload changed meanwhile: data races under -race (issue 1601)
jschoubben2026-10-21 18:03:58 +02:00
ad85a979e3
Read the upload fake under a lock, since the print runs in the background and the test read it meanwhile: a data race under -race (issue 1598)
jschoubben2026-10-21 18:03:58 +02:00
56c68be7fa
Keep a session's wait list in the claude-code module (issue 1629)
jochen2026-10-21 17:59:10 +02:00
aef2a1a91f
Merge remote-tracking branch 'origin/main' into feat/files-through-the-store
jschoubben2026-10-21 17:49:29 +02:00
b2f5ebb27d
Merge pull request 'Fill a delivery made from its verdict from its pull request's announcement, and say what it waits for (issue 1726)' (#419) from fix/1726-delivery-from-verdict into main
mesh-tools2026-10-21 15:40:16 +00:00
3259765d46
Merge pull request 'Read automx's rows in a mode its image's sqlite3 knows (issue 1630)' (#418) from fix/1630-automx-rows-sqlite into main
mesh-tools2026-10-21 15:08:27 +00:00
4b9464f3ce
Supersede older heads when an announcement or edit fills a delivery made from its verdict, and say truthfully what fills it (issue 1726)
jschoubben2026-10-21 17:06:51 +02:00
1f7dd702d2
Read automx's rows with a mode its image's sqlite3 knows, since it refuses -json (issue 1630)
jschoubben2026-10-21 16:24:58 +02:00
dd31d991cd
Fill a delivery made from its verdict from its pull request's announcement, and say what it waits for (issue 1726)
jschoubben2026-10-21 16:18:43 +02:00
a2deae03b7
Answer printer.print within 25 s as started with its ask id, and read it with printer.print {ask}, so no call is cut by the tool runner (issue 1598)
jschoubben2026-10-21 15:25:17 +02:00
72ef20a4e7
Follow a conversion with convert {ask}, each call under 25 s, and leave the SDK's call timeout alone (issue 1600)
jschoubben2026-10-21 15:23:33 +02:00
778356f10c
Answer a conversion not done in 25 s as converting and read it with convert {ask}, so no call is cut by the tool runner (issue 1595)
jschoubben2026-10-21 15:22:36 +02:00
7c97ce0bf8
Bound an upload and a download to 25 s, so a tool call is never cut while the transfer goes on (issue 1597)
jschoubben2026-10-21 15:21:56 +02:00
68e1ad80ac
Declare the seat document-converter in only-office's seats (issue 1595)
jschoubben2026-10-21 15:19:03 +02:00
6e2762d943
Declare the seat object-store in minio's seats (issue 1516)
jschoubben2026-10-21 15:19:03 +02:00
dc2b0641bf
Merge remote-tracking branch 'origin/main' into feat/files-through-the-store
jschoubben2026-10-21 15:10:43 +02:00
b54640e386
Post conversions to the document server's documented /converter path (issue 1596)
jschoubben2026-10-21 15:10:35 +02:00
6358041eca
Convert a Word, spreadsheet, slide, text or web document to PDF through the converter before printing it (issue 1600)
jschoubben2026-10-21 15:09:47 +02:00
657b38ccd1
Print a web link: the device process fetches it bounded, never inside the mesh or the machine, stores it under its SHA-256 and prints that (issue 1599)
jschoubben2026-10-21 15:07:34 +02:00
e959cf339b
Make printer.print take exactly one of object, path with node, or url, send a machine's file through its node-files, and check the printer's formats first (issue 1598)
jschoubben2026-10-21 15:05:03 +02:00
cb226c6fef
File a scan from the store by the link the device process signs, not by parts over the bus (issue 1601)
jschoubben2026-10-21 15:01:09 +02:00
278014fd79
Add the converter process: take convert-asks, have the document server make the PDF with a token only it holds, and put it to the target link (issue 1596)
jschoubben2026-10-21 14:58:41 +02:00
caae838a2a
Claim document-converter and serve convert: queue the ask for the converter and read its answer, holding no credential (issue 1595)
jschoubben2026-10-21 14:55:47 +02:00
6ee3507af0
Serve node-files.upload and download: a machine's file goes into a bucket and an object comes out of one, by short links, never over the bus (issue 1597)
jschoubben2026-10-21 14:54:17 +02:00
06ca1b7fb9
Serve object-store.link: a signed link to one object, signed with the bucket's link key, for the consumer and its shares; retire the root-signed minio_presigned_url (issue 1516)
jschoubben2026-10-21 14:52:14 +02:00
90ecba4e50
Merge pull request 'Capture automx's live answers as fixtures and add a read-only tool for its database rows, before R4d replaces it (issue 1630)' (#415) from feat/r4d-automx into main
mesh-tools2026-10-21 12:47:49 +00:00
5b3fd1008a
Make a link key per bucket, limited to get and put of its objects and kept as minio's own secret, so links are not signed by the root account (issue 1594)
jschoubben2026-10-21 14:47:14 +02:00
671ab9a3ba
Merge pull request 'Pin gitea, keycloak, mesh-provisioner-client, postgres and route-adapter to a mesh-sdk commit on main, so a fresh go mod download resolves them once the feature branch goes (issue 1663)' (#414) from fix/1663-sdk-pins-on-main into main
mesh-tools2026-10-21 12:30:06 +00:00
0a7c58766c
Pin gitea, keycloak, mesh-provisioner-client, postgres and route-adapter to a commit of mesh-sdk main, since the pinned one is on a feature branch only (issue 1663)
jschoubben2026-10-21 14:07:01 +02:00
9ff24fa619
n8n's media-gid is a required config value: a machine that does not say it refuses n8n (issue 1639)
jschoubben2026-10-21 14:02:46 +02:00
454c5662dd
Add automx_rows, a read-only tool for the rows automx answers from (issue 1630)
jschoubben2026-10-21 14:02:37 +02:00
8fba5e831b
Capture what automx answers today, before a Go program replaces it (issue 1630)
jschoubben2026-10-21 13:59:58 +02:00
90daee7fec
n8n runs its upstream image with uuid mounted and the media group joined, in place of a Dockerfile (issue 1639, ADR 0480 clauses 1, 3, 7, 8)
jschoubben2026-10-21 13:54:33 +02:00
4efac366ce
Merge pull request 'Pin mesh-provisioner, mesh-vault and rofi to a mesh-sdk commit on main, so a fresh go mod download (mesh-build-go's fetch) resolves them (issue 1659)' (#413) from fix/1659-fetch-pseudo-version into main
mesh-tools2026-10-21 11:40:06 +00:00
38ac738d84
Merge pull request 'Add netcheck_request: one HTTP request and its whole answer, so a service's live answers can be captured, refusing loopback, unspecified and link-local addresses (issue 1643)' (#412) from fix/1643-http-request into main
mesh-tools2026-10-21 11:27:33 +00:00
92c5e1d9ae
Pin mesh-provisioner, mesh-vault and rofi to a commit of mesh-sdk main, since the pinned one is on no branch and no fetch can resolve it (issue 1659)
jschoubben2026-10-21 13:14:57 +02:00
a01e1ea7fb
Refuse a host in a short or legacy numeric form (127.1, 2130706433, 0x7f.0.0.1) in netcheck_request before any lookup, so the refusal does not depend on the resolver
jschoubben2026-10-21 13:07:08 +02:00
d74c1cb995
Merge pull request 'Read manifests that name shares: mesh-build-go and mesh-build-node take mesh-sdk 465beb4 (issue 1657)' (#411) from feat/files-through-the-store-builders into main
mesh-tools2026-10-21 11:01:03 +00:00
2d30dc2f1e
Read manifests that name shares: mesh-build-go and mesh-build-node take mesh-sdk 465beb4 (issue 1657)
jschoubben2026-10-21 12:52:28 +02:00
f178aab641
Make every xterm resource a config value with today's value as default; tools read the rendered resources (issue 1656)
jschoubben2026-10-21 12:51:34 +02:00
b5dbfbb784
Merge pull request 'Pack archive artifacts in mesh-build-go, a module's directory or a pinned file, and refuse any path that leads out of the module through a link (issue 1589, ADR 0478 §1)' (#408) from fix/1589-archive-artifacts into main
mesh-tools2026-10-21 10:34:00 +00:00
e9e85365b5
Refuse loopback, unspecified and link-local addresses in netcheck_request, on the address dialled, and use no proxy
mesh-tools2026-10-21 10:27:44 +00:00
710cfbd622
Merge pull request 'Let the build modules answer their own step results and toolchains, so a fetch's workspace and a build's digest can be read (issue 1562, build-module half)' (#410) from fix/1562-read-steps into main
mesh-tools2026-10-21 10:26:13 +00:00
940594b074
Merge pull request 'Make dev-tools, lab and the build modules need the go and nodejs modules instead of declaring the toolchain packages, step B of issue 1573 (ADR 0477 §4)' (#409) from fix/1573b-toolchain-users into main
mesh-tools2026-10-21 10:21:02 +00:00
ff849d9f62
Add netcheck_request: one HTTP request and its whole answer, so a service's live answers can be captured (issue 1643)
mesh-tools2026-10-21 10:08:59 +00:00
f0c8958dd2
Merge pull request 'Apply a patch in the forge tool itself when the forge's diffpatch answers 500, so a patch whose context holds a non-ASCII character is taken (issue 1604)' (#407) from fix/1604-patch-applied into main
mesh-tools2026-10-21 10:08:48 +00:00
c33b83dce7
Read a build module's steps and toolchains states with its own tools, so a step's result and the reported toolchain can be checked live (issue 1562)
mesh-tools2026-10-21 09:57:16 +00:00
36259f3406
Update the build modules' manifest tests for the toolchain provisions (issue 1573)
mesh-tools2026-10-21 09:53:48 +00:00
e023f69989
Compare an archive's tar stream with the build agent's always and its digest only under the Go it was captured with (issue 1589)
mesh-tools2026-10-21 09:52:22 +00:00
324e331184
Anchor patch hunks as git apply does, refuse patches touching non-100644 files by their real mode, survive bare-CR context lines (issue 1604 review)
mesh-tools2026-10-21 09:52:10 +00:00
d8d153295a
Say in the go and nodejs READMEs that they are now the only declarers (issue 1573)
mesh-tools2026-10-21 09:51:22 +00:00
bda75011a1
Say in the build modules' READMEs where the packages come from (issue 1573)
mesh-tools2026-10-21 09:50:55 +00:00
9d1f152603
Wire the toolchains check into the merge check (issue 1573)
mesh-tools2026-10-21 09:50:46 +00:00
c4cd7a1b16
Check that only the go and nodejs modules declare the toolchain packages (issue 1573)
mesh-tools2026-10-21 09:50:14 +00:00
7753c27042
Make dev-tools, lab and the two build modules require the toolchain provisions instead of declaring the packages (issue 1573)
mesh-tools2026-10-21 09:49:50 +00:00
ef154705b9
Make an archive's digest independent of the umask of the account that packs it (issue 1589)
mesh-tools2026-10-21 09:49:13 +00:00
d7e6074d97
Refuse a build output directory that is a link out of the module (issue 1589)
mesh-tools2026-10-21 09:46:47 +00:00
800d6624d5
Refuse an archive of a module directory that is a link out of the workspace's tree (issue 1589)
mesh-tools2026-10-21 09:45:58 +00:00
0f2cee1bea
Merge pull request 'Add the go and nodejs modules that own the toolchain packages on a node, step A of issue 1573 (ADR 0477 §4)' (#406) from fix/1573a-toolchain-owners into main
mesh-tools2026-10-21 09:36:49 +00:00
5efd84e93e
Merge pull request 'Build with the node's installed Go and Node, never a pinned or downloaded toolchain, so builds match what the nodes run (issue 1572, ADR 0477)' (#403) from fix/1572-installed-toolchain into main
mesh-tools2026-10-21 09:27:17 +00:00
ceb42b0e92
Say in the go and nodejs READMEs what holds at this step, and what holds once the users require them (review of issue 1573 step A)
mesh-tools2026-10-21 09:25:23 +00:00
e5cfcb316a
Fall back to the tool's own patch applier when the forge answers 500, with tests (issue 1604)
mesh-tools2026-10-21 09:21:59 +00:00
025d62478a
Add the go and nodejs modules, which own the toolchain packages and provide go-toolchain and node-toolchain (issue 1573)
mesh-tools2026-10-21 09:21:19 +00:00
e6053262e4
Apply a unified diff in the forge tool itself, for the patches the forge's diffpatch refuses (issue 1604)
mesh-tools2026-10-21 09:20:25 +00:00
6993ef003c
Refuse an archive whose directory leads out of the module through a symlinked parent (review of issue 1589)
mesh-tools2026-10-21 09:19:03 +00:00
406ee69732
Add the pinned release the archive tests serve (issue 1589)
mesh-tools2026-10-21 09:13:40 +00:00
8bfa626a8b
Test archive artifacts against build-agent's own digests (issue 1589)
mesh-tools2026-10-21 09:13:32 +00:00
bfd6b7c7ce
Say the build tool packs archives, give the module a client for pinned files, and record how the digests were captured (issue 1589)
mesh-tools2026-10-21 09:12:55 +00:00
640c6f9b0c
Hand an archive artifact to the packing step (issue 1589, ADR 0478 §1)
mesh-tools2026-10-21 09:12:23 +00:00
d369adf245
Unpack and pack archive artifacts in mesh-build-go: a module's directory or a pinned file (issue 1589, ADR 0478 §1)
mesh-tools2026-10-21 09:11:29 +00:00
d8f87808b5
Add the archive fixture tree for mesh-build-go's archive tests (issue 1589)
mesh-tools2026-10-21 09:10:41 +00:00
17d2f7fd5d
Merge pull request 'End a stranded stop whose modules no merge can carry, so its alert clears instead of asking the operator for ever (issue 1581)' (#405) from fix/1581-stranded-removed into main
mesh-tools2026-10-21 08:40:20 +00:00
6411eb4614
End a stranded stop whose modules no merge can carry, so stalled stops listing it (issue 1581)
mesh-tools2026-10-21 08:28:20 +00:00
50ef13d293
Merge pull request 'Upgrade every node's packages on a Saturday 04:00 timer and make its outcome the pacman module's health, so the nodes stay on the same versions (issue 1574, ADR 0477)' (#404) from fix/1574-weekly-upgrade into main
mesh-tools2026-10-21 08:15:53 +00:00
bd10ec4f0d
Say a weekly upgrade that hangs past two hours, so a stuck pacman lock is loud (issue 1574, ADR 0477)
mesh-tools2026-10-21 08:08:04 +00:00
4bdacf38d2
Merge pull request 'Propose mesh-issues' owners: mesh-config takes the SDK that reads names with digits as names (issue 1439)' (#402) from feat/1439-name-runs into main
mesh-tools2026-10-21 08:07:38 +00:00
d699708fb3
Say in mesh-build-go's README that it builds with the installed go and its digest holds no Go version (issue 1572, ADR 0477)
mesh-tools2026-10-21 08:07:15 +00:00
e8046fca87
Say in the build modules' READMEs that they build with the installed toolchain, the digest holds no Go version, and the reference is agreement between build nodes (issue 1572, ADR 0477)
mesh-tools2026-10-21 08:05:55 +00:00
edec7063b3
Build TypeScript with the installed node and name no Node version (issue 1572, ADR 0477)
mesh-tools2026-10-21 08:04:41 +00:00
fc4089cde9
Test the Go module's steps and guard against the installed go (issue 1572, ADR 0477)
mesh-tools2026-10-21 08:03:45 +00:00
049202d373
Build Go with the installed go and name no Go version (issue 1572, ADR 0477)
mesh-tools2026-10-21 08:02:54 +00:00
7fcb9a743b
Replace the downloaded release's tests with tests of the installed toolchain (issue 1572, ADR 0477)
mesh-tools2026-10-21 08:02:02 +00:00
d4d1a1591b
Name pacman_upgrade_health in the pacman README's tools (issue 1574)
mesh-tools2026-10-21 08:00:39 +00:00
5123c1dd57
Say the weekly upgrade and its health in the pacman README (issue 1574, ADR 0477)
mesh-tools2026-10-21 08:00:30 +00:00
e3ac017c28
Test the weekly upgrade's timer and its health (issue 1574, ADR 0477)
mesh-tools2026-10-21 08:00:21 +00:00
1f5046f47e
Declare the weekly upgrade timer with its health, and serve pacman_upgrade_health (issue 1574, ADR 0477)
mesh-tools2026-10-21 07:59:55 +00:00
f12f87f1f9
The weekly upgrade's timer, service and health tool (issue 1574, ADR 0477)
mesh-tools2026-10-21 07:59:31 +00:00
e319f9877f
Upgrade every node's packages together each Saturday at 04:00, with the outcome as the pacman module's health, so the nodes keep the same toolchain versions (issue 1574, ADR 0477)
mesh-tools2026-10-21 07:58:01 +00:00
2379027cec
Propose mesh-issues' owners: take the SDK that reads names with digits as names (issue 1439)
jochen2026-10-21 09:56:15 +02:00
cf197fee89
Upgrade every node's packages together each Saturday at 04:00, with the outcome as the pacman module's health, so the nodes keep the same toolchain versions (issue 1574, ADR 0477)
mesh-tools2026-10-21 07:57:48 +00:00
f813be2753
Merge pull request 'Declare scanner.scan's apart argument, so several tickets on the glass can be filed apart (issue 1528)' (#401) from fix/1528-apart-argument into main
mesh-tools2026-10-21 07:33:45 +00:00
c4913dbbcb
Declare scanner.scan's apart argument, so the console lets it through to the tool (issue 1528)
jschoubben2026-10-21 09:26:11 +02:00
9daeab209b
Merge pull request 'Build Go modules with Go's own release of the recipe's version, so the distribution's build no longer makes the guard refuse (issue 1560, ADR 0476)' (#400) from fix/1560-go-release-toolchain into main
mesh-tools2026-10-21 06:47:11 +00:00
3c4deb8bee
Name the cause of a failed toolchain or module download, not Go's progress line before it (issue 1560, review round 1)
mesh-tools2026-10-21 00:59:12 +00:00