@sogni-ai/sogni-client 5.56.1 → 5.56.3

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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,18 @@
1
+ ## [5.56.3](https://github.com/Sogni-AI/sogni-client/compare/v5.56.2...v5.56.3) (2026-09-26)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * **projects:** know the live Wan sound-to-video and Qwen3 TTS ids as media ([f621acb](https://github.com/Sogni-AI/sogni-client/commit/f621acb974de81659a958b594f0a5c52c4d957e4))
7
+
8
+ ## [5.56.2](https://github.com/Sogni-AI/sogni-client/compare/v5.56.1...v5.56.2) (2026-09-26)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * **projects:** pick the result download endpoint from evidence, not an image default ([3f3dd42](https://github.com/Sogni-AI/sogni-client/commit/3f3dd42ead83f7f11772b27b1967dbd765db9860))
14
+ * **projects:** switch to the media endpoint once when the API says a result is media ([c80446f](https://github.com/Sogni-AI/sogni-client/commit/c80446f259c9dd13a1f0301f126f1f9009bd5876))
15
+
1
16
  ## [5.56.1](https://github.com/Sogni-AI/sogni-client/compare/v5.56.0...v5.56.1) (2026-09-25)
2
17
 
3
18
 
@@ -270,6 +270,15 @@ export type JobResultData = {
270
270
  lastFrameUrl?: string;
271
271
  lastFrameKey?: string;
272
272
  outputFormat?: string;
273
+ /**
274
+ * Files the worker uploaded for this result, as the worker reported them.
275
+ * The SDK reads `contentType` to pick the download endpoint for a result
276
+ * whose project it does not track.
277
+ */
278
+ artifacts?: Array<{
279
+ contentType?: string;
280
+ success?: boolean;
281
+ }>;
273
282
  /** Allowlisted worker result receipt persisted by the socket. */
274
283
  result?: Record<string, unknown>;
275
284
  /**
@@ -163,7 +163,8 @@ declare class Job extends DataEntity<JobData, JobEventMap> {
163
163
  */
164
164
  get isWithheld(): boolean;
165
165
  /**
166
- * Media type produced by this job's model
166
+ * Media type produced by this job's model. When neither the model catalog
167
+ * nor the SDK knows the model, this is the type the project was created with.
167
168
  */
168
169
  get type(): 'image' | 'video' | 'audio' | 'model';
169
170
  get enhancedImage(): {
@@ -181,6 +182,8 @@ declare class Job extends DataEntity<JobData, JobEventMap> {
181
182
  * Get the MIME content type for image downloads based on the project's output format.
182
183
  */
183
184
  private get _imageContentType();
185
+ /** Ask the API for this job's result URL on the endpoint its media type needs. */
186
+ private _mintResultUrl;
184
187
  /**
185
188
  * Get the result URL of the job. This method will make a request to the API to get signed URL.
186
189
  * IMPORTANT: URL expires after 30 minutes, so make sure to download the result as soon as possible.
@@ -253,16 +253,13 @@ class Job extends DataEntity_js_1.default {
253
253
  return this.isNSFW && !this.nsfwDetected;
254
254
  }
255
255
  /**
256
- * Media type produced by this job's model
256
+ * Media type produced by this job's model. When neither the model catalog
257
+ * nor the SDK knows the model, this is the type the project was created with.
257
258
  */
258
259
  get type() {
259
- if (this._api.isVideoModelId(this._project.params.modelId))
260
- return 'video';
261
- if (this._api.isAudioModelId(this._project.params.modelId))
262
- return 'audio';
263
- if (this._api.isModelArtifactModelId(this._project.params.modelId))
264
- return 'model';
265
- return 'image';
260
+ var _a;
261
+ const params = this._project.params;
262
+ return ((_a = this._api._resultMediaKind({ modelId: params.modelId, projectType: params.type })) !== null && _a !== void 0 ? _a : params.type);
266
263
  }
267
264
  get enhancedImage() {
268
265
  if (!this._enhancementProject) {
@@ -309,6 +306,16 @@ class Job extends DataEntity_js_1.default {
309
306
  return undefined;
310
307
  }
311
308
  }
309
+ /** Ask the API for this job's result URL on the endpoint its media type needs. */
310
+ _mintResultUrl() {
311
+ return this._api._mintResultUrl({
312
+ projectId: this.projectId,
313
+ jobId: this.id,
314
+ kind: this.type,
315
+ audioContentType: this._audioContentType,
316
+ imageContentType: this._imageContentType
317
+ });
318
+ }
312
319
  /**
313
320
  * Get the result URL of the job. This method will make a request to the API to get signed URL.
314
321
  * IMPORTANT: URL expires after 30 minutes, so make sure to download the result as soon as possible.
@@ -322,13 +329,7 @@ class Job extends DataEntity_js_1.default {
322
329
  if (this.data.status !== 'completed') {
323
330
  throw new Error('Job is not completed yet');
324
331
  }
325
- let url;
326
- if (this.type === 'video' || this.type === 'audio' || this.type === 'model') {
327
- url = yield this._api.mediaDownloadUrl(Object.assign(Object.assign({ jobId: this.projectId, id: this.id, type: 'complete' }, (this.type === 'audio' ? { contentType: this._audioContentType } : {})), (this.type === 'model' ? { contentType: 'model/gltf-binary' } : {})));
328
- }
329
- else {
330
- url = yield this._api.downloadUrl(Object.assign({ jobId: this.projectId, imageId: this.id, type: 'complete' }, (this._imageContentType ? { contentType: this._imageContentType } : {})));
331
- }
332
+ const url = yield this._mintResultUrl();
332
333
  this._update({ resultUrl: url });
333
334
  return url;
334
335
  });
@@ -424,12 +425,7 @@ class Job extends DataEntity_js_1.default {
424
425
  // A record claiming both resolves to withheld, the safe reading.
425
426
  !(data.triggeredNSFWFilter === true && data.nsfwDetected !== true)) {
426
427
  try {
427
- if (this.type === 'video' || this.type === 'audio' || this.type === 'model') {
428
- delta.resultUrl = yield this._api.mediaDownloadUrl(Object.assign(Object.assign({ jobId: this.projectId, id: this.id, type: 'complete' }, (this.type === 'audio' ? { contentType: this._audioContentType } : {})), (this.type === 'model' ? { contentType: 'model/gltf-binary' } : {})));
429
- }
430
- else {
431
- delta.resultUrl = yield this._api.downloadUrl(Object.assign({ jobId: this.projectId, imageId: this.id, type: 'complete' }, (this._imageContentType ? { contentType: this._imageContentType } : {})));
432
- }
428
+ delta.resultUrl = yield this._mintResultUrl();
433
429
  }
434
430
  catch (error) {
435
431
  this._logger.error(error);
@@ -1 +1 @@
1
- {"version":3,"file":"Job.js","sourceRoot":"","sources":["../../src/Projects/Job.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Job.js","sourceRoot":"","sources":["../../src/Projects/Job.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ import PersonalLoras from './PersonalLoras.js';
8
8
  import { ProjectApiEvents, type ProjectSyncReason, type ProjectSyncResult } from './types/events.js';
9
9
  import { RawProject } from './types/RawProject.js';
10
10
  import { SupernetType } from '../ApiClient/WebSocketClient/types.js';
11
+ import { type ResultMediaEvidence, type ResultMediaKind } from './utils/index.js';
11
12
  import { TokenType } from '../types/token.js';
12
13
  import { ModelOptions } from './types/ModelOptions.js';
13
14
  /**
@@ -104,6 +105,12 @@ declare class ProjectsApi extends ApiGroup<ProjectApiEvents> {
104
105
  * with no `jobIndex` to match on; see {@link ProjectsApi.findReassignedJob}.
105
106
  */
106
107
  private _awaitingReassignment;
108
+ /**
109
+ * Results (`<projectId>/<jobId>`) the image endpoint reported as media. Their
110
+ * URLs come from the media endpoint only; the image endpoint is not asked
111
+ * for them again.
112
+ */
113
+ private _mediaResultIds;
107
114
  /**
108
115
  * Recovery timings. Overridable so regression scripts can run the flow in
109
116
  * milliseconds instead of seconds.
@@ -144,6 +151,47 @@ declare class ProjectsApi extends ApiGroup<ProjectApiEvents> {
144
151
  * knowledge of, so a future `media: 'model'` family needs no SDK release.
145
152
  */
146
153
  isModelArtifactModelId(modelId: string): boolean;
154
+ /**
155
+ * The media kind the loaded catalog declares for a model, or `undefined`
156
+ * when the catalog is not loaded, does not list the model, or lists it with
157
+ * no kind this SDK knows. A missing kind is no evidence; it never reads as
158
+ * `image`.
159
+ */
160
+ private _catalogMediaKind;
161
+ /**
162
+ * What a finished job's result is, from the evidence this client holds,
163
+ * strongest first: the Pixal3D artifact rule, the catalog's media kind, the
164
+ * SDK's own model-id knowledge, what the result frame says it uploaded, and
165
+ * finally the type the project was created with. Returns `undefined` when
166
+ * none of these says anything, which is the case for a result that arrives
167
+ * for a project this client does not track and whose frame names no kind.
168
+ *
169
+ * @internal
170
+ */
171
+ _resultMediaKind(evidence: {
172
+ modelId?: string;
173
+ projectType?: string;
174
+ result?: ResultMediaEvidence;
175
+ }): ResultMediaKind | undefined;
176
+ /**
177
+ * Mint a signed download URL for a finished job's result from the endpoint
178
+ * its kind needs: images from `/v1/image/downloadUrl`, video, audio and 3D
179
+ * artifacts from `/v1/media/downloadUrl`.
180
+ *
181
+ * When the image endpoint answers that the result is media, this asks the
182
+ * media endpoint once and remembers the result, so the image endpoint is
183
+ * never asked for it again. Any other failure is thrown unchanged.
184
+ *
185
+ * @internal
186
+ */
187
+ _mintResultUrl(target: {
188
+ projectId: string;
189
+ jobId: string;
190
+ kind: ResultMediaKind;
191
+ audioContentType?: string;
192
+ imageContentType?: string;
193
+ }): Promise<string>;
194
+ private _rememberMediaResult;
147
195
  constructor(config: ApiConfig);
148
196
  /**
149
197
  * Internal timeout guard for `Project` instances. A transport gap is not a
@@ -78,6 +78,26 @@ const DEFAULT_LORA_CONSTRAINTS = {
78
78
  maxStrength: 100
79
79
  };
80
80
  const GARBAGE_COLLECT_TIMEOUT = 30000;
81
+ /**
82
+ * How many results the image endpoint reported as media are remembered, so a
83
+ * later URL request for one goes straight to the media endpoint. Bounded so a
84
+ * long-lived client cannot grow it without limit.
85
+ */
86
+ const MEDIA_RESULT_MEMORY = 1000;
87
+ /**
88
+ * The image download endpoint's answer for a result that is provably video or
89
+ * audio: 404 "This result is media, not an image; request it from
90
+ * /v1/media/downloadUrl". Any other image failure is not this and must not be
91
+ * retried on the media endpoint.
92
+ */
93
+ function isMediaResultRefusal(error) {
94
+ var _a, _b;
95
+ const candidate = error;
96
+ if (!candidate || candidate.status !== 404)
97
+ return false;
98
+ const message = (_b = (_a = candidate.payload) === null || _a === void 0 ? void 0 : _a.message) !== null && _b !== void 0 ? _b : candidate.message;
99
+ return typeof message === 'string' && message.includes('/v1/media/downloadUrl');
100
+ }
81
101
  const JOB_PROVENANCE_HASH_FIELDS = [
82
102
  'sha256',
83
103
  'sourceImageSha256',
@@ -314,12 +334,10 @@ class ProjectsApi extends ApiGroup_js_1.default {
314
334
  * falls back to model ID prefix check if models aren't loaded yet.
315
335
  */
316
336
  isVideoModelId(modelId) {
317
- var _a;
318
- const model = (_a = this._supportedModels.data) === null || _a === void 0 ? void 0 : _a.find((m) => m.id === modelId);
319
- if (model) {
320
- return model.media === 'video';
321
- }
322
- // Fallback to prefix check if models not loaded
337
+ const media = this._catalogMediaKind(modelId);
338
+ if (media)
339
+ return media === 'video';
340
+ // The catalog is not loaded, does not list the model, or gives it no kind.
323
341
  return (0, index_js_2.isVideoModel)(modelId);
324
342
  }
325
343
  /**
@@ -328,11 +346,9 @@ class ProjectsApi extends ApiGroup_js_1.default {
328
346
  * falls back to model ID prefix check if models aren't loaded yet.
329
347
  */
330
348
  isAudioModelId(modelId) {
331
- var _a;
332
- const model = (_a = this._supportedModels.data) === null || _a === void 0 ? void 0 : _a.find((m) => m.id === modelId);
333
- if (model) {
334
- return model.media === 'audio';
335
- }
349
+ const media = this._catalogMediaKind(modelId);
350
+ if (media)
351
+ return media === 'audio';
336
352
  return (0, index_js_2.isAudioModel)(modelId);
337
353
  }
338
354
  /**
@@ -349,11 +365,87 @@ class ProjectsApi extends ApiGroup_js_1.default {
349
365
  * knowledge of, so a future `media: 'model'` family needs no SDK release.
350
366
  */
351
367
  isModelArtifactModelId(modelId) {
352
- var _a;
353
368
  if ((0, index_js_2.isModelArtifactModel)(modelId))
354
369
  return true;
370
+ return this._catalogMediaKind(modelId) === 'model';
371
+ }
372
+ /**
373
+ * The media kind the loaded catalog declares for a model, or `undefined`
374
+ * when the catalog is not loaded, does not list the model, or lists it with
375
+ * no kind this SDK knows. A missing kind is no evidence; it never reads as
376
+ * `image`.
377
+ */
378
+ _catalogMediaKind(modelId) {
379
+ var _a;
355
380
  const model = (_a = this._supportedModels.data) === null || _a === void 0 ? void 0 : _a.find((m) => m.id === modelId);
356
- return model ? model.media === 'model' : false;
381
+ return (0, index_js_2.asResultMediaKind)(model === null || model === void 0 ? void 0 : model.media);
382
+ }
383
+ /**
384
+ * What a finished job's result is, from the evidence this client holds,
385
+ * strongest first: the Pixal3D artifact rule, the catalog's media kind, the
386
+ * SDK's own model-id knowledge, what the result frame says it uploaded, and
387
+ * finally the type the project was created with. Returns `undefined` when
388
+ * none of these says anything, which is the case for a result that arrives
389
+ * for a project this client does not track and whose frame names no kind.
390
+ *
391
+ * @internal
392
+ */
393
+ _resultMediaKind(evidence) {
394
+ const { modelId } = evidence;
395
+ if (modelId) {
396
+ if ((0, index_js_2.isModelArtifactModel)(modelId))
397
+ return 'model';
398
+ const catalog = this._catalogMediaKind(modelId);
399
+ if (catalog)
400
+ return catalog;
401
+ if ((0, index_js_2.isVideoModel)(modelId))
402
+ return 'video';
403
+ if ((0, index_js_2.isAudioModel)(modelId))
404
+ return 'audio';
405
+ }
406
+ if (evidence.result)
407
+ return evidence.result.kind;
408
+ return (0, index_js_2.asResultMediaKind)(evidence.projectType);
409
+ }
410
+ /**
411
+ * Mint a signed download URL for a finished job's result from the endpoint
412
+ * its kind needs: images from `/v1/image/downloadUrl`, video, audio and 3D
413
+ * artifacts from `/v1/media/downloadUrl`.
414
+ *
415
+ * When the image endpoint answers that the result is media, this asks the
416
+ * media endpoint once and remembers the result, so the image endpoint is
417
+ * never asked for it again. Any other failure is thrown unchanged.
418
+ *
419
+ * @internal
420
+ */
421
+ _mintResultUrl(target) {
422
+ return __awaiter(this, void 0, void 0, function* () {
423
+ const { projectId, jobId, kind } = target;
424
+ const key = `${projectId}/${jobId}`;
425
+ if (kind === 'image' && !this._mediaResultIds.has(key)) {
426
+ try {
427
+ return yield this.downloadUrl(Object.assign({ jobId: projectId, imageId: jobId, type: 'complete' }, (target.imageContentType ? { contentType: target.imageContentType } : {})));
428
+ }
429
+ catch (error) {
430
+ if (!isMediaResultRefusal(error))
431
+ throw error;
432
+ this._rememberMediaResult(key);
433
+ this.client.logger.debug(`Image endpoint reported result ${key} as media; requesting it from the media endpoint`);
434
+ }
435
+ }
436
+ return this.mediaDownloadUrl(Object.assign(Object.assign({ jobId: projectId, id: jobId, type: 'complete' }, (kind === 'audio' && target.audioContentType
437
+ ? { contentType: target.audioContentType }
438
+ : {})), (kind === 'model' ? { contentType: 'model/gltf-binary' } : {})));
439
+ });
440
+ }
441
+ _rememberMediaResult(key) {
442
+ this._mediaResultIds.delete(key);
443
+ this._mediaResultIds.add(key);
444
+ if (this._mediaResultIds.size > MEDIA_RESULT_MEMORY) {
445
+ const oldest = this._mediaResultIds.values().next().value;
446
+ if (oldest !== undefined)
447
+ this._mediaResultIds.delete(oldest);
448
+ }
357
449
  }
358
450
  constructor(config) {
359
451
  var _a, _b, _c;
@@ -394,6 +486,12 @@ class ProjectsApi extends ApiGroup_js_1.default {
394
486
  * with no `jobIndex` to match on; see {@link ProjectsApi.findReassignedJob}.
395
487
  */
396
488
  this._awaitingReassignment = new WeakSet();
489
+ /**
490
+ * Results (`<projectId>/<jobId>`) the image endpoint reported as media. Their
491
+ * URLs come from the media endpoint only; the image endpoint is not asked
492
+ * for them again.
493
+ */
494
+ this._mediaResultIds = new Set();
397
495
  /**
398
496
  * Recovery timings. Overridable so regression scripts can run the flow in
399
497
  * milliseconds instead of seconds.
@@ -630,24 +728,34 @@ class ProjectsApi extends ApiGroup_js_1.default {
630
728
  let downloadUrl = data.resultUrl || data.videoUrl || data.videoFile || null; // Use result URL from event if provided
631
729
  // If no resultUrl provided and NSFW check passes, generate download URL
632
730
  if (!downloadUrl && passNSFWCheck && !data.userCanceled) {
633
- // Use media endpoint for video/audio models, image endpoint for image models
634
- const isVideo = project && this.isVideoModelId(project.params.modelId);
635
- const isAudio = project && this.isAudioModelId(project.params.modelId);
636
- const isModelArtifact = project && this.isModelArtifactModelId(project.params.modelId);
637
- const isMedia = isVideo || isAudio || isModelArtifact;
638
- try {
639
- if (isMedia) {
640
- downloadUrl = yield this.mediaDownloadUrl(Object.assign(Object.assign({ jobId: data.jobID, id: data.imgID, type: 'complete' }, (isAudio && project ? { contentType: getAudioContentType(project) } : {})), (isModelArtifact ? { contentType: 'model/gltf-binary' } : {})));
731
+ const result = (0, index_js_2.resultMediaEvidence)(data);
732
+ const kind = this._resultMediaKind({
733
+ modelId: project === null || project === void 0 ? void 0 : project.params.modelId,
734
+ projectType: project === null || project === void 0 ? void 0 : project.params.type,
735
+ result
736
+ });
737
+ if (!kind) {
738
+ // A result for a project this client does not track (another tab's, or
739
+ // one recovery has not rebuilt yet) whose frame names no kind. Reading
740
+ // it as an image sent every such video and audio result to the image
741
+ // endpoint; the client that tracks the project mints its own URL.
742
+ this.client.logger.debug(`No media kind for result ${data.jobID}/${data.imgID}; not requesting a download URL`);
743
+ }
744
+ else {
745
+ try {
746
+ downloadUrl = yield this._mintResultUrl({
747
+ projectId: data.jobID,
748
+ jobId: data.imgID,
749
+ kind,
750
+ audioContentType: project ? getAudioContentType(project) : result === null || result === void 0 ? void 0 : result.contentType,
751
+ imageContentType: project ? getImageContentType(project) : undefined
752
+ });
641
753
  }
642
- else {
643
- const imageContentType = project ? getImageContentType(project) : undefined;
644
- downloadUrl = yield this.downloadUrl(Object.assign({ jobId: data.jobID, imageId: data.imgID, type: 'complete' }, (imageContentType ? { contentType: imageContentType } : {})));
754
+ catch (error) {
755
+ this.client.logger.error('Failed to generate download URL for job result');
756
+ this.client.logger.error(error);
645
757
  }
646
758
  }
647
- catch (error) {
648
- this.client.logger.error('Failed to generate download URL for job result');
649
- this.client.logger.error(error);
650
- }
651
759
  }
652
760
  assertSession();
653
761
  // Update the job directly with the result URL to prevent duplicate API calls