Přeskočit na obsah

Tato stránka byla automaticky přeložena z angličtiny, jediného jazyka, ve kterém se tento web píše. Číst originál.

HTTP API: delivery

Zda každá funkce produktu existuje, počítáno a nikdy nezaznamenáváno: na trunku, nasazená, veřejně ověřená, s aktuálními požadovanými testy, s publikovanými důkazy a odkazem z rozhraní — každé je verdikt pass, fail nebo unknown s důvodem a nápravou a unknown nikdy není pass. Funkce, které cokoli z toho chybí, není dodána a její vývojová fáze (implementovaná na větvi, na masteru, otestovaná, nasazená) je jiný typ než dodání.

Vykresleno z docs/generated/openapi.json, který spustitelný soubor generuje ze svého registru schopností a CI jej odmítne, je-li zastaralý. Surový dokument je na /openapi.json; běžící server servíruje stejný dokument na vlastní /openapi.json a Swagger UI na /swagger.

delivery

Zda každá funkce produktu existuje, počítáno a nikdy nezaznamenáváno: na trunku, nasazená, veřejně ověřená, s aktuálními požadovanými testy, s publikovanými důkazy a odkazem z rozhraní — každé je verdikt pass, fail nebo unknown s důvodem a nápravou a unknown nikdy není pass. Funkce, které cokoli z toho chybí, není dodána a její vývojová fáze (implementovaná na větvi, na masteru, otestovaná, nasazená) je jiný typ než dodání.

GET /api/v1/delivery delivery.report

Existuje každá funkce

Každá produktová funkce vrstvy proti invariantu dodání, řazeno podle id: šest dimenzí s verdikty, důvody a nápravami; vývojová fáze, když není dodána; cesty, kterými je implementována, a revize, které se jich naposledy dotkly na HEAD a na trunku; a publikace — identita veřejného webu, čtená jednou, a zda ji ověřil scripts/pages. Čte git a síť; adresu webu lze nahradit pomocí MAJORDOMUS_DELIVERY_SITE_URL.

  • query
  • experimentální
  • měření výkonu prominuto: external_dependency
  • cache vypnuta
  • Nástroj MCP majordomus_delivery
  • $ delivery report

Žádné parametry.

Vyzkoušejte

Port je ten, který server zalogoval; 8741 je ten, o který žádá jako první. Hodnoty jsou první příklad operace.

curl -s "http://127.0.0.1:8741/api/v1/delivery"

Testováno v apps/majordomus-cli/tests/http_serve.rs, který přehrává routu s těmito hodnotami proti serveru na skutečném socketu.

Odpovědi

statustělovýznam
200 DeliveryReport Existuje každá funkce: výsledek.
400 ErrorBody invalid_input: Vstup neodpovídá schématu: parametr špatného typu, neznámý parametr nebo hodnota, kterou schopnost odmítne.
404 ErrorBody not_found: Vstup pojmenovává něco, co repozitář nemá.
500 ErrorBody internal: Schopnost selhala z vlastního důvodu; zpráva ho pojmenovává.
výchozí ErrorBody Jakékoli jiné selhání, které transport hlásí: 405 method_not_allowed pro jinou metodu na této cestě, 400 invalid_input pro tělo, které není objektem JSON.
GET /api/v1/delivery/feature delivery.feature

Existuje tato funkce

Jedna funkce produktu proti invariantu dodání: každý rozměr s jeho verdiktem, větou, která o něm rozhodla, a tím, co by jej změnilo, zda existuje, a — když ne — jak daleko ji vývoj dovedl a které rozměry ji blokují. Id, které vrstva nedeklaruje, se nenajde, neodpoví se, že nebylo dodáno.

  • query
  • experimentální
  • měření výkonu prominuto: external_dependency
  • cache vypnuta
  • Nástroj MCP majordomus_delivery_feature
  • $ delivery show

Parametry dotazu

názevtyppovinnépopispříklady
id string ano Id funkce, jak ho dává `product.features`. first-feature: "benchmarks"

Vyzkoušejte

Port je ten, který server zalogoval; 8741 je ten, o který žádá jako první. Hodnoty jsou první příklad operace.

curl -s "http://127.0.0.1:8741/api/v1/delivery/feature?id=benchmarks"

