@dudousxd/nestjs-durable-core 0.47.0 → 0.48.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/dist/index.d.cts CHANGED
@@ -691,6 +691,8 @@ type RunRequestKind = {
691
691
  } | {
692
692
  kind: 'listRuns';
693
693
  query: RunQuery;
694
+ } | {
695
+ kind: 'workerHealth';
694
696
  } | {
695
697
  kind: 'cancel';
696
698
  runId: string;
@@ -2732,11 +2734,15 @@ interface RunDetail {
2732
2734
  * The bounded read/control/stream surface a consumer (e.g. a controller) needs, satisfied by BOTH
2733
2735
  * topologies: the control plane binds a store-backed impl (reuses `DashboardService`); a tenant binds
2734
2736
  * a `ProxyRunGateway` that round-trips over the transport. Deliberately smaller than the full dashboard
2735
- * (no metrics/bulk/workerHealth/update/signal) — those stay control-plane-only.
2737
+ * (no metrics/bulk/update/signal) — those stay control-plane-only. `workerHealth` IS on the port: the
2738
+ * operator answers it scoped to the requester's own groups, so a tenant's Workers panel works too.
2736
2739
  */
2737
2740
  interface RunGateway {
2738
2741
  getRunDetail(runId: string): Promise<RunDetail | null>;
2739
2742
  listRuns(query: RunQuery): Promise<WorkflowRun[]>;
2743
+ /** Per-group worker health (queue backlog + live worker heartbeats). On the control plane this is
2744
+ * every group; over a tenant proxy the operator scopes it to the tenant's own groups. */
2745
+ workerHealth(): Promise<GroupHealth[]>;
2740
2746
  cancel(runId: string, opts?: {
2741
2747
  compensate?: boolean;
2742
2748
  }): Promise<RunResult | null>;
package/dist/index.d.ts CHANGED
@@ -691,6 +691,8 @@ type RunRequestKind = {
691
691
  } | {
692
692
  kind: 'listRuns';
693
693
  query: RunQuery;
694
+ } | {
695
+ kind: 'workerHealth';
694
696
  } | {
695
697
  kind: 'cancel';
696
698
  runId: string;
@@ -2732,11 +2734,15 @@ interface RunDetail {
2732
2734
  * The bounded read/control/stream surface a consumer (e.g. a controller) needs, satisfied by BOTH
2733
2735
  * topologies: the control plane binds a store-backed impl (reuses `DashboardService`); a tenant binds
2734
2736
  * a `ProxyRunGateway` that round-trips over the transport. Deliberately smaller than the full dashboard
2735
- * (no metrics/bulk/workerHealth/update/signal) — those stay control-plane-only.
2737
+ * (no metrics/bulk/update/signal) — those stay control-plane-only. `workerHealth` IS on the port: the
2738
+ * operator answers it scoped to the requester's own groups, so a tenant's Workers panel works too.
2736
2739
  */
2737
2740
  interface RunGateway {
2738
2741
  getRunDetail(runId: string): Promise<RunDetail | null>;
2739
2742
  listRuns(query: RunQuery): Promise<WorkflowRun[]>;
2743
+ /** Per-group worker health (queue backlog + live worker heartbeats). On the control plane this is
2744
+ * every group; over a tenant proxy the operator scopes it to the tenant's own groups. */
2745
+ workerHealth(): Promise<GroupHealth[]>;
2740
2746
  cancel(runId: string, opts?: {
2741
2747
  compensate?: boolean;
2742
2748
  }): Promise<RunResult | null>;