@cadenza.io/core 1.11.6 → 1.11.8
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.mts +7 -5
- package/dist/index.d.ts +7 -5
- package/dist/index.js +45 -23
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +45 -23
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -38,6 +38,7 @@ var SignalBroker = class _SignalBroker {
|
|
|
38
38
|
// execId -> emitted signals
|
|
39
39
|
constructor() {
|
|
40
40
|
this.debug = false;
|
|
41
|
+
this.verbose = false;
|
|
41
42
|
this.signalObservers = /* @__PURE__ */ new Map();
|
|
42
43
|
this.emitStacks = /* @__PURE__ */ new Map();
|
|
43
44
|
this.addSignal("meta.signal_broker.added");
|
|
@@ -55,6 +56,9 @@ var SignalBroker = class _SignalBroker {
|
|
|
55
56
|
setDebug(value) {
|
|
56
57
|
this.debug = value;
|
|
57
58
|
}
|
|
59
|
+
setVerbose(value) {
|
|
60
|
+
this.verbose = value;
|
|
61
|
+
}
|
|
58
62
|
validateSignalName(signalName) {
|
|
59
63
|
if (signalName.length > 100) {
|
|
60
64
|
throw new Error(
|
|
@@ -158,8 +162,10 @@ var SignalBroker = class _SignalBroker {
|
|
|
158
162
|
}
|
|
159
163
|
}
|
|
160
164
|
execute(signal, context) {
|
|
165
|
+
var _a;
|
|
161
166
|
const isMeta = signal.startsWith("meta.");
|
|
162
167
|
const isSubMeta = signal.startsWith("sub_meta.");
|
|
168
|
+
const isMetric = (_a = context.__signalEmission) == null ? void 0 : _a.isMetric;
|
|
163
169
|
if (!isSubMeta && (!isMeta || this.debug)) {
|
|
164
170
|
const emittedAt = Date.now();
|
|
165
171
|
context.__signalEmission = {
|
|
@@ -176,7 +182,7 @@ var SignalBroker = class _SignalBroker {
|
|
|
176
182
|
} else {
|
|
177
183
|
delete context.__signalEmission;
|
|
178
184
|
}
|
|
179
|
-
if (this.debug) {
|
|
185
|
+
if (this.debug && (!isMetric || this.verbose)) {
|
|
180
186
|
console.log(
|
|
181
187
|
`Emitting signal ${signal} with context ${JSON.stringify(context)}`
|
|
182
188
|
);
|
|
@@ -625,23 +631,22 @@ var SignalEmitter = class {
|
|
|
625
631
|
this.silent = silent;
|
|
626
632
|
}
|
|
627
633
|
/**
|
|
628
|
-
* Emits a signal via the broker
|
|
634
|
+
* Emits a signal via the broker.
|
|
629
635
|
* @param signal The signal name.
|
|
630
636
|
* @param data Optional payload (defaults to empty object).
|
|
631
|
-
* @edge No emission if silent; for metrics in silent mode, consider override or separate method.
|
|
632
637
|
*/
|
|
633
638
|
emit(signal, data = {}) {
|
|
634
|
-
if (this.silent) {
|
|
635
|
-
return;
|
|
636
|
-
}
|
|
637
639
|
Cadenza.broker.emit(signal, data);
|
|
638
640
|
}
|
|
639
641
|
/**
|
|
640
|
-
* Emits a signal via the broker
|
|
642
|
+
* Emits a signal via the broker if not silent.
|
|
641
643
|
* @param signal The signal name.
|
|
642
644
|
* @param data Optional payload (defaults to empty object).
|
|
643
645
|
*/
|
|
644
|
-
|
|
646
|
+
emitMetrics(signal, data = {}) {
|
|
647
|
+
if (this.silent) {
|
|
648
|
+
return;
|
|
649
|
+
}
|
|
645
650
|
Cadenza.broker.emit(signal, data);
|
|
646
651
|
}
|
|
647
652
|
};
|
|
@@ -747,7 +752,7 @@ var GraphNode = class _GraphNode extends SignalEmitter {
|
|
|
747
752
|
layer.add(this);
|
|
748
753
|
const context = this.context.getFullContext();
|
|
749
754
|
const scheduledAt = Date.now();
|
|
750
|
-
this.
|
|
755
|
+
this.emitMetricsWithMetadata("meta.node.scheduled", {
|
|
751
756
|
data: {
|
|
752
757
|
uuid: this.id,
|
|
753
758
|
routineExecutionId: this.routineExecId,
|
|
@@ -762,7 +767,7 @@ var GraphNode = class _GraphNode extends SignalEmitter {
|
|
|
762
767
|
}
|
|
763
768
|
});
|
|
764
769
|
this.previousNodes.forEach((node) => {
|
|
765
|
-
this.
|
|
770
|
+
this.emitMetricsWithMetadata("meta.node.mapped", {
|
|
766
771
|
data: {
|
|
767
772
|
taskExecutionId: this.id,
|
|
768
773
|
previousTaskExecutionId: node.id,
|
|
@@ -774,7 +779,7 @@ var GraphNode = class _GraphNode extends SignalEmitter {
|
|
|
774
779
|
}
|
|
775
780
|
});
|
|
776
781
|
if (node.failed || node.errored) {
|
|
777
|
-
this.
|
|
782
|
+
this.emitMetricsWithMetadata("meta.node.failed_mapped", {
|
|
778
783
|
data: {
|
|
779
784
|
executionCount: "increment"
|
|
780
785
|
},
|
|
@@ -786,7 +791,7 @@ var GraphNode = class _GraphNode extends SignalEmitter {
|
|
|
786
791
|
}
|
|
787
792
|
});
|
|
788
793
|
if (((_a = context.__signalEmission) == null ? void 0 : _a.consumed) === false && (!this.isMeta() || this.debug)) {
|
|
789
|
-
this.
|
|
794
|
+
this.emitMetricsWithMetadata("meta.node.consumed_signal", {
|
|
790
795
|
data: {
|
|
791
796
|
signalName: context.__signalEmission.signalName,
|
|
792
797
|
taskId: this.task.id,
|
|
@@ -804,7 +809,7 @@ var GraphNode = class _GraphNode extends SignalEmitter {
|
|
|
804
809
|
this.executionStart = Date.now();
|
|
805
810
|
}
|
|
806
811
|
if (this.previousNodes.length === 0) {
|
|
807
|
-
this.
|
|
812
|
+
this.emitMetricsWithMetadata("meta.node.started_routine_execution", {
|
|
808
813
|
data: {
|
|
809
814
|
isRunning: true,
|
|
810
815
|
started: formatTimestamp(this.executionStart)
|
|
@@ -815,7 +820,7 @@ var GraphNode = class _GraphNode extends SignalEmitter {
|
|
|
815
820
|
if (this.debug) {
|
|
816
821
|
this.log();
|
|
817
822
|
}
|
|
818
|
-
this.
|
|
823
|
+
this.emitMetricsWithMetadata("meta.node.started", {
|
|
819
824
|
data: {
|
|
820
825
|
isRunning: true,
|
|
821
826
|
started: formatTimestamp(this.executionStart)
|
|
@@ -833,7 +838,7 @@ var GraphNode = class _GraphNode extends SignalEmitter {
|
|
|
833
838
|
this.executionTime = end - this.executionStart;
|
|
834
839
|
const context = this.context.getFullContext();
|
|
835
840
|
if (this.errored || this.failed) {
|
|
836
|
-
this.
|
|
841
|
+
this.emitMetricsWithMetadata("meta.node.errored", {
|
|
837
842
|
data: {
|
|
838
843
|
isRunning: false,
|
|
839
844
|
errored: this.errored,
|
|
@@ -843,7 +848,7 @@ var GraphNode = class _GraphNode extends SignalEmitter {
|
|
|
843
848
|
filter: { uuid: this.id }
|
|
844
849
|
});
|
|
845
850
|
}
|
|
846
|
-
this.
|
|
851
|
+
this.emitMetricsWithMetadata("meta.node.ended", {
|
|
847
852
|
data: {
|
|
848
853
|
isRunning: false,
|
|
849
854
|
isComplete: true,
|
|
@@ -857,7 +862,7 @@ var GraphNode = class _GraphNode extends SignalEmitter {
|
|
|
857
862
|
filter: { uuid: this.id }
|
|
858
863
|
});
|
|
859
864
|
if (this.graphDone()) {
|
|
860
|
-
this.
|
|
865
|
+
this.emitMetricsWithMetadata(
|
|
861
866
|
`meta.node.ended_routine_execution:${this.routineExecId}`,
|
|
862
867
|
{
|
|
863
868
|
data: {
|
|
@@ -930,7 +935,6 @@ var GraphNode = class _GraphNode extends SignalEmitter {
|
|
|
930
935
|
}
|
|
931
936
|
}
|
|
932
937
|
emitWithMetadata(signal, ctx) {
|
|
933
|
-
if (this.silent) return;
|
|
934
938
|
const data = { ...ctx };
|
|
935
939
|
if (!this.task.isHidden) {
|
|
936
940
|
data.__signalEmission = {
|
|
@@ -943,10 +947,24 @@ var GraphNode = class _GraphNode extends SignalEmitter {
|
|
|
943
947
|
}
|
|
944
948
|
this.emit(signal, data);
|
|
945
949
|
}
|
|
950
|
+
emitMetricsWithMetadata(signal, ctx) {
|
|
951
|
+
const data = { ...ctx };
|
|
952
|
+
if (!this.task.isHidden) {
|
|
953
|
+
data.__signalEmission = {
|
|
954
|
+
taskId: this.task.id,
|
|
955
|
+
taskExecutionId: this.id,
|
|
956
|
+
isMetric: true
|
|
957
|
+
};
|
|
958
|
+
data.__metadata = {
|
|
959
|
+
__routineExecId: this.routineExecId
|
|
960
|
+
};
|
|
961
|
+
}
|
|
962
|
+
this.emitMetrics(signal, data);
|
|
963
|
+
}
|
|
946
964
|
onProgress(progress) {
|
|
947
965
|
var _a, _b;
|
|
948
966
|
progress = Math.min(Math.max(0, progress), 1);
|
|
949
|
-
this.
|
|
967
|
+
this.emitMetricsWithMetadata("meta.node.progress", {
|
|
950
968
|
data: {
|
|
951
969
|
progress
|
|
952
970
|
},
|
|
@@ -954,7 +972,7 @@ var GraphNode = class _GraphNode extends SignalEmitter {
|
|
|
954
972
|
uuid: this.id
|
|
955
973
|
}
|
|
956
974
|
});
|
|
957
|
-
this.
|
|
975
|
+
this.emitMetricsWithMetadata(
|
|
958
976
|
`meta.node.routine_execution_progress:${this.routineExecId}`,
|
|
959
977
|
{
|
|
960
978
|
data: {
|
|
@@ -1235,8 +1253,7 @@ var GraphNode = class _GraphNode extends SignalEmitter {
|
|
|
1235
1253
|
console.log(
|
|
1236
1254
|
"Node execution:",
|
|
1237
1255
|
this.task.name,
|
|
1238
|
-
JSON.stringify(this.context.getFullContext())
|
|
1239
|
-
this.routineExecId
|
|
1256
|
+
JSON.stringify(this.context.getFullContext())
|
|
1240
1257
|
);
|
|
1241
1258
|
}
|
|
1242
1259
|
};
|
|
@@ -2217,7 +2234,7 @@ var GraphRunner = class extends SignalEmitter {
|
|
|
2217
2234
|
const routineExecId = (_a = context.__routineExecId) != null ? _a : uuid6();
|
|
2218
2235
|
context.__routineExecId = routineExecId;
|
|
2219
2236
|
if (!isSubMeta) {
|
|
2220
|
-
this.
|
|
2237
|
+
this.emitMetrics("meta.runner.added_tasks", {
|
|
2221
2238
|
data: {
|
|
2222
2239
|
uuid: routineExecId,
|
|
2223
2240
|
name: routineName,
|
|
@@ -3008,6 +3025,11 @@ var Cadenza = class {
|
|
|
3008
3025
|
this.broker.setDebug(true);
|
|
3009
3026
|
this.runner.setDebug(true);
|
|
3010
3027
|
}
|
|
3028
|
+
if (mode === "verbose") {
|
|
3029
|
+
this.broker.setDebug(true);
|
|
3030
|
+
this.broker.setVerbose(true);
|
|
3031
|
+
this.runner.setDebug(true);
|
|
3032
|
+
}
|
|
3011
3033
|
}
|
|
3012
3034
|
/**
|
|
3013
3035
|
* Validates a name for uniqueness and non-emptiness.
|