Testováno v apps/majordomus-cli/tests/http_serve.rs, který přehrává routu s těmito hodnotami proti serveru na skutečném socketu.

Odpovědi

statustělovýznam
200 FeatureDelivery Existuje tato funkce: výsledek.
400 ErrorBody invalid_input: Vstup neodpovídá schématu: parametr špatného typu, neznámý parametr nebo hodnota, kterou schopnost odmítne.
404 ErrorBody not_found: Vstup pojmenovává něco, co repozitář nemá.
500 ErrorBody internal: Schopnost selhala z vlastního důvodu; zpráva ho pojmenovává.
výchozí ErrorBody Jakékoli jiné selhání, které transport hlásí: 405 method_not_allowed pro jinou metodu na této cestě, 400 invalid_input pro tělo, které není objektem JSON.

Schémata

Komponenty, které používají jen operace tohoto tagu. Každý řádek je pole daného typu, jeho doc komentář je popis; typ vlastněný jinou stránkou na ni odkazuje.

DeliveryReport

object
Každá funkce vrstvy vůči invariantu dodání.
vlastnosttyppovinnépopis
schema string ano majordomus/delivery/v1.
trunk string | null ne Ref trunku, vůči němuž byl změřen každý verdikt on_master, pokud byl nalezen.
publikace Publication → Publication ano Co veřejný web podle pozorování obsluhoval, přečteno jednou pro všechny funkce.
součty DeliveryTallies → DeliveryTallies ano Počty.
funkce pole FeatureDelivery → FeatureDelivery ano Každá funkce, seřazená podle id.

Používá delivery.report

DeliveryState

jedna ze 2 variant
Dodáno, nebo ne — a když ne, jak daleko vývoj došel a které dimenze stojí v cestě. Dvě varianty jednoho typu místo příznaku vedle fáze: dodaná funkce nemá žádnou fázi k hlášení a fázi nelze nikdy číst jako dodání.
variant Každý rozměr projde.
state"delivered"ano
varianta Alespoň jedna dimenze neprošla.
fázeDevelopmentStage → DevelopmentStageanoJak daleko to vývoj dovedl.
blokujícípole DimensionId → DimensionIdanoRozměry, které neprošly, v pořadí konjunkce.
state"not_delivered"ano

Používá FeatureDelivery

DeliveryTallies

object
Kolik funkcí splňuje každou měřenou dimenzi a kolik jich existuje.
vlastnosttyppovinnépopis
funkce integer (uint) ano Prozkoumané funkce.
on_master integer (uint) ano Na trunku.
nasazeno integer (uint) ano Obsaženo ve veřejné identitě.
publicly_verified integer (uint) ano Veřejně ověřeno.
existuje integer (uint) ano Každá dimenze prochází.

Používá DeliveryReport

DeliveryVerdict

"pass" | "fail" | "unknown"
Odpověď jednoho rozměru. Tři hodnoty a nikdy dvě: otázka, kterou nešlo položit, není otázka zodpovězená ano, ale ani zodpovězená ne.
  • passDimenze platí a důvod říká, co bylo pozorováno.
  • failDimenze byla změřena a neplatí.
  • unknownDimenzi nešlo změřit. Není to splnění.

Používá Dimension

DevelopmentStage

"unknown" | "not_implemented" | "implemented_on_branch" | "on_master" | "tested" | "deployed"
Jak daleko vývoj dotáhl funkci, která ještě neexistuje. Žebřík: stupně se dosáhne, jen když projdou všechny stupně pod ním, takže funkce s neznámými testy je on_master, i když ji web už poskytuje.
  • unknownGit nedokázal říct, kde je jeho implementace.
  • not_implementedNejmenuje žádnou implementaci nebo ji nikdy nikdo necommitnul.
  • implemented_on_branchJeho nejnovější revize implementace je na branchi a ne na trunku.
  • on_masterJeho implementace je na trunku.
  • testedNa trunku, se všemi požadovanými testy aktuálními.
  • deployedOtestováno a obsaženo v tom, co veřejný web obsluhuje.

Používá DeliveryState

Dimenze

