comfyui-node 1.6.5 → 1.6.7

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 (56) hide show
  1. package/LICENSE +20 -20
  2. package/README.md +342 -341
  3. package/dist/.tsbuildinfo +1 -1
  4. package/dist/multipool/client-registry.d.ts +3 -3
  5. package/dist/multipool/client-registry.d.ts.map +1 -1
  6. package/dist/multipool/client-registry.js +9 -9
  7. package/dist/multipool/client-registry.js.map +1 -1
  8. package/dist/multipool/helpers.d.ts +4 -4
  9. package/dist/multipool/index.d.ts +2 -2
  10. package/dist/multipool/interfaces.d.ts +0 -2
  11. package/dist/multipool/interfaces.d.ts.map +1 -1
  12. package/dist/multipool/job-queue-processor.d.ts +3 -3
  13. package/dist/multipool/job-queue-processor.d.ts.map +1 -1
  14. package/dist/multipool/job-queue-processor.js +28 -27
  15. package/dist/multipool/job-queue-processor.js.map +1 -1
  16. package/dist/multipool/logger.d.ts +29 -29
  17. package/dist/multipool/logger.js +74 -74
  18. package/dist/multipool/multi-workflow-pool.d.ts +0 -1
  19. package/dist/multipool/multi-workflow-pool.d.ts.map +1 -1
  20. package/dist/multipool/multi-workflow-pool.js +36 -37
  21. package/dist/multipool/multi-workflow-pool.js.map +1 -1
  22. package/dist/multipool/tests/client-registry-api-demo.js +1 -3
  23. package/dist/multipool/tests/client-registry-api-demo.js.map +1 -1
  24. package/dist/multipool/tests/client-registry.spec.js +6 -7
  25. package/dist/multipool/tests/client-registry.spec.js.map +1 -1
  26. package/dist/multipool/tests/error-classification-tests.d.ts +1 -1
  27. package/dist/multipool/tests/event-forwarding-demo.js +1 -3
  28. package/dist/multipool/tests/event-forwarding-demo.js.map +1 -1
  29. package/dist/multipool/tests/job-queue-processor.spec.js +7 -7
  30. package/dist/multipool/tests/job-queue-processor.spec.js.map +1 -1
  31. package/dist/multipool/tests/job-state-registry.d.ts +16 -16
  32. package/dist/multipool/tests/job-state-registry.js +23 -23
  33. package/dist/multipool/tests/job-state-registry.spec.js +5 -4
  34. package/dist/multipool/tests/job-state-registry.spec.js.map +1 -1
  35. package/dist/multipool/tests/multipool-basic.d.ts +11 -11
  36. package/dist/multipool/tests/profiling-demo.d.ts +6 -6
  37. package/dist/multipool/tests/profiling-demo.js +1 -2
  38. package/dist/multipool/tests/profiling-demo.js.map +1 -1
  39. package/dist/multipool/tests/prompt-generator.d.ts +9 -9
  40. package/dist/multipool/tests/prompt-generator.js +25 -25
  41. package/dist/multipool/tests/test-helpers.d.ts +3 -3
  42. package/dist/multipool/tests/test-helpers.js +9 -9
  43. package/dist/multipool/tests/two-stage-edit-simulation.d.ts +31 -31
  44. package/dist/multipool/tests/two-stage-edit-simulation.d.ts.map +1 -1
  45. package/dist/multipool/tests/two-stage-edit-simulation.js +1 -2
  46. package/dist/multipool/tests/two-stage-edit-simulation.js.map +1 -1
  47. package/dist/pool/SmartPool.d.ts +143 -143
  48. package/dist/pool/SmartPool.js +676 -676
  49. package/dist/pool/SmartPoolV2.d.ts +119 -119
  50. package/dist/pool/SmartPoolV2.js +586 -586
  51. package/dist/pool/WorkflowPool.d.ts +202 -202
  52. package/dist/pool/client/ClientManager.d.ts +86 -86
  53. package/dist/pool/index.d.ts +9 -9
  54. package/dist/types/api.d.ts +2 -0
  55. package/dist/types/api.d.ts.map +1 -1
  56. package/package.json +4 -4
