K14 (owner forms): a finding's owner and waiting-on are one of three forms

owner and waiting-on carry the pattern of the three forms (session who@node, a seat's name, forge:<account>) in the layout
and the state value, and the fixtures read two forms. mesh-sdk's writer is what refuses another. Generated code waits for K21.

Builds: design 47 G §678, §540, §451

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
This commit is contained in:
2026-11-11 20:24:46 +01:00
parent a090a447d3
commit f4d0d58619
2 changed files with 50 additions and 4 deletions
@@ -113,5 +113,47 @@
],
"at": "2026-10-26T20:19:41.474823121Z"
}
},
{
"name": "a finding owned by a session and waiting on a seat (design 47 G 678)",
"of": "state:findings/<key>",
"given": {
"v": 1,
"key": "module.mesh-host.ace.directory-used-as-found",
"kind": "directory-used-as-found",
"subject": {
"scope": "module",
"id": "mesh-host.ace",
"machine": "ace"
},
"severity": "warning",
"summary": "a directory waits for a hand",
"source": "health-report",
"observer": "mesh-delivery-watchman",
"at": "2026-11-11T10:00:00Z",
"owner": "jochen@shanks",
"waiting-on": "node-engine"
}
},
{
"name": "a finding owned by a seat and waiting on a commit's author (design 47 G 678, 540)",
"of": "state:findings/<key>",
"given": {
"v": 1,
"key": "module.mesh-host.ace.directory-used-as-found",
"kind": "directory-used-as-found",
"subject": {
"scope": "module",
"id": "mesh-host.ace",
"machine": "ace"
},
"severity": "warning",
"summary": "a directory waits for a hand",
"source": "health-report",
"observer": "mesh-delivery-watchman",
"at": "2026-11-11T10:00:00Z",
"owner": "node-engine",
"waiting-on": "forge:jochen"
}
}
]
@@ -411,11 +411,13 @@
},
"owner": {
"type": "string",
"description": "the module the finding is about, when not the observer"
"pattern": "^([a-z0-9][a-z0-9._-]*@[a-z0-9][a-z0-9-]*|[a-z][a-z0-9-]*|forge:[A-Za-z0-9._-]+)$",
"description": "who the finding is about, when not the observer: a session who@node (^[a-z0-9][a-z0-9._-]*@[a-z0-9][a-z0-9-]*$), a seat's name (^[a-z][a-z0-9-]*$) or a commit's author forge:<account> (^forge:[A-Za-z0-9._-]+$); another is refused (design 47 G 678)"
},
"waiting-on": {
"type": "string",
"description": "what it waits on: a person, a part or a call"
"pattern": "^([a-z0-9][a-z0-9._-]*@[a-z0-9][a-z0-9-]*|[a-z][a-z0-9-]*|forge:[A-Za-z0-9._-]+)$",
"description": "what it waits on: a session who@node (^[a-z0-9][a-z0-9._-]*@[a-z0-9][a-z0-9-]*$), a seat's name (^[a-z][a-z0-9-]*$) or a commit's author forge:<account> (^forge:[A-Za-z0-9._-]+$); another is refused (design 47 G 678)"
}
},
"required": [
@@ -819,11 +821,13 @@
},
"owner": {
"type": "string",
"description": "the module the finding is about, when not the observer"
"pattern": "^([a-z0-9][a-z0-9._-]*@[a-z0-9][a-z0-9-]*|[a-z][a-z0-9-]*|forge:[A-Za-z0-9._-]+)$",
"description": "who the finding is about, when not the observer: a session who@node (^[a-z0-9][a-z0-9._-]*@[a-z0-9][a-z0-9-]*$), a seat's name (^[a-z][a-z0-9-]*$) or a commit's author forge:<account> (^forge:[A-Za-z0-9._-]+$); another is refused (design 47 G 678)"
},
"waiting-on": {
"type": "string",
"description": "what it waits on: a person, a part or a call"
"pattern": "^([a-z0-9][a-z0-9._-]*@[a-z0-9][a-z0-9-]*|[a-z][a-z0-9-]*|forge:[A-Za-z0-9._-]+)$",
"description": "what it waits on: a session who@node (^[a-z0-9][a-z0-9._-]*@[a-z0-9][a-z0-9-]*$), a seat's name (^[a-z][a-z0-9-]*$) or a commit's author forge:<account> (^forge:[A-Za-z0-9._-]+$); another is refused (design 47 G 678)"
},
"actions": {
"type": "array",