@typeship-ax/cli 0.21.1 → 0.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/AGENTS.md +1 -1
  2. package/README.md +1 -1
  3. package/api.json +173 -141
  4. package/api.md +33 -33
  5. package/dist/cli.js +2 -2
  6. package/dist/index.d.ts +2 -2
  7. package/dist/index.js +3 -3
  8. package/dist/ops.js +22 -22
  9. package/dist/resources/api-keys.d.ts +6 -5
  10. package/dist/resources/api-keys.d.ts.map +1 -1
  11. package/dist/resources/deliveries.d.ts +7 -6
  12. package/dist/resources/deliveries.d.ts.map +1 -1
  13. package/dist/resources/deliveries.js +1 -1
  14. package/dist/resources/drafts.d.ts +12 -10
  15. package/dist/resources/drafts.d.ts.map +1 -1
  16. package/dist/resources/generations.d.ts +12 -10
  17. package/dist/resources/generations.d.ts.map +1 -1
  18. package/dist/resources/projects.d.ts +14 -13
  19. package/dist/resources/projects.d.ts.map +1 -1
  20. package/dist/resources/projects.js +8 -8
  21. package/dist/resources/publications.d.ts +7 -6
  22. package/dist/resources/publications.d.ts.map +1 -1
  23. package/dist/resources/publications.js +1 -1
  24. package/dist/resources/releases.d.ts +8 -6
  25. package/dist/resources/releases.d.ts.map +1 -1
  26. package/dist/resources/releases.js +2 -1
  27. package/dist/resources/spec-revisions.d.ts +12 -10
  28. package/dist/resources/spec-revisions.d.ts.map +1 -1
  29. package/dist/resources/specs.d.ts +2 -1
  30. package/dist/resources/specs.d.ts.map +1 -1
  31. package/dist/resources/specs.js +2 -1
  32. package/dist/resources/targets.d.ts +9 -8
  33. package/dist/resources/targets.d.ts.map +1 -1
  34. package/dist/resources/targets.js +3 -3
  35. package/dist/types.d.ts +41 -28
  36. package/dist/types.d.ts.map +1 -1
  37. package/dist/types.js +40 -27
  38. package/package.json +1 -1
  39. package/src/cli.ts +2 -2
  40. package/src/index.ts +3 -3
  41. package/src/ops.ts +22 -22
  42. package/src/resources/api-keys.ts +6 -5
  43. package/src/resources/deliveries.ts +7 -6
  44. package/src/resources/drafts.ts +12 -10
  45. package/src/resources/generations.ts +12 -10
  46. package/src/resources/projects.ts +14 -13
  47. package/src/resources/publications.ts +7 -6
  48. package/src/resources/releases.ts +8 -6
  49. package/src/resources/spec-revisions.ts +12 -10
  50. package/src/resources/specs.ts +2 -1
  51. package/src/resources/targets.ts +9 -8
  52. package/src/types.ts +41 -28
@@ -132,15 +132,16 @@ export interface ApiKeysListParams {
132
132
  /**
133
133
  * Maximum number of resources to return. Omit for 20; otherwise supply base-10 digits
134
134
  * representing an integer from 1 to 100. Empty, malformed, or out-of-range values return 400
135
- * invalid_request. List query parameters must appear only once; unrecognized parameters also
136
- * return 400.
135
+ * input_invalid. List query parameters must appear only once; repeated or unrecognized parameters
136
+ * return 400 query_param_invalid.
137
137
  */
138
138
  limit?: number;
139
139
  /**
140
140
  * Opaque cursor from the preceding page's next_cursor. Valid only for the same organization,
141
- * operation, filters, and ordering that issued it. Omit to start at the first page. Empty,
142
- * malformed, or repeated cursors return 400 invalid_request. The page limit may change between
143
- * requests.
141
+ * operation, filters, and ordering that issued it. Omit to start at the first page. Empty or
142
+ * malformed cursors, and cursors issued for different filters, return 400 cursor_invalid; start
143
+ * again from the first page. Repeated cursors return 400 query_param_invalid. The page limit may
144
+ * change between requests.
144
145
  */
145
146
  cursor?: string;
146
147
  }
