why.validate
Každý nález nad katalogem: odkaz, který nevede nikam, s nejbližším kandidátem; duplicitní identita; název souboru, který se neshoduje s jeho id; a veřejný záznam, který nesplňuje laťku, již jeho stav slibuje. Chyby činí katalog neplatným; varování ne.
Každý nález nad katalogem: odkaz, který nevede nikam, s nejbližším kandidátem; duplicitní identita; název souboru, který se neshoduje s jeho id; a veřejný záznam, který nesplňuje laťku, již jeho stav slibuje. Chyby činí katalog neplatným; varování ne.
- query
- behaviorally_verified
- module why
- #why
- #introspection
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_why_validate |
| HTTP | GET /api/v1/why/validate operationId why.validate |
| příkazová řádka | majordomus why validate |
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 · ValidationReport
| vlastnost | typ | povinné | popis |
|---|---|---|---|
| počty | reference | ano | Počty, kterých katalog dosáhl. |
| chyby | integer | ano | Kolik nálezů jsou chyby: odkaz, který se nikam nepřeloží, duplicitní identita, název souboru, který nesouhlasí se svým id. |
| zjištění | array | ano | Nálezy, nejprve chyby, potom podle souboru. |
| platné | boolean | ano | Pravda, když nic není chyba. Varování ji nezneplatňují. |
| varování | integer | ano | Kolik nálezů jsou varování: veřejný záznam, který nesplňuje svou minimální hranici. |
JSON Schema
{
"$defs": {
"Counts": {
"description": "How much the catalogue holds. Every count anywhere — a page, a heading, a report — is\none of these, so no number is ever written down.",
"properties": {
"areas": {
"description": "Public areas.",
"format": "uint",
"minimum": 0,
"type": "integer"
},
"audiences": {
"description": "Public audiences.",
"format": "uint",
"minimum": 0,
"type": "integer"
},
"examples": {
"description": "Concrete situations across the public moments.",
"format": "uint",
"minimum": 0,
"type": "integer"
},
"moments": {
"description": "Public moments.",
"format": "uint",
"minimum": 0,
"type": "integer"
},
"moments_all": {
"description": "Moments of every status, drafts included.",
"format": "uint",
"minimum": 0,
"type": "integer"
},
"signals": {
"description": "Signals across the public moments: the size of the questionnaire.",
"format": "uint",
"minimum": 0,
"type": "integer"
}
},
"required": [
"moments",
"moments_all",
"audiences",
"areas",
"signals",
"examples"
],
"type": "object"
},
"Finding": {
"description": "One thing wrong with the catalogue, named where it is, with the nearest candidate when\nthere is one. A finding always carries enough to fix it without searching.",
"properties": {
"code": {
"description": "A short category: `unknown_reference`, `duplicate_identity`, `missing_content`, ...",
"type": "string"
},
"did_you_mean": {
"description": "The nearest existing name, when the value looks like a typo of one.",
"type": [
"string",
"null"
]
},
"field": {
"description": "The front-matter key the finding is about, when one key owns it.",
"type": [
"string",
"null"
]
},
"id": {
"description": "The record's identity, when one record owns the finding.",
"type": [
"string",
"null"
]
},
"message": {
"description": "What is wrong, in one sentence.",
"type": "string"
},
"path": {
"description": "The repository-relative file the finding is in.",
"type": "string"
},
"severity": {
"$ref": "#/$defs/Severity",
"description": "`error` or `warning`."
}
},
"required": [
"severity",
"code",
"path",
"message"
],
"type": "object"
},
"Severity": {
"description": "How bad a diagnostic is. `Error` excludes the file it concerns from the index and puts\nthe index into the degraded state; `Warning` and `Info` do neither.",
"oneOf": [
{
"const": "info",
"description": "Worth knowing; changes nothing.",
"type": "string"
},
{
"const": "warning",
"description": "Something to look at; the object is still served.",
"type": "string"
},
{
"const": "error",
"description": "The file is excluded and the index is degraded.",
"type": "string"
}
]
}
},
"description": "What the catalogue's own validation found.",
"properties": {
"counts": {
"$ref": "#/$defs/Counts",
"description": "The counts the catalogue reached."
},
"errors": {
"description": "How many findings are errors: a reference that resolves to nothing, a duplicate\nidentity, a file name that disagrees with its id.",
"format": "uint",
"minimum": 0,
"type": "integer"
},
"findings": {
"description": "The findings, errors first, then by file.",
"items": {
"$ref": "#/$defs/Finding"
},
"type": "array"
},
"valid": {
"description": "True when nothing is an error. Warnings do not make it false.",
"type": "boolean"
},
"warnings": {
"description": "How many findings are warnings: a public record that does not meet its floor.",
"format": "uint",
"minimum": 0,
"type": "integer"
}
},
"required": [
"valid",
"errors",
"warnings",
"counts",
"findings"
],
"title": "ValidationReport",
"type": "object"
}Politiky
- benchmark
- povinné — cíl na každém transportu, který expozice deklaruje; případy jsou ty ze vstupního typu
- cache
- process — až 2 záznamy v procesu, vymezené otiskem registru
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.