@solidactions/sdk 0.1.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.
Files changed (167) hide show
  1. package/.claude/settings.local.json +7 -0
  2. package/.clavix/outputs/dbos-http-sdk/full-prd.md +142 -0
  3. package/.clavix/outputs/dbos-http-sdk/quick-prd.md +12 -0
  4. package/.clavix/outputs/dbos-http-sdk/tasks.md +630 -0
  5. package/.clavix/outputs/prompts/dbos-http-api-20260110-033219.md +91 -0
  6. package/.husky/pre-commit +1 -0
  7. package/.prettierignore +3 -0
  8. package/.prettierrc +9 -0
  9. package/CODE_OF_CONDUCT.md +49 -0
  10. package/CONTRIBUTING.md +47 -0
  11. package/LICENSE +21 -0
  12. package/README.md +172 -0
  13. package/dist/dbos-config.schema.json +132 -0
  14. package/dist/schemas/system_db_schema.d.ts +73 -0
  15. package/dist/schemas/system_db_schema.d.ts.map +1 -0
  16. package/dist/schemas/system_db_schema.js +3 -0
  17. package/dist/schemas/system_db_schema.js.map +1 -0
  18. package/dist/src/adminserver.d.ts +79 -0
  19. package/dist/src/adminserver.d.ts.map +1 -0
  20. package/dist/src/adminserver.js +495 -0
  21. package/dist/src/adminserver.js.map +1 -0
  22. package/dist/src/authdecorators.d.ts +2 -0
  23. package/dist/src/authdecorators.d.ts.map +1 -0
  24. package/dist/src/authdecorators.js +48 -0
  25. package/dist/src/authdecorators.js.map +1 -0
  26. package/dist/src/cli/cli.d.ts +9 -0
  27. package/dist/src/cli/cli.d.ts.map +1 -0
  28. package/dist/src/cli/cli.js +116 -0
  29. package/dist/src/cli/cli.js.map +1 -0
  30. package/dist/src/cli/commands.d.ts +3 -0
  31. package/dist/src/cli/commands.d.ts.map +1 -0
  32. package/dist/src/cli/commands.js +46 -0
  33. package/dist/src/cli/commands.js.map +1 -0
  34. package/dist/src/client.d.ts +85 -0
  35. package/dist/src/client.d.ts.map +1 -0
  36. package/dist/src/client.js +186 -0
  37. package/dist/src/client.js.map +1 -0
  38. package/dist/src/conductor/conductor.d.ts +28 -0
  39. package/dist/src/conductor/conductor.d.ts.map +1 -0
  40. package/dist/src/conductor/conductor.js +376 -0
  41. package/dist/src/conductor/conductor.js.map +1 -0
  42. package/dist/src/conductor/protocol.d.ts +238 -0
  43. package/dist/src/conductor/protocol.d.ts.map +1 -0
  44. package/dist/src/conductor/protocol.js +353 -0
  45. package/dist/src/conductor/protocol.js.map +1 -0
  46. package/dist/src/config.d.ts +91 -0
  47. package/dist/src/config.d.ts.map +1 -0
  48. package/dist/src/config.js +199 -0
  49. package/dist/src/config.js.map +1 -0
  50. package/dist/src/context.d.ts +62 -0
  51. package/dist/src/context.d.ts.map +1 -0
  52. package/dist/src/context.js +118 -0
  53. package/dist/src/context.js.map +1 -0
  54. package/dist/src/database_utils.d.ts +17 -0
  55. package/dist/src/database_utils.d.ts.map +1 -0
  56. package/dist/src/database_utils.js +53 -0
  57. package/dist/src/database_utils.js.map +1 -0
  58. package/dist/src/datasource.d.ts +109 -0
  59. package/dist/src/datasource.d.ts.map +1 -0
  60. package/dist/src/datasource.js +204 -0
  61. package/dist/src/datasource.js.map +1 -0
  62. package/dist/src/dbos-executor.d.ts +189 -0
  63. package/dist/src/dbos-executor.d.ts.map +1 -0
  64. package/dist/src/dbos-executor.js +817 -0
  65. package/dist/src/dbos-executor.js.map +1 -0
  66. package/dist/src/dbos.d.ts +519 -0
  67. package/dist/src/dbos.d.ts.map +1 -0
  68. package/dist/src/dbos.js +1282 -0
  69. package/dist/src/dbos.js.map +1 -0
  70. package/dist/src/debouncer.d.ts +33 -0
  71. package/dist/src/debouncer.d.ts.map +1 -0
  72. package/dist/src/debouncer.js +170 -0
  73. package/dist/src/debouncer.js.map +1 -0
  74. package/dist/src/debugpoint.d.ts +26 -0
  75. package/dist/src/debugpoint.d.ts.map +1 -0
  76. package/dist/src/debugpoint.js +65 -0
  77. package/dist/src/debugpoint.js.map +1 -0
  78. package/dist/src/decorators.d.ts +219 -0
  79. package/dist/src/decorators.d.ts.map +1 -0
  80. package/dist/src/decorators.js +873 -0
  81. package/dist/src/decorators.js.map +1 -0
  82. package/dist/src/error.d.ts +130 -0
  83. package/dist/src/error.d.ts.map +1 -0
  84. package/dist/src/error.js +290 -0
  85. package/dist/src/error.js.map +1 -0
  86. package/dist/src/http_client.d.ts +82 -0
  87. package/dist/src/http_client.d.ts.map +1 -0
  88. package/dist/src/http_client.js +286 -0
  89. package/dist/src/http_client.js.map +1 -0
  90. package/dist/src/http_system_database.d.ts +84 -0
  91. package/dist/src/http_system_database.d.ts.map +1 -0
  92. package/dist/src/http_system_database.js +429 -0
  93. package/dist/src/http_system_database.js.map +1 -0
  94. package/dist/src/index.d.ts +14 -0
  95. package/dist/src/index.d.ts.map +1 -0
  96. package/dist/src/index.js +53 -0
  97. package/dist/src/index.js.map +1 -0
  98. package/dist/src/scheduler/crontab.d.ts +14 -0
  99. package/dist/src/scheduler/crontab.d.ts.map +1 -0
  100. package/dist/src/scheduler/crontab.js +308 -0
  101. package/dist/src/scheduler/crontab.js.map +1 -0
  102. package/dist/src/scheduler/scheduler.d.ts +41 -0
  103. package/dist/src/scheduler/scheduler.d.ts.map +1 -0
  104. package/dist/src/scheduler/scheduler.js +165 -0
  105. package/dist/src/scheduler/scheduler.js.map +1 -0
  106. package/dist/src/serialization.d.ts +57 -0
  107. package/dist/src/serialization.d.ts.map +1 -0
  108. package/dist/src/serialization.js +306 -0
  109. package/dist/src/serialization.js.map +1 -0
  110. package/dist/src/solidactions-executor.d.ts +177 -0
  111. package/dist/src/solidactions-executor.d.ts.map +1 -0
  112. package/dist/src/solidactions-executor.js +817 -0
  113. package/dist/src/solidactions-executor.js.map +1 -0
  114. package/dist/src/solidactions.d.ts +519 -0
  115. package/dist/src/solidactions.d.ts.map +1 -0
  116. package/dist/src/solidactions.js +1284 -0
  117. package/dist/src/solidactions.js.map +1 -0
  118. package/dist/src/step.d.ts +16 -0
  119. package/dist/src/step.d.ts.map +1 -0
  120. package/dist/src/step.js +3 -0
  121. package/dist/src/step.js.map +1 -0
  122. package/dist/src/system_database.d.ts +141 -0
  123. package/dist/src/system_database.d.ts.map +1 -0
  124. package/dist/src/system_database.js +25 -0
  125. package/dist/src/system_database.js.map +1 -0
  126. package/dist/src/telemetry/collector.d.ts +13 -0
  127. package/dist/src/telemetry/collector.d.ts.map +1 -0
  128. package/dist/src/telemetry/collector.js +63 -0
  129. package/dist/src/telemetry/collector.js.map +1 -0
  130. package/dist/src/telemetry/exporters.d.ts +13 -0
  131. package/dist/src/telemetry/exporters.d.ts.map +1 -0
  132. package/dist/src/telemetry/exporters.js +101 -0
  133. package/dist/src/telemetry/exporters.js.map +1 -0
  134. package/dist/src/telemetry/logs.d.ts +52 -0
  135. package/dist/src/telemetry/logs.d.ts.map +1 -0
  136. package/dist/src/telemetry/logs.js +287 -0
  137. package/dist/src/telemetry/logs.js.map +1 -0
  138. package/dist/src/telemetry/traces.d.ts +52 -0
  139. package/dist/src/telemetry/traces.d.ts.map +1 -0
  140. package/dist/src/telemetry/traces.js +150 -0
  141. package/dist/src/telemetry/traces.js.map +1 -0
  142. package/dist/src/utils.d.ts +26 -0
  143. package/dist/src/utils.d.ts.map +1 -0
  144. package/dist/src/utils.js +136 -0
  145. package/dist/src/utils.js.map +1 -0
  146. package/dist/src/wfqueue.d.ts +64 -0
  147. package/dist/src/wfqueue.d.ts.map +1 -0
  148. package/dist/src/wfqueue.js +147 -0
  149. package/dist/src/wfqueue.js.map +1 -0
  150. package/dist/src/workflow.d.ts +154 -0
  151. package/dist/src/workflow.d.ts.map +1 -0
  152. package/dist/src/workflow.js +99 -0
  153. package/dist/src/workflow.js.map +1 -0
  154. package/dist/src/workflow_management.d.ts +15 -0
  155. package/dist/src/workflow_management.d.ts.map +1 -0
  156. package/dist/src/workflow_management.js +87 -0
  157. package/dist/src/workflow_management.js.map +1 -0
  158. package/dist/tsconfig.tsbuildinfo +1 -0
  159. package/docs/api-schema.md +1441 -0
  160. package/docs/migration-guide.md +460 -0
  161. package/docs/phase-14-changes.md +156 -0
  162. package/docs/solidsteps-ai-prompt.md +534 -0
  163. package/eslint.config.cjs +50 -0
  164. package/package.json +84 -0
  165. package/solidactions-ai-prompt.md +1504 -0
  166. package/solidactions-config.schema.json +132 -0
  167. package/solidactions-test-config.yaml +15 -0
