From 68e87022aec8bbbfa104e5264a63a5cecfc08e53 Mon Sep 17 00:00:00 2001 From: wei-hai <2936715+wei-hai@users.noreply.github.com> Date: Thu, 23 Jul 2026 15:40:52 +0000 Subject: [PATCH 1/2] chore: sync vendored Comfy API v2 spec from cloud@585fbea --- spec/openapi.yaml | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/spec/openapi.yaml b/spec/openapi.yaml index c85fa77..6c173ba 100644 --- a/spec/openapi.yaml +++ b/spec/openapi.yaml @@ -364,9 +364,7 @@ paths: additionalProperties: true extra_data: type: object - description: "Optional typed extras submitted alongside the - workflow. Closed: only the enumerated properties are - accepted." + description: "Per-prompt ComfyUI `extra_data`, same shape as Comfy Cloud and local ComfyUI. Closed object: only the enumerated keys are accepted, keeping the contract fully typed. Forwarded to the worker per-prompt, never persisted, and excluded from idempotency comparison." additionalProperties: false properties: api_key_comfy_org: @@ -438,6 +436,8 @@ paths: $ref: "#/components/responses/Forbidden" "404": $ref: "#/components/responses/NotFound" + "429": + $ref: "#/components/responses/RateLimited" "500": $ref: "#/components/responses/UpstreamError" /api/v2/jobs/{id}/events: @@ -549,6 +549,8 @@ paths: $ref: "#/components/responses/Forbidden" "404": $ref: "#/components/responses/NotFound" + "429": + $ref: "#/components/responses/RateLimited" "500": $ref: "#/components/responses/UpstreamError" components: @@ -617,6 +619,15 @@ components: application/json: schema: $ref: "#/components/schemas/ErrorEnvelope" + RateLimited: + description: "`rate_limited` — the caller has exceeded the request rate limit for this account. Account/rate-scoped, not job-specific — this can be returned even for a job id the caller doesn't own or that doesn't exist, without revealing which." + headers: + Retry-After: + $ref: "#/components/headers/RetryAfter" + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorEnvelope" schemas: Asset: type: object From 7519c490268d0294432687ae1766543929a2209e Mon Sep 17 00:00:00 2001 From: wei-hai Date: Thu, 23 Jul 2026 08:54:33 -0700 Subject: [PATCH 2/2] chore: regenerate low-level types for synced v2 spec The spec-sync PR updated spec/openapi.yaml (429 responses on GET/cancel jobs, extra_data doc) but not the generated client, so the spec-drift check failed. Regenerated via pnpm generate. Co-Authored-By: Claude Opus 4.8 --- src/low/generated/types.gen.ts | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/low/generated/types.gen.ts b/src/low/generated/types.gen.ts index de5fbc0..cdd882d 100644 --- a/src/low/generated/types.gen.ts +++ b/src/low/generated/types.gen.ts @@ -412,7 +412,7 @@ export type PostJobsData = { [key: string]: unknown; }; /** - * Optional typed extras submitted alongside the workflow. Closed: only the enumerated properties are accepted. + * Per-prompt ComfyUI `extra_data`, same shape as Comfy Cloud and local ComfyUI. Closed object: only the enumerated keys are accepted, keeping the contract fully typed. Forwarded to the worker per-prompt, never persisted, and excluded from idempotency comparison. */ extra_data?: { /** @@ -492,6 +492,10 @@ export type GetJobErrors = { * `not_found`. */ 404: ErrorEnvelope; + /** + * `rate_limited` — the caller has exceeded the request rate limit for this account. Account/rate-scoped, not job-specific — this can be returned even for a job id the caller doesn't own or that doesn't exist, without revealing which. + */ + 429: ErrorEnvelope; /** * `upstream_error` — an unexpected failure reaching or processing the request in this implementation's backing services. The message is always a generic, safe-to-display string; implementation detail (the specific upstream, its error text, transport failures) is never included here — see each implementation's own error-mapping notes. Every operation in this contract can fail this way. */ @@ -578,6 +582,10 @@ export type CancelJobErrors = { * `not_found`. */ 404: ErrorEnvelope; + /** + * `rate_limited` — the caller has exceeded the request rate limit for this account. Account/rate-scoped, not job-specific — this can be returned even for a job id the caller doesn't own or that doesn't exist, without revealing which. + */ + 429: ErrorEnvelope; /** * `upstream_error` — an unexpected failure reaching or processing the request in this implementation's backing services. The message is always a generic, safe-to-display string; implementation detail (the specific upstream, its error text, transport failures) is never included here — see each implementation's own error-mapping notes. Every operation in this contract can fail this way. */