AM-D3/AM-H1 path: the node's record carries the runner's reading; mesh-grants gains withheld

The grants part must tell a reading of the running tool runner from an older
one, and the node-engine's composition reads the withheld subjects through a
verb of the seat, never the grants part's state.

Builds: design 46 7 §6 (the node's record takes the runner's capabilities and fingerprint; the seat mesh-grants' verb withheld, class read, callers the node-engine, persons and the operator, input node, with a fixture), lead answer A-203 (runner-capabilities, runner-fingerprint; withheld's input and answer)

Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
This commit is contained in:
2026-11-12 06:04:56 +01:00
parent 49e26f5d27
commit ff63be3028
11 changed files with 201 additions and 8 deletions
+6 -1
View File
@@ -388,6 +388,7 @@
"node": "ace",
"tunnel-key": "k",
"capabilities": [
"approval-mark/1",
"docker"
],
"networks": [
@@ -397,7 +398,11 @@
}
],
"networks-said": true,
"contract": 3
"contract": 3,
"runner-capabilities": [
"approval-mark/1"
],
"runner-fingerprint": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
},
"composes": "own",
"candidates": {
+11
View File
@@ -2342,6 +2342,17 @@
"items": {
"type": "string"
}
},
"runner-capabilities": {
"type": "array",
"items": {
"type": "string"
},
"description": "the capabilities this node's tool runner states of the calls it answers, as its announcement carries them (design 46 approval mark 6)"
},
"runner-fingerprint": {
"type": "string",
"description": "the fingerprint of the tool runner that stated runner-capabilities, as its announcement carries it; empty when it stated none"
}
},
"required": [