@rk0429/agentic-relay 22.2.3 → 22.3.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.
@@ -22,6 +22,7 @@ export interface RoutineDispatchOptions {
22
22
  cwd?: string;
23
23
  signal?: AbortSignal;
24
24
  skippedCount?: number;
25
+ allowConcurrent?: boolean;
25
26
  }
26
27
  export interface RoutineDispatchRunResult {
27
28
  status: "completed" | "failed" | "skipped";
@@ -50,11 +51,16 @@ export declare class RoutineRunService {
50
51
  private readonly heartbeatIntervalMs;
51
52
  constructor(deps: RoutineRunServiceDeps, options?: RoutineRunServiceOptions);
52
53
  dispatch(entry: RoutineCatalogEntry, options: RoutineDispatchOptions): Promise<RoutineDispatchResult>;
53
- dispatchResume(entry: RoutineCatalogEntry, options: Omit<ResumeLoopOptions, "workflowPath" | "routineRunId">): Promise<LoopExecutionResult>;
54
+ dispatchResume(entry: RoutineCatalogEntry, options: Omit<ResumeLoopOptions, "workflowPath" | "routineRunId"> & {
55
+ allowConcurrent?: boolean;
56
+ }): Promise<LoopExecutionResult>;
54
57
  dispatchSingle(entry: RoutineCatalogEntry, options: Omit<RoutineDispatchOptions, "firingTimes"> & {
55
58
  scheduledTime: Date;
56
59
  triggerTime: Date;
57
60
  }): Promise<RoutineDispatchRunResult>;
61
+ private heartbeatRuntime;
62
+ private publishRuntimeProjection;
63
+ private cleanupRuntime;
58
64
  private handleSkip;
59
65
  private persistState;
60
66
  }
@@ -1,6 +1,6 @@
1
1
  import path from "node:path";
2
2
  import { ValidationError } from "../core/errors.js";
3
- import { createRoutineRunId, RoutineExecutionState } from "../domain/routine-execution-state.js";
3
+ import { createRoutineRunId, RoutineExecutionState, } from "../domain/routine-execution-state.js";
4
4
  import { FiringContext, RoutineFiring } from "../domain/routine-firing.js";
5
5
  import { RoutineSchedule } from "../domain/routine-schedule.js";
6
6
  const DEFAULT_HEARTBEAT_INTERVAL_MS = 15_000;
@@ -72,24 +72,18 @@ export class RoutineRunService {
72
72
  const schedule = new RoutineSchedule(entry.definition.trigger ?? null, state);
73
73
  const routineRunId = createRoutineRunId();
74
74
  const startedAt = this.now();
75
- await this.deps.leaseRepo.acquire(entry.definition.name, this.ownerPid, routineRunId);
75
+ const allowConcurrent = options.allowConcurrent ?? false;
76
+ if (!allowConcurrent) {
77
+ await this.deps.leaseRepo.acquire(entry.definition.name, this.ownerPid, routineRunId);
78
+ }
76
79
  const heartbeat = setInterval(() => {
77
- void Promise.all([
78
- this.deps.leaseRepo.heartbeat(entry.definition.name),
79
- this.deps.runtimeRepo.heartbeat(entry.definition.name),
80
- ]).catch(() => {
80
+ void this.heartbeatRuntime(entry.definition.name, routineRunId, allowConcurrent).catch(() => {
81
81
  // Heartbeat loss is surfaced by the final execution result.
82
82
  });
83
83
  }, this.heartbeatIntervalMs);
84
84
  try {
85
85
  schedule.markFiring(routineRunId, startedAt, { isManual: true });
86
- await this.deps.runtimeRepo.publish(entry.definition.name, {
87
- routineRunId,
88
- source: "manual",
89
- startedAt: startedAt.toISOString(),
90
- lastHeartbeatAt: startedAt.toISOString(),
91
- pid: this.ownerPid,
92
- });
86
+ await this.publishRuntimeProjection(entry.definition.name, routineRunId, "manual", startedAt, allowConcurrent);
93
87
  const result = await this.deps.workflowExecutionService.resumeLoop({
94
88
  ...options,
95
89
  workflowPath: entry.yamlPath,
@@ -161,8 +155,7 @@ export class RoutineRunService {
161
155
  }
162
156
  finally {
163
157
  clearInterval(heartbeat);
164
- await this.deps.runtimeRepo.remove(entry.definition.name);
165
- await this.deps.leaseRepo.release(entry.definition.name);
158
+ await this.cleanupRuntime(entry.definition.name, routineRunId, allowConcurrent);
166
159
  }
167
160
  }
168
161
  async dispatchSingle(entry, options) {
@@ -175,29 +168,29 @@ export class RoutineRunService {
175
168
  const hasTrigger = entry.definition.trigger !== undefined;
176
169
  const scheduledTime = options.scheduledTime;
177
170
  const triggerTime = options.triggerTime;
178
- try {
179
- await this.deps.leaseRepo.acquire(entry.definition.name, this.ownerPid, routineRunId);
180
- }
181
- catch (error) {
182
- if (isManual) {
183
- throw error;
171
+ const allowConcurrent = options.allowConcurrent ?? false;
172
+ if (!allowConcurrent) {
173
+ try {
174
+ await this.deps.leaseRepo.acquire(entry.definition.name, this.ownerPid, routineRunId);
184
175
  }
185
- if (error instanceof ValidationError) {
186
- await this.handleSkip(entry, scheduledTime, "concurrent_execution", state);
187
- return {
188
- status: "skipped",
189
- scheduledTime: scheduledTime.toISOString(),
190
- hasTrigger,
191
- skipReason: "concurrent_execution",
192
- };
176
+ catch (error) {
177
+ if (isManual) {
178
+ throw error;
179
+ }
180
+ if (error instanceof ValidationError) {
181
+ await this.handleSkip(entry, scheduledTime, "concurrent_execution", state);
182
+ return {
183
+ status: "skipped",
184
+ scheduledTime: scheduledTime.toISOString(),
185
+ hasTrigger,
186
+ skipReason: "concurrent_execution",
187
+ };
188
+ }
189
+ throw error;
193
190
  }
194
- throw error;
195
191
  }
196
192
  const heartbeat = setInterval(() => {
197
- void Promise.all([
198
- this.deps.leaseRepo.heartbeat(entry.definition.name),
199
- this.deps.runtimeRepo.heartbeat(entry.definition.name),
200
- ]).catch(() => {
193
+ void this.heartbeatRuntime(entry.definition.name, routineRunId, allowConcurrent).catch(() => {
201
194
  // Heartbeat loss is surfaced by the final execution result.
202
195
  });
203
196
  }, this.heartbeatIntervalMs);
@@ -211,13 +204,7 @@ export class RoutineRunService {
211
204
  });
212
205
  const firingContext = new FiringContext(firing);
213
206
  schedule.markFiring(routineRunId, scheduledTime, { isManual });
214
- await this.deps.runtimeRepo.publish(entry.definition.name, {
215
- routineRunId,
216
- source: isManual ? "manual" : isCatchUp ? "catch_up" : "scheduled",
217
- startedAt: triggerTime.toISOString(),
218
- lastHeartbeatAt: triggerTime.toISOString(),
219
- pid: this.ownerPid,
220
- });
207
+ await this.publishRuntimeProjection(entry.definition.name, routineRunId, isManual ? "manual" : isCatchUp ? "catch_up" : "scheduled", triggerTime, allowConcurrent);
221
208
  await this.deps.eventLog.logTriggered({
222
209
  routineName: entry.definition.name,
223
210
  ownerPid: this.ownerPid,
@@ -331,8 +318,32 @@ export class RoutineRunService {
331
318
  }
332
319
  finally {
333
320
  clearInterval(heartbeat);
334
- await this.deps.runtimeRepo.remove(entry.definition.name);
335
- await this.deps.leaseRepo.release(entry.definition.name);
321
+ await this.cleanupRuntime(entry.definition.name, routineRunId, allowConcurrent);
322
+ }
323
+ }
324
+ async heartbeatRuntime(name, routineRunId, allowConcurrent) {
325
+ if (allowConcurrent) {
326
+ await this.deps.runtimeRepo.heartbeat(name, { runId: routineRunId });
327
+ return;
328
+ }
329
+ await Promise.all([
330
+ this.deps.leaseRepo.heartbeat(name),
331
+ this.deps.runtimeRepo.heartbeat(name),
332
+ ]);
333
+ }
334
+ async publishRuntimeProjection(name, routineRunId, source, startedAt, allowConcurrent) {
335
+ await this.deps.runtimeRepo.publish(name, {
336
+ routineRunId,
337
+ source,
338
+ startedAt: startedAt.toISOString(),
339
+ lastHeartbeatAt: startedAt.toISOString(),
340
+ pid: this.ownerPid,
341
+ }, { allowConcurrent });
342
+ }
343
+ async cleanupRuntime(name, routineRunId, allowConcurrent) {
344
+ await this.deps.runtimeRepo.remove(name, allowConcurrent ? routineRunId : undefined);
345
+ if (!allowConcurrent) {
346
+ await this.deps.leaseRepo.release(name);
336
347
  }
337
348
  }
338
349
  async handleSkip(entry, scheduledTime, reason, currentState) {
@@ -1 +1 @@
1
- {"version":3,"file":"routine-run-service.js","sourceRoot":"","sources":["../../src/application/routine-run-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routine-run-service.js","sourceRoot":"","sources":["../../src/application/routine-run-service.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,7 @@ export interface RoutineStatusDto extends RoutineSummaryDto {
47
47
  definition: RoutineDefinitionDto | null;
48
48
  state?: RoutineDurableStateDto;
49
49
  runtime?: RuntimeProjection;
50
+ additionalRuntimes?: RuntimeProjection[];
50
51
  recentExecutions: LogEntry[];
51
52
  }
52
53
  export type CleanupTargetKind = "orphan_state" | "stale_runtime" | "stale_loop_state" | "stale_lease";
@@ -76,6 +77,7 @@ export declare class RoutineStatusQueryService {
76
77
  list(): Promise<RoutineListDto>;
77
78
  status(name: RoutineName | string, options?: {
78
79
  limit?: number;
80
+ runId?: string;
79
81
  }): Promise<RoutineStatusDto>;
80
82
  cleanup(dryRun: boolean): Promise<CleanupResult>;
81
83
  private buildMergedView;
@@ -1,7 +1,9 @@
1
1
  import path from "node:path";
2
2
  import { ValidationError } from "../core/errors.js";
3
+ import { restoreRoutineRunId } from "../domain/routine-execution-state.js";
3
4
  import { isProcessAlive } from "./housekeeping.js";
4
5
  import { RoutineName } from "../domain/routine-name.js";
6
+ import { parseRuntimeProjectionFilename, } from "../infrastructure/store/routine-runtime-projection-repository.js";
5
7
  const STALE_HEARTBEAT_THRESHOLD_MS = 60_000;
6
8
  export class RoutineStatusQueryService {
7
9
  deps;
@@ -29,13 +31,19 @@ export class RoutineStatusQueryService {
29
31
  }
30
32
  async status(name, options = {}) {
31
33
  const routineName = name instanceof RoutineName ? name.value : name;
32
- const merged = await this.buildMergedView(options.limit ?? 10);
34
+ const runId = options.runId ? restoreRoutineRunId(options.runId) : undefined;
35
+ const merged = await this.buildMergedView(options.limit ?? 10, runId);
33
36
  const entry = merged.entries.find((candidate) => candidate.name === routineName);
34
37
  if (!entry) {
35
38
  throw new ValidationError(`Routine not found: ${routineName}`, {
36
39
  recoveryHint: "Run a catalog rescan and confirm the routine name.",
37
40
  });
38
41
  }
42
+ if (runId && entry.runtime === undefined) {
43
+ throw new ValidationError(`Routine run id not found for "${routineName}": ${runId}`, {
44
+ recoveryHint: "Check `relay routine status <name>` to list active runs, then retry with a listed --run-id value.",
45
+ });
46
+ }
39
47
  return entry;
40
48
  }
41
49
  async cleanup(dryRun) {
@@ -49,13 +57,17 @@ export class RoutineStatusQueryService {
49
57
  reason: "Routine state exists without a matching workflow definition.",
50
58
  });
51
59
  }
52
- if (entry.status === "stale_runtime") {
53
- targets.push({
54
- kind: "stale_runtime",
55
- filePath: this.buildRoutineFilePath(entry.name, "runtime"),
56
- reason: "Runtime projection is stale because the owner process or heartbeat is missing.",
57
- });
60
+ }
61
+ const runtimes = await this.deps.runtimeRepo.list();
62
+ for (const runtime of runtimes) {
63
+ if (!isRuntimeStale(runtime.projection, this.checkProcessAlive, new Date())) {
64
+ continue;
58
65
  }
66
+ targets.push({
67
+ kind: "stale_runtime",
68
+ filePath: runtime.filePath,
69
+ reason: "Runtime projection is stale because the owner process or heartbeat is missing.",
70
+ });
59
71
  }
60
72
  if (this.deps.leaseRepo) {
61
73
  const leases = await this.deps.leaseRepo.list();
@@ -111,7 +123,8 @@ export class RoutineStatusQueryService {
111
123
  continue;
112
124
  }
113
125
  if (target.kind === "stale_runtime") {
114
- await this.deps.runtimeRepo.remove(new RoutineName(extractRoutineName(target.filePath)));
126
+ const runtimeTarget = parseRuntimeProjectionTarget(target.filePath);
127
+ await this.deps.runtimeRepo.remove(new RoutineName(runtimeTarget.name), runtimeTarget.runId ?? undefined);
115
128
  continue;
116
129
  }
117
130
  if (target.kind === "stale_lease" && this.deps.leaseRepo) {
@@ -127,7 +140,7 @@ export class RoutineStatusQueryService {
127
140
  deleted: targets.length,
128
141
  };
129
142
  }
130
- async buildMergedView(limit = 10) {
143
+ async buildMergedView(limit = 10, runId) {
131
144
  const now = new Date();
132
145
  let snapshot = this.deps.catalogService.getSnapshot();
133
146
  if (snapshot.catalog.size === 0 && snapshot.invalid.length === 0) {
@@ -140,7 +153,12 @@ export class RoutineStatusQueryService {
140
153
  ]);
141
154
  const catalog = snapshot.catalog;
142
155
  const stateMap = new Map(states.map((entry) => [entry.name.value, entry]));
143
- const runtimeMap = new Map(runtimes.map((entry) => [entry.name, entry.projection]));
156
+ const runtimeMap = new Map();
157
+ for (const runtime of runtimes) {
158
+ const entries = runtimeMap.get(runtime.name) ?? [];
159
+ entries.push(runtime);
160
+ runtimeMap.set(runtime.name, entries);
161
+ }
144
162
  const warningsByName = buildWarningsByName(snapshot);
145
163
  const names = new Set([
146
164
  ...catalog.keys(),
@@ -153,10 +171,12 @@ export class RoutineStatusQueryService {
153
171
  .map((name) => {
154
172
  const catalogEntry = catalog.get(name);
155
173
  const stateEntry = stateMap.get(name);
156
- const runtime = runtimeMap.get(name);
174
+ const runtimesForName = selectRuntimeEntries(runtimeMap.get(name) ?? [], runId);
175
+ const primaryRuntime = runtimesForName[0]?.projection;
176
+ const additionalRuntimes = runtimesForName.slice(1).map((entry) => entry.projection);
157
177
  const recentExecutions = filterRoutineLogs(logs, name).slice(0, limit);
158
178
  const lastRun = stateEntry?.state.lastExecutedAt?.toISOString() ?? null;
159
- const status = resolveStatus(runtime, stateEntry?.state.lastStatus, this.checkProcessAlive, now);
179
+ const status = resolveStatus(runtimesForName.map((entry) => entry.projection), stateEntry?.state.lastStatus, this.checkProcessAlive, now);
160
180
  return {
161
181
  name,
162
182
  status,
@@ -171,7 +191,8 @@ export class RoutineStatusQueryService {
171
191
  warnings: warningsByName.get(name) ?? [],
172
192
  definition: buildDefinitionDto(catalogEntry),
173
193
  state: buildRoutineStateDto(stateEntry),
174
- runtime,
194
+ runtime: primaryRuntime,
195
+ ...(additionalRuntimes.length > 0 ? { additionalRuntimes } : {}),
175
196
  recentExecutions,
176
197
  };
177
198
  }),
@@ -203,6 +224,13 @@ function hasInterruptedAt(value) {
203
224
  function extractRoutineName(filePath) {
204
225
  return path.basename(filePath).replace(/\.(state|runtime|lock)\.json$/, "");
205
226
  }
227
+ function parseRuntimeProjectionTarget(filePath) {
228
+ const parsed = parseRuntimeProjectionFilename(path.basename(filePath));
229
+ return {
230
+ name: parsed.name.value,
231
+ runId: parsed.runId,
232
+ };
233
+ }
206
234
  function filterRoutineLogs(logs, routineName) {
207
235
  return logs
208
236
  .filter((entry) => {
@@ -211,22 +239,39 @@ function filterRoutineLogs(logs, routineName) {
211
239
  })
212
240
  .sort((left, right) => right.timestamp.localeCompare(left.timestamp));
213
241
  }
214
- function resolveStatus(runtime, lastStatus, checkProcessAlive, now) {
215
- if (runtime) {
216
- if (!checkProcessAlive(runtime.pid)) {
217
- return "stale_runtime";
242
+ function resolveStatus(runtimes, lastStatus, checkProcessAlive, now) {
243
+ if (runtimes.length > 0) {
244
+ if (runtimes.some((runtime) => !isRuntimeStale(runtime, checkProcessAlive, now))) {
245
+ return "running";
218
246
  }
219
- if (now.getTime() - new Date(runtime.lastHeartbeatAt).getTime() >
220
- STALE_HEARTBEAT_THRESHOLD_MS) {
221
- return "stale_runtime";
222
- }
223
- return "running";
247
+ return "stale_runtime";
224
248
  }
225
249
  if (lastStatus === "completed" || lastStatus === "failed" || lastStatus === "skipped") {
226
250
  return lastStatus;
227
251
  }
228
252
  return "idle";
229
253
  }
254
+ function isRuntimeStale(runtime, checkProcessAlive, now) {
255
+ if (!checkProcessAlive(runtime.pid)) {
256
+ return true;
257
+ }
258
+ return (now.getTime() - new Date(runtime.lastHeartbeatAt).getTime() >
259
+ STALE_HEARTBEAT_THRESHOLD_MS);
260
+ }
261
+ function selectRuntimeEntries(entries, runId) {
262
+ const selected = runId === undefined
263
+ ? [...entries]
264
+ : entries.filter((entry) => entry.runId === runId);
265
+ return selected.sort((left, right) => {
266
+ if (left.runId === null && right.runId !== null) {
267
+ return -1;
268
+ }
269
+ if (left.runId !== null && right.runId === null) {
270
+ return 1;
271
+ }
272
+ return left.projection.startedAt.localeCompare(right.projection.startedAt);
273
+ });
274
+ }
230
275
  function buildRoutineStateDto(stateEntry) {
231
276
  if (!stateEntry) {
232
277
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"routine-status-query-service.js","sourceRoot":"","sources":["../../src/application/routine-status-query-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routine-status-query-service.js","sourceRoot":"","sources":["../../src/application/routine-status-query-service.ts"],"names":[],"mappings":"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"}
package/dist/bin/relay.js CHANGED
@@ -513,6 +513,7 @@ export async function handleRoutineCommand(command, dependencies) {
513
513
  cwd: dependencies.cwd,
514
514
  forceResume: command.forceResume,
515
515
  vars: command.vars,
516
+ allowConcurrent: command.allowConcurrent,
516
517
  });
517
518
  }
518
519
  finally {
@@ -541,6 +542,7 @@ export async function handleRoutineCommand(command, dependencies) {
541
542
  triggerTime: now,
542
543
  vars: command.vars,
543
544
  cwd: dependencies.cwd,
545
+ allowConcurrent: command.allowConcurrent,
544
546
  });
545
547
  }
546
548
  finally {
@@ -623,7 +625,10 @@ export async function handleRoutineCommand(command, dependencies) {
623
625
  dependencies.stdout.write(renderRoutineList(await service.list(), command.format ?? "table"));
624
626
  return 0;
625
627
  }
626
- dependencies.stdout.write(renderRoutineStatusOutput(await service.status(command.name, { limit: command.limit }), command.format ?? "table"));
628
+ dependencies.stdout.write(renderRoutineStatusOutput(await service.status(command.name, {
629
+ limit: command.limit,
630
+ runId: command.runId,
631
+ }), command.format ?? "table"));
627
632
  return 0;
628
633
  }
629
634
  }
@@ -658,12 +663,12 @@ export function renderHelpText(topic, scriptName = path.basename(fileURLToPath(i
658
663
  const commandName = path.parse(scriptName).name;
659
664
  return [
660
665
  `Usage: ${scriptName} [backend] [--resume <session_id>] [-p <prompt>]`,
661
- ` ${scriptName} routine run <path> [--config <dir>] [--var key=value ...] [--dry-run] [--resume-state <file>] [--force-resume] [--allow-command-run]`,
666
+ ` ${scriptName} routine run <path> [--config <dir>] [--var key=value ...] [--dry-run] [--resume-state <file>] [--force-resume] [--allow-command-run] [--allow-concurrent]`,
662
667
  ` ${scriptName} routine start [--config <dir>] [--daemon] [--allow-command-run]`,
663
668
  ` ${scriptName} routine stop`,
664
669
  ` ${scriptName} routine cleanup [--config <dir>] [--dry-run]`,
665
670
  ` ${scriptName} routine list [--config <dir>] [--format <table|tsv|json>]`,
666
- ` ${scriptName} routine status [name] [--config <dir>] [--format <table|tsv|json>] [--limit <n>]`,
671
+ ` ${scriptName} routine status [name] [--config <dir>] [--format <table|tsv|json>] [--limit <n>] [--run-id <uuid>]`,
667
672
  ` ${scriptName} chat setup (--slack | --discord) [--tokens-only]`,
668
673
  ` ${scriptName} chat start [--foreground]`,
669
674
  ` ${scriptName} chat stop`,
@@ -838,6 +843,7 @@ function renderRoutineHelp(topic, scriptName) {
838
843
  "Options:",
839
844
  " --config <dir> Override the routine config directory",
840
845
  " --allow-command-run Allow trusted workflows that declare command.run",
846
+ " --allow-concurrent Ignore routine lease locking and allow parallel runs of the same YAML",
841
847
  " --resume-state <file> Resume a loop-capable routine from checkpoint state",
842
848
  " --force-resume Override workflow digest mismatch during resume",
843
849
  " --dry-run Render routine structure without executing it",
@@ -907,6 +913,7 @@ function renderRoutineHelp(topic, scriptName) {
907
913
  " --config <dir> Override the routine config directory",
908
914
  " --format <fmt> Output format (table, tsv, json)",
909
915
  " --limit <n> Limit the number of status log entries (default: 10)",
916
+ " --run-id <uuid> Show one active runtime by routine run id",
910
917
  " -h, --help Show this help",
911
918
  "",
912
919
  allSubcommandsReference,
@@ -935,11 +942,13 @@ function renderRoutineAggregateHelp(scriptName) {
935
942
  " --format <fmt> Output format for `routine list` and `routine status` (table, tsv, json)",
936
943
  " --daemon Start the daemon in the background",
937
944
  " --allow-command-run Allow trusted workflows that declare command.run",
945
+ " --allow-concurrent Ignore routine lease locking for `routine run` only",
938
946
  " --resume-state <file> Resume a loop-capable routine from checkpoint state",
939
947
  " --force-resume Override workflow digest mismatch during resume",
940
948
  " --dry-run Render routine structure or cleanup targets without executing deletion",
941
949
  " --var key=value Set template variables for one routine run",
942
950
  " --limit <n> Limit the number of status log entries (default: 10)",
951
+ " --run-id <uuid> Show one active runtime by routine run id",
943
952
  " -h, --help Show this help",
944
953
  ].join("\n");
945
954
  }
@@ -1432,12 +1441,7 @@ function renderRoutineStatus(entry) {
1432
1441
  ...(entry.warnings.length > 0
1433
1442
  ? ["Warnings:", ...entry.warnings.map((warning) => ` - ${warning}`)]
1434
1443
  : []),
1435
- ...(entry.runtime
1436
- ? [
1437
- `Running pid: ${entry.runtime.pid}`,
1438
- `Runtime started: ${entry.runtime.startedAt}`,
1439
- ]
1440
- : []),
1444
+ ...renderRoutineRuntimeLines(entry),
1441
1445
  "",
1442
1446
  "Recent events:",
1443
1447
  ...(entry.recentExecutions.length > 0
@@ -1462,6 +1466,8 @@ function renderRoutineStatusJson(entry) {
1462
1466
  lastScheduledAt: entry.lastScheduledAt,
1463
1467
  workflowPath: entry.state?.workflowPath ?? null,
1464
1468
  lastStatus: entry.state?.lastStatus ?? null,
1469
+ runtime: entry.runtime ?? null,
1470
+ additionalRuntimes: entry.additionalRuntimes ?? [],
1465
1471
  recentEvents: entry.recentExecutions.map((event) => ({
1466
1472
  ...(event.details ?? {}),
1467
1473
  timestamp: event.timestamp,
@@ -1470,10 +1476,29 @@ function renderRoutineStatusJson(entry) {
1470
1476
  };
1471
1477
  return `${JSON.stringify(payload, null, 2)}\n`;
1472
1478
  }
1479
+ function renderRoutineRuntimeLines(entry) {
1480
+ const runtimes = entry.runtime
1481
+ ? [entry.runtime, ...(entry.additionalRuntimes ?? [])]
1482
+ : [];
1483
+ if (runtimes.length === 0) {
1484
+ return [];
1485
+ }
1486
+ if (runtimes.length === 1) {
1487
+ return [
1488
+ `Running pid: ${runtimes[0].pid}`,
1489
+ `Runtime started: ${runtimes[0].startedAt}`,
1490
+ ];
1491
+ }
1492
+ return [
1493
+ "Active runs:",
1494
+ ...runtimes.map((runtime) => ` - ${runtime.routineRunId} pid=${runtime.pid} started=${runtime.startedAt} heartbeat=${runtime.lastHeartbeatAt}`),
1495
+ ];
1496
+ }
1473
1497
  function renderRoutineStatusTsv(entry) {
1474
1498
  const definition = entry.definition;
1499
+ const runtimeRunCount = entry.runtime ? 1 + (entry.additionalRuntimes?.length ?? 0) : 0;
1475
1500
  const lines = [
1476
- "NAME\tSTATUS\tYAML\tSCHEDULE\tMISSED\tNEXT_SCHEDULED\tLAST_EXECUTED\tLAST_SCHEDULED\tWORKFLOW_PATH\tLAST_STATUS",
1501
+ "NAME\tSTATUS\tYAML\tSCHEDULE\tMISSED\tNEXT_SCHEDULED\tLAST_EXECUTED\tLAST_SCHEDULED\tWORKFLOW_PATH\tLAST_STATUS\tRUNTIME_RUN_COUNT",
1477
1502
  [
1478
1503
  entry.name,
1479
1504
  entry.status,
@@ -1485,6 +1510,7 @@ function renderRoutineStatusTsv(entry) {
1485
1510
  formatOptionalTimestamp(entry.lastScheduledAt),
1486
1511
  entry.state?.workflowPath ?? "-",
1487
1512
  entry.state?.lastStatus ?? "-",
1513
+ String(runtimeRunCount),
1488
1514
  ].join("\t"),
1489
1515
  ];
1490
1516
  return `${lines.join("\n")}\n`;