@@ -1,13 +1,13 @@
1
1
  import { MultiWorkflowPool } from "./multi-workflow-pool.js";
2
2
  import { Workflow } from "./workflow.js";
3
- import { Logger } from "./logger.js";
4
3
  import { EnhancedClient } from "./interfaces.js";
4
+ import { PoolEventManager } from "./pool-event-manager.js";
5
5
  export declare class ClientRegistry {
6
6
  pool: MultiWorkflowPool;
7
- private logger;
7
+ private events;
8
8
  clients: Map<string, EnhancedClient>;
9
9
  workflowAffinityMap: Map<string, Set<string>>;
10
- constructor(pool: MultiWorkflowPool, logger: Logger);
10
+ constructor(pool: MultiWorkflowPool, events: PoolEventManager);
11
11
  addClient(clientUrl: string, options?: {
12
12
  workflowAffinity: Workflow[];
13
13
  priority?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"client-registry.d.ts","sourceRoot":"","sources":["../../src/multipool/client-registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,qBAAa,cAAc;IAEzB,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAa;IAGjD,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAa;gBAE9C,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM;IAKnD,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,gBAAgB,EAAE,QAAQ,EAAE,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;IA8B1F,YAAY,CAAC,SAAS,EAAE,MAAM;IAIxB,cAAc,CAAC,SAAS,EAAE,MAAM;IAQtC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ;IAsCnC,qBAAqB,CAAC,YAAY,EAAE,MAAM;IAMpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;YA6B/B,qBAAqB;IAcnC,kCAAkC,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,SAAS;IAcjF,gCAAgC,CAAC,QAAQ,EAAE,QAAQ;CAapD"}
1
+ {"version":3,"file":"client-registry.d.ts","sourceRoot":"","sources":["../../src/multipool/client-registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,qBAAa,cAAc;IAEzB,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,CAAC,MAAM,CAAmB;IAEjC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAa;IAGjD,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAa;gBAE9C,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,gBAAgB;IAK7D,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,gBAAgB,EAAE,QAAQ,EAAE,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;IA8B1F,YAAY,CAAC,SAAS,EAAE,MAAM;IAIxB,cAAc,CAAC,SAAS,EAAE,MAAM;IAQtC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ;IAsCnC,qBAAqB,CAAC,YAAY,EAAE,MAAM;IAMpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;YA6B/B,qBAAqB;IAcnC,kCAAkC,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,SAAS;IAcjF,gCAAgC,CAAC,QAAQ,EAAE,QAAQ;CAapD"}
@@ -1,13 +1,13 @@
1
1
  import { ComfyApi } from "../client.js";
2
2
  export class ClientRegistry {
3
3
  pool;
4
- logger;
4
+ events;
5
5
  clients = new Map();
6
6
  // Maps a workflow structure hash to a set of client URLs that have affinity for that workflow
7
7
  workflowAffinityMap = new Map();
8
- constructor(pool, logger) {
8
+ constructor(pool, events) {
9
9
  this.pool = pool;
10
- this.logger = logger;
10
+ this.events = events;
11
11
  }
12
12
  addClient(clientUrl, options) {
13
13
  const comfyApi = new ComfyApi(clientUrl);
@@ -68,10 +68,10 @@ export class ClientRegistry {
68
68
  }
69
69
  }
70
70
  if (suitableClients.length === 0) {
71
- this.logger.debug(`No suitable clients found for workflow ${workflowHash}.`);
71
+ this.events.emitEvent({ type: "debug", payload: `No suitable clients found for workflow ${workflowHash}.` });
72
72
  return null;
73
73
  }
74
- this.logger.debug(`Suitable clients for workflow ${workflowHash}: ${suitableClients.map(value => value.nodeName).join(",")}`);
74
+ this.events.emitEvent({ type: "debug", payload: `Suitable clients for workflow ${workflowHash}: ${suitableClients.map(value => value.nodeName).join(",")}` });
75
75
  // sort suitable clients by priority
76
76
  suitableClients.sort((a, b) => {
77
77
  const priorityA = a.priority ?? 0;
@@ -86,7 +86,7 @@ export class ClientRegistry {
86
86
  }
87
87
  // Get an optimal idle client for a given workflow (used for general queue)
88
88
  async getOptimalIdleClient(workflow) {
89
- this.logger.debug(`Searching for idle clients for workflow ${workflow.structureHash}...`);
89
+ this.events.emitEvent({ type: "debug", payload: `Searching for idle clients for workflow ${workflow.structureHash}...` });
90
90
  // We can infer model capabilities from workflow and try to get the best idle client, based on other workflow affinities, for now lets pick any idle client
91
91
  const idleClients = [];
92
92
  for (const client of this.clients.values()) {
@@ -94,12 +94,12 @@ export class ClientRegistry {
94
94
  // For the general queue, we need to check the actual queue state
95
95
  await this.checkClientQueueState(client);
96
96
  if (client.state === "idle") {
97
- this.logger.debug(`Client ${client.nodeName} is idle.`);
97
+ this.events.emitEvent({ type: "debug", payload: `Client ${client.nodeName} is idle.` });
98
98
  idleClients.push(client);
99
99
  }
100
100
  }
101
101
  }
102
- this.logger.debug(`Idle clients available: ${idleClients.map(value => value.nodeName).join(",")}`);
102
+ this.events.emitEvent({ type: "debug", payload: `Idle clients available: ${idleClients.map(value => value.nodeName).join(",")}` });
103
103
  // sort idle clients by priority
104
104
  idleClients.sort((a, b) => {
105
105
  const priorityA = a.priority ?? 0;
@@ -119,7 +119,7 @@ export class ClientRegistry {
119
119
  }
120
120
  }
121
121
  catch (error) {
122
- this.logger.error(`Error checking queue state for client ${client.nodeName}:`, error);
122
+ this.events.emitEvent({ type: "error", payload: { message: `Error checking queue state for client ${client.nodeName}`, error } });
123
123
  client.state = "offline";
124
124
  }
125
125
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client-registry.js","sourceRoot":"","sources":["../../src/multipool/client-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client-registry.js","sourceRoot":"","sources":["../../src/multipool/client-registry.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- export declare function classifyFailure(error: any): {
2
- type: 'connection' | 'workflow_incompatibility' | 'transient';
3
- message: string;
4
- };
1
+ export declare function classifyFailure(error: any): {
2
+ type: 'connection' | 'workflow_incompatibility' | 'transient';
3
+ message: string;
4
+ };
5
5
  //# sourceMappingURL=helpers.d.ts.map
@@ -1,3 +1,3 @@
1
- export { MultiWorkflowPool } from "./multi-workflow-pool.js";
2
- export * from "./interfaces.js";
1
+ export { MultiWorkflowPool } from "./multi-workflow-pool.js";
2
+ export * from "./interfaces.js";
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1,6 +1,5 @@
1
1
  import { ImageInfo } from "../types/api.js";
2
2
  import { ComfyApi } from "../client.js";
3
- import { LogLevel } from "./logger.js";
4
3
  import { Workflow } from "./workflow.js";
5
4
  import { JobProfiler } from "./job-profiler.js";
6
5
  /**
@@ -28,7 +27,6 @@ export interface MultiWorkflowPoolOptions {
28
27
  connectionTimeoutMs?: number;
29
28
  enableMonitoring?: boolean;
30
29
  monitoringIntervalMs?: number;
31
- logLevel?: LogLevel;
32
30
  enableProfiling?: boolean;
33
31
  }
34
32
  export type ClientState = "idle" | "busy" | "offline";
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/multipool/interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/multipool/interfaces.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,17 @@
1
1
  import { Workflow } from "./workflow.js";
2
2
  import { JobStateRegistry } from "./job-state-registry.js";
3
3
  import { ClientRegistry } from "./client-registry.js";
4
- import { Logger } from "./logger.js";
5
4
  import { QueueJob } from "./interfaces.js";
5
+ import { PoolEventManager } from "./pool-event-manager.js";
6
6
  export declare class JobQueueProcessor {
7
7
  private jobs;
8
8
  private clientRegistry;
9
- private logger;
9
+ private events;
10
10
  queue: Array<QueueJob>;
11
11
  workflowHash: string;
12
12
  isProcessing: boolean;
13
13
  maxAttempts: number;
14
- constructor(stateRegistry: JobStateRegistry, clientRegistry: ClientRegistry, workflowHash: string, logger: Logger);
14
+ constructor(stateRegistry: JobStateRegistry, clientRegistry: ClientRegistry, workflowHash: string, events: PoolEventManager);
15
15
  enqueueJob(newJobId: string, workflow: Workflow): Promise<void>;
16
16
  processQueue(): Promise<void>;
17
17
  private applyAutoSeed;
@@ -1 +1 @@
1
- {"version":3,"file":"job-queue-processor.d.ts","sourceRoot":"","sources":["../../src/multipool/job-queue-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAkB,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3D,qBAAa,iBAAiB;IAE5B,OAAO,CAAC,IAAI,CAAmB;IAC/B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,MAAM,CAAS;IACvB,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAM;IAC5B,YAAY,EAAE,MAAM,CAAM;IAC1B,YAAY,EAAE,OAAO,CAAS;IAC9B,WAAW,EAAE,MAAM,CAAK;gBAEZ,aAAa,EAAE,gBAAgB,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAQ3G,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAY/C,YAAY;IAyDlB,OAAO,CAAC,aAAa;YAeP,cAAc;IAkD5B,UAAU,CAAC,KAAK,EAAE,MAAM;IAIxB,OAAO,CAAC,aAAa;IAiCrB,OAAO,CAAC,iBAAiB;YAuBX,oBAAoB;CAGnC"}
1
+ {"version":3,"file":"job-queue-processor.d.ts","sourceRoot":"","sources":["../../src/multipool/job-queue-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EAAkB,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,qBAAa,iBAAiB;IAE5B,OAAO,CAAC,IAAI,CAAmB;IAC/B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,MAAM,CAAmB;IACjC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAM;IAC5B,YAAY,EAAE,MAAM,CAAM;IAC1B,YAAY,EAAE,OAAO,CAAS;IAC9B,WAAW,EAAE,MAAM,CAAK;gBAEZ,aAAa,EAAE,gBAAgB,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB;IAQrH,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAY/C,YAAY;IAyDlB,OAAO,CAAC,aAAa;YAeP,cAAc;IAmD5B,UAAU,CAAC,KAAK,EAAE,MAAM;IAIxB,OAAO,CAAC,aAAa;IAiCrB,OAAO,CAAC,iBAAiB;YAuBX,oBAAoB;CAGnC"}
@@ -2,14 +2,14 @@ import { classifyFailure } from "./helpers.js";
2
2
  export class JobQueueProcessor {
3
3
  jobs;
4
4
  clientRegistry;
5
- logger;
5
+ events;
6
6
  queue = [];
7
7
  workflowHash = "";
8
8
  isProcessing = false;
9
9
  maxAttempts = 3;
10
- constructor(stateRegistry, clientRegistry, workflowHash, logger) {
11
- this.logger = logger;
12
- this.logger.debug(`Creating JobQueueProcessor for workflow hash: '${workflowHash}'`);
10
+ constructor(stateRegistry, clientRegistry, workflowHash, events) {
11
+ this.events = events;
12
+ this.events.emitEvent({ type: "debug", payload: `Creating JobQueueProcessor for workflow hash: '${workflowHash}'` });
13
13
  this.clientRegistry = clientRegistry;
14
14
  this.jobs = stateRegistry;
15
15
  this.workflowHash = workflowHash;
@@ -22,19 +22,19 @@ export class JobQueueProcessor {
22
22
  }
23
23
  this.queue.push({ jobId: newJobId, workflow, attempts: 1 });
24
24
  this.processQueue().catch(reason => {
25
- this.logger.error(`Error processing job queue for workflow hash ${this.workflowHash}:`, reason);
25
+ this.events.emitEvent({ type: "error", payload: { message: `Error processing job queue for workflow hash ${this.workflowHash}`, error: reason } });
26
26
  });
27
27
  }
28
28
  async processQueue() {
29
29
  if (this.isProcessing) {
30
- this.logger.debug(`Job queue for workflow hash ${this.workflowHash} is already being processed, skipping.`);
30
+ this.events.emitEvent({ type: "debug", payload: `Job queue for workflow hash ${this.workflowHash} is already being processed, skipping.` });
31
31
  return;
32
32
  }
33
33
  this.isProcessing = true;
34
34
  // Get the next job in the queue
35
35
  const nextJob = this.queue.shift();
36
36
  if (nextJob) {
37
- this.logger.debug(`Processing job ${nextJob.jobId}`);
37
+ this.events.emitEvent({ type: "debug", payload: `Processing job ${nextJob.jobId}` });
38
38
  let preferredClient;
39
39
  // If this processor is for the general queue, try to find a preferred client
40
40
  if (this.workflowHash === "general") {
@@ -44,7 +44,7 @@ export class JobQueueProcessor {
44
44
  preferredClient = this.clientRegistry.getOptimalClient(nextJob.workflow);
45
45
  }
46
46
  if (!preferredClient) {
47
- this.logger.debug(`No idle clients available for job ${nextJob.jobId}.`);
47
+ this.events.emitEvent({ type: "debug", payload: `No idle clients available for job ${nextJob.jobId}.` });
48
48
  // Mark as pending again
49
49
  this.jobs.setJobStatus(nextJob.jobId, "pending");
50
50
  // Re-add the job to the front of the queue for later processing
@@ -53,7 +53,7 @@ export class JobQueueProcessor {
53
53
  return;
54
54
  }
55
55
  else {
56
- this.logger.info(`Assigning job ${nextJob.jobId} to client ${preferredClient.nodeName}`);
56
+ this.events.emitEvent({ type: "info", payload: `Assigning job ${nextJob.jobId} to client ${preferredClient.nodeName}` });
57
57
  this.jobs.setJobStatus(nextJob.jobId, "assigned", preferredClient.url);
58
58
  await this.runJobOnClient(nextJob, preferredClient);
59
59
  }
@@ -63,18 +63,18 @@ export class JobQueueProcessor {
63
63
  if (this.queue.length > 0) {
64
64
  let idleCount = 0;
65
65
  for (const client of this.clientRegistry.clients.values()) {
66
- this.logger.debug(`Client ${client.nodeName} state: ${client.state}`);
66
+ this.events.emitEvent({ type: "debug", payload: `Client ${client.nodeName} state: ${client.state}` });
67
67
  if (client.state === "idle") {
68
68
  idleCount++;
69
69
  }
70
70
  }
71
71
  if (idleCount > 0) {
72
- this.logger.debug(`Continuing to process next job in queue for workflow hash ${this.workflowHash}.`);
72
+ this.events.emitEvent({ type: "debug", payload: `Continuing to process next job in queue for workflow hash ${this.workflowHash}.` });
73
73
  try {
74
74
  await this.processQueue();
75
75
  }
76
76
  catch (e) {
77
- this.logger.error(`Error processing job queue for workflow hash ${this.workflowHash}:`, e);
77
+ this.events.emitEvent({ type: "error", payload: { message: `Error processing job queue for workflow hash ${this.workflowHash}`, error: e } });
78
78
  }
79
79
  }
80
80
  }
@@ -101,7 +101,7 @@ export class JobQueueProcessor {
101
101
  // Check if client is idle before sending job
102
102
  const queueStatus = await api.getQueue();
103
103
  if (queueStatus.queue_running.length !== 0 || queueStatus.queue_pending.length !== 0) {
104
- this.logger.debug(`Client ${preferredClient.nodeName} is busy, re-adding job ${nextJob.jobId} to queue.`);
104
+ this.events.emitEvent({ type: "debug", payload: `Client ${preferredClient.nodeName} is busy, re-adding job ${nextJob.jobId} to queue.` });
105
105
  this.jobs.setJobStatus(nextJob.jobId, "pending");
106
106
  this.queue.unshift(nextJob);
107
107
  return;
@@ -110,7 +110,7 @@ export class JobQueueProcessor {
110
110
  const workflowJson = nextJob.workflow.toJSON();
111
111
  const autoSeeds = this.applyAutoSeed(workflowJson);
112
112
  if (Object.keys(autoSeeds).length > 0) {
113
- this.logger.queue(this.workflowHash, `Applied auto seeds for job ${nextJob.jobId}: ${JSON.stringify(autoSeeds)}`);
113
+ this.events.emitEvent({ type: "queue", payload: { workflowHash: this.workflowHash, message: `Applied auto seeds for job ${nextJob.jobId}: ${JSON.stringify(autoSeeds)}` } });
114
114
  this.jobs.updateJobAutoSeeds(nextJob.jobId, autoSeeds);
115
115
  // Update the workflow json with the new seeds before sending
116
116
  const nodeIds = Object.keys(autoSeeds);
@@ -118,24 +118,25 @@ export class JobQueueProcessor {
118
118
  workflowJson[nodeId].inputs.seed = autoSeeds[nodeId];
119
119
  }
120
120
  }
121
- this.logger.queue(this.workflowHash, `Starting job ${nextJob.jobId} on client ${preferredClient.nodeName}`);
121
+ this.events.emitEvent({ type: "queue", payload: { workflowHash: this.workflowHash, message: `Starting job ${nextJob.jobId} on client ${preferredClient.nodeName}` } });
122
122
  const result = await api.ext.queue.queuePrompt(null, workflowJson);
123
123
  // at this point we have the prompt_id assigned by comfyui, we can mark the job as running
124
124
  if (result.prompt_id) {
125
125
  this.jobs.setPromptId(nextJob.jobId, result.prompt_id);
126
126
  this.jobs.setJobStatus(nextJob.jobId, "running");
127
- this.logger.queue(this.workflowHash, `Job ${nextJob.jobId} is now queued on client ${preferredClient.nodeName} with prompt ID ${result.prompt_id}`);
127
+ this.events.emitEvent({ type: "queue", payload: { workflowHash: this.workflowHash, message: `Job ${nextJob.jobId} is now queued on client ${preferredClient.nodeName} with prompt ID ${result.prompt_id}` } });
128
128
  // we also mark the client as busy, to prevent new jobs being assigned until we detect completion
129
129
  preferredClient.state = "busy";
130
- this.logger.debug(Array.from(this.clientRegistry.clients.values()).map((c) => `${c.nodeName}: ${c.state}`).join(", "));
130
+ this.events.emitEvent({ type: "debug", payload: Array.from(this.clientRegistry.clients.values()).map((c) => `${c.nodeName}: ${c.state}`).join(", ") });
131
131
  }
132
132
  else {
133
- this.logger.error(`Failed to enqueue job ${nextJob.jobId} on client ${preferredClient.nodeName}: No prompt_id returned.`);
133
+ const error = new Error("No prompt_id returned");
134
+ this.events.emitEvent({ type: "error", payload: { message: `Failed to enqueue job ${nextJob.jobId} on client ${preferredClient.nodeName}`, error } });
134
135
  this.jobs.setJobStatus(nextJob.jobId, "failed");
135
136
  }
136
137
  }
137
138
  catch (e) {
138
- this.logger.error(`Failed to run job ${nextJob.jobId} on client ${preferredClient.nodeName}`);
139
+ this.events.emitEvent({ type: "error", payload: { message: `Failed to run job ${nextJob.jobId} on client ${preferredClient.nodeName}`, error: e } });
139
140
  this.handleFailure(preferredClient, nextJob, e);
140
141
  }
141
142
  }
@@ -144,49 +145,49 @@ export class JobQueueProcessor {
144
145
  }
145
146
  handleFailure(preferredClient, nextJob, e) {
146
147
  const { type, message } = classifyFailure(e);
147
- this.logger.queue(this.workflowHash, `Job ${nextJob.jobId} failed on ${preferredClient.nodeName}. Failure type: ${type}. Reason: ${message}`);
148
+ this.events.emitEvent({ type: "queue", payload: { workflowHash: this.workflowHash, message: `Job ${nextJob.jobId} failed on ${preferredClient.nodeName}. Failure type: ${type}. Reason: ${message}` } });
148
149
  switch (type) {
149
150
  case "connection":
150
151
  preferredClient.state = "offline"; // Mark as offline to be re-checked later
151
- this.logger.queue(this.workflowHash, `Re-queuing job ${nextJob.jobId} due to connection error.`);
152
+ this.events.emitEvent({ type: "queue", payload: { workflowHash: this.workflowHash, message: `Re-queuing job ${nextJob.jobId} due to connection error.` } });
152
153
  this.jobs.setJobStatus(nextJob.jobId, "pending");
153
154
  this.queue.unshift(nextJob); // Re-queue without incrementing attempts
154
155
  break;
155
156
  case "workflow_incompatibility":
156
157
  preferredClient.state = "idle";
157
- this.logger.queue(this.workflowHash, `Marking client ${preferredClient.nodeName} as incompatible with workflow ${nextJob.workflow.structureHash}.`);
158
+ this.events.emitEvent({ type: "queue", payload: { workflowHash: this.workflowHash, message: `Marking client ${preferredClient.nodeName} as incompatible with workflow ${nextJob.workflow.structureHash}.` } });
158
159
  this.clientRegistry.markClientIncompatibleWithWorkflow(preferredClient.url, nextJob.workflow.structureHash);
159
160
  this.retryOrMarkFailed(nextJob, e);
160
161
  break;
161
162
  case "transient":
162
163
  preferredClient.state = "idle";
163
- this.logger.queue(this.workflowHash, `Job ${nextJob.jobId} failed with a transient error. It will not be retried.`);
164
+ this.events.emitEvent({ type: "queue", payload: { workflowHash: this.workflowHash, message: `Job ${nextJob.jobId} failed with a transient error. It will not be retried.` } });
164
165
  this.jobs.setJobFailure(nextJob.jobId, { error: message, details: e.bodyJSON });
165
166
  break;
166
167
  }
167
168
  // Trigger processing for the next job in the queue
168
169
  this.processQueue().catch(reason => {
169
- this.logger.error(`Error processing job queue for workflow hash ${this.workflowHash}:`, reason);
170
+ this.events.emitEvent({ type: "error", payload: `Error processing job queue for workflow hash ${this.workflowHash}: ${reason}` });
170
171
  });
171
172
  }
172
173
  retryOrMarkFailed(nextJob, originalError) {
173
174
  // Check if the job has exceeded its max attempts
174
175
  if (nextJob.attempts >= this.maxAttempts) {
175
- this.logger.queue(this.workflowHash, `Job ${nextJob.jobId} has reached max attempts (${this.maxAttempts}). Marking as failed.`);
176
+ this.events.emitEvent({ type: "queue", payload: { workflowHash: this.workflowHash, message: `Job ${nextJob.jobId} has reached max attempts (${this.maxAttempts}). Marking as failed.` } });
176
177
  this.jobs.setJobFailure(nextJob.jobId, originalError.bodyJSON);
177
178
  return;
178
179
  }
179
180
  // Confirm if we should re-queue or fail the job
180
181
  const eligibleClients = this.clientRegistry.getAllEligibleClientsForWorkflow(nextJob.workflow);
181
182
  if (eligibleClients.length > 0) {
182
- this.logger.queue(this.workflowHash, `Re-queuing job ${nextJob.jobId} (attempt ${nextJob.attempts + 1}) as there are other eligible clients available.`);
183
+ this.events.emitEvent({ type: "queue", payload: { workflowHash: this.workflowHash, message: `Re-queuing job ${nextJob.jobId} (attempt ${nextJob.attempts + 1}) as there are other eligible clients available.` } });
183
184
  this.jobs.setJobStatus(nextJob.jobId, "pending");
184
185
  // Increment attempts and re-add to the front of the queue
185
186
  nextJob.attempts++;
186
187
  this.queue.unshift(nextJob);
187
188
  }
188
189
  else {
189
- this.logger.queue(this.workflowHash, `No other eligible clients for job ${nextJob.jobId}, marking as failed.`);
190
+ this.events.emitEvent({ type: "queue", payload: { workflowHash: this.workflowHash, message: `No other eligible clients for job ${nextJob.jobId}, marking as failed.` } });
190
191
  this.jobs.setJobFailure(nextJob.jobId, originalError.bodyJSON);
191
192
  }
192
193
  }
@@ -1 +1 @@
1
- {"version":3,"file":"job-queue-processor.js","sourceRoot":"","sources":["../../src/multipool/job-queue-processor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"job-queue-processor.js","sourceRoot":"","sources":["../../src/multipool/job-queue-processor.ts"],"names":[],"mappings":"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"}
@@ -1,30 +1,30 @@
1
- /**
2
- * Logging utility for MultiWorkflowPool
3
- * Provides structured logging with configurable log levels
4
- */
5
- export type LogLevel = "debug" | "info" | "warn" | "error" | "silent";
6
- export declare class Logger {
7
- private level;
8
- private context;
9
- constructor(context: string, level?: LogLevel);
10
- setLevel(level: LogLevel): void;
11
- private shouldLog;
12
- private formatMessage;
13
- debug(message: string, ...args: any[]): void;
14
- info(message: string, ...args: any[]): void;
15
- warn(message: string, ...args: any[]): void;
16
- error(message: string, ...args: any[]): void;
17
- /**
18
- * Special log for queue operations (always uses timestamp format)
19
- */
20
- queue(workflowHash: string, message: string, ...args: any[]): void;
21
- /**
22
- * Special log for client events
23
- */
24
- client(clientName: string, event: string, message: string, ...args: any[]): void;
25
- }
26
- /**
27
- * Create a logger instance for a specific context
28
- */
29
- export declare function createLogger(context: string, level?: LogLevel): Logger;
1
+ /**
2
+ * Logging utility for MultiWorkflowPool
3
+ * Provides structured logging with configurable log levels
4
+ */
5
+ export type LogLevel = "debug" | "info" | "warn" | "error" | "silent";
6
+ export declare class Logger {
7
+ private level;
8
+ private context;
9
+ constructor(context: string, level?: LogLevel);
10
+ setLevel(level: LogLevel): void;
11
+ private shouldLog;
12
+ private formatMessage;
13
+ debug(message: string, ...args: any[]): void;
14
+ info(message: string, ...args: any[]): void;
15
+ warn(message: string, ...args: any[]): void;
16
+ error(message: string, ...args: any[]): void;
17
+ /**
18
+ * Special log for queue operations (always uses timestamp format)
19
+ */
20
+ queue(workflowHash: string, message: string, ...args: any[]): void;
21
+ /**
22
+ * Special log for client events
23
+ */
24
+ client(clientName: string, event: string, message: string, ...args: any[]): void;
25
+ }
26
+ /**
27
+ * Create a logger instance for a specific context
28
+ */
29
+ export declare function createLogger(context: string, level?: LogLevel): Logger;
30
30
  //# sourceMappingURL=logger.d.ts.map