mesh.status
Zda mesh v tomto procesu běží a proč neběží, když neběží; veřejná identita tohoto uzlu; každý discovery provider s jeho stavem a čítači; součty registru; a odmítnuté datagramy podle důvodu. Jediný stav, který ukazuje každý povrch.
Zda mesh v tomto procesu běží a proč neběží, když neběží; veřejná identita tohoto uzlu; každý discovery provider s jeho stavem a čítači; součty registru; a odmítnuté datagramy podle důvodu. Jediný stav, který ukazuje každý povrch.
- query
- experimentální
- modul mesh
- #mesh
- #coordination
- #discovery
Zpřístupnění
Kde je tato jedna definice dosažitelná. Absence je explicitní: povrch, který není uveden, ji nenese.
| povrch | jako |
|---|---|
| MCP | nástroj majordomus_mesh zdroj majordomus://mesh |
| HTTP | GET /api/v1/mesh operationId mesh.status |
| příkazová řádka | — |
Schémata
Kanonický vstup a výstup z typů Rustu; schéma nástroje MCP a parametry a odpovědi OpenAPI se odvozují z nich.
vstup · Prázdné
Žádné vlastnosti: schopnost nebere žádný vstup.
JSON Schema
{
"additionalProperties": false,
"description": "No input.",
"title": "Empty",
"type": "object"
}výstup · MeshStatus
| vlastnost | typ | povinné | popis |
|---|---|---|---|
| aktivní | boolean | ano | Zda v tomto procesu běží mesh. |
| identity | jedno ze 2 | ne | Tento uzel, když má mesh identitu. |
| providers | array | ano | Každý provider, v kanonickém pořadí (podle id). |
| důvod | string | null | ne | Proč ne, když není: žádná deklarace, zakázáno, žádná identita, zastaveno. |
| odmítnutí | reference | ano | Odmítnuté datagramy podle důvodu. |
| started_at | string | null | ne | Kdy mesh začal, RFC 3339. |
| součty | reference | ano | Součty registru. |
| trust_policy | string | null | ne | Platná politika důvěry. |
JSON Schema
{
"$defs": {
"InstanceId": {
"description": "One run of a node: 16 hex characters of OS entropy, new at every process start. A\nrestart keeps the node id and changes this, which is how a reader tells \"the same\nnode came back\" from \"the same process is still there\".",
"type": "string"
},
"MeshProviderState": {
"description": "The provider's health, as every surface reports it.",
"oneOf": [
{
"const": "running",
"description": "Threads up, socket bound (where the provider has one).",
"type": "string"
},
{
"const": "failed",
"description": "The provider could not start or died; `ProviderStatus::detail` says why. One\nprovider failing never stops another — failure isolation is the contract.",
"type": "string"
},
{
"const": "stopped",
"description": "Stopped by the manager.",
"type": "string"
}
]
},
"NodeId": {
"description": "The stable identity of a node: 32 hex characters of the SHA-256 of its Ed25519 public\nkey. Derived, never chosen: two nodes with one id hold one key.",
"type": "string"
},
"ProviderStatus": {
"description": "One provider's status: state, why, and its counters.",
"properties": {
"detail": {
"description": "Why, when `Failed`; what it watches, when `Running`.",
"type": [
"string",
"null"
]
},
"id": {
"description": "The provider id: `udp_multicast`, `udp_broadcast`, `rendezvous`, `synthetic`.",
"type": "string"
},
"received": {
"description": "Datagrams heard and handed to the manager.",
"format": "uint64",
"minimum": 0,
"type": "integer"
},
"sent": {
"description": "Advertisements transmitted.",
"format": "uint64",
"minimum": 0,
"type": "integer"
},
"state": {
"$ref": "#/$defs/MeshProviderState",
"description": "The state."
}
},
"required": [
"id",
"state",
"sent",
"received"
],
"type": "object"
},
"PublicIdentity": {
"description": "What everyone may know about this node: the id, the public key, a display name and\nthis run's instance. Everything an advertisement carries; nothing that signs.",
"properties": {
"display_name": {
"description": "A human name for the node, from the identity file; defaults to the first eight\ncharacters of the node id. Presentation only — never used for trust.",
"type": "string"
},
"instance_id": {
"$ref": "#/$defs/InstanceId",
"description": "This run of the node."
},
"node_id": {
"$ref": "#/$defs/NodeId",
"description": "The node id: a digest of the public key."
},
"public_key": {
"description": "The Ed25519 public key, 64 hex characters. Whoever holds the matching secret is\nthis node; there is no other proof.",
"type": "string"
}
},
"required": [
"node_id",
"public_key",
"display_name",
"instance_id"
],
"type": "object"
},
"Refusals": {
"description": "Refused datagrams, by reason. The diagnosis of a hostile or misconfigured network:\na mesh that hears garbage says so, with numbers, instead of being quietly empty.",
"properties": {
"bounds": {
"description": "Out-of-bounds fields.",
"format": "uint64",
"minimum": 0,
"type": "integer"
},
"malformed": {
"description": "Not an envelope.",
"format": "uint64",
"minimum": 0,
"type": "integer"
},
"overflow": {
"default": 0,
"description": "Observations dropped because the queue to the registry was full: a flood, counted\nrather than held (I2133).",
"format": "uint64",
"minimum": 0,
"type": "integer"
},
"oversized": {
"description": "Longer than the datagram bound.",
"format": "uint64",
"minimum": 0,
"type": "integer"
},
"self_heard": {
"description": "This node's own datagrams, heard back and skipped.",
"format": "uint64",
"minimum": 0,
"type": "integer"
},
"signature": {
"description": "A signature that does not verify.",
"format": "uint64",
"minimum": 0,
"type": "integer"
},
"stale": {
"description": "Outside the clock-skew window.",
"format": "uint64",
"minimum": 0,
"type": "integer"
},
"version": {
"description": "A protocol version this executable does not read.",
"format": "uint64",
"minimum": 0,
"type": "integer"
}
},
"required": [
"oversized",
"malformed",
"version",
"bounds",
"stale",
"signature",
"self_heard"
],
"type": "object"
},
"Tallies": {
"description": "The registry's tallies, for status and health.",
"properties": {
"accepted": {
"description": "Observations accepted since start.",
"format": "uint64",
"minimum": 0,
"type": "integer"
},
"evicted": {
"description": "Records evicted for space since start.",
"format": "uint64",
"minimum": 0,
"type": "integer"
},
"expired": {
"description": "Records expired out since start.",
"format": "uint64",
"minimum": 0,
"type": "integer"
},
"nodes": {
"description": "Records held.",
"format": "uint",
"minimum": 0,
"type": "integer"
},
"present": {
"description": "Of which present.",
"format": "uint",
"minimum": 0,
"type": "integer"
},
"replayed": {
"description": "Replayed datagrams dropped since start.",
"format": "uint64",
"minimum": 0,
"type": "integer"
},
"trusted": {
"description": "Of which trusted.",
"format": "uint",
"minimum": 0,
"type": "integer"
}
},
"required": [
"nodes",
"trusted",
"present",
"accepted",
"replayed",
"expired",
"evicted"
],
"type": "object"
}
},
"description": "The whole mesh, as every surface reports it.",
"properties": {
"active": {
"description": "Whether the mesh is running in this process.",
"type": "boolean"
},
"identity": {
"anyOf": [
{
"$ref": "#/$defs/PublicIdentity"
},
{
"type": "null"
}
],
"description": "This node, when the mesh has an identity."
},
"providers": {
"description": "Every provider, canonical order (by id).",
"items": {
"$ref": "#/$defs/ProviderStatus"
},
"type": "array"
},
"reason": {
"description": "Why not, when it is not: no declaration, disabled, no identity, stopped.",
"type": [
"string",
"null"
]
},
"refusals": {
"$ref": "#/$defs/Refusals",
"description": "Refused datagrams, by reason."
},
"started_at": {
"description": "When the mesh started, RFC 3339.",
"type": [
"string",
"null"
]
},
"tallies": {
"$ref": "#/$defs/Tallies",
"description": "The registry's tallies."
},
"trust_policy": {
"description": "The trust policy in force.",
"type": [
"string",
"null"
]
}
},
"required": [
"active",
"providers",
"tallies",
"refusals"
],
"title": "MeshStatus",
"type": "object"
}Politiky
- benchmark
- povinné — cíl na každém transportu, který expozice deklaruje; případy jsou ty ze vstupního typu
- cache
- vypnuto — každé volání spustí handler
Cíle benchmarku
Odvozeno z registru pro tento repozitář: jeden požadavek na transport a případy, které poskytuje typ vstupu. Celá matice je na stránce měření výkonu.