|
17365 | 17365 | } |
17366 | 17366 | } |
17367 | 17367 | }, |
| 17368 | + "400": { |
| 17369 | + "description": "Malformed installation id" |
| 17370 | + }, |
17368 | 17371 | "404": { |
17369 | 17372 | "description": "Installation health not found" |
17370 | 17373 | } |
|
17407 | 17410 | } |
17408 | 17411 | } |
17409 | 17412 | }, |
| 17413 | + "400": { |
| 17414 | + "description": "Malformed installation id" |
| 17415 | + }, |
17410 | 17416 | "404": { |
17411 | 17417 | "description": "Installation health not found" |
17412 | 17418 | } |
|
17449 | 17455 | } |
17450 | 17456 | } |
17451 | 17457 | }, |
| 17458 | + "400": { |
| 17459 | + "description": "Malformed installation id" |
| 17460 | + }, |
17452 | 17461 | "404": { |
17453 | 17462 | "description": "Installation not found" |
17454 | 17463 | } |
|
20793 | 20802 | ], |
20794 | 20803 | "responses": { |
20795 | 20804 | "200": { |
20796 | | - "description": "{ anchors: [{ id, seq, rowHash, keyId, backend, backendRef, status, error, createdAt }], nextBefore } — a failed attempt is returned identically to a successful one, never filtered out or reshaped" |
| 20805 | + "description": "{ anchors: [{ id, seq, rowHash, keyId, backend, backendRef, status, error, createdAt }], nextBefore, status } — a failed attempt is returned identically to a successful one, never filtered out or reshaped. The top-level `status` (anchored | empty_ledger | unconfigured | pending) says why the list looks as it does, so an empty list cannot be mistaken for a healthy one; it is omitted when a backend/before filter is applied, where empty just means none matched" |
20797 | 20806 | } |
20798 | 20807 | }, |
20799 | 20808 | "operationId": "listPublicDecisionLedgerAnchors", |
@@ -20892,11 +20901,25 @@ |
20892 | 20901 | }, |
20893 | 20902 | "400": { |
20894 | 20903 | "description": "Malformed JSON or invalid payload shape" |
| 20904 | + }, |
| 20905 | + "401": { |
| 20906 | + "description": "Missing or invalid ingest credential" |
| 20907 | + }, |
| 20908 | + "403": { |
| 20909 | + "description": "Instance not authenticated" |
| 20910 | + }, |
| 20911 | + "413": { |
| 20912 | + "description": "Batch exceeds the 1 MiB (MAX_ORB_INGEST_BODY_BYTES) body ceiling" |
20895 | 20913 | } |
20896 | 20914 | }, |
20897 | 20915 | "operationId": "postOrbIngest", |
20898 | 20916 | "tags": [ |
20899 | 20917 | "ORB" |
| 20918 | + ], |
| 20919 | + "security": [ |
| 20920 | + { |
| 20921 | + "OrbBearer": [] |
| 20922 | + } |
20900 | 20923 | ] |
20901 | 20924 | } |
20902 | 20925 | }, |
|
24011 | 24034 | "200": { |
24012 | 24035 | "description": "Installation health" |
24013 | 24036 | }, |
| 24037 | + "400": { |
| 24038 | + "description": "Malformed installation id" |
| 24039 | + }, |
24014 | 24040 | "401": { |
24015 | 24041 | "description": "Not signed in" |
24016 | 24042 | }, |
|
24052 | 24078 | "200": { |
24053 | 24079 | "description": "Repair plan" |
24054 | 24080 | }, |
| 24081 | + "400": { |
| 24082 | + "description": "Malformed installation id" |
| 24083 | + }, |
24055 | 24084 | "401": { |
24056 | 24085 | "description": "Not signed in" |
24057 | 24086 | }, |
|
24093 | 24122 | "200": { |
24094 | 24123 | "description": "Repair plan recomputed" |
24095 | 24124 | }, |
| 24125 | + "400": { |
| 24126 | + "description": "Malformed installation id" |
| 24127 | + }, |
24096 | 24128 | "401": { |
24097 | 24129 | "description": "Not signed in" |
24098 | 24130 | }, |
|
24136 | 24168 | "description": "Settings applied" |
24137 | 24169 | }, |
24138 | 24170 | "400": { |
24139 | | - "description": "Malformed settings" |
| 24171 | + "description": "Malformed installation id or settings" |
24140 | 24172 | }, |
24141 | 24173 | "401": { |
24142 | 24174 | "description": "Not signed in" |
|
25897 | 25929 | "responses": { |
25898 | 25930 | "200": { |
25899 | 25931 | "description": "Badge payload" |
| 25932 | + }, |
| 25933 | + "404": { |
| 25934 | + "description": "The repo has no public badge (unknown, private, uninstalled, or badgeEnabled off)" |
| 25935 | + }, |
| 25936 | + "503": { |
| 25937 | + "description": "The badge data could not be loaded (a transient loader failure, short-cached)" |
25900 | 25938 | } |
25901 | 25939 | }, |
25902 | 25940 | "security": [] |
|
25930 | 25968 | "responses": { |
25931 | 25969 | "200": { |
25932 | 25970 | "description": "SVG badge" |
| 25971 | + }, |
| 25972 | + "404": { |
| 25973 | + "description": "The repo has no public badge (unknown, private, uninstalled, or badgeEnabled off)" |
| 25974 | + }, |
| 25975 | + "503": { |
| 25976 | + "description": "The badge data could not be loaded (a transient loader failure, short-cached)" |
25933 | 25977 | } |
25934 | 25978 | }, |
25935 | 25979 | "security": [] |
@@ -26045,14 +26089,17 @@ |
26045 | 26089 | } |
26046 | 26090 | ], |
26047 | 26091 | "responses": { |
26048 | | - "202": { |
| 26092 | + "200": { |
26049 | 26093 | "description": "Batch accepted" |
26050 | 26094 | }, |
26051 | 26095 | "400": { |
26052 | 26096 | "description": "Malformed batch" |
26053 | 26097 | }, |
26054 | 26098 | "401": { |
26055 | 26099 | "description": "Missing or invalid ingest credential" |
| 26100 | + }, |
| 26101 | + "413": { |
| 26102 | + "description": "Batch exceeds the 1 MiB (MAX_ORB_INGEST_BODY_BYTES) body ceiling" |
26056 | 26103 | } |
26057 | 26104 | } |
26058 | 26105 | } |
|
26703 | 26750 | } |
26704 | 26751 | } |
26705 | 26752 | } |
| 26753 | + }, |
| 26754 | + "/v1/public/repos/{owner}/{repo}/proof": { |
| 26755 | + "get": { |
| 26756 | + "operationId": "getPublicRepoProof", |
| 26757 | + "tags": [ |
| 26758 | + "Public" |
| 26759 | + ], |
| 26760 | + "summary": "Public proof summary for one repo — ledger status, anchor, calibration with coverage and interval, sample records", |
| 26761 | + "parameters": [ |
| 26762 | + { |
| 26763 | + "schema": { |
| 26764 | + "type": "string" |
| 26765 | + }, |
| 26766 | + "required": true, |
| 26767 | + "name": "owner", |
| 26768 | + "in": "path" |
| 26769 | + }, |
| 26770 | + { |
| 26771 | + "schema": { |
| 26772 | + "type": "string" |
| 26773 | + }, |
| 26774 | + "required": true, |
| 26775 | + "name": "repo", |
| 26776 | + "in": "path" |
| 26777 | + } |
| 26778 | + ], |
| 26779 | + "responses": { |
| 26780 | + "200": { |
| 26781 | + "description": "ProofSummary. Any accuracy figure carries its coverage AND a Wilson confidence interval; below the sample floor it is an explicit `insufficient_data` state, never a bare percentage. Carries the verification-boundary statement in the payload" |
| 26782 | + }, |
| 26783 | + "404": { |
| 26784 | + "description": "The proof page is disabled fleet-wide, or this repo has opted out" |
| 26785 | + }, |
| 26786 | + "503": { |
| 26787 | + "description": "Composition failed — no partial or fabricated summary is served" |
| 26788 | + } |
| 26789 | + } |
| 26790 | + } |
| 26791 | + }, |
| 26792 | + "/v1/public/repos/{owner}/{repo}/proof-badge.svg": { |
| 26793 | + "get": { |
| 26794 | + "operationId": "getPublicRepoProofBadge", |
| 26795 | + "tags": [ |
| 26796 | + "Public" |
| 26797 | + ], |
| 26798 | + "summary": "README badge for the proof page — reports the ledger's state, never a bare accuracy percentage", |
| 26799 | + "parameters": [ |
| 26800 | + { |
| 26801 | + "schema": { |
| 26802 | + "type": "string" |
| 26803 | + }, |
| 26804 | + "required": true, |
| 26805 | + "name": "owner", |
| 26806 | + "in": "path" |
| 26807 | + }, |
| 26808 | + { |
| 26809 | + "schema": { |
| 26810 | + "type": "string" |
| 26811 | + }, |
| 26812 | + "required": true, |
| 26813 | + "name": "repo", |
| 26814 | + "in": "path" |
| 26815 | + } |
| 26816 | + ], |
| 26817 | + "responses": { |
| 26818 | + "200": { |
| 26819 | + "description": "SVG badge" |
| 26820 | + }, |
| 26821 | + "404": { |
| 26822 | + "description": "Disabled or opted out — still an SVG (a neutral 'unavailable' badge), so a README never shows a broken image" |
| 26823 | + }, |
| 26824 | + "503": { |
| 26825 | + "description": "Same neutral SVG on an internal error" |
| 26826 | + } |
| 26827 | + } |
| 26828 | + } |
26706 | 26829 | } |
26707 | 26830 | }, |
26708 | 26831 | "servers": [ |
|
0 commit comments