inngest 4.18.0 → 4.19.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 (70) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/api/api.cjs +22 -3
  3. package/api/api.cjs.map +1 -1
  4. package/api/api.js +22 -3
  5. package/api/api.js.map +1 -1
  6. package/components/Inngest.cjs +1 -0
  7. package/components/Inngest.cjs.map +1 -1
  8. package/components/Inngest.d.cts.map +1 -1
  9. package/components/Inngest.d.ts.map +1 -1
  10. package/components/Inngest.js +1 -0
  11. package/components/Inngest.js.map +1 -1
  12. package/components/InngestCommHandler.cjs +1 -1
  13. package/components/InngestCommHandler.cjs.map +1 -1
  14. package/components/InngestCommHandler.d.cts.map +1 -1
  15. package/components/InngestCommHandler.d.ts.map +1 -1
  16. package/components/InngestCommHandler.js +1 -1
  17. package/components/InngestCommHandler.js.map +1 -1
  18. package/components/execution/engine.cjs +24 -13
  19. package/components/execution/engine.cjs.map +1 -1
  20. package/components/execution/engine.d.cts.map +1 -1
  21. package/components/execution/engine.d.ts.map +1 -1
  22. package/components/execution/engine.js +25 -14
  23. package/components/execution/engine.js.map +1 -1
  24. package/components/execution/otel/metadataProcessor.cjs +55 -16
  25. package/components/execution/otel/metadataProcessor.cjs.map +1 -1
  26. package/components/execution/otel/metadataProcessor.js +55 -16
  27. package/components/execution/otel/metadataProcessor.js.map +1 -1
  28. package/components/realtime/types.d.cts +7 -7
  29. package/components/realtime/types.d.cts.map +1 -1
  30. package/components/realtime/types.d.ts +7 -7
  31. package/components/realtime/types.d.ts.map +1 -1
  32. package/components/sandbox/client.cjs +35 -17
  33. package/components/sandbox/client.cjs.map +1 -1
  34. package/components/sandbox/client.js +36 -19
  35. package/components/sandbox/client.js.map +1 -1
  36. package/components/sandbox/durable.cjs +6 -6
  37. package/components/sandbox/durable.cjs.map +1 -1
  38. package/components/sandbox/durable.js +8 -8
  39. package/components/sandbox/durable.js.map +1 -1
  40. package/components/sandbox/protocol.cjs +2 -2
  41. package/components/sandbox/protocol.cjs.map +1 -1
  42. package/components/sandbox/protocol.js +3 -3
  43. package/components/sandbox/protocol.js.map +1 -1
  44. package/components/sandbox/types.cjs.map +1 -1
  45. package/components/sandbox/types.d.cts +49 -12
  46. package/components/sandbox/types.d.cts.map +1 -1
  47. package/components/sandbox/types.d.ts +49 -12
  48. package/components/sandbox/types.d.ts.map +1 -1
  49. package/components/sandbox/types.js.map +1 -1
  50. package/components/sandbox/validation.cjs +50 -13
  51. package/components/sandbox/validation.cjs.map +1 -1
  52. package/components/sandbox/validation.js +49 -14
  53. package/components/sandbox/validation.js.map +1 -1
  54. package/experimental.d.cts +2 -2
  55. package/experimental.d.ts +2 -2
  56. package/helpers/sessions.cjs +10 -2
  57. package/helpers/sessions.cjs.map +1 -1
  58. package/helpers/sessions.js +10 -3
  59. package/helpers/sessions.js.map +1 -1
  60. package/package.json +1 -1
  61. package/react.d.cts +1 -1
  62. package/react.d.ts +1 -1
  63. package/types.d.cts +8 -8
  64. package/types.d.ts +8 -8
  65. package/version.cjs +1 -1
  66. package/version.cjs.map +1 -1
  67. package/version.d.cts +1 -1
  68. package/version.d.ts +1 -1
  69. package/version.js +1 -1
  70. package/version.js.map +1 -1
@@ -189,6 +189,11 @@ var InngestExecutionEngine = class extends require_InngestExecution.InngestExecu
189
189
  }
