@blokjs/runner 0.6.17 → 0.6.19

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.
@@ -21,6 +21,7 @@ import { DebounceCoordinator } from "./scheduling/DebounceCoordinator";
21
21
  import { DeferredDispatchSignal } from "./scheduling/DeferredDispatchSignal";
22
22
  import { DeferredRunScheduler } from "./scheduling/DeferredRunScheduler";
23
23
  import { readSchedulingConfig } from "./scheduling/readSchedulingConfig";
24
+ import { Janitor } from "./tracing/Janitor";
24
25
  import { RunTracker } from "./tracing/RunTracker";
25
26
  import { TracingLogger } from "./tracing/TracingLogger";
26
27
  import { getEnvForCtx } from "./utils/envAllowlist";
@@ -93,8 +94,16 @@ export default class TriggerBase extends Trigger {
93
94
  getConfiguration() {
94
95
  return new Configuration();
95
96
  }
96
- getRunner() {
97
- return new Runner(this.configuration.steps);
97
+ /**
98
+ * F2 (additive) — accept an optional `configuration` override so callers
99
+ * that resolve a fresh per-invocation `Configuration` (e.g. the worker
100
+ * trigger under `concurrency > 1`) read the same object they initialized,
101
+ * instead of the shared `this.configuration` instance that a concurrent
102
+ * job may have mutated. Defaults to `this.configuration` so every existing
103
+ * caller is unaffected.
104
+ */
105
+ getRunner(configuration = this.configuration) {
106
+ return new Runner(configuration.steps);
98
107
  }
99
108
  /**
100
109
  * Tier 2 #5+#7 follow-up — durable scheduler hook.
@@ -146,14 +155,21 @@ export default class TriggerBase extends Trigger {
146
155
  * workflow because they share the same ctx. Middleware authors
147
156
  * short-circuit via `@blokjs/throw` — the throw propagates to the
148
157
  * caller's outer catch, and the main workflow does NOT run.
158
+ *
159
+ * F2 (additive) — `configuration` defaults to the shared `this.configuration`
160
+ * so HTTP/cron/etc. are unchanged. The worker trigger, which resolves a
161
+ * fresh per-job `Configuration` (and no longer initializes the shared one),
162
+ * MUST pass it here; otherwise trigger-level (`trigger.worker.middleware`)
163
+ * and workflow-level (`appliedMiddleware`) names would be read off the
164
+ * never-initialized shared instance and silently dropped.
149
165
  */
150
- async applyMiddlewareChain(ctx, nodeMap) {
166
+ async applyMiddlewareChain(ctx, nodeMap, configuration = this.configuration) {
151
167
  const triggerType = this.getTriggerType();
152
- const triggerCfg = this.configuration.trigger?.[triggerType];
168
+ const triggerCfg = configuration.trigger?.[triggerType];
153
169
  const triggerLevel = Array.isArray(triggerCfg?.middleware)
154
170
  ? triggerCfg.middleware.filter((n) => typeof n === "string" && n.length > 0)
155
171
  : [];
156
- const workflowLevel = this.configuration.appliedMiddleware ?? [];
172
+ const workflowLevel = configuration.appliedMiddleware ?? [];
157
173
  const globalLevel = WorkflowRegistry.getInstance().getGlobalMiddleware();
158
174
  const middlewareNames = [...globalLevel, ...workflowLevel, ...triggerLevel];
159
175
  if (middlewareNames.length > 0) {
@@ -195,7 +211,7 @@ export default class TriggerBase extends Trigger {
195
211
  .filter((e) => e.isMiddleware)
196
212
  .map((e) => e.name);
197
213
  const knownStr = known.length > 0 ? known.join(", ") : "(none registered)";
198
- throw new Error(`[blok] middleware "${mwName}" not found in WorkflowRegistry. Available middleware: ${knownStr}. Make sure the middleware workflow has \`"middleware": true\` set at the workflow root and is in a scanned WORKFLOWS_PATH directory.`);
214
+ throw new Error(`[blok] middleware "${mwName}" not found in WorkflowRegistry. Available middleware: ${knownStr}. Check that (a) the chain entry name "${mwName}" exactly matches a registered workflow's \`name\` (typos in \`BLOK_GLOBAL_MIDDLEWARE\`/\`setGlobalMiddleware()\`/\`trigger.<kind>.middleware\` are the most common cause), and (b) that workflow has \`"middleware": true\` set at the workflow root and was registered — via a scanned \`WORKFLOWS_PATH\` directory, a TypeScript \`src/Workflows.ts\` entry, or a worker/cron nodeMap registration.`);
199
215
  }
200
216
  const mwConfig = new Configuration();
201
217
  await mwConfig.init(mwName, nodeMap, entry.workflow);
@@ -408,6 +424,122 @@ export default class TriggerBase extends Trigger {
408
424
  }
409
425
  return flipped;
410
426
  }
427
+ /**
428
+ * F5 — install the full set of process-level operational handlers in
429
+ * one call so every trigger family gets uniform run-state integrity +
430
+ * storage hygiene, not just HTTP and Worker.
431
+ *
432
+ * Composes the four existing, independently-idempotent/kill-switched
433
+ * primitives:
434
+ * 1. `installCrashHandlers` — flip in-flight `running` runs to
435
+ * `crashed` on uncaughtException / unhandledRejection.
436
+ * 2. `recoverOrphanedRuns` — boot scan flipping stale `running` runs
437
+ * (SIGKILL/OOM deaths) to `crashed`.
438
+ * 3. `Janitor` — periodic purge of expired idempotency /
439
+ * concurrency / scheduled-dispatch rows.
440
+ * 4. `installShutdownHandlers` — SIGTERM/SIGINT drain.
441
+ *
442
+ * Each step is wrapped in try/catch so a failure in one doesn't block
443
+ * the others. Safe to call from every trigger's `listen()` — the
444
+ * underlying handlers install at most once per process.
445
+ */
446
+ installOperationalHandlers(logger) {
447
+ try {
448
+ TriggerBase.installCrashHandlers(logger);
449
+ const orphaned = TriggerBase.recoverOrphanedRuns(undefined, logger);
450
+ if (orphaned > 0) {
451
+ logger?.log?.(`[blok][crash-autoflip] flipped ${orphaned} orphaned run(s) to crashed on boot`);
452
+ }
453
+ }
454
+ catch (err) {
455
+ logger?.error?.(`[blok][crash-autoflip] setup failed: ${err instanceof Error ? err.message : String(err)}`);
456
+ }
457
+ try {
458
+ Janitor.getInstance(RunTracker.getInstance().getStore(), logger).start();
459
+ }
460
+ catch (err) {
461
+ logger?.error?.(`[blok][janitor] setup failed: ${err instanceof Error ? err.message : String(err)}`);
462
+ }
463
+ try {
464
+ TriggerBase.installShutdownHandlers(this, logger);
465
+ }
466
+ catch (err) {
467
+ logger?.error?.(`[blok][shutdown] setup failed: ${err instanceof Error ? err.message : String(err)}`);
468
+ }
469
+ }
470
+ /**
471
+ * F6 — populate the `WorkflowRegistry` from `this.nodeMap.workflows`
472
+ * so worker/cron/grpc-only deployments resolve `subworkflow:` steps,
473
+ * trigger-level middleware, and process-global middleware just like
474
+ * HTTP-hosted ones.
475
+ *
476
+ * Every entry's `name` is read from the workflow's `_config.name`
477
+ * (v2 builder) or `name` (legacy/raw), falling back to the locator
478
+ * map key. `isMiddleware` is derived from `middleware === true`
479
+ * (checked on both the root and `_config`, covering JSON, raw object
480
+ * literals, legacy `Workflow()` and v2 `workflow()` builders).
481
+ *
482
+ * Dedupes by name (last registration wins is avoided — first wins,
483
+ * matching the HTTP route-table loop) and swallows per-entry
484
+ * collisions so a single bad workflow can't abort boot.
485
+ *
486
+ * Returns the number of workflows registered (for observability/tests).
487
+ */
488
+ registerWorkflowsFromNodeMap(logger) {
489
+ const nodeMap = this.nodeMap;
490
+ const workflows = nodeMap?.workflows;
491
+ if (!workflows)
492
+ return 0;
493
+ const registry = WorkflowRegistry.getInstance();
494
+ const seen = new Set();
495
+ let registered = 0;
496
+ for (const [key, wf] of Object.entries(workflows)) {
497
+ const w = wf;
498
+ const name = typeof w?._config?.name === "string"
499
+ ? w._config.name
500
+ : typeof w?.name === "string"
501
+ ? w.name
502
+ : key;
503
+ if (!name || seen.has(name) || registry.has(name))
504
+ continue;
505
+ seen.add(name);
506
+ const isMiddleware = w?.middleware === true || w?._config?.middleware === true;
507
+ try {
508
+ registry.register({ name, source: key, workflow: wf, isMiddleware });
509
+ registered++;
510
+ }
511
+ catch (err) {
512
+ logger?.error?.(`[blok] failed to register workflow "${name}" in WorkflowRegistry: ${err instanceof Error ? err.message : String(err)}`);
513
+ }
514
+ }
515
+ if (registered > 0) {
516
+ logger?.log?.(`[blok] workflow registry — ${registered} workflow(s) registered from nodeMap`);
517
+ }
518
+ return registered;
519
+ }
520
+ /**
521
+ * F14 — seed the process-global middleware chain from the
522
+ * `BLOK_GLOBAL_MIDDLEWARE` env var. Lifted out of `HttpTrigger.listen()`
523
+ * so worker/cron/grpc-only deployments honor the documented env-var
524
+ * fallback too.
525
+ *
526
+ * Guarded by the existing `getGlobalMiddleware().length === 0`
527
+ * idempotency check so a programmatic `setGlobalMiddleware([...])`
528
+ * always takes precedence over the env var (and repeated calls across
529
+ * co-hosted triggers are no-ops).
530
+ */
531
+ seedGlobalMiddlewareFromEnv(logger) {
532
+ const registry = WorkflowRegistry.getInstance();
533
+ if (registry.getGlobalMiddleware().length > 0 || !process.env.BLOK_GLOBAL_MIDDLEWARE)
534
+ return;
535
+ const fromEnv = process.env.BLOK_GLOBAL_MIDDLEWARE.split(",")
536
+ .map((s) => s.trim())
537
+ .filter((s) => s.length > 0);
538
+ if (fromEnv.length === 0)
539
+ return;
540
+ registry.setGlobalMiddleware(fromEnv);
541
+ logger?.log?.(`[blok] global middleware registered from BLOK_GLOBAL_MIDDLEWARE env: ${fromEnv.join(", ")}`);
542
+ }
411
543
  // --- Hot Module Replacement ---
412
544
  /**
413
545
  * Enable hot reload for this trigger. Only active in development
@@ -520,9 +652,16 @@ export default class TriggerBase extends Trigger {
520
652
  this.hmr = null;
521
653
  }
522
654
  }
523
- async run(ctx) {
655
+ async run(ctx, configuration = this.configuration) {
524
656
  this.inFlightRequests++;
525
657
  const runStart = performance.now();
658
+ // F2 (additive) — read all per-invocation workflow state from the
659
+ // `configuration` argument instead of the shared `this.configuration`
660
+ // instance. Defaults to `this.configuration` so HTTP and every other
661
+ // caller is unchanged; the worker trigger passes a fresh per-job
662
+ // `Configuration` so concurrent jobs (`concurrency > 1`) never read a
663
+ // step list / name / trigger config another job's `init()` overwrote.
664
+ const cfg = configuration;
526
665
  let runSuccess = true;
527
666
  // Tier 2 #6 — concurrency lock claim, populated when the gate grants
528
667
  // a slot. Released in the `finally` block. Null when the workflow has
@@ -644,8 +783,8 @@ export default class TriggerBase extends Trigger {
644
783
  }
645
784
  }
646
785
  else if (tracker.active) {
647
- const runner = this.getRunner();
648
- const stepCount = runner.getStepCount?.() ?? this.configuration.steps?.length ?? 0;
786
+ const runner = this.getRunner(cfg);
787
+ const stepCount = runner.getStepCount?.() ?? cfg.steps?.length ?? 0;
649
788
  // Tier 1 · replay lineage. The replay endpoint
650
789
  // (TraceRouter.POST /__blok/runs/:id/replay) sets
651
790
  // `X-Blok-Replay-Of: <originalRunId>` on the dispatched HTTP
@@ -666,7 +805,7 @@ export default class TriggerBase extends Trigger {
666
805
  const parentRunId = pickHeader(reqHeaders, "x-blok-parent-run-id");
667
806
  const parentNodeRunId = pickHeader(reqHeaders, "x-blok-parent-node-run-id");
668
807
  const run = tracker.startRun({
669
- workflowName: this.configuration.name || ctx.workflow_name || "unknown",
808
+ workflowName: cfg.name || ctx.workflow_name || "unknown",
670
809
  workflowPath: ctx.workflow_path || "",
671
810
  triggerType: this.constructor.name.replace("Trigger", "").toLowerCase() || "unknown",
672
811
  triggerSummary: this.buildTraceTriggerSummary(ctx),
@@ -709,7 +848,7 @@ export default class TriggerBase extends Trigger {
709
848
  // - `BLOK_SCHEDULING_DISABLED=1` (kill-switch).
710
849
  const isReentry = ctx._blokDispatchReentry === true;
711
850
  if (!isReentry && traceRunId && process.env.BLOK_SCHEDULING_DISABLED !== "1") {
712
- const schedCfg = readSchedulingConfig(this.configuration.trigger);
851
+ const schedCfg = readSchedulingConfig(cfg.trigger);
713
852
  if (schedCfg) {
714
853
  const signal = await this.maybeDeferRun(ctx, traceRunId, schedCfg);
715
854
  if (signal)
@@ -725,11 +864,11 @@ export default class TriggerBase extends Trigger {
725
864
  // idempotency-cache semantics)
726
865
  // - `BLOK_CONCURRENCY_DISABLED=1` (kill-switch).
727
866
  if (traceRunId && process.env.BLOK_CONCURRENCY_DISABLED !== "1") {
728
- const concCfg = readConcurrencyConfig(this.configuration.trigger);
867
+ const concCfg = readConcurrencyConfig(cfg.trigger);
729
868
  if (concCfg) {
730
869
  const resolvedKey = resolveIdempotencyKey(concCfg.keyExpression, ctx);
731
870
  if (resolvedKey !== null) {
732
- const workflowName = this.configuration.name || ctx.workflow_name || "unknown";
871
+ const workflowName = cfg.name || ctx.workflow_name || "unknown";
733
872
  const now = Date.now();
734
873
  const result = await tracker.acquireConcurrencySlot(workflowName, resolvedKey, concCfg.limit, traceRunId, now + concCfg.leaseMs);
735
874
  if (!result.acquired) {
@@ -899,7 +1038,7 @@ export default class TriggerBase extends Trigger {
899
1038
  });
900
1039
  const globalMetrics = new Metrics();
901
1040
  globalMetrics.start();
902
- const runner = this.getRunner();
1041
+ const runner = this.getRunner(cfg);
903
1042
  const context = await runner.run(ctx);
904
1043
  globalMetrics.retry();
905
1044
  globalMetrics.stop();
@@ -908,62 +1047,62 @@ export default class TriggerBase extends Trigger {
908
1047
  ctx.logger.log(`Memory average: ${average.memory.total.toFixed(2)}MB, min: ${average.memory.min.toFixed(2)}MB, max: ${average.memory.max.toFixed(2)}MB`);
909
1048
  workflow_execution.add(1, {
910
1049
  env: process.env.NODE_ENV,
911
- workflow_version: `${this.configuration.version}`,
912
- workflow_name: `${this.configuration.name}`,
1050
+ workflow_version: `${cfg.version}`,
1051
+ workflow_name: `${cfg.name}`,
913
1052
  workflow_path: `${ctx.workflow_path}`,
914
1053
  });
915
1054
  workflow_runner_time.record(end - start, {
916
1055
  env: process.env.NODE_ENV,
917
- workflow_version: `${this.configuration.version}`,
918
- workflow_name: `${this.configuration.name}`,
1056
+ workflow_version: `${cfg.version}`,
1057
+ workflow_name: `${cfg.name}`,
919
1058
  workflow_path: `${ctx.workflow_path}`,
920
1059
  });
921
1060
  workflow_memory.record(average.memory.max, {
922
1061
  env: process.env.NODE_ENV,
923
- workflow_version: `${this.configuration.version}`,
924
- workflow_name: `${this.configuration.name}`,
1062
+ workflow_version: `${cfg.version}`,
1063
+ workflow_name: `${cfg.name}`,
925
1064
  workflow_path: `${ctx.workflow_path}`,
926
1065
  });
927
1066
  workflow_memory_average.record(average.memory.total, {
928
1067
  env: process.env.NODE_ENV,
929
- workflow_version: `${this.configuration.version}`,
930
- workflow_name: `${this.configuration.name}`,
1068
+ workflow_version: `${cfg.version}`,
1069
+ workflow_name: `${cfg.name}`,
931
1070
  workflow_path: `${ctx.workflow_path}`,
932
1071
  });
933
1072
  workflow_memory_usage_min.record(average.memory.min, {
934
1073
  env: process.env.NODE_ENV,
935
- workflow_version: `${this.configuration.version}`,
936
- workflow_name: `${this.configuration.name}`,
1074
+ workflow_version: `${cfg.version}`,
1075
+ workflow_name: `${cfg.name}`,
937
1076
  workflow_path: `${ctx.workflow_path}`,
938
1077
  });
939
1078
  workflow_memory_total.record(average.memory.global_memory, {
940
1079
  env: process.env.NODE_ENV,
941
- workflow_version: `${this.configuration.version}`,
942
- workflow_name: `${this.configuration.name}`,
1080
+ workflow_version: `${cfg.version}`,
1081
+ workflow_name: `${cfg.name}`,
943
1082
  workflow_path: `${ctx.workflow_path}`,
944
1083
  });
945
1084
  workflow_memory_free.record(average.memory.global_free_memory, {
946
1085
  env: process.env.NODE_ENV,
947
- workflow_version: `${this.configuration.version}`,
948
- workflow_name: `${this.configuration.name}`,
1086
+ workflow_version: `${cfg.version}`,
1087
+ workflow_name: `${cfg.name}`,
949
1088
  workflow_path: `${ctx.workflow_path}`,
950
1089
  });
951
1090
  workflow_cpu.record(average.cpu.usage, {
952
1091
  env: process.env.NODE_ENV,
953
- workflow_version: `${this.configuration.version}`,
954
- workflow_name: `${this.configuration.name}`,
1092
+ workflow_version: `${cfg.version}`,
1093
+ workflow_name: `${cfg.name}`,
955
1094
  workflow_path: `${ctx.workflow_path}`,
956
1095
  });
957
1096
  workflow_cpu_average.record(average.cpu.average, {
958
1097
  env: process.env.NODE_ENV,
959
- workflow_version: `${this.configuration.version}`,
960
- workflow_name: `${this.configuration.name}`,
1098
+ workflow_version: `${cfg.version}`,
1099
+ workflow_name: `${cfg.name}`,
961
1100
  workflow_path: `${ctx.workflow_path}`,
962
1101
  });
963
1102
  workflow_cpu_total.record(average.cpu.total, {
964
1103
  env: process.env.NODE_ENV,
965
- workflow_version: `${this.configuration.version}`,
966
- workflow_name: `${this.configuration.name}`,
1104
+ workflow_version: `${cfg.version}`,
1105
+ workflow_name: `${cfg.name}`,
967
1106
  workflow_path: `${ctx.workflow_path}`,
968
1107
  });
969
1108
  globalMetrics.clear();
@@ -978,8 +1117,8 @@ export default class TriggerBase extends Trigger {
978
1117
  // return when a sample is already on file to avoid an
979
1118
  // unnecessary roundtrip per run.
980
1119
  try {
981
- if (shouldRecordSample(this.configuration.trigger)) {
982
- const workflowName = this.configuration.name || ctx.workflow_name || "";
1120
+ if (shouldRecordSample(cfg.trigger)) {
1121
+ const workflowName = cfg.name || ctx.workflow_name || "";
983
1122
  if (workflowName && !tracker.getWorkflowSample(workflowName)) {
984
1123
  tracker.recordWorkflowSample({
985
1124
  workflowName,
@@ -1014,7 +1153,7 @@ export default class TriggerBase extends Trigger {
1014
1153
  // WaitDispatchRequest so the dispatchDeferred re-entry skips
1015
1154
  // past completed pre-wait steps.
1016
1155
  if (err instanceof WaitDispatchRequest && traceRunId) {
1017
- const workflowName = this.configuration.name || ctx.workflow_name || "unknown";
1156
+ const workflowName = cfg.name || ctx.workflow_name || "unknown";
1018
1157
  const scheduledAt = err.info.scheduledAt;
1019
1158
  const delayMs = Math.max(0, scheduledAt - Date.now());
1020
1159
  tracker.markRunDelayed(traceRunId, { scheduledAt, delayMs });
@@ -1095,8 +1234,8 @@ export default class TriggerBase extends Trigger {
1095
1234
  }
1096
1235
  const durationMs = performance.now() - runStart;
1097
1236
  this.metricsBridge.recordExecution(durationMs, runSuccess, {
1098
- workflow_name: this.configuration.name || "",
1099
- workflow_version: `${this.configuration.version}`,
1237
+ workflow_name: cfg.name || "",
1238
+ workflow_version: `${cfg.version}`,
1100
1239
  env: process.env.NODE_ENV || "development",
1101
1240
  });
1102
1241
  this.inFlightRequests--;
@@ -1335,7 +1474,7 @@ export default class TriggerBase extends Trigger {
1335
1474
  }
1336
1475
  return this.constructor.name.replace("Trigger", "").toLowerCase();
1337
1476
  }
1338
- createContext(logger, blueprintPath, id) {
1477
+ createContext(logger, blueprintPath, id, configuration = this.configuration) {
1339
1478
  const requestId = id || uuid();
1340
1479
  const request = { body: {} };
1341
1480
  const response = { data: "", contentType: "", success: true, error: null };
@@ -1352,13 +1491,13 @@ export default class TriggerBase extends Trigger {
1352
1491
  const abortController = new AbortController();
1353
1492
  const ctx = {
1354
1493
  id: requestId,
1355
- workflow_name: this.configuration.name,
1494
+ workflow_name: configuration.name,
1356
1495
  workflow_path: blueprintPath || "",
1357
- config: this.configuration.nodes,
1496
+ config: configuration.nodes,
1358
1497
  request,
1359
1498
  response,
1360
1499
  error: { message: [] },
1361
- logger: logger || new DefaultLogger(this.configuration.name, blueprintPath, requestId),
1500
+ logger: logger || new DefaultLogger(configuration.name, blueprintPath, requestId),
1362
1501
  eventLogger: null,
1363
1502
  state,
1364
1503
  // vars is a legacy alias of state — same reference, mutations
@@ -1 +1 @@
1
- {"version":3,"file":"TriggerBase.js","sourceRoot":"","sources":["../src/TriggerBase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TriggerBase.js","sourceRoot":"","sources":["../src/TriggerBase.ts"],"names":[],"mappings":"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"}
@@ -56,4 +56,23 @@ export interface RuntimeAdapter {
56
56
  * @returns Promise that resolves to ExecutionResult
57
57
  */
58
58
  execute(node: RunnerNode, ctx: Context): Promise<ExecutionResult>;
59
+ /**
60
+ * v0.7 — enumerate the nodes this runtime exposes, for the node catalog
61
+ * (`GET /__blok/nodes`) + `blokctl nodes list`. Optional: only adapters that
62
+ * can reflect their registry implement it (the gRPC adapter via the
63
+ * `ListNodes` RPC). In-process module nodes are enumerated from the node map
64
+ * by the catalog directly. Schemas are populated per-SDK (SPEC-B P2/P3);
65
+ * until then `inputSchema`/`outputSchema` are `null`.
66
+ */
67
+ listNodes?(): Promise<RuntimeNodeDescriptor[]>;
68
+ }
69
+ /** One node as reported by a runtime's reflection (gRPC `ListNodes`). */
70
+ export interface RuntimeNodeDescriptor {
71
+ name: string;
72
+ description?: string;
73
+ /** JSON Schema (parsed) for the node's input, or `null` if the SDK didn't emit one yet. */
74
+ inputSchema: unknown | null;
75
+ /** JSON Schema (parsed) for the node's output, or `null`. */
76
+ outputSchema: unknown | null;
77
+ tags?: string[];
59
78
  }