object
Jeden rozměr, rozhodnutý: verdikt, věta, která rozhodla, a co by ho posunulo.
vlastnosttyppovinnépopis
dimenze DimensionId → DimensionId ano Která dimenze.
verdikt DeliveryVerdict → DeliveryVerdict ano Prošlo, selhalo nebo neznámé.
důvod string ano Co bylo pozorováno, jednou větou.
náprava string | null ne Co by změnilo verdikt; při úspěchu chybí.

Používá FeatureDelivery

DimensionId

"on_master" | "deployed" | "publicly_verified" | "required_tests_current" | "test_evidence_published" | "ui_linked"
Šest dimenzí invariantu doručení, v pořadí, v jakém se píše konjunkce.
  • on_masterNejnovější implementační revize funkce je dosažitelná z trunku.
  • deployedIdentity commit veřejného webu obsahuje tuto revizi.
  • publicly_verifiedPublikace byla ověřena zvenčí: web odpovídá čistou identitou, druhá sonda souhlasí a vlastní sestavení GitHubu na publikované větvi uspělo.
  • required_tests_currentKaždý test, který funkce vyžaduje, má aktuální úspěšné provedení.
  • test_evidence_publishedDůkazy těchto provedení jsou publikovány.
  • ui_linkedFunkce je odkazována z uživatelského rozhraní.

Používá DeliveryState Dimension

FeatureDelivery

object
Jedna funkce proti invariantu.
vlastnosttyppovinnépopis
id string ano Id funkce.
název string ano Jeho název.
status string ano Stav, který deklaruje jeho soubor. Editorský, a ne jedna z dimenzí.
existuje boolean ano Konjunkce: pravda jen tehdy, když projdou všechny dimenze.
delivery DeliveryState → DeliveryState ano Dodáno, nebo vývojová fáze a co ji blokuje.
dimenze pole Dimension → Dimension ano Každá dimenze v pořadí konjunkce.
implementace Implementation → Implementation ano Čím je implementováno.

Používá delivery.feature DeliveryReport

IdentityRead

jedna ze 3 variant
Co dalo čtení dokumentu veřejné identity.
variant Web odpověděl identitou, která jmenuje commit, z něhož byl sestaven.
commitstringanoCommit tak, jak ho uvádí web.
špinavéboolean | nullneZda byl strom, z něhož vznikl, špinavý, pokud to identita říká.
state"served"ano
varianta Web byl dotázán a identitu nedal: žádná síť, žádná trasa, ne dokument.
důvodstringanoProč, v jedné větě.
state"unreachable"ano
varianta Nebylo se na co ptát: chybí adresa webu nebo model publikace.
důvodstringanoProč, v jedné větě.
state"unconfigured"ano

Používá Publication

Implementace

object
Cesty, jimiž je funkce implementována, a revize, které se jich naposledy dotkly.
vlastnosttyppovinnépopis
cesty array of string ano Cesty relativní k repozitáři, odvozené z toho, co funkce jmenuje: zdrojový soubor každého modulu schopnosti, lib/<command>.sh každého shellového příkazu, který dispatcher načítá, a implementation každého tvrzení.
head_revision string | null ne Nejnovější commit, který se jich dotýká, dosažitelný z HEAD.
master_revision string | null ne Nejnovější commit, který se jich dotýká a je dosažitelný z trunku.

Používá FeatureDelivery

Publikace

object
Publikace tak, jak byla pozorována: kde web je, co servíruje a zda to bylo ověřeno.
vlastnosttyppovinnépopis
url string | null ne Adresa webu, pokud byla nalezena.
identity_path string | null ne Cesta dokumentu identity pod ním, z modelu publikace.
identity IdentityRead → IdentityRead ano Co dalo čtení.
ověření SiteVerification → SiteVerification ano Zda byla publikace ověřena.

Používá DeliveryReport

SiteVerification

jedna ze 3 variant
Zda bylo zveřejnění ověřeno zvenčí.
varianta Čistá identita, druhá sonda souhlasí, vlastní build GitHubu uspěl.
detailstringanoCo bylo pozorováno.
state"verified"ano
variant Změřeno a neplatí.
důvodstringanoCo bylo pozorováno.
state"refused"ano
varianta Nešlo změřit.
důvodstringanoWhy.
state"unmeasured"ano

Používá Publication

Prohledává názvy a popisy všech stránek, které tento web publikuje.