@@ -72,7 +72,7 @@ export class DeliveriesResource {
72
72
  * Get a Delivery
73
73
  *
74
74
  * Returns the configured repository or hosted MCP Delivery for a Target. A Delivery in another
75
- * organization returns 404 not_found.
75
+ * organization returns 404 resource_not_found.
76
76
  * `GET /deliveries/{delivery_id}`
77
77
  */
78
78
  async get(deliveryId: DeliveryId, options?: RequestOptions): Promise<DeliveryResponseRead> {
@@ -98,15 +98,16 @@ export interface DeliveriesListParams {
98
98
  /**
99
99
  * Maximum number of resources to return. Omit for 20; otherwise supply base-10 digits
100
100
  * representing an integer from 1 to 100. Empty, malformed, or out-of-range values return 400
101
- * invalid_request. List query parameters must appear only once; unrecognized parameters also
102
- * return 400.
101
+ * input_invalid. List query parameters must appear only once; repeated or unrecognized parameters
102
+ * return 400 query_param_invalid.
103
103
  */
104
104
  limit?: number;
105
105
  /**
106
106
  * Opaque cursor from the preceding page's next_cursor. Valid only for the same organization,
107
- * operation, filters, and ordering that issued it. Omit to start at the first page. Empty,
108
- * malformed, or repeated cursors return 400 invalid_request. The page limit may change between
109
- * requests.
107
+ * operation, filters, and ordering that issued it. Omit to start at the first page. Empty or
108
+ * malformed cursors, and cursors issued for different filters, return 400 cursor_invalid; start
109
+ * again from the first page. Repeated cursors return 400 query_param_invalid. The page limit may
110
+ * change between requests.
110
111
  */
111
112
  cursor?: string;
112
113
  /** Only Deliveries of this Target. */
@@ -288,15 +288,16 @@ export interface DraftsListParams {
288
288
  /**
289
289
  * Maximum number of resources to return. Omit for 20; otherwise supply base-10 digits
290
290
  * representing an integer from 1 to 100. Empty, malformed, or out-of-range values return 400
291
- * invalid_request. List query parameters must appear only once; unrecognized parameters also
292
- * return 400.
291
+ * input_invalid. List query parameters must appear only once; repeated or unrecognized parameters
292
+ * return 400 query_param_invalid.
293
293
  */
294
294
  limit?: number;
295
295
  /**
296
296
  * Opaque cursor from the preceding page's next_cursor. Valid only for the same organization,
297
- * operation, filters, and ordering that issued it. Omit to start at the first page. Empty,
298
- * malformed, or repeated cursors return 400 invalid_request. The page limit may change between
299
- * requests.
297
+ * operation, filters, and ordering that issued it. Omit to start at the first page. Empty or
298
+ * malformed cursors, and cursors issued for different filters, return 400 cursor_invalid; start
299
+ * again from the first page. Repeated cursors return 400 query_param_invalid. The page limit may
300
+ * change between requests.
300
301
  */
301
302
  cursor?: string;
302
303
  /** Only Drafts of this Target. */
@@ -366,15 +367,16 @@ export interface DraftsListFilesParams {
366
367
  /**
367
368
  * Maximum number of resources to return. Omit for 20; otherwise supply base-10 digits
368
369
  * representing an integer from 1 to 100. Empty, malformed, or out-of-range values return 400
369
- * invalid_request. List query parameters must appear only once; unrecognized parameters also
370
- * return 400.
370
+ * input_invalid. List query parameters must appear only once; repeated or unrecognized parameters
371
+ * return 400 query_param_invalid.
371
372
  */
372
373
  limit?: number;
373
374
  /**
374
375
  * Opaque cursor from the preceding page's next_cursor. Valid only for the same organization,
375
- * operation, filters, and ordering that issued it. Omit to start at the first page. Empty,
376
- * malformed, or repeated cursors return 400 invalid_request. The page limit may change between
377
- * requests.
376
+ * operation, filters, and ordering that issued it. Omit to start at the first page. Empty or
377
+ * malformed cursors, and cursors issued for different filters, return 400 cursor_invalid; start
378
+ * again from the first page. Repeated cursors return 400 query_param_invalid. The page limit may
379
+ * change between requests.
378
380
  */
379
381
  cursor?: string;
380
382
  }
@@ -168,15 +168,16 @@ export interface GenerationsListParams {
168
168
  /**
169
169
  * Maximum number of resources to return. Omit for 20; otherwise supply base-10 digits
170
170
  * representing an integer from 1 to 100. Empty, malformed, or out-of-range values return 400
171
- * invalid_request. List query parameters must appear only once; unrecognized parameters also
172
- * return 400.
171
+ * input_invalid. List query parameters must appear only once; repeated or unrecognized parameters
172
+ * return 400 query_param_invalid.
173
173
  */
174
174
  limit?: number;
175
175
  /**
176
176
  * Opaque cursor from the preceding page's next_cursor. Valid only for the same organization,
177
- * operation, filters, and ordering that issued it. Omit to start at the first page. Empty,
178
- * malformed, or repeated cursors return 400 invalid_request. The page limit may change between
179
- * requests.
177
+ * operation, filters, and ordering that issued it. Omit to start at the first page. Empty or
178
+ * malformed cursors, and cursors issued for different filters, return 400 cursor_invalid; start
179
+ * again from the first page. Repeated cursors return 400 query_param_invalid. The page limit may
180
+ * change between requests.
180
181
  */
181
182
  cursor?: string;
182
183
  /** Only Generations in this Project. */
@@ -216,15 +217,16 @@ export interface GenerationsListFilesParams {
216
217
  /**
217
218
  * Maximum number of resources to return. Omit for 20; otherwise supply base-10 digits
218
219
  * representing an integer from 1 to 100. Empty, malformed, or out-of-range values return 400
219
- * invalid_request. List query parameters must appear only once; unrecognized parameters also
220
- * return 400.
220
+ * input_invalid. List query parameters must appear only once; repeated or unrecognized parameters
221
+ * return 400 query_param_invalid.
221
222
  */
222
223
  limit?: number;
223
224
  /**
224
225
  * Opaque cursor from the preceding page's next_cursor. Valid only for the same organization,
225
- * operation, filters, and ordering that issued it. Omit to start at the first page. Empty,
226
- * malformed, or repeated cursors return 400 invalid_request. The page limit may change between
227
- * requests.
226
+ * operation, filters, and ordering that issued it. Omit to start at the first page. Empty or
227
+ * malformed cursors, and cursors issued for different filters, return 400 cursor_invalid; start
228
+ * again from the first page. Repeated cursors return 400 query_param_invalid. The page limit may
229
+ * change between requests.
228
230
  */
229
231
  cursor?: string;
230
232
  }
@@ -148,9 +148,9 @@ export class ProjectsResource {
148
148
  /**
149
149
  * Delete a project
150
150
  *
151
- * A `502` response means the Project was not deleted because its release pull requests could not
152
- * be retired. Retry deletion to finish retiring the remaining reviews. Repeating a completed
153
- * deletion returns `404`.
151
+ * A `502 repository_unavailable` means the Project was not deleted because its release pull
152
+ * requests could not be retired. Retry deletion to finish retiring the remaining reviews.
153
+ * Repeating a completed deletion returns `404`.
154
154
  * See [conditional writes](https://typeship.dev/docs/typeship-api#conditional-writes) for ETag
155
155
  * and If-Match.
156
156
  * `DELETE /projects/{project_id}`
@@ -195,9 +195,9 @@ export class ProjectsResource {
195
195
  *
196
196
  * A `409 target_busy` means a Target is publishing. Retrieve the Project, wait for publishing to
197
197
  * finish, reconcile your update, and retry.
198
- * A `502` response means the Project was saved, but an obsolete release pull request could not be
199
- * retired. Retrieve the Project and retry the same update to finish retiring reviews if that
200
- * update is still desired.
198
+ * A `502 follow_up_failed` means the Project was saved, but an obsolete release pull request
199
+ * could not be retired. Retrieve the Project and retry the same update to finish retiring reviews
200
+ * if that update is still desired.
201
201
  * See [conditional writes](https://typeship.dev/docs/typeship-api#conditional-writes) for ETag
202
202
  * and If-Match.
203
203
  * `PATCH /projects/{project_id}`
@@ -241,8 +241,8 @@ export class ProjectsResource {
241
241
  * its status moves from `queued` to `running` and then `completed` or `failed`. `completed` means
242
242
  * generated files are saved; check Delivery and Draft status separately for repository delivery
243
243
  * and pull requests. A Target already queued or running is returned without starting another
244
- * Generation. A matching Idempotency-Key replay returns the same Generations with their current
245
- * statuses.
244
+ * Generation. A `409 targets_inactive` means the Project has no active Target to generate. A
245
+ * matching Idempotency-Key replay returns the same Generations with their current statuses.
246
246
  *
247
247
  * If the package already matches a destination and no Draft is open, delivery creates no commit,
248
248
  * branch, or pull request. An existing Draft stays open. Automatic generation uses the same
@@ -289,15 +289,16 @@ export interface ProjectsListParams {
289
289
  /**
290
290
  * Maximum number of resources to return. Omit for 20; otherwise supply base-10 digits
291
291
  * representing an integer from 1 to 100. Empty, malformed, or out-of-range values return 400
292
- * invalid_request. List query parameters must appear only once; unrecognized parameters also
293
- * return 400.
292
+ * input_invalid. List query parameters must appear only once; repeated or unrecognized parameters
293
+ * return 400 query_param_invalid.
294
294
  */
295
295
  limit?: number;
296
296
  /**
297
297
  * Opaque cursor from the preceding page's next_cursor. Valid only for the same organization,
298
- * operation, filters, and ordering that issued it. Omit to start at the first page. Empty,
299
- * malformed, or repeated cursors return 400 invalid_request. The page limit may change between
300
- * requests.
298
+ * operation, filters, and ordering that issued it. Omit to start at the first page. Empty or
299
+ * malformed cursors, and cursors issued for different filters, return 400 cursor_invalid; start
300
+ * again from the first page. Repeated cursors return 400 query_param_invalid. The page limit may
301
+ * change between requests.
301
302
  */
302
303
  cursor?: string;
303
304
  }
@@ -72,7 +72,7 @@ export class PublicationsResource {
72
72
  * Get publishing status
73
73
  *
74
74
  * Returns the registry publishing status for a release. A status in another organization returns
75
- * 404 not_found.
75
+ * 404 resource_not_found.
76
76
  * `GET /publications/{publication_id}`
77
77
  */
78
78
  async get(publicationId: PublicationId, options?: RequestOptions): Promise<PublicationResponseRead> {
@@ -98,15 +98,16 @@ export interface PublicationsListParams {
98
98
  /**
99
99
  * Maximum number of resources to return. Omit for 20; otherwise supply base-10 digits
100
100
  * representing an integer from 1 to 100. Empty, malformed, or out-of-range values return 400
101
- * invalid_request. List query parameters must appear only once; unrecognized parameters also
102
- * return 400.
101
+ * input_invalid. List query parameters must appear only once; repeated or unrecognized parameters
102
+ * return 400 query_param_invalid.
103
103
  */
104
104
  limit?: number;
105
105
  /**
106
106
  * Opaque cursor from the preceding page's next_cursor. Valid only for the same organization,
107
- * operation, filters, and ordering that issued it. Omit to start at the first page. Empty,
108
- * malformed, or repeated cursors return 400 invalid_request. The page limit may change between
109
- * requests.
107
+ * operation, filters, and ordering that issued it. Omit to start at the first page. Empty or
108
+ * malformed cursors, and cursors issued for different filters, return 400 cursor_invalid; start
109
+ * again from the first page. Repeated cursors return 400 query_param_invalid. The page limit may
110
+ * change between requests.
110
111
  */
111
112
  cursor?: string;
112
113
  /** Only publications of this release. */
@@ -95,7 +95,8 @@ export class ReleasesResource {
95
95
  * Retries publishing the specified release through its repository workflow. Uses that release's
96
96
  * version and accepted commit, even if a newer Draft or release exists.
97
97
  *
98
- * A `502` response means the repository publishing workflow could not be dispatched.
98
+ * A `502 repository_unavailable` means the repository publishing workflow could not be
99
+ * dispatched, and nothing was changed.
99
100
  *
100
101
  * A `Idempotency-Key` UUID is generated per call (stable across retries) unless you pass one.
101
102
  * `POST /releases/{release_id}/republish`
@@ -133,15 +134,16 @@ export interface ReleasesListParams {
133
134
  /**
134
135
  * Maximum number of resources to return. Omit for 20; otherwise supply base-10 digits
135
136
  * representing an integer from 1 to 100. Empty, malformed, or out-of-range values return 400
136
- * invalid_request. List query parameters must appear only once; unrecognized parameters also
137
- * return 400.
137
+ * input_invalid. List query parameters must appear only once; repeated or unrecognized parameters
138
+ * return 400 query_param_invalid.
138
139
  */
139
140
  limit?: number;
140
141
  /**
141
142
  * Opaque cursor from the preceding page's next_cursor. Valid only for the same organization,
142
- * operation, filters, and ordering that issued it. Omit to start at the first page. Empty,
143
- * malformed, or repeated cursors return 400 invalid_request. The page limit may change between
144
- * requests.
143
+ * operation, filters, and ordering that issued it. Omit to start at the first page. Empty or
144
+ * malformed cursors, and cursors issued for different filters, return 400 cursor_invalid; start
145
+ * again from the first page. Repeated cursors return 400 query_param_invalid. The page limit may
146
+ * change between requests.
145
147
  */
146
148
  cursor?: string;
147
149
  /** Only releases of this Target. */
@@ -157,15 +157,16 @@ export interface SpecRevisionsListParams {
157
157
  /**
158
158
  * Maximum number of resources to return. Omit for 20; otherwise supply base-10 digits
159
159
  * representing an integer from 1 to 100. Empty, malformed, or out-of-range values return 400
160
- * invalid_request. List query parameters must appear only once; unrecognized parameters also
161
- * return 400.
160
+ * input_invalid. List query parameters must appear only once; repeated or unrecognized parameters
161
+ * return 400 query_param_invalid.
162
162
  */
163
163
  limit?: number;
164
164
  /**
165
165
  * Opaque cursor from the preceding page's next_cursor. Valid only for the same organization,
166
- * operation, filters, and ordering that issued it. Omit to start at the first page. Empty,
167
- * malformed, or repeated cursors return 400 invalid_request. The page limit may change between
168
- * requests.
166
+ * operation, filters, and ordering that issued it. Omit to start at the first page. Empty or
167
+ * malformed cursors, and cursors issued for different filters, return 400 cursor_invalid; start
168
+ * again from the first page. Repeated cursors return 400 query_param_invalid. The page limit may
169
+ * change between requests.
169
170
  */
170
171
  cursor?: string;
171
172
  /** Only revisions of this Spec. */
@@ -210,15 +211,16 @@ export interface SpecRevisionsListFilesParams {
210
211
  /**
211
212
  * Maximum number of resources to return. Omit for 20; otherwise supply base-10 digits
212
213
  * representing an integer from 1 to 100. Empty, malformed, or out-of-range values return 400
213
- * invalid_request. List query parameters must appear only once; unrecognized parameters also
214
- * return 400.
214
+ * input_invalid. List query parameters must appear only once; repeated or unrecognized parameters
215
+ * return 400 query_param_invalid.
215
216
  */
216
217
  limit?: number;
217
218
  /**
218
219
  * Opaque cursor from the preceding page's next_cursor. Valid only for the same organization,
219
- * operation, filters, and ordering that issued it. Omit to start at the first page. Empty,
220
- * malformed, or repeated cursors return 400 invalid_request. The page limit may change between
221
- * requests.
220
+ * operation, filters, and ordering that issued it. Omit to start at the first page. Empty or
221
+ * malformed cursors, and cursors issued for different filters, return 400 cursor_invalid; start
222
+ * again from the first page. Repeated cursors return 400 query_param_invalid. The page limit may
223
+ * change between requests.
222
224
  */
223
225
  cursor?: string;
224
226
  }
@@ -98,7 +98,8 @@ export class SpecsResource {
98
98
  *
99
99
  * Fetches the configured source now and creates a new Spec Revision only when its content
100
100
  * changes. Diagnostics then reads that revision. If automatic generation is enabled, refresh
101
- * queues generation for active Targets even when the source is unchanged.
101
+ * queues generation for active Targets even when the source is unchanged. A `502
102
+ * follow_up_failed` means the new Spec Revision was recorded but generation could not be queued.
102
103
  *
103
104
  * A `Idempotency-Key` UUID is generated per call (stable across retries) unless you pass one.
104
105
  * `POST /specs/{spec_id}/refresh`
@@ -191,9 +191,9 @@ export class TargetsResource {
191
191
  * A `409 target_busy` means the Target is publishing; wait for it to finish. A `409
192
192
  * delivery_conflict` means another Target owns the requested repository tree; retrieve both
193
193
  * Targets, choose a free destination, and retry.
194
- * A `502` response means the update was saved, but retiring an obsolete review or regenerating
195
- * the Target failed. Retrieve the Target and follow the error's retryable and suggested_action
196
- * fields.
194
+ * A `502 follow_up_failed` means the update was saved, but retiring an obsolete review or
195
+ * regenerating the Target failed. Retrieve the Target and follow the error's retryable and
196
+ * suggested_action fields.
197
197
  * See [conditional writes](https://typeship.dev/docs/typeship-api#conditional-writes) for ETag
198
198
  * and If-Match.
199
199
  * `PATCH /targets/{target_id}`
@@ -275,15 +275,16 @@ export interface TargetsListParams {
275
275
  /**
276
276
  * Maximum number of resources to return. Omit for 20; otherwise supply base-10 digits
277
277
  * representing an integer from 1 to 100. Empty, malformed, or out-of-range values return 400
278
- * invalid_request. List query parameters must appear only once; unrecognized parameters also
279
- * return 400.
278
+ * input_invalid. List query parameters must appear only once; repeated or unrecognized parameters
279
+ * return 400 query_param_invalid.
280
280
  */
281
281
  limit?: number;
282
282
  /**
283
283
  * Opaque cursor from the preceding page's next_cursor. Valid only for the same organization,
284
- * operation, filters, and ordering that issued it. Omit to start at the first page. Empty,
285
- * malformed, or repeated cursors return 400 invalid_request. The page limit may change between
286
- * requests.
284
+ * operation, filters, and ordering that issued it. Omit to start at the first page. Empty or
285
+ * malformed cursors, and cursors issued for different filters, return 400 cursor_invalid; start
286
+ * again from the first page. Repeated cursors return 400 query_param_invalid. The page limit may
287
+ * change between requests.
287
288
  */
288
289
  cursor?: string;
289
290
  /** Only Targets in this Project. */
package/src/types.ts CHANGED
@@ -105,7 +105,7 @@ export interface GoSdkDescriptor {
105
105
  version: string;
106
106
  /**
107
107
  * SHA-256 hex digest of the Spec the SDK was generated from. Must match the resolved Spec, or the
108
- * request fails with spec_error.
108
+ * request fails with spec_invalid.
109
109
  */
110
110
  spec_digest: string;
111
111
  /**
@@ -3380,37 +3380,54 @@ export interface DeletedTargetRead {
3380
3380
  request_id: RequestId;
3381
3381
  }
3382
3382
 
3383
- /** Stable category for deciding how to handle the error. */
3383
+ /**
3384
+ * Who can resolve the error. request: change the request. auth: fix the credential or its grant.
3385
+ * idempotency: change or wait on the Idempotency-Key. rate_limit: wait before retrying.
3386
+ * organization: the organization's plan must change. source: a system you own failed, such as the
3387
+ * Spec URL, repository, or package registry. api: Typeship failed.
3388
+ */
3384
3389
  export const ErrorType = {
3385
- REQUEST_ERROR: "request_error",
3386
- AUTHENTICATION_ERROR: "authentication_error",
3387
- AUTHORIZATION_ERROR: "authorization_error",
3388
- PLAN_ERROR: "plan_error",
3389
- SOURCE_ERROR: "source_error",
3390
- RATE_LIMIT_ERROR: "rate_limit_error",
3391
- API_ERROR: "api_error",
3390
+ REQUEST: "request",
3391
+ AUTH: "auth",
3392
+ IDEMPOTENCY: "idempotency",
3393
+ RATE_LIMIT: "rate_limit",
3394
+ ORGANIZATION: "organization",
3395
+ SOURCE: "source",
3396
+ API: "api",
3392
3397
  } as const;
3393
3398
  export type ErrorType = (typeof ErrorType)[keyof typeof ErrorType];
3394
3399
 
3395
3400
  /** Stable programmatic identifier. Do not branch on message. */
3396
3401
  export const ErrorCode = {
3397
- INVALID_REQUEST: "invalid_request",
3402
+ INPUT_INVALID: "input_invalid",
3403
+ QUERY_PARAM_INVALID: "query_param_invalid",
3404
+ CURSOR_INVALID: "cursor_invalid",
3405
+ METHOD_NOT_ALLOWED: "method_not_allowed",
3406
+ RESOURCE_NOT_FOUND: "resource_not_found",
3407
+ IDEMPOTENCY_KEY_INVALID: "idempotency_key_invalid",
3398
3408
  IDEMPOTENCY_KEY_REUSED: "idempotency_key_reused",
3399
- UNAUTHORIZED: "unauthorized",
3409
+ IDEMPOTENCY_KEY_IN_USE: "idempotency_key_in_use",
3410
+ AUTH_REQUIRED: "auth_required",
3411
+ API_KEY_INVALID: "api_key_invalid",
3412
+ TOKEN_INVALID: "token_invalid",
3400
3413
  ORGANIZATION_REQUIRED: "organization_required",
3401
3414
  INSUFFICIENT_SCOPE: "insufficient_scope",
3402
- FORBIDDEN: "forbidden",
3403
- NOT_FOUND: "not_found",
3404
- METHOD_NOT_ALLOWED: "method_not_allowed",
3405
- SPEC_ERROR: "spec_error",
3406
- FETCH_ERROR: "fetch_error",
3415
+ ROLE_INSUFFICIENT: "role_insufficient",
3416
+ RATE_LIMIT_EXCEEDED: "rate_limit_exceeded",
3417
+ PLAN_LIMIT_REACHED: "plan_limit_reached",
3418
+ SPEC_INVALID: "spec_invalid",
3419
+ SPEC_TOO_LARGE: "spec_too_large",
3420
+ SPEC_UNREACHABLE: "spec_unreachable",
3407
3421
  REPOSITORY_PROVIDER_UNSUPPORTED: "repository_provider_unsupported",
3422
+ REPOSITORY_DISCONNECTED: "repository_disconnected",
3423
+ REPOSITORY_UNAVAILABLE: "repository_unavailable",
3408
3424
  TARGET_BUSY: "target_busy",
3425
+ TARGETS_INACTIVE: "targets_inactive",
3409
3426
  NO_DRAFT: "no_draft",
3410
3427
  DRAFT_MERGED: "draft_merged",
3411
3428
  RESOURCE_CHANGED: "resource_changed",
3412
- INVALID_VERSION: "invalid_version",
3413
3429
  PRECONDITION_FAILED: "precondition_failed",
3430
+ VERSION_INVALID: "version_invalid",
3414
3431
  VERSION_OCCUPIED: "version_occupied",
3415
3432
  VERSION_TOO_LOW: "version_too_low",
3416
3433
  TARGET_ALREADY_RELEASED: "target_already_released",
@@ -3418,15 +3435,12 @@ export const ErrorCode = {
3418
3435
  PUBLICATION_DISABLED: "publication_disabled",
3419
3436
  PUBLICATION_NOT_RETRYABLE: "publication_not_retryable",
3420
3437
  PUBLICATION_RECOVERY_UNAVAILABLE: "publication_recovery_unavailable",
3421
- PUBLICATION_DISPATCH_FAILED: "publication_dispatch_failed",
3422
- REPOSITORY_DISCONNECTED: "repository_disconnected",
3423
- REGENERATION_FAILED: "regeneration_failed",
3438
+ PUBLICATION_FAILED: "publication_failed",
3424
3439
  DELIVERY_CONFLICT: "delivery_conflict",
3425
3440
  RESOURCE_HAS_DEPENDENCIES: "resource_has_dependencies",
3426
- PLAN_LIMIT_REACHED: "plan_limit_reached",
3427
- PAYLOAD_TOO_LARGE: "payload_too_large",
3428
- RATE_LIMITED: "rate_limited",
3429
- INTERNAL_ERROR: "internal_error",
3441
+ CUSTOMIZATION_CONFLICT: "customization_conflict",
3442
+ HISTORY_RECOVERY_REQUIRED: "history_recovery_required",
3443
+ CHECKS_UNAVAILABLE: "checks_unavailable",
3430
3444
  DEPENDENCY_MISSING: "dependency_missing",
3431
3445
  DEPENDENCY_NOT_FOUND: "dependency_not_found",
3432
3446
  DEPENDENCY_SELF: "dependency_self",
@@ -3438,10 +3452,9 @@ export const ErrorCode = {
3438
3452
  DEPENDENCY_MODULE_PATH_MISSING: "dependency_module_path_missing",
3439
3453
  DEPENDENCY_UNRELEASED: "dependency_unreleased",
3440
3454
  DEPENDENCY_REVISION_MISMATCH: "dependency_revision_mismatch",
3441
- PUBLICATION_FAILED: "publication_failed",
3442
- CUSTOMIZATION_CONFLICT: "customization_conflict",
3443
- HISTORY_RECOVERY_REQUIRED: "history_recovery_required",
3444
- CHECKS_UNAVAILABLE: "checks_unavailable",
3455
+ REGENERATION_FAILED: "regeneration_failed",
3456
+ FOLLOW_UP_FAILED: "follow_up_failed",
3457
+ API_ERROR: "api_error",
3445
3458
  } as const;
3446
3459
  export type ErrorCode = (typeof ErrorCode)[keyof typeof ErrorCode];
3447
3460