@sogni-ai/sogni-client 5.54.2 → 5.55.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.
- package/CHANGELOG.md +7 -0
- package/README.md +17 -0
- package/dist/ApiClient/WebSocketClient/BrowserWebSocketClient/index.js +10 -1
- package/dist/ApiClient/WebSocketClient/BrowserWebSocketClient/index.js.map +1 -1
- package/dist/ApiClient/WebSocketClient/eventSubscriptions.d.ts +2 -0
- package/dist/ApiClient/WebSocketClient/eventSubscriptions.js +18 -0
- package/dist/ApiClient/WebSocketClient/eventSubscriptions.js.map +1 -1
- package/dist/ApiClient/WebSocketClient/events.d.ts +8 -0
- package/dist/ApiClient/WebSocketClient/index.d.ts +5 -0
- package/dist/ApiClient/WebSocketClient/index.js +18 -2
- package/dist/ApiClient/WebSocketClient/index.js.map +1 -1
- package/dist/Projects/Job.d.ts +4 -0
- package/dist/Projects/Job.js +9 -0
- package/dist/Projects/Job.js.map +1 -1
- package/dist/Projects/Project.d.ts +17 -4
- package/dist/Projects/Project.js +66 -3
- package/dist/Projects/Project.js.map +1 -1
- package/dist/Projects/index.d.ts +5 -0
- package/dist/Projects/index.js +90 -17
- package/dist/Projects/index.js.map +1 -1
- package/dist/Projects/types/RawProject.d.ts +5 -0
- package/dist/Projects/types/WaitingReason.d.ts +20 -0
- package/dist/Projects/types/WaitingReason.js +62 -0
- package/dist/Projects/types/WaitingReason.js.map +1 -0
- package/dist/Projects/types/events.d.ts +10 -2
- package/dist/index.d.ts +4 -0
- package/dist/index.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist-esm/ApiClient/WebSocketClient/BrowserWebSocketClient/index.js +10 -1
- package/dist-esm/ApiClient/WebSocketClient/BrowserWebSocketClient/index.js.map +1 -1
- package/dist-esm/ApiClient/WebSocketClient/eventSubscriptions.js +17 -0
- package/dist-esm/ApiClient/WebSocketClient/eventSubscriptions.js.map +1 -1
- package/dist-esm/ApiClient/WebSocketClient/index.js +19 -3
- package/dist-esm/ApiClient/WebSocketClient/index.js.map +1 -1
- package/dist-esm/Projects/Job.js +9 -0
- package/dist-esm/Projects/Job.js.map +1 -1
- package/dist-esm/Projects/Project.js +66 -3
- package/dist-esm/Projects/Project.js.map +1 -1
- package/dist-esm/Projects/index.js +90 -17
- package/dist-esm/Projects/index.js.map +1 -1
- package/dist-esm/Projects/types/WaitingReason.js +58 -0
- package/dist-esm/Projects/types/WaitingReason.js.map +1 -0
- package/dist-esm/index.js.map +1 -1
- package/dist-esm/version.js +1 -1
- package/llms-full.txt +12 -0
- package/llms.txt +2 -0
- package/package.json +2 -1
- package/src/ApiClient/WebSocketClient/BrowserWebSocketClient/index.ts +9 -1
- package/src/ApiClient/WebSocketClient/eventSubscriptions.ts +18 -0
- package/src/ApiClient/WebSocketClient/events.ts +8 -0
- package/src/ApiClient/WebSocketClient/index.ts +34 -3
- package/src/Projects/Job.ts +10 -0
- package/src/Projects/Project.ts +85 -4
- package/src/Projects/index.ts +106 -16
- package/src/Projects/types/RawProject.ts +5 -0
- package/src/Projects/types/WaitingReason.ts +91 -0
- package/src/Projects/types/events.ts +11 -2
- package/src/index.ts +4 -0
- package/src/version.ts +1 -1
package/dist/Projects/Project.js
CHANGED
|
@@ -17,6 +17,7 @@ const DataEntity_js_1 = __importDefault(require("../lib/DataEntity.js"));
|
|
|
17
17
|
const index_js_1 = require("./types/index.js");
|
|
18
18
|
const cloneDeep_js_1 = __importDefault(require("lodash/cloneDeep.js"));
|
|
19
19
|
const getUUID_js_1 = __importDefault(require("../lib/getUUID.js"));
|
|
20
|
+
const WaitingReason_js_1 = require("./types/WaitingReason.js");
|
|
20
21
|
// If project is not finished and had no updates for 2 minutes, force refresh
|
|
21
22
|
const PROJECT_TIMEOUT = 2 * 60 * 1000;
|
|
22
23
|
const MAX_FAILED_SYNC_ATTEMPTS = 3;
|
|
@@ -47,8 +48,12 @@ class Project extends DataEntity_js_1.default {
|
|
|
47
48
|
startedAt: new Date(),
|
|
48
49
|
params: data,
|
|
49
50
|
queuePosition: -1,
|
|
51
|
+
waitingReason: null,
|
|
52
|
+
jobWaitingReasons: [],
|
|
50
53
|
status: 'pending'
|
|
51
54
|
});
|
|
55
|
+
/** Increments when live activity supersedes an in-flight queue snapshot. @internal */
|
|
56
|
+
this._queueRevision = 0;
|
|
52
57
|
this._jobs = [];
|
|
53
58
|
this._lastEmitedProgress = -1;
|
|
54
59
|
this._timeout = null;
|
|
@@ -131,13 +136,69 @@ class Project extends DataEntity_js_1.default {
|
|
|
131
136
|
return this.data.estimatedStartAt;
|
|
132
137
|
}
|
|
133
138
|
/**
|
|
134
|
-
*
|
|
135
|
-
*
|
|
136
|
-
* worker to come online rather than for the queue to drain.
|
|
139
|
+
* Worker availability estimate, excluding account limits. Prefer
|
|
140
|
+
* {@link Project.waitingReason} when explaining why results are queued.
|
|
137
141
|
*/
|
|
138
142
|
get queueStatus() {
|
|
139
143
|
return this.data.queueStatus;
|
|
140
144
|
}
|
|
145
|
+
/** Current explanation for remaining queued results, including a partially running batch. */
|
|
146
|
+
get waitingReason() {
|
|
147
|
+
return this.data.waitingReason;
|
|
148
|
+
}
|
|
149
|
+
/** Complete current queue details by zero-based result index; does not create Jobs. */
|
|
150
|
+
get jobWaitingReasons() {
|
|
151
|
+
return this.data.jobWaitingReasons || [];
|
|
152
|
+
}
|
|
153
|
+
/** @internal */
|
|
154
|
+
_setQueueState(rawReason, rawJobs, expectedRevision) {
|
|
155
|
+
var _a, _b, _c, _d;
|
|
156
|
+
if (expectedRevision !== undefined && expectedRevision !== this._queueRevision)
|
|
157
|
+
return false;
|
|
158
|
+
let waitingReason = this.finished ? null : (0, WaitingReason_js_1.normalizeWaitingReason)(rawReason);
|
|
159
|
+
const jobWaitingReasons = this.finished
|
|
160
|
+
? []
|
|
161
|
+
: (0, WaitingReason_js_1.normalizeJobWaitingReasons)(rawJobs, this.params.numberOfMedia).filter((row) => {
|
|
162
|
+
const known = this.jobs.find((job) => (row.imgID && row.imgID.toUpperCase() === job.id.toUpperCase()) ||
|
|
163
|
+
job.jobIndex === row.jobIndex);
|
|
164
|
+
return !known || known.status === 'pending';
|
|
165
|
+
});
|
|
166
|
+
if (Array.isArray(rawJobs) && rawJobs.length > 0)
|
|
167
|
+
waitingReason = ((_a = jobWaitingReasons[0]) === null || _a === void 0 ? void 0 : _a.waitingReason) || null;
|
|
168
|
+
const changed = JSON.stringify([(_b = this.waitingReason) !== null && _b !== void 0 ? _b : null, this.jobWaitingReasons]) !==
|
|
169
|
+
JSON.stringify([waitingReason, jobWaitingReasons]);
|
|
170
|
+
for (const job of this.jobs) {
|
|
171
|
+
const next = job.status !== 'pending'
|
|
172
|
+
? null
|
|
173
|
+
: ((_c = jobWaitingReasons.find((row) => (row.imgID && row.imgID.toUpperCase() === job.id.toUpperCase()) ||
|
|
174
|
+
job.jobIndex === row.jobIndex)) === null || _c === void 0 ? void 0 : _c.waitingReason) || null;
|
|
175
|
+
if (JSON.stringify((_d = job.waitingReason) !== null && _d !== void 0 ? _d : null) !== JSON.stringify(next))
|
|
176
|
+
job._update({ waitingReason: next });
|
|
177
|
+
}
|
|
178
|
+
if (changed) {
|
|
179
|
+
this._queueRevision += 1;
|
|
180
|
+
this._update({ waitingReason, jobWaitingReasons });
|
|
181
|
+
this._api._emitQueueChanged(this);
|
|
182
|
+
}
|
|
183
|
+
return changed;
|
|
184
|
+
}
|
|
185
|
+
/** @internal */
|
|
186
|
+
_update(delta) {
|
|
187
|
+
const clearingQueue = Boolean(delta.status &&
|
|
188
|
+
['completed', 'failed', 'canceled'].includes(delta.status) &&
|
|
189
|
+
(this.waitingReason || this.jobWaitingReasons.length));
|
|
190
|
+
if (delta.status && ['completed', 'failed', 'canceled'].includes(delta.status)) {
|
|
191
|
+
this._queueRevision += 1;
|
|
192
|
+
delta = Object.assign(Object.assign({}, delta), { waitingReason: null, jobWaitingReasons: [] });
|
|
193
|
+
this.jobs.forEach((job) => {
|
|
194
|
+
if (job.waitingReason)
|
|
195
|
+
job._update({ waitingReason: null });
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
super._update(delta);
|
|
199
|
+
if (clearingQueue)
|
|
200
|
+
this._api._emitQueueChanged(this);
|
|
201
|
+
}
|
|
141
202
|
/**
|
|
142
203
|
* List of jobs in the project. Note that jobs will be added to this list as
|
|
143
204
|
* workers start processing them. So initially this list will be empty.
|
|
@@ -394,7 +455,9 @@ class Project extends DataEntity_js_1.default {
|
|
|
394
455
|
*/
|
|
395
456
|
_syncToServer() {
|
|
396
457
|
return __awaiter(this, void 0, void 0, function* () {
|
|
458
|
+
const queueRevision = this._queueRevision;
|
|
397
459
|
const data = yield this._api.get(this.id);
|
|
460
|
+
this._setQueueState(data.waitingReason, data.jobWaitingReasons, queueRevision);
|
|
398
461
|
const jobData = data.completedWorkerJobs.reduce((acc, job) => {
|
|
399
462
|
const jobId = job.imgID || (0, getUUID_js_1.default)();
|
|
400
463
|
acc[jobId] = job;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Project.js","sourceRoot":"","sources":["../../src/Projects/Project.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Project.js","sourceRoot":"","sources":["../../src/Projects/Project.ts"],"names":[],"mappings":"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"}
|
package/dist/Projects/index.d.ts
CHANGED
|
@@ -221,6 +221,10 @@ declare class ProjectsApi extends ApiGroup<ProjectApiEvents> {
|
|
|
221
221
|
* included. The next processing transition arms a fresh deadline.
|
|
222
222
|
*/
|
|
223
223
|
private static resetJobForNewAttempt;
|
|
224
|
+
private handleProjectQueue;
|
|
225
|
+
/** @internal */
|
|
226
|
+
_emitQueueChanged(project: Project): void;
|
|
227
|
+
private clearJobQueueState;
|
|
224
228
|
private handleProjectEvent;
|
|
225
229
|
private handleJobEvent;
|
|
226
230
|
private handleTransportLost;
|
|
@@ -305,6 +309,7 @@ declare class ProjectsApi extends ApiGroup<ProjectApiEvents> {
|
|
|
305
309
|
*/
|
|
306
310
|
private _lookupUnlistedProject;
|
|
307
311
|
/** Serialize syncs so two snapshots never interleave their replays. */
|
|
312
|
+
private captureQueueRevisions;
|
|
308
313
|
private _queueSync;
|
|
309
314
|
private _reconcile;
|
|
310
315
|
private _rehydrateProject;
|
package/dist/Projects/index.js
CHANGED
|
@@ -417,6 +417,7 @@ class ProjectsApi extends ApiGroup_js_1.default {
|
|
|
417
417
|
this.client.socket.on('changeNetwork', this.handleChangeNetwork.bind(this));
|
|
418
418
|
this.client.socket.on('swarmModels', this.handleSwarmModels.bind(this));
|
|
419
419
|
this.client.socket.on('jobState', this.handleJobState.bind(this));
|
|
420
|
+
this.client.socket.on('projectQueue', this.handleProjectQueue.bind(this));
|
|
420
421
|
this.client.socket.on('jobProgress', this.handleJobProgress.bind(this));
|
|
421
422
|
this.client.socket.on('jobETA', this.handleJobETA.bind(this));
|
|
422
423
|
this.client.socket.on('jobError', this.handleJobError.bind(this));
|
|
@@ -614,6 +615,8 @@ class ProjectsApi extends ApiGroup_js_1.default {
|
|
|
614
615
|
return __awaiter(this, void 0, void 0, function* () {
|
|
615
616
|
const assertSession = (0, requestSession_js_1.captureRequestSession)(this.client.auth);
|
|
616
617
|
const project = this.projects.find((p) => p.id === data.jobID);
|
|
618
|
+
if (project)
|
|
619
|
+
this.clearJobQueueState(project, data.imgID);
|
|
617
620
|
// `triggeredNSFWFilter` means the server withheld the media, so there is
|
|
618
621
|
// nothing to mint a URL for. `nsfwDetected` is the opposite case: a signal
|
|
619
622
|
// fired on a render the artist asked for with the filter off, the media
|
|
@@ -741,6 +744,7 @@ class ProjectsApi extends ApiGroup_js_1.default {
|
|
|
741
744
|
const job = (_a = (data.imgID ? project.job(data.imgID) : undefined)) !== null && _a !== void 0 ? _a : (jobIndex !== undefined ? project.jobs.find((j) => j.jobIndex === jobIndex) : undefined);
|
|
742
745
|
if (!job || job.finished)
|
|
743
746
|
return;
|
|
747
|
+
this.clearJobQueueState(project, job.id, jobIndex !== null && jobIndex !== void 0 ? jobIndex : job.jobIndex);
|
|
744
748
|
this._awaitingReassignment.add(job);
|
|
745
749
|
ProjectsApi.resetJobForNewAttempt(job, { status: 'pending', jobIndex });
|
|
746
750
|
}
|
|
@@ -793,6 +797,35 @@ class ProjectsApi extends ApiGroup_js_1.default {
|
|
|
793
797
|
job._stopRuntimeTimeout();
|
|
794
798
|
job._update(Object.assign(Object.assign(Object.assign({}, (status ? { status } : {})), (jobIndex !== undefined ? { jobIndex } : {})), { step: 0, workerName: undefined, previewUrl: undefined, externalProgress: undefined, eta: undefined, etaStartedAt: undefined, etaSeconds: undefined, etaRange: undefined }));
|
|
795
799
|
}
|
|
800
|
+
handleProjectQueue(data) {
|
|
801
|
+
const project = this.projects.find((item) => item.id === (data === null || data === void 0 ? void 0 : data.jobID));
|
|
802
|
+
if (!project || project.finished)
|
|
803
|
+
return;
|
|
804
|
+
project._queueRevision += 1;
|
|
805
|
+
project._setQueueState(data.waitingReason, data.jobWaitingReasons);
|
|
806
|
+
}
|
|
807
|
+
/** @internal */
|
|
808
|
+
_emitQueueChanged(project) {
|
|
809
|
+
var _a;
|
|
810
|
+
this.emit('queueChanged', {
|
|
811
|
+
projectId: project.id,
|
|
812
|
+
waitingReason: (_a = project.waitingReason) !== null && _a !== void 0 ? _a : null,
|
|
813
|
+
jobWaitingReasons: project.jobWaitingReasons
|
|
814
|
+
});
|
|
815
|
+
}
|
|
816
|
+
clearJobQueueState(project, jobId, jobIndex) {
|
|
817
|
+
var _a, _b, _c, _d;
|
|
818
|
+
if (jobIndex === void 0) { jobIndex = (_a = project.job(jobId)) === null || _a === void 0 ? void 0 : _a.jobIndex; }
|
|
819
|
+
project._queueRevision += 1;
|
|
820
|
+
const remaining = project.jobWaitingReasons.filter((row) => {
|
|
821
|
+
var _a;
|
|
822
|
+
return ((_a = row.imgID) === null || _a === void 0 ? void 0 : _a.toUpperCase()) !== jobId.toUpperCase() &&
|
|
823
|
+
(jobIndex === undefined || row.jobIndex !== jobIndex);
|
|
824
|
+
});
|
|
825
|
+
if (remaining.length !== project.jobWaitingReasons.length ||
|
|
826
|
+
((_b = project.waitingReason) === null || _b === void 0 ? void 0 : _b.reason) === 'payment_pending')
|
|
827
|
+
project._setQueueState((_d = (_c = remaining[0]) === null || _c === void 0 ? void 0 : _c.waitingReason) !== null && _d !== void 0 ? _d : null, remaining);
|
|
828
|
+
}
|
|
796
829
|
handleProjectEvent(event) {
|
|
797
830
|
let project = this.projects.find((p) => p.id === event.projectId);
|
|
798
831
|
if (!project) {
|
|
@@ -878,6 +911,8 @@ class ProjectsApi extends ApiGroup_js_1.default {
|
|
|
878
911
|
});
|
|
879
912
|
}
|
|
880
913
|
// Any job-level event means a worker has taken this project, so the queue wait is over.
|
|
914
|
+
const jobIndex = 'jobIndex' in event ? event.jobIndex : job.jobIndex;
|
|
915
|
+
this.clearJobQueueState(project, event.jobId, jobIndex);
|
|
881
916
|
// Leaving a stale estimate on the project would keep a "starts in ~2 min" label on
|
|
882
917
|
// screen next to a job that is already rendering.
|
|
883
918
|
if (project.estimatedStartAt !== undefined || project.queueStatus !== undefined) {
|
|
@@ -993,8 +1028,11 @@ class ProjectsApi extends ApiGroup_js_1.default {
|
|
|
993
1028
|
// hands the project back on reconnect (same app-id), so keep the tracked
|
|
994
1029
|
// projects alive and quiet until then.
|
|
995
1030
|
this.projects.forEach((p) => {
|
|
996
|
-
if (!p.finished)
|
|
1031
|
+
if (!p.finished) {
|
|
1032
|
+
p._queueRevision += 1;
|
|
1033
|
+
p._setQueueState(null, []);
|
|
997
1034
|
p._keepAlive();
|
|
1035
|
+
}
|
|
998
1036
|
});
|
|
999
1037
|
}
|
|
1000
1038
|
handleServerDisconnected() {
|
|
@@ -1169,12 +1207,13 @@ class ProjectsApi extends ApiGroup_js_1.default {
|
|
|
1169
1207
|
return __awaiter(this, arguments, void 0, function* (reason = 'manual') {
|
|
1170
1208
|
const assertSession = (0, requestSession_js_1.captureRequestSession)(this.client.auth);
|
|
1171
1209
|
const requestedAt = Date.now();
|
|
1210
|
+
const queueRevisions = this.captureQueueRevisions();
|
|
1172
1211
|
const body = yield this.client.socket.get('/api/v1/artist/projects/sync', { appId: this.client.appId });
|
|
1173
1212
|
assertSession();
|
|
1174
1213
|
const snapshot = Object.assign({ activeProjects: Array.isArray(body === null || body === void 0 ? void 0 : body.activeProjects) ? body.activeProjects : [], unclaimedCompletedProjects: Array.isArray(body === null || body === void 0 ? void 0 : body.unclaimedCompletedProjects)
|
|
1175
1214
|
? body.unclaimedCompletedProjects
|
|
1176
1215
|
: [] }, (typeof (body === null || body === void 0 ? void 0 : body.serverTime) === 'number' ? { serverTime: body.serverTime } : {}));
|
|
1177
|
-
return this._queueSync(snapshot, reason, requestedAt);
|
|
1216
|
+
return this._queueSync(snapshot, reason, requestedAt, queueRevisions);
|
|
1178
1217
|
});
|
|
1179
1218
|
}
|
|
1180
1219
|
/**
|
|
@@ -1366,18 +1405,22 @@ class ProjectsApi extends ApiGroup_js_1.default {
|
|
|
1366
1405
|
});
|
|
1367
1406
|
}
|
|
1368
1407
|
/** Serialize syncs so two snapshots never interleave their replays. */
|
|
1369
|
-
|
|
1408
|
+
captureQueueRevisions() {
|
|
1409
|
+
return new Map(this.projects.map((project) => [project.id, project._queueRevision]));
|
|
1410
|
+
}
|
|
1411
|
+
_queueSync(snapshot, reason, requestedAt, queueRevisions = this.captureQueueRevisions()) {
|
|
1370
1412
|
const assertSession = (0, requestSession_js_1.captureRequestSession)(this.client.auth);
|
|
1371
1413
|
const run = () => {
|
|
1372
1414
|
assertSession();
|
|
1373
|
-
return this._reconcile(snapshot, reason, requestedAt, assertSession);
|
|
1415
|
+
return this._reconcile(snapshot, reason, requestedAt, assertSession, queueRevisions);
|
|
1374
1416
|
};
|
|
1375
1417
|
const next = this._syncChain.then(run, run);
|
|
1376
1418
|
this._syncChain = next.catch(() => undefined);
|
|
1377
1419
|
return next;
|
|
1378
1420
|
}
|
|
1379
1421
|
_reconcile(snapshot_1, reason_1, requestedAt_1) {
|
|
1380
|
-
return __awaiter(this, arguments, void 0, function* (snapshot, reason, requestedAt, assertSession = (0, requestSession_js_1.captureRequestSession)(this.client.auth)) {
|
|
1422
|
+
return __awaiter(this, arguments, void 0, function* (snapshot, reason, requestedAt, assertSession = (0, requestSession_js_1.captureRequestSession)(this.client.auth), queueRevisions = this.captureQueueRevisions()) {
|
|
1423
|
+
var _a, _b;
|
|
1381
1424
|
const result = {
|
|
1382
1425
|
reason,
|
|
1383
1426
|
snapshot,
|
|
@@ -1398,7 +1441,7 @@ class ProjectsApi extends ApiGroup_js_1.default {
|
|
|
1398
1441
|
if (tracked) {
|
|
1399
1442
|
if (tracked.finished)
|
|
1400
1443
|
continue;
|
|
1401
|
-
yield this._replayRecoveredProject(tracked, recovered);
|
|
1444
|
+
yield this._replayRecoveredProject(tracked, recovered, (_a = queueRevisions.get(tracked.id)) !== null && _a !== void 0 ? _a : 0);
|
|
1402
1445
|
assertSession();
|
|
1403
1446
|
result.active.push(recovered.id);
|
|
1404
1447
|
}
|
|
@@ -1418,7 +1461,7 @@ class ProjectsApi extends ApiGroup_js_1.default {
|
|
|
1418
1461
|
if (tracked) {
|
|
1419
1462
|
if (tracked.finished)
|
|
1420
1463
|
continue;
|
|
1421
|
-
yield this._replayRecoveredProject(tracked, recovered);
|
|
1464
|
+
yield this._replayRecoveredProject(tracked, recovered, (_b = queueRevisions.get(tracked.id)) !== null && _b !== void 0 ? _b : 0);
|
|
1422
1465
|
assertSession();
|
|
1423
1466
|
result.completed.push(recovered.id);
|
|
1424
1467
|
}
|
|
@@ -1494,8 +1537,8 @@ class ProjectsApi extends ApiGroup_js_1.default {
|
|
|
1494
1537
|
recovered: true
|
|
1495
1538
|
});
|
|
1496
1539
|
}
|
|
1497
|
-
_replayRecoveredProject(project, recovered) {
|
|
1498
|
-
return this._replayRawProject(project, recovered, true);
|
|
1540
|
+
_replayRecoveredProject(project, recovered, queueRevision = project._queueRevision) {
|
|
1541
|
+
return this._replayRawProject(project, recovered, true, queueRevision);
|
|
1499
1542
|
}
|
|
1500
1543
|
/**
|
|
1501
1544
|
* Bring a tracked project up to date by replaying the socket frames it
|
|
@@ -1505,11 +1548,14 @@ class ProjectsApi extends ApiGroup_js_1.default {
|
|
|
1505
1548
|
* connection would have delivered. Nothing is ever downgraded: a job or
|
|
1506
1549
|
* project already finished locally ignores an older in-flight state.
|
|
1507
1550
|
*/
|
|
1508
|
-
_replayRawProject(
|
|
1509
|
-
return __awaiter(this,
|
|
1510
|
-
var _a, _b;
|
|
1551
|
+
_replayRawProject(project_1, raw_1, includeInFlightJobs_1) {
|
|
1552
|
+
return __awaiter(this, arguments, void 0, function* (project, raw, includeInFlightJobs, queueRevision = project._queueRevision) {
|
|
1553
|
+
var _a, _b, _c, _d;
|
|
1511
1554
|
const assertSession = (0, requestSession_js_1.captureRequestSession)(this.client.auth);
|
|
1512
1555
|
const projectId = project.id;
|
|
1556
|
+
let replayInFlight = project._queueRevision === queueRevision;
|
|
1557
|
+
project._setQueueState(raw.waitingReason, raw.jobWaitingReasons, queueRevision);
|
|
1558
|
+
let replayRevision = project._queueRevision;
|
|
1513
1559
|
const stepCount = typeof raw.stepCount === 'number' ? raw.stepCount : project.params.steps;
|
|
1514
1560
|
const jobs = [
|
|
1515
1561
|
...(includeInFlightJobs ? raw.workerJobs || [] : []),
|
|
@@ -1517,6 +1563,10 @@ class ProjectsApi extends ApiGroup_js_1.default {
|
|
|
1517
1563
|
];
|
|
1518
1564
|
const replayedJobIds = new Set();
|
|
1519
1565
|
for (const job of jobs) {
|
|
1566
|
+
// A live assignment, retry or queue update wins over an older snapshot,
|
|
1567
|
+
// including one received while an earlier recovered result was downloading.
|
|
1568
|
+
if (project._queueRevision !== replayRevision)
|
|
1569
|
+
replayInFlight = false;
|
|
1520
1570
|
const imgID = job.imgID || job.id;
|
|
1521
1571
|
if (!imgID || replayedJobIds.has(imgID))
|
|
1522
1572
|
continue;
|
|
@@ -1525,10 +1575,12 @@ class ProjectsApi extends ApiGroup_js_1.default {
|
|
|
1525
1575
|
const status = job.status;
|
|
1526
1576
|
const worker = job.worker;
|
|
1527
1577
|
const workerName = (worker === null || worker === void 0 ? void 0 : worker.username) || (worker === null || worker === void 0 ? void 0 : worker.name) || '';
|
|
1578
|
+
const jobIndex = typeof job.jobIndex === 'number' ? job.jobIndex : undefined;
|
|
1528
1579
|
if (status === 'jobCompleted') {
|
|
1529
1580
|
if (local === null || local === void 0 ? void 0 : local.finished)
|
|
1530
1581
|
continue;
|
|
1531
|
-
|
|
1582
|
+
this.clearJobQueueState(project, imgID, jobIndex);
|
|
1583
|
+
const result = this.handleJobResult(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ jobID: projectId, imgID }, (typeof job.performedSteps === 'number'
|
|
1532
1584
|
? { performedStepCount: job.performedSteps }
|
|
1533
1585
|
: {})), (typeof job.seedUsed === 'number' ? { lastSeed: String(job.seedUsed) } : {})), { triggeredNSFWFilter: Boolean(job.triggeredNSFWFilter), userCanceled: job.reason === 'artistCanceled', lastFrameUrl: (typeof job.lastFrameUrl === 'string'
|
|
1534
1586
|
? job.lastFrameUrl
|
|
@@ -1539,12 +1591,17 @@ class ProjectsApi extends ApiGroup_js_1.default {
|
|
|
1539
1591
|
: {})), (job.result && typeof job.result === 'object'
|
|
1540
1592
|
? jobProvenanceFromResult(job.result)
|
|
1541
1593
|
: {})));
|
|
1594
|
+
replayRevision = project._queueRevision;
|
|
1595
|
+
yield result;
|
|
1542
1596
|
assertSession();
|
|
1597
|
+
if (jobIndex !== undefined)
|
|
1598
|
+
(_c = project.job(imgID)) === null || _c === void 0 ? void 0 : _c._update({ jobIndex });
|
|
1543
1599
|
continue;
|
|
1544
1600
|
}
|
|
1545
1601
|
if (status === 'jobError') {
|
|
1546
1602
|
if (local === null || local === void 0 ? void 0 : local.finished)
|
|
1547
1603
|
continue;
|
|
1604
|
+
this.clearJobQueueState(project, imgID, jobIndex);
|
|
1548
1605
|
const reason = typeof job.reason === 'string' && job.reason ? job.reason : 'genfailure';
|
|
1549
1606
|
this.handleJobError({
|
|
1550
1607
|
jobID: projectId,
|
|
@@ -1553,18 +1610,34 @@ class ProjectsApi extends ApiGroup_js_1.default {
|
|
|
1553
1610
|
error: reason,
|
|
1554
1611
|
error_message: reason === 'sensitiveContent' ? 'Sensitive content detected.' : reason
|
|
1555
1612
|
});
|
|
1613
|
+
if (jobIndex !== undefined)
|
|
1614
|
+
(_d = project.job(imgID)) === null || _d === void 0 ? void 0 : _d._update({ jobIndex });
|
|
1615
|
+
replayRevision = project._queueRevision;
|
|
1556
1616
|
continue;
|
|
1557
1617
|
}
|
|
1558
|
-
if (!includeInFlightJobs ||
|
|
1618
|
+
if (!includeInFlightJobs ||
|
|
1619
|
+
!replayInFlight ||
|
|
1620
|
+
(0, recovery_js_1.isRecoveredJobFinished)(status) ||
|
|
1621
|
+
(local === null || local === void 0 ? void 0 : local.finished))
|
|
1559
1622
|
continue;
|
|
1560
1623
|
if (status === 'assigned' || status === 'initiatingModel') {
|
|
1561
|
-
this.handleJobState({
|
|
1624
|
+
this.handleJobState({
|
|
1625
|
+
type: 'initiatingModel',
|
|
1626
|
+
jobID: projectId,
|
|
1627
|
+
imgID,
|
|
1628
|
+
workerName,
|
|
1629
|
+
jobIndex
|
|
1630
|
+
});
|
|
1631
|
+
replayRevision = project._queueRevision;
|
|
1562
1632
|
}
|
|
1563
1633
|
else if (status === 'jobStarted' || status === 'jobProgress') {
|
|
1564
|
-
this.handleJobState({ type: 'jobStarted', jobID: projectId, imgID, workerName });
|
|
1634
|
+
this.handleJobState({ type: 'jobStarted', jobID: projectId, imgID, workerName, jobIndex });
|
|
1635
|
+
replayRevision = project._queueRevision;
|
|
1565
1636
|
const performedSteps = typeof job.performedSteps === 'number' ? job.performedSteps : 0;
|
|
1566
1637
|
if (performedSteps > 0 || typeof stepCount === 'number') {
|
|
1567
|
-
|
|
1638
|
+
const progress = this.handleJobProgress(Object.assign({ jobID: projectId, imgID, step: performedSteps }, (typeof stepCount === 'number' ? { stepCount } : {})));
|
|
1639
|
+
replayRevision = project._queueRevision;
|
|
1640
|
+
yield progress;
|
|
1568
1641
|
assertSession();
|
|
1569
1642
|
}
|
|
1570
1643
|
}
|