From 7da4c557526750d41c2a4f85259286eb6ecb5bcf Mon Sep 17 00:00:00 2001 From: jochen Date: Tue, 3 Nov 2026 23:09:34 +0100 Subject: [PATCH 1/3] Put tool-runner back in node-tools' manifest (L3 final, issue 774) The judge that knows the word runs now. Claude-Session: https://claude.ai/code/session_01JG73KG7AfSdh6FP8VrBqCn --- node-tools/internal/provide/provide_test.go | 10 ++++------ node-tools/module.json | 1 + 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/node-tools/internal/provide/provide_test.go b/node-tools/internal/provide/provide_test.go index 413825d..47957c9 100644 --- a/node-tools/internal/provide/provide_test.go +++ b/node-tools/internal/provide/provide_test.go @@ -206,14 +206,12 @@ func TestTheManifestNamesNothingOfTheController(t *testing.T) { if err != nil { t.Fatal(err) } - // Read as text, as mesh-catalog's controllerdeps check reads its own: mesh-sdk names no module (issue 774). + // Read as text, as mesh-catalog's controllerdeps check reads its own: mesh-sdk names no module (issue 774), and the + // manifest says it is the tool runner rather than being known by its name. if strings.Contains(string(raw), "mesh-controller") { t.Error("node-tools' manifest names the ended controller") } - // The manifest says nothing of being the tool runner until the indexer whose judge knows the word runs (issue 774): - // the running judge refuses a manifest with "tool-runner", and while one manifest is refused the grants part holds - // the bus's user list, so the build of the indexer that knows it is never granted. The word comes back then. - if catalogue.IsToolRunner(m) { - t.Error("node-tools' manifest says \"tool-runner\" before the judge that reads it runs") + if !catalogue.IsToolRunner(m) { + t.Error("node-tools' manifest does not say it is the tool runner (\"tool-runner\": true)") } } diff --git a/node-tools/module.json b/node-tools/module.json index e6cb6db..535300f 100644 --- a/node-tools/module.json +++ b/node-tools/module.json @@ -2,6 +2,7 @@ "module": "node-tools", "version": "1", "slug": "node-tools", + "tool-runner": true, "invokes": [ "*" ], From 0fb4591c9da9d03bd9b8bb659faf96e774c1d44d Mon Sep 17 00:00:00 2001 From: jochen Date: Tue, 3 Nov 2026 23:43:11 +0100 Subject: [PATCH 2/3] Pin mesh-sdk 85ba0a9a70d8, the group's head of feat/l3-final (issue 774) Claude-Session: https://claude.ai/code/session_01JG73KG7AfSdh6FP8VrBqCn --- node-tools/go.mod | 2 +- node-tools/go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/node-tools/go.mod b/node-tools/go.mod index 751f6a9..d88a8a1 100644 --- a/node-tools/go.mod +++ b/node-tools/go.mod @@ -8,7 +8,7 @@ require ( ) require ( - git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261103174208-b7abe203a929 + git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261103221822-85ba0a9a70d8 github.com/antithesishq/antithesis-sdk-go v0.7.0-default-no-op // indirect github.com/google/go-tpm v0.9.8 // indirect github.com/klauspost/compress v1.20.0 // indirect diff --git a/node-tools/go.sum b/node-tools/go.sum index abad296..7679a5d 100644 --- a/node-tools/go.sum +++ b/node-tools/go.sum @@ -1,5 +1,5 @@ -git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261103174208-b7abe203a929 h1:RtAFbUJRP1qO9AIMM2ue+cXNzqj7WZ7IOlSqNvttwuU= -git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261103174208-b7abe203a929/go.mod h1:ouERNpZizzwZ0HLEtAypsY9FR20FyUgUYRni6J7kVCY= +git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261103221822-85ba0a9a70d8 h1:XEbIVImp6yGjA91rp0iZBoDdL5KfamjOuDLwWvqh0hc= +git.novox.be/novox/mesh-sdk/go v0.1.14-0.20261103221822-85ba0a9a70d8/go.mod h1:ouERNpZizzwZ0HLEtAypsY9FR20FyUgUYRni6J7kVCY= github.com/antithesishq/antithesis-sdk-go v0.7.0-default-no-op h1:Z/MZK75wC/NSrkgqeNIa7jexam9uWzhLmFTSCPI/kn0= github.com/antithesishq/antithesis-sdk-go v0.7.0-default-no-op/go.mod h1:FQyySiasQQM8735Ddel3MRojmy4dA1IqCeyJ5jmPMbI= github.com/google/go-tpm v0.9.8 h1:slArAR9Ft+1ybZu0lBwpSmpwhRXaa85hWtMinMyRAWo= From 7fd9d893c0a50323dc4422fe46a82a9026b65dc9 Mon Sep 17 00:00:00 2001 From: jochen Date: Wed, 4 Nov 2026 00:44:17 +0100 Subject: [PATCH 3/3] Give node-tools new manifest bytes (version 2), the recovery of the moment for a stale verdict The running indexer holds a refusal from 21:14 for the exact bytes of this manifest, which says tool-runner again. A new digest is read afresh; the thorough fix of stale verdicts is in the indexer in this group (issue 774). Claude-Session: https://claude.ai/code/session_01JG73KG7AfSdh6FP8VrBqCn --- node-tools/module.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/node-tools/module.json b/node-tools/module.json index 535300f..e9d1a43 100644 --- a/node-tools/module.json +++ b/node-tools/module.json @@ -1,6 +1,6 @@ { "module": "node-tools", - "version": "1", + "version": "2", "slug": "node-tools", "tool-runner": true, "invokes": [