why.diagnose
Co implikují vlastní příznaky čtenáře: okamžiky, na které se výběr vyřeší, provozní oblasti a publikum, k nimž se přiklánějí, a schopnosti, příkazy, tvrzení, pravidla a případy užití, které na ně odpovídají — každé nese okamžiky, které ho vytvořily. Počítání, ne odhad: žádné vážení a žádná procenta.
Co implikují vlastní příznaky čtenáře: okamžiky, na které se výběr vyřeší, provozní oblasti a publikum, k nimž se přiklánějí, a schopnosti, příkazy, tvrzení, pravidla a případy užití, které na ně odpovídají — každé nese okamžiky, které ho vytvořily. Počítání, ne odhad: žádné vážení a žádná procenta.
- query
- behaviorally_verified
- module why
- #why
- #diagnostics
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_diagnose |
| HTTP | GET /api/v1/why/diagnose operationId why.diagnose |
| příkazová řádka | majordomus why diagnose |
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 · DiagnoseInput
Jméno je id signálu nebo id okamžiku: člověk zaškrtávající příznaky a skript pojmenovávající okamžiky dojdou ke stejné odpovědi, protože signál se rozliší na okamžik, který jej vlastní. Parametr je jeden řetězec, ne seznam, protože diagnóza nic nemění a je proto GET, a tento repozitář váže vstup GET na query string.
| vlastnost | typ | povinné | popis |
|---|---|---|---|
| signály | string | ne | Id signálů nebo id momentů, oddělená čárkami. Prázdné nevybere nic a odpovídá se prázdnou diagnózou, ne chybou. výchozí "" |
JSON Schema
{
"additionalProperties": false,
"description": "What a reader recognised, as a comma-separated list of names.\n\nA name is a signal id or a moment id: a person ticking symptoms and a script naming\nmoments reach the same answer, because a signal resolves to the moment that owns it.\nThe parameter is one string rather than a list because a diagnosis changes nothing and\nis therefore a `GET`, and this repository binds a `GET` input to the query string.",
"properties": {
"signals": {
"default": "",
"description": "Signal ids or moment ids, separated by commas. Empty selects nothing and is\nanswered with an empty diagnosis rather than an error.",
"type": "string"
}
},
"title": "DiagnoseInput",
"type": "object"
}výstup · Diagnosis
Aritmetika je celý model a je uvedena tak, aby ji čtenář mohl zkontrolovat: výběr se převede na množinu momentů; oblast nebo publikum získá skóre rovné počtu vybraných momentů, které je jmenují; doporučení získá skóre rovné počtu těch, které je jmenují, a nese jejich id. Žádné vážení ani procento, protože za nimi žádný model není.
| vlastnost | typ | povinné | popis |
|---|---|---|---|
| also_worth_reading | array | ano | Okamžiky, které výběr nezahrnul a které sdílejí oblast s některým, který zahrnul. |
| areas | array | ano | Provozní oblasti podle počtu vybraných okamžiků, které pod ně spadají, od nejpočetnější. |
| audiences | array | ano | Publika podle toho, kolik vybraných okamžiků poznávají, nejpočetnější první. |
| capabilities | array | ano | Schopnosti spustitelného souboru, které odpovídají na vybrané momenty. |
| tvrzení | array | ano | Tvrzení, která říkají, co je zaručeno. |
| commands | array | ano | Příkazy, které na ně odpovídají. |
| doktríny | array | ano | Pravidla účinné sady, která je řídí. |
| momenty | array | ano | Okamžiky, na které se výběr vyřešil, v pořadí prezentace. |
| nevyřešeno | array | ano | Vybraná jména, která se nikam nepřeložila. |
| use_cases | array | ano | Případy užití, které ukazují cestu ven. |
JSON Schema
{
"$defs": {
"Recommendation": {
"description": "One recommendation, with the moments that produced it. A recommendation with no\n`matched_because` is a recommendation nobody can check.",
"properties": {
"count": {
"description": "How many of the selected moments name it.",
"format": "uint",
"minimum": 0,
"type": "integer"
},
"id": {
"description": "The thing recommended: a capability id, a command, a claim, a rule, a use case.",
"type": "string"
},
"matched_because": {
"description": "The selected moments that named it, in presentation order.",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"id",
"count",
"matched_because"
],
"type": "object"
}
},
"description": "What a reader's selection implies, computed by counting rather than by inference.\n\nThe arithmetic is the whole model and is stated so a reader can check it: a selection\nresolves to a set of moments; an area or an audience scores the number of selected\nmoments that name it; a recommendation scores the number that name it and carries\ntheir ids. There is no weighting and no percentage, because there is no model behind\none.",
"properties": {
"also_worth_reading": {
"description": "Moments the selection did not include that share an area with one that it did.",
"items": {
"type": "string"
},
"type": "array"
},
"areas": {
"description": "Operational areas by how many selected moments fall under them, heaviest first.",
"items": {
"$ref": "#/$defs/Recommendation"
},
"type": "array"
},
"audiences": {
"description": "Audiences by how many selected moments they recognise, heaviest first.",
"items": {
"$ref": "#/$defs/Recommendation"
},
"type": "array"
},
"capabilities": {
"description": "Capabilities of the executable that answer the selected moments.",
"items": {
"$ref": "#/$defs/Recommendation"
},
"type": "array"
},
"claims": {
"description": "Claims that say what is guaranteed.",
"items": {
"$ref": "#/$defs/Recommendation"
},
"type": "array"
},
"commands": {
"description": "Commands that answer them.",
"items": {
"$ref": "#/$defs/Recommendation"
},
"type": "array"
},
"doctrines": {
"description": "Rules of the effective set that govern them.",
"items": {
"$ref": "#/$defs/Recommendation"
},
"type": "array"
},
"moments": {
"description": "The moments the selection resolved to, in presentation order.",
"items": {
"type": "string"
},
"type": "array"
},
"unresolved": {
"description": "Selected names that resolved to nothing.",
"items": {
"type": "string"
},
"type": "array"
},
"use_cases": {
"description": "Use cases that show the way out.",
"items": {
"$ref": "#/$defs/Recommendation"
},
"type": "array"
}
},
"required": [
"moments",
"unresolved",
"areas",
"audiences",
"capabilities",
"commands",
"claims",
"doctrines",
"use_cases",
"also_worth_reading"
],
"title": "Diagnosis",
"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ž 32 záznamů v procesu, vymezených 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.
| transport | state | případy | targets |
|---|---|---|---|
| direct | pokryto | 1 | three-moments studený+teplý |
| mcp | pokryto | 1 | three-moments studený+teplý |
| http | pokryto | 1 | three-moments studený+teplý |