@@ -0,0 +1,287 @@
1
+ "use strict";
2
+ /* eslint-disable @typescript-eslint/no-unsafe-member-access */
3
+ /* eslint-disable @typescript-eslint/no-unsafe-call */
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.SolidActionsConsoleLogger = exports.SolidActionsContextualLogger = exports.GlobalLogger = void 0;
6
+ const utils_1 = require("../utils");
7
+ const serialization_1 = require("../serialization");
8
+ // As SolidActions OTLP is optional, OTLP objects must only be dynamically imported
9
+ // and only when OTLP is enabled. Importing OTLP types is fine as long
10
+ // as signatures using those types are not exported from this file.
11
+ var SeverityNumber;
12
+ (function (SeverityNumber) {
13
+ SeverityNumber[SeverityNumber["UNSPECIFIED"] = 0] = "UNSPECIFIED";
14
+ SeverityNumber[SeverityNumber["TRACE"] = 1] = "TRACE";
15
+ SeverityNumber[SeverityNumber["TRACE2"] = 2] = "TRACE2";
16
+ SeverityNumber[SeverityNumber["TRACE3"] = 3] = "TRACE3";
17
+ SeverityNumber[SeverityNumber["TRACE4"] = 4] = "TRACE4";
18
+ SeverityNumber[SeverityNumber["DEBUG"] = 5] = "DEBUG";
19
+ SeverityNumber[SeverityNumber["DEBUG2"] = 6] = "DEBUG2";
20
+ SeverityNumber[SeverityNumber["DEBUG3"] = 7] = "DEBUG3";
21
+ SeverityNumber[SeverityNumber["DEBUG4"] = 8] = "DEBUG4";
22
+ SeverityNumber[SeverityNumber["INFO"] = 9] = "INFO";
23
+ SeverityNumber[SeverityNumber["INFO2"] = 10] = "INFO2";
24
+ SeverityNumber[SeverityNumber["INFO3"] = 11] = "INFO3";
25
+ SeverityNumber[SeverityNumber["INFO4"] = 12] = "INFO4";
26
+ SeverityNumber[SeverityNumber["WARN"] = 13] = "WARN";
27
+ SeverityNumber[SeverityNumber["WARN2"] = 14] = "WARN2";
28
+ SeverityNumber[SeverityNumber["WARN3"] = 15] = "WARN3";
29
+ SeverityNumber[SeverityNumber["WARN4"] = 16] = "WARN4";
30
+ SeverityNumber[SeverityNumber["ERROR"] = 17] = "ERROR";
31
+ SeverityNumber[SeverityNumber["ERROR2"] = 18] = "ERROR2";
32
+ SeverityNumber[SeverityNumber["ERROR3"] = 19] = "ERROR3";
33
+ SeverityNumber[SeverityNumber["ERROR4"] = 20] = "ERROR4";
34
+ SeverityNumber[SeverityNumber["FATAL"] = 21] = "FATAL";
35
+ SeverityNumber[SeverityNumber["FATAL2"] = 22] = "FATAL2";
36
+ SeverityNumber[SeverityNumber["FATAL3"] = 23] = "FATAL3";
37
+ SeverityNumber[SeverityNumber["FATAL4"] = 24] = "FATAL4";
38
+ })(SeverityNumber || (SeverityNumber = {}));
39
+ class GlobalLogger {
40
+ telemetryCollector;
41
+ logger;
42
+ addContextMetadata;
43
+ isLogging = false; // Prevent recursive logging
44
+ constructor(telemetryCollector, config, appName = 'solidactions') {
45
+ this.telemetryCollector = telemetryCollector;
46
+ this.addContextMetadata = config?.addContextMetadata || false;
47
+ if (!utils_1.globalParams.enableOTLP) {
48
+ this.logger = new SolidActionsConsoleLogger(config ?? {});
49
+ return;
50
+ }
51
+ const TransportStream = require('winston-transport');
52
+ class OTLPLogQueueTransport extends TransportStream {
53
+ telemetryCollector;
54
+ name = 'OTLPLogQueueTransport';
55
+ otelLogger;
56
+ applicationID;
57
+ executorID;
58
+ constructor(telemetryCollector, logLevel) {
59
+ super();
60
+ this.telemetryCollector = telemetryCollector;
61
+ this.level = logLevel;
62
+ // not sure if we need a more explicit name here
63
+ const { LoggerProvider } = require('@opentelemetry/sdk-logs');
64
+ const logRecordProcessor = {
65
+ forceFlush: async () => {
66
+ // no-op
67
+ },
68
+ onEmit(logRecord) {
69
+ telemetryCollector.push(logRecord);
70
+ },
71
+ shutdown: async () => {
72
+ // no-op
73
+ },
74
+ };
75
+ const loggerProvider = new LoggerProvider({
76
+ resource: {
77
+ attributes: {
78
+ 'service.name': appName,
79
+ },
80
+ },
81
+ processors: [logRecordProcessor],
82
+ });
83
+ this.otelLogger = loggerProvider.getLogger('solidactions-logger');
84
+ this.applicationID = utils_1.globalParams.appID;
85
+ this.executorID = utils_1.globalParams.executorID;
86
+ }
87
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
88
+ log(info, callback) {
89
+ const { level, message, stack, span } = info;
90
+ const levelToSeverityNumber = {
91
+ error: SeverityNumber.ERROR,
92
+ warn: SeverityNumber.WARN,
93
+ info: SeverityNumber.INFO,
94
+ debug: SeverityNumber.DEBUG,
95
+ };
96
+ // Ideally we want to give the spanContext to the logRecord,
97
+ // But there seems to some dependency bugs in opentelemetry-js
98
+ // (span.getValue(SPAN_KEY) undefined when we pass the context, as commented bellow)
99
+ // So for now we get the traceId and spanId directly from the context and pass them through the logRecord attributes
100
+ this.otelLogger.emit({
101
+ severityNumber: levelToSeverityNumber[level],
102
+ severityText: level,
103
+ body: message,
104
+ timestamp: performance.now(), // So far I don't see a major difference between this and observedTimestamp
105
+ observedTimestamp: performance.now(),
106
+ attributes: {
107
+ ...span?.attributes,
108
+ traceId: span?.spanContext()?.traceId,
109
+ spanId: span?.spanContext()?.spanId,
110
+ stack,
111
+ applicationID: this.applicationID,
112
+ applicationVersion: utils_1.globalParams.appVersion,
113
+ executorID: this.executorID,
114
+ },
115
+ });
116
+ callback();
117
+ }
118
+ }
119
+ // Import Winston dependencies only when OTLP is enabled
120
+ const { transports, createLogger } = require('winston');
121
+ const winstonTransports = [];
122
+ winstonTransports.push(new transports.Console({
123
+ format: getConsoleFormat(),
124
+ level: config?.logLevel || 'info',
125
+ silent: config?.silent || false,
126
+ forceConsole: config?.forceConsole || false,
127
+ }));
128
+ let otlpTransport = undefined;
129
+ // Only enable the OTLP transport if we have a telemetry collector and an exporter
130
+ if (utils_1.globalParams.enableOTLP && this.telemetryCollector?.exporter) {
131
+ otlpTransport = new OTLPLogQueueTransport(this.telemetryCollector, config?.logLevel || 'info');
132
+ winstonTransports.push(otlpTransport);
133
+ }
134
+ this.logger = createLogger({ transports: winstonTransports });
135
+ if (utils_1.globalParams.enableOTLP &&
136
+ process.env.SOLIDACTIONS__CAPTURE_STD !== 'false' &&
137
+ this.telemetryCollector?.exporter) {
138
+ (0, utils_1.interceptStreams)((msg, stream) => {
139
+ if (stream === 'stdout') {
140
+ if (!this.isLogging) {
141
+ otlpTransport?.log({ level: 'info', message: msg.trim() }, () => { });
142
+ }
143
+ }
144
+ else {
145
+ if (!this.isLogging) {
146
+ otlpTransport?.log({ level: 'error', message: msg.trim(), stack: new Error().stack }, () => { });
147
+ }
148
+ }
149
+ });
150
+ }
151
+ }
152
+ // We use this form of winston logging methods: `(message: string, ...meta: any[])`. See node_modules/winston/index.d.ts
153
+ info(logEntry, metadata) {
154
+ this.isLogging = true;
155
+ if (typeof logEntry === 'string') {
156
+ this.logger.info(logEntry, metadata);
157
+ }
158
+ else {
159
+ this.logger.info(serialization_1.SolidActionsJSON.stringify(logEntry), metadata);
160
+ }
161
+ this.isLogging = false;
162
+ }
163
+ debug(logEntry, metadata) {
164
+ this.isLogging = true;
165
+ if (typeof logEntry === 'string') {
166
+ this.logger.debug(logEntry, metadata);
167
+ }
168
+ else {
169
+ this.logger.debug(serialization_1.SolidActionsJSON.stringify(logEntry), metadata);
170
+ }
171
+ this.isLogging = false;
172
+ }
173
+ warn(logEntry, metadata) {
174
+ this.isLogging = true;
175
+ if (typeof logEntry === 'string') {
176
+ this.logger.warn(logEntry, metadata);
177
+ }
178
+ else {
179
+ this.logger.warn(serialization_1.SolidActionsJSON.stringify(logEntry), metadata);
180
+ }
181
+ this.isLogging = false;
182
+ }
183
+ // metadata can have both ContextualMetadata and the error stack trace
184
+ error(inputError, metadata) {
185
+ this.isLogging = true;
186
+ if (inputError instanceof Error) {
187
+ this.logger.error(inputError.message, { ...metadata, stack: inputError.stack });
188
+ }
189
+ else if (typeof inputError === 'string') {
190
+ this.logger.error(inputError, { ...metadata, stack: new Error().stack });
191
+ }
192
+ else {
193
+ this.logger.error(serialization_1.SolidActionsJSON.stringify(inputError), { ...metadata, stack: new Error().stack });
194
+ }
195
+ this.isLogging = false;
196
+ }
197
+ async destroy() {
198
+ await this.telemetryCollector?.destroy();
199
+ }
200
+ }
201
+ exports.GlobalLogger = GlobalLogger;
202
+ class SolidActionsContextualLogger {
203
+ globalLogger;
204
+ ctx;
205
+ includeContextMetadata;
206
+ constructor(globalLogger, ctx) {
207
+ this.globalLogger = globalLogger;
208
+ this.ctx = ctx;
209
+ this.includeContextMetadata = this.globalLogger.addContextMetadata;
210
+ }
211
+ info(logEntry, metadata) {
212
+ this.globalLogger.info(logEntry, {
213
+ includeContextMetadata: this.includeContextMetadata,
214
+ span: this.ctx(),
215
+ ...metadata,
216
+ });
217
+ }
218
+ debug(logEntry, metadata) {
219
+ this.globalLogger.debug(logEntry, {
220
+ includeContextMetadata: this.includeContextMetadata,
221
+ span: this.ctx(),
222
+ ...metadata,
223
+ });
224
+ }
225
+ warn(logEntry, metadata) {
226
+ this.globalLogger.warn(logEntry, {
227
+ includeContextMetadata: this.includeContextMetadata,
228
+ span: this.ctx(),
229
+ ...metadata,
230
+ });
231
+ }
232
+ error(inputError, metadata) {
233
+ this.globalLogger.error(inputError, {
234
+ includeContextMetadata: this.includeContextMetadata,
235
+ span: this.ctx(),
236
+ ...metadata,
237
+ });
238
+ }
239
+ }
240
+ exports.SolidActionsContextualLogger = SolidActionsContextualLogger;
241
+ class SolidActionsConsoleLogger {
242
+ config;
243
+ constructor(config) {
244
+ this.config = config;
245
+ }
246
+ info(logEntry, _metadata) {
247
+ console.log(logEntry);
248
+ }
249
+ debug(logEntry, _metadata) {
250
+ if (this.config.logLevel === 'debug') {
251
+ console.debug(logEntry);
252
+ }
253
+ }
254
+ warn(logEntry, _metadata) {
255
+ console.warn(logEntry);
256
+ }
257
+ error(inputError, metadata) {
258
+ if (inputError instanceof Error) {
259
+ console.error(inputError);
260
+ }
261
+ else if (metadata?.stack) {
262
+ console.error(inputError, '\n', metadata.stack);
263
+ }
264
+ else {
265
+ console.error(inputError);
266
+ }
267
+ }
268
+ }
269
+ exports.SolidActionsConsoleLogger = SolidActionsConsoleLogger;
270
+ /***********************/
271
+ /* FORMAT & TRANSPORTS */
272
+ /***********************/
273
+ // Lazily create the console format only when Winston is used
274
+ function getConsoleFormat() {
275
+ const { format } = require('winston');
276
+ return format.combine(format.errors({ stack: true }), format.timestamp(), format.colorize(), format.printf((info) => {
277
+ const { timestamp, level, message, stack } = info;
278
+ const applicationVersion = utils_1.globalParams.appVersion;
279
+ const ts = typeof timestamp === 'string' ? timestamp.slice(0, 19).replace('T', ' ') : undefined;
280
+ const formattedStack = typeof stack === 'string' ? stack?.split('\n').slice(1).join('\n') : undefined;
281
+ const messageString = typeof message === 'string' ? message : serialization_1.SolidActionsJSON.stringify(message);
282
+ const fullMessageString = `${messageString}${info.includeContextMetadata ? ` ${serialization_1.SolidActionsJSON.stringify(info.span?.attributes)}` : ''}`;
283
+ const versionString = applicationVersion ? ` [version ${applicationVersion}]` : '';
284
+ return `${ts}${versionString} [${level}]: ${fullMessageString} ${stack ? '\n' + formattedStack : ''}`;
285
+ }));
286
+ }
287
+ //# sourceMappingURL=logs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logs.js","sourceRoot":"","sources":["../../../src/telemetry/logs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ import { TelemetryCollector } from './collector';
2
+ interface Attributes {
3
+ [attributeKey: string]: AttributeValue | undefined;
4
+ }
5
+ /**
6
+ * Attribute values may be any non-nullish primitive value except an object.
7
+ *
8
+ * null or undefined attribute values are invalid and will result in undefined behavior.
9
+ */
10
+ declare type AttributeValue = string | number | boolean | Array<null | undefined | string> | Array<null | undefined | number> | Array<null | undefined | boolean>;
11
+ export declare enum SpanStatusCode {
12
+ /**
13
+ * The default status.
14
+ */
15
+ UNSET = 0,
16
+ /**
17
+ * The operation has been validated by an Application developer or
18
+ * Operator to have completed successfully.
19
+ */
20
+ OK = 1,
21
+ /**
22
+ * The operation contains an error.
23
+ */
24
+ ERROR = 2
25
+ }
26
+ interface SpanStatus {
27
+ /** The status code of this message. */
28
+ code: SpanStatusCode;
29
+ /** A developer-facing error message. */
30
+ message?: string;
31
+ }
32
+ export type SolidActionsSpan = {
33
+ setStatus(status: SpanStatus): SolidActionsSpan;
34
+ attributes: Attributes;
35
+ setAttribute(key: string, attribute: AttributeValue): SolidActionsSpan;
36
+ addEvent(name: string, attributesOrStartTime?: Attributes, timeStamp?: number): SolidActionsSpan;
37
+ };
38
+ export declare function runWithTrace<R>(span: SolidActionsSpan, func: () => Promise<R>): Promise<R>;
39
+ export declare function getActiveSpan(): SolidActionsSpan | undefined;
40
+ export declare function isTraceContextWorking(): boolean;
41
+ export declare function installTraceContextManager(appName?: string): void;
42
+ export declare class Tracer {
43
+ private readonly telemetryCollector;
44
+ readonly applicationID: string;
45
+ readonly executorID: string;
46
+ constructor(telemetryCollector: TelemetryCollector, appName?: string);
47
+ startSpanWithContext(spanContext: unknown, name: string, attributes?: Attributes): SolidActionsSpan;
48
+ startSpan(name: string, attributes?: Attributes, inputSpan?: SolidActionsSpan): SolidActionsSpan;
49
+ endSpan(inputSpan: SolidActionsSpan): void;
50
+ }
51
+ export {};
52
+ //# sourceMappingURL=traces.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"traces.d.ts","sourceRoot":"","sources":["../../../src/telemetry/traces.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAQjD,UAAU,UAAU;IAClB,CAAC,YAAY,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAAC;CACpD;AACD;;;;GAIG;AACH,OAAO,MAAM,cAAc,GACvB,MAAM,GACN,MAAM,GACN,OAAO,GACP,KAAK,CAAC,IAAI,GAAG,SAAS,GAAG,MAAM,CAAC,GAChC,KAAK,CAAC,IAAI,GAAG,SAAS,GAAG,MAAM,CAAC,GAChC,KAAK,CAAC,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC,CAAC;AAEtC,oBAAY,cAAc;IACxB;;OAEG;IACH,KAAK,IAAI;IACT;;;OAGG;IACH,EAAE,IAAI;IACN;;OAEG;IACH,KAAK,IAAI;CACV;AAED,UAAU,UAAU;IAClB,uCAAuC;IACvC,IAAI,EAAE,cAAc,CAAC;IACrB,wCAAwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,gBAAgB,CAAC;IAChD,UAAU,EAAE,UAAU,CAAC;IACvB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,GAAG,gBAAgB,CAAC;IACvE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,qBAAqB,CAAC,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAAC;CAClG,CAAC;AAkBF,wBAAgB,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAM1F;AAED,wBAAgB,aAAa,iCAM5B;AAED,wBAAgB,qBAAqB,IAAI,OAAO,CAe/C;AAED,wBAAgB,0BAA0B,CAAC,OAAO,GAAE,MAAuB,GAAG,IAAI,CAoBjF;AAED,qBAAa,MAAM;IAIf,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAHrC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;gBAET,kBAAkB,EAAE,kBAAkB,EACvD,OAAO,GAAE,MAAuB;IAoBlC,oBAAoB,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,UAAU,GAAG,gBAAgB;IAUnG,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,gBAAgB,GAAG,gBAAgB;IAiBhG,OAAO,CAAC,SAAS,EAAE,gBAAgB;CAgBpC"}
@@ -0,0 +1,150 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Tracer = exports.installTraceContextManager = exports.isTraceContextWorking = exports.getActiveSpan = exports.runWithTrace = exports.SpanStatusCode = void 0;
4
+ const utils_1 = require("../utils");
5
+ var SpanStatusCode;
6
+ (function (SpanStatusCode) {
7
+ /**
8
+ * The default status.
9
+ */
10
+ SpanStatusCode[SpanStatusCode["UNSET"] = 0] = "UNSET";
11
+ /**
12
+ * The operation has been validated by an Application developer or
13
+ * Operator to have completed successfully.
14
+ */
15
+ SpanStatusCode[SpanStatusCode["OK"] = 1] = "OK";
16
+ /**
17
+ * The operation contains an error.
18
+ */
19
+ SpanStatusCode[SpanStatusCode["ERROR"] = 2] = "ERROR";
20
+ })(SpanStatusCode || (exports.SpanStatusCode = SpanStatusCode = {}));
21
+ class StubSpan {
22
+ attributes = {};
23
+ setStatus(_status) {
24
+ return this;
25
+ }
26
+ setAttribute(_key, _attribute) {
27
+ return this;
28
+ }
29
+ addEvent(_name, _attributesOrStartTime, _timeStamp) {
30
+ return this;
31
+ }
32
+ }
33
+ function runWithTrace(span, func) {
34
+ if (!utils_1.globalParams.enableOTLP) {
35
+ return func();
36
+ }
37
+ const { context, trace } = require('@opentelemetry/api');
38
+ return context.with(trace.setSpan(context.active(), span), func);
39
+ }
40
+ exports.runWithTrace = runWithTrace;
41
+ function getActiveSpan() {
42
+ if (!utils_1.globalParams.enableOTLP) {
43
+ return undefined;
44
+ }
45
+ const { trace } = require('@opentelemetry/api');
46
+ return trace.getActiveSpan();
47
+ }
48
+ exports.getActiveSpan = getActiveSpan;
49
+ function isTraceContextWorking() {
50
+ if (!utils_1.globalParams.enableOTLP) {
51
+ return false;
52
+ }
53
+ const { context, trace } = require('@opentelemetry/api');
54
+ const span = trace.getTracer('otel-bootstrap-check').startSpan('probe');
55
+ const testContext = trace.setSpan(context.active(), span);
56
+ let visible;
57
+ context.with(testContext, () => {
58
+ visible = trace.getSpan(context.active()) === span;
59
+ });
60
+ span.end?.();
61
+ return visible === true;
62
+ }
63
+ exports.isTraceContextWorking = isTraceContextWorking;
64
+ function installTraceContextManager(appName = 'solidactions') {
65
+ if (!utils_1.globalParams.enableOTLP) {
66
+ return;
67
+ }
68
+ const { AsyncLocalStorageContextManager } = require('@opentelemetry/context-async-hooks');
69
+ const { context, trace } = require('@opentelemetry/api');
70
+ const { BasicTracerProvider } = require('@opentelemetry/sdk-trace-base');
71
+ const contextManager = new AsyncLocalStorageContextManager();
72
+ contextManager.enable();
73
+ context.setGlobalContextManager(contextManager);
74
+ const provider = new BasicTracerProvider({
75
+ resource: {
76
+ attributes: {
77
+ 'service.name': appName,
78
+ },
79
+ },
80
+ });
81
+ trace.setGlobalTracerProvider(provider);
82
+ }
83
+ exports.installTraceContextManager = installTraceContextManager;
84
+ class Tracer {
85
+ telemetryCollector;
86
+ applicationID;
87
+ executorID;
88
+ constructor(telemetryCollector, appName = 'solidactions') {
89
+ this.telemetryCollector = telemetryCollector;
90
+ this.applicationID = utils_1.globalParams.appID;
91
+ this.executorID = utils_1.globalParams.executorID; // for consistency with src/context.ts
92
+ if (!utils_1.globalParams.enableOTLP) {
93
+ return;
94
+ }
95
+ const { trace } = require('@opentelemetry/api');
96
+ const { BasicTracerProvider } = require('@opentelemetry/sdk-trace-base');
97
+ const tracer = new BasicTracerProvider({
98
+ resource: {
99
+ attributes: {
100
+ 'service.name': appName,
101
+ },
102
+ },
103
+ });
104
+ trace.setGlobalTracerProvider(tracer);
105
+ }
106
+ startSpanWithContext(spanContext, name, attributes) {
107
+ if (!utils_1.globalParams.enableOTLP) {
108
+ return new StubSpan();
109
+ }
110
+ const opentelemetry = require('@opentelemetry/api');
111
+ const tracer = opentelemetry.trace.getTracer('solidactions-tracer');
112
+ const ctx = opentelemetry.trace.setSpanContext(opentelemetry.context.active(), spanContext);
113
+ return tracer.startSpan(name, { startTime: performance.now(), attributes: attributes }, ctx);
114
+ }
115
+ startSpan(name, attributes, inputSpan) {
116
+ if (!utils_1.globalParams.enableOTLP) {
117
+ return new StubSpan();
118
+ }
119
+ const parentSpan = inputSpan;
120
+ const opentelemetry = require('@opentelemetry/api');
121
+ const { hrTime } = require('@opentelemetry/core');
122
+ const tracer = opentelemetry.trace.getTracer('solidactions-tracer');
123
+ const startTime = hrTime(performance.now());
124
+ if (parentSpan) {
125
+ const ctx = opentelemetry.trace.setSpan(opentelemetry.context.active(), parentSpan);
126
+ return tracer.startSpan(name, { startTime: startTime, attributes: attributes }, ctx);
127
+ }
128
+ else {
129
+ return tracer.startSpan(name, { startTime: startTime, attributes: attributes });
130
+ }
131
+ }
132
+ endSpan(inputSpan) {
133
+ if (!utils_1.globalParams.enableOTLP) {
134
+ return;
135
+ }
136
+ const { hrTime } = require('@opentelemetry/core');
137
+ const span = inputSpan;
138
+ span.setAttributes({
139
+ applicationID: this.applicationID,
140
+ applicationVersion: utils_1.globalParams.appVersion,
141
+ });
142
+ if (span.attributes && !('executorID' in span.attributes)) {
143
+ span.setAttribute('executorID', this.executorID);
144
+ }
145
+ span.end(hrTime(performance.now()));
146
+ this.telemetryCollector.push(span);
147
+ }
148
+ }
149
+ exports.Tracer = Tracer;
150
+ //# sourceMappingURL=traces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"traces.js","sourceRoot":"","sources":["../../../src/telemetry/traces.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ /// <reference types="node" />
2
+ export declare function readFile(path: string, encoding?: BufferEncoding): Promise<string>;
3
+ export declare function defaultEnableOTLP(): boolean;
4
+ export declare const globalParams: {
5
+ appVersion: string;
6
+ wasComputed: boolean;
7
+ executorID: string;
8
+ appID: string;
9
+ enableOTLP: boolean;
10
+ solidActionsVersion: string;
11
+ };
12
+ export declare const sleepms: (ms: number) => Promise<unknown>;
13
+ export declare const INTERNAL_QUEUE_NAME = "_solidactions_internal_queue";
14
+ export declare const DEBOUNCER_WORKLOW_NAME = "_solidactions_debouncer_workflow";
15
+ export declare function cancellableSleep(ms: number): {
16
+ promise: Promise<void>;
17
+ cancel: () => void;
18
+ };
19
+ export type ValuesOf<T> = T[keyof T];
20
+ export declare function exhaustiveCheckGuard(_: never): never;
21
+ export declare function interceptStreams(onMessage: (msg: string, stream: 'stdout' | 'stderr') => void): void;
22
+ export declare function getClientConfig(databaseUrl: string | URL): {
23
+ connectionString: string;
24
+ connectionTimeoutMillis: number;
25
+ };
26
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":";AAMA,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,cAAuB,GAAG,OAAO,CAAC,MAAM,CAAC,CAE/F;AAqCD,wBAAgB,iBAAiB,YAEhC;AAED,eAAO,MAAM,YAAY;;;;;;;CAOxB,CAAC;AACF,eAAO,MAAM,OAAO,OAAQ,MAAM,qBAA0C,CAAC;AAG7E,eAAO,MAAM,mBAAmB,iCAAiC,CAAC;AAClE,eAAO,MAAM,sBAAsB,qCAAqC,CAAC;AAQzE,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM;;;EAwB1C;AAED,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAErC,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,KAAK,GAAG,KAAK,CAEpD;AAMD,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,QAAQ,KAAK,IAAI,QAkB7F;AAGD,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,GAAG;;;EAiBxD"}