190
190
  }, async () => {
191
191
  return tracer.startActiveSpan("inngest.execution", (span) => {
192
+ let aiMetadataScope;
193
+ if (this.options.client.aiMetadataEnabled) aiMetadataScope = require_metadataProcessor.metadataSpanProcessor.startScope({
194
+ runId: this.options.runId,
195
+ span
196
+ });
192
197
  this.rootSpanId = span.spanContext().spanId;
193
198
  require_access.clientProcessorMap.get(this.options.client)?.declareStartingSpan({
194
199
  span,
@@ -196,7 +201,8 @@ var InngestExecutionEngine = class extends require_InngestExecution.InngestExecu
196
201
  traceparent: this.options.headers[require_consts.headerKeys.TraceParent],
197
202
  tracestate: this.options.headers[require_consts.headerKeys.TraceState]
198
203
  });
199
- if (this.options.client.aiMetadataEnabled) require_metadataProcessor.metadataSpanProcessor.declareStartingSpan({
204
+ if (aiMetadataScope) require_metadataProcessor.metadataSpanProcessor.declareStartingSpan({
205
+ scope: aiMetadataScope,
200
206
  span,
201
207
  traceparent: this.options.headers[require_consts.headerKeys.TraceParent],
202
208
  onAIMetadata: (aiMetadata) => {
@@ -204,11 +210,12 @@ var InngestExecutionEngine = class extends require_InngestExecution.InngestExecu
204
210
  this.state.executingStepAIMetadata = this.state.executingStepAIMetadata ? require_aiExtractor.aggregate(this.state.executingStepAIMetadata, aiMetadata) : aiMetadata;
205
211
  }
206
212
  });
207
- return this._start().then((result) => {
213
+ return this._start(() => {
214
+ span.end();
215
+ if (aiMetadataScope) require_metadataProcessor.metadataSpanProcessor.endScope(aiMetadataScope);
216
+ }).then((result) => {
208
217
  this.devDebug("result:", result);
209
218
  return result;
210
- }).finally(() => {
211
- span.end();
212
219
  });
213
220
  });
214
221
  });
@@ -230,10 +237,14 @@ var InngestExecutionEngine = class extends require_InngestExecution.InngestExecu
230
237
  }
231
238
  /**
232
239
  * Starts execution of the user's function and the core loop.
240
+ *
241
+ * @param onCoreLoopSettled - Called after this invocation has finished
242
+ * running user code and processing checkpoints, even if this method returned
243
+ * earlier. The run may re-enter later in a new SDK request.
233
244
  */
234
- async _start() {
245
+ async _start(onCoreLoopSettled) {
235
246
  if (this.options.stepMode === require_types.StepMode.Sync && this.options.acceptsSse) this.earlyStreamResponse = require_promises.createDeferredPromise();
236
- const coreLoop = this.runCoreLoop();
247
+ const coreLoop = this.runCoreLoop().finally(onCoreLoopSettled);
237
248
  if (this.earlyStreamResponse) {
238
249
  coreLoop.catch((err) => {
239
250
  this.options.client[require_Inngest.internalLoggerSymbol].error({ err }, "Core loop rejected after early stream response was sent");
@@ -1533,6 +1544,13 @@ var InngestExecutionEngine = class extends require_InngestExecution.InngestExecu
1533
1544
  let deferMeta;
1534
1545
  try {
1535
1546
  deferMeta = require_sessions.normalizeEventMeta(meta);
1547
+ if (this.options.client[require_Inngest.sessionPropagationSymbol]) {
1548
+ const propagated = require_sessions.normalizePropagatedSessions(this.fnArg.sessions);
1549
+ if (propagated) deferMeta = {
1550
+ ...deferMeta,
1551
+ propagated_sessions: propagated
1552
+ };
1553
+ }
1536
1554
  } catch (err) {
1537
1555
  log.error({
1538
1556
  runId,
@@ -1540,13 +1558,6 @@ var InngestExecutionEngine = class extends require_InngestExecution.InngestExecu
1540
1558
  }, "defer skipped: invalid meta");
1541
1559
  return noopHandle;
1542
1560
  }
1543
- if (this.options.client[require_Inngest.sessionPropagationSymbol]) {
1544
- const propagated = this.fnArg.sessions;
1545
- if (propagated && Object.keys(propagated).length > 0) deferMeta = {
1546
- ...deferMeta,
1547
- propagated_sessions: propagated
1548
- };
1549
- }
1550
1561
  stepHandler({
1551
1562
  args: [stepOptions, finalInput],
1552
1563
  matchOp: (stepOptions$1, inputArg) => ({