

























11{
22"$schema": "http://json-schema.org/draft-07/schema#",
3+"title": "ErrorNotification",
4+"type": "object",
5+"required": ["error", "threadId", "turnId", "willRetry"],
6+"properties": {
7+"error": {
8+"$ref": "#/definitions/TurnError"
9+ },
10+"threadId": {
11+"type": "string"
12+ },
13+"turnId": {
14+"type": "string"
15+ },
16+"willRetry": {
17+"type": "boolean"
18+ }
19+ },
320"definitions": {
421"CodexErrorInfo": {
522"description": "This translation layer make sure that we expose codex error code in camel case.\n\nWhen an upstream HTTP status is available (for example, from the Responses API or a provider), it is forwarded in `httpStatusCode` on the relevant `codexErrorInfo` variant.",
623"oneOf": [
724 {
25+"type": "string",
826"enum": [
927"contextWindowExceeded",
1028"usageLimitExceeded",
@@ -16,109 +34,110 @@
1634"threadRollbackFailed",
1735"sandboxError",
1836"other"
19- ],
20-"type": "string"
37+ ]
2138 },
2239 {
23-"additionalProperties": false,
40+"type": "object",
41+"required": ["httpConnectionFailed"],
2442"properties": {
2543"httpConnectionFailed": {
44+"type": "object",
2645"properties": {
2746"httpStatusCode": {
47+"type": ["integer", "null"],
2848"format": "uint16",
29-"minimum": 0.0,
30-"type": ["integer", "null"]
49+"minimum": 0.0
3150 }
32- },
33-"type": "object"
51+ }
3452 }
3553 },
36-"required": ["httpConnectionFailed"],
37-"title": "HttpConnectionFailedCodexErrorInfo",
38-"type": "object"
54+"additionalProperties": false,
55+"title": "HttpConnectionFailedCodexErrorInfo"
3956 },
4057 {
41-"additionalProperties": false,
4258"description": "Failed to connect to the response SSE stream.",
59+"type": "object",
60+"required": ["responseStreamConnectionFailed"],
4361"properties": {
4462"responseStreamConnectionFailed": {
63+"type": "object",
4564"properties": {
4665"httpStatusCode": {
66+"type": ["integer", "null"],
4767"format": "uint16",
48-"minimum": 0.0,
49-"type": ["integer", "null"]
68+"minimum": 0.0
5069 }
51- },
52-"type": "object"
70+ }
5371 }
5472 },
55-"required": ["responseStreamConnectionFailed"],
56-"title": "ResponseStreamConnectionFailedCodexErrorInfo",
57-"type": "object"
73+"additionalProperties": false,
74+"title": "ResponseStreamConnectionFailedCodexErrorInfo"
5875 },
5976 {
60-"additionalProperties": false,
6177"description": "The response SSE stream disconnected in the middle of a turn before completion.",
78+"type": "object",
79+"required": ["responseStreamDisconnected"],
6280"properties": {
6381"responseStreamDisconnected": {
82+"type": "object",
6483"properties": {
6584"httpStatusCode": {
85+"type": ["integer", "null"],
6686"format": "uint16",
67-"minimum": 0.0,
68-"type": ["integer", "null"]
87+"minimum": 0.0
6988 }
70- },
71-"type": "object"
89+ }
7290 }
7391 },
74-"required": ["responseStreamDisconnected"],
75-"title": "ResponseStreamDisconnectedCodexErrorInfo",
76-"type": "object"
92+"additionalProperties": false,
93+"title": "ResponseStreamDisconnectedCodexErrorInfo"
7794 },
7895 {
79-"additionalProperties": false,
8096"description": "Reached the retry limit for responses.",
97+"type": "object",
98+"required": ["responseTooManyFailedAttempts"],
8199"properties": {
82100"responseTooManyFailedAttempts": {
101+"type": "object",
83102"properties": {
84103"httpStatusCode": {
104+"type": ["integer", "null"],
85105"format": "uint16",
86-"minimum": 0.0,
87-"type": ["integer", "null"]
106+"minimum": 0.0
88107 }
89- },
90-"type": "object"
108+ }
91109 }
92110 },
93-"required": ["responseTooManyFailedAttempts"],
94-"title": "ResponseTooManyFailedAttemptsCodexErrorInfo",
95-"type": "object"
111+"additionalProperties": false,
112+"title": "ResponseTooManyFailedAttemptsCodexErrorInfo"
96113 },
97114 {
98-"additionalProperties": false,
99115"description": "Returned when `turn/start` or `turn/steer` is submitted while the current active turn cannot accept same-turn steering, for example `/review` or manual `/compact`.",
116+"type": "object",
117+"required": ["activeTurnNotSteerable"],
100118"properties": {
101119"activeTurnNotSteerable": {
120+"type": "object",
121+"required": ["turnKind"],
102122"properties": {
103123"turnKind": {
104124"$ref": "#/definitions/NonSteerableTurnKind"
105125 }
106- },
107-"required": ["turnKind"],
108-"type": "object"
126+ }
109127 }
110128 },
111-"required": ["activeTurnNotSteerable"],
112-"title": "ActiveTurnNotSteerableCodexErrorInfo",
113-"type": "object"
129+"additionalProperties": false,
130+"title": "ActiveTurnNotSteerableCodexErrorInfo"
114131 }
115132 ]
116133 },
117134"NonSteerableTurnKind": {
118-"enum": ["review", "compact"],
119-"type": "string"
135+"type": "string",
136+"enum": ["review", "compact"]
120137 },
121138"TurnError": {
139+"type": "object",
140+"required": ["message"],
122141"properties": {
123142"additionalDetails": {
124143"default": null,
@@ -137,26 +156,7 @@
137156"message": {
138157"type": "string"
139158 }
140- },
141-"required": ["message"],
142-"type": "object"
143- }
144- },
145-"properties": {
146-"error": {
147-"$ref": "#/definitions/TurnError"
148- },
149-"threadId": {
150-"type": "string"
151- },
152-"turnId": {
153-"type": "string"
154- },
155-"willRetry": {
156-"type": "boolean"
159+ }
157160 }
158- },
159-"required": ["error", "threadId", "turnId", "willRetry"],
160-"title": "ErrorNotification",
161-"type": "object"
161+ }
162162}
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。