K3 (running healthy): running says the health of the build that runs
The node-engine seat's Running gains healthy, a nullable boolean so that a false survives the wire and a running said by a node-engine of before G, with none, is told apart and reads as healthy; stopped is said only when the have no longer holds the module. Two fixtures read healthy true and false; the one without it still decodes. Generated code waits for K21. Builds: design 47 G §520 Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
This commit is contained in:
@@ -92,6 +92,34 @@
|
||||
"at": "2026-11-09T20:01:00Z"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "running says the build that runs is healthy",
|
||||
"of": "event:running",
|
||||
"subject": "mesh.seat.node-engine.event.running.ace.nats",
|
||||
"given": {
|
||||
"v": 1,
|
||||
"node": "ace",
|
||||
"module": "nats",
|
||||
"fingerprint": "src2:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
||||
"manifest": "sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
|
||||
"healthy": true,
|
||||
"at": "2026-11-11T09:00:00Z"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "running says the build that runs turned unhealthy, still running",
|
||||
"of": "event:running",
|
||||
"subject": "mesh.seat.node-engine.event.running.ace.nats",
|
||||
"given": {
|
||||
"v": 1,
|
||||
"node": "ace",
|
||||
"module": "nats",
|
||||
"fingerprint": "src2:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
||||
"manifest": "sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
|
||||
"healthy": false,
|
||||
"at": "2026-11-11T09:05:00Z"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "running says a module stopped on the node, with no fingerprint",
|
||||
"of": "event:running",
|
||||
|
||||
@@ -2883,7 +2883,7 @@
|
||||
},
|
||||
"Running": {
|
||||
"type": "object",
|
||||
"description": "a module running healthy on a node at a build: what the node-engines of other nodes and the grants part decide a seat's pass from (ADR 0660 §2), kept last per subject with no age limit",
|
||||
"description": "a module's build running on a node, and its health: what the node-engines of other nodes and the grants part decide a seat's pass from (ADR 0660 §2), and the assigner reads a provider's and a canary's health and a put's end from (design 47 G 520); said again on the same subject each time healthy changes and for every module the have holds at the engine's start, kept last per subject with no age limit",
|
||||
"properties": {
|
||||
"v": {
|
||||
"type": "integer",
|
||||
@@ -2905,14 +2905,21 @@
|
||||
"type": "string",
|
||||
"description": "the digest of that build's manifest, the indexer's manifest of it, read by digest from the catalog half"
|
||||
},
|
||||
"healthy": {
|
||||
"type": [
|
||||
"boolean",
|
||||
"null"
|
||||
],
|
||||
"description": "the health of the build that runs, as the node-engine's have holds it from the module's declared check (ADR 0240); a running with none, said by a node-engine of before design 47 G, reads as healthy (design 47 G 520). SeatsToPassOn reads none of it: an unhealthy holder still holds its seat"
|
||||
},
|
||||
"at": {
|
||||
"type": "string",
|
||||
"description": "when it was seen running healthy, RFC 3339",
|
||||
"description": "when it was said, RFC 3339",
|
||||
"format": "date-time"
|
||||
},
|
||||
"stopped": {
|
||||
"type": "boolean",
|
||||
"description": "true when the module no longer runs on the node: no fingerprint or manifest then (design 47 G 365, 404); mesh-sdk's SeatsToPassOn counts such a module as not running there"
|
||||
"description": "true when the have no longer holds the module on the node, never for an unhealthy build: no fingerprint or manifest then (design 47 G 365, 404, 520); mesh-sdk's SeatsToPassOn counts such a module as not running there"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
|
||||
Reference in New Issue
Block a user