@pristine-ts/core 2.0.3 → 2.0.5
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/lib/cjs/core.module.js +23 -0
- package/dist/lib/cjs/core.module.js.map +1 -1
- package/dist/lib/cjs/dispatchers/event.dispatcher.js +7 -0
- package/dist/lib/cjs/dispatchers/event.dispatcher.js.map +1 -1
- package/dist/lib/cjs/errors/core-error-code.enum.js +23 -0
- package/dist/lib/cjs/errors/core-error-code.enum.js.map +1 -0
- package/dist/lib/cjs/errors/errors.js +1 -6
- package/dist/lib/cjs/errors/errors.js.map +1 -1
- package/dist/lib/cjs/errors/event-dispatcher-no-event-handlers.error.js +4 -8
- package/dist/lib/cjs/errors/event-dispatcher-no-event-handlers.error.js.map +1 -1
- package/dist/lib/cjs/errors/kernel-initialization.error.js +1 -5
- package/dist/lib/cjs/errors/kernel-initialization.error.js.map +1 -1
- package/dist/lib/cjs/errors/provider-registration.error.js +5 -9
- package/dist/lib/cjs/errors/provider-registration.error.js.map +1 -1
- package/dist/lib/cjs/errors/runtime.error.js +1 -5
- package/dist/lib/cjs/errors/runtime.error.js.map +1 -1
- package/dist/lib/cjs/interceptors/event-logging.interceptor.js +26 -0
- package/dist/lib/cjs/interceptors/event-logging.interceptor.js.map +1 -1
- package/dist/lib/cjs/kernel.js +95 -3
- package/dist/lib/cjs/kernel.js.map +1 -1
- package/dist/lib/cjs/managers/environment.manager.js +63 -0
- package/dist/lib/cjs/managers/environment.manager.js.map +1 -0
- package/dist/lib/cjs/managers/managers.js +2 -0
- package/dist/lib/cjs/managers/managers.js.map +1 -1
- package/dist/lib/cjs/managers/pristine-environment.enum.js +30 -0
- package/dist/lib/cjs/managers/pristine-environment.enum.js.map +1 -0
- package/dist/lib/cjs/pipelines/event.pipeline.js +61 -25
- package/dist/lib/cjs/pipelines/event.pipeline.js.map +1 -1
- package/dist/lib/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/lib/esm/core.module.js +23 -0
- package/dist/lib/esm/core.module.js.map +1 -1
- package/dist/lib/esm/dispatchers/event.dispatcher.js +8 -1
- package/dist/lib/esm/dispatchers/event.dispatcher.js.map +1 -1
- package/dist/lib/esm/errors/core-error-code.enum.js +20 -0
- package/dist/lib/esm/errors/core-error-code.enum.js.map +1 -0
- package/dist/lib/esm/errors/errors.js +1 -6
- package/dist/lib/esm/errors/errors.js.map +1 -1
- package/dist/lib/esm/errors/event-dispatcher-no-event-handlers.error.js +5 -9
- package/dist/lib/esm/errors/event-dispatcher-no-event-handlers.error.js.map +1 -1
- package/dist/lib/esm/errors/kernel-initialization.error.js +2 -6
- package/dist/lib/esm/errors/kernel-initialization.error.js.map +1 -1
- package/dist/lib/esm/errors/provider-registration.error.js +6 -10
- package/dist/lib/esm/errors/provider-registration.error.js.map +1 -1
- package/dist/lib/esm/errors/runtime.error.js +2 -6
- package/dist/lib/esm/errors/runtime.error.js.map +1 -1
- package/dist/lib/esm/interceptors/event-logging.interceptor.js +27 -1
- package/dist/lib/esm/interceptors/event-logging.interceptor.js.map +1 -1
- package/dist/lib/esm/kernel.js +95 -3
- package/dist/lib/esm/kernel.js.map +1 -1
- package/dist/lib/esm/managers/environment.manager.js +60 -0
- package/dist/lib/esm/managers/environment.manager.js.map +1 -0
- package/dist/lib/esm/managers/managers.js +2 -0
- package/dist/lib/esm/managers/managers.js.map +1 -1
- package/dist/lib/esm/managers/pristine-environment.enum.js +27 -0
- package/dist/lib/esm/managers/pristine-environment.enum.js.map +1 -0
- package/dist/lib/esm/pipelines/event.pipeline.js +62 -26
- package/dist/lib/esm/pipelines/event.pipeline.js.map +1 -1
- package/dist/lib/esm/tsconfig.tsbuildinfo +1 -1
- package/dist/types/errors/core-error-code.enum.d.ts +18 -0
- package/dist/types/errors/errors.d.ts +1 -6
- package/dist/types/errors/event-dispatcher-no-event-handlers.error.d.ts +2 -2
- package/dist/types/errors/kernel-initialization.error.d.ts +2 -2
- package/dist/types/errors/provider-registration.error.d.ts +2 -2
- package/dist/types/errors/runtime.error.d.ts +2 -2
- package/dist/types/kernel.d.ts +26 -0
- package/dist/types/managers/environment.manager.d.ts +35 -0
- package/dist/types/managers/managers.d.ts +2 -0
- package/dist/types/managers/pristine-environment.enum.d.ts +25 -0
- package/dist/types/pipelines/event.pipeline.d.ts +5 -6
- package/package.json +7 -7
- package/dist/lib/cjs/errors/error-response-interception-execution.error.js +0 -23
- package/dist/lib/cjs/errors/error-response-interception-execution.error.js.map +0 -1
- package/dist/lib/cjs/errors/event-dispatching.error.js +0 -21
- package/dist/lib/cjs/errors/event-dispatching.error.js.map +0 -1
- package/dist/lib/cjs/errors/event-interception-execution.error.js +0 -22
- package/dist/lib/cjs/errors/event-interception-execution.error.js.map +0 -1
- package/dist/lib/cjs/errors/event-mapping.error.js +0 -23
- package/dist/lib/cjs/errors/event-mapping.error.js.map +0 -1
- package/dist/lib/cjs/errors/event-post-mapping-interception.error.js +0 -22
- package/dist/lib/cjs/errors/event-post-mapping-interception.error.js.map +0 -1
- package/dist/lib/cjs/errors/event-post-response-mapping-interception.error.js +0 -22
- package/dist/lib/cjs/errors/event-post-response-mapping-interception.error.js.map +0 -1
- package/dist/lib/cjs/errors/event-pre-mapping-interception.error.js +0 -23
- package/dist/lib/cjs/errors/event-pre-mapping-interception.error.js.map +0 -1
- package/dist/lib/cjs/errors/event-pre-response-mapping-interception.error.js +0 -22
- package/dist/lib/cjs/errors/event-pre-response-mapping-interception.error.js.map +0 -1
- package/dist/lib/esm/errors/error-response-interception-execution.error.js +0 -19
- package/dist/lib/esm/errors/error-response-interception-execution.error.js.map +0 -1
- package/dist/lib/esm/errors/event-dispatching.error.js +0 -17
- package/dist/lib/esm/errors/event-dispatching.error.js.map +0 -1
- package/dist/lib/esm/errors/event-interception-execution.error.js +0 -18
- package/dist/lib/esm/errors/event-interception-execution.error.js.map +0 -1
- package/dist/lib/esm/errors/event-mapping.error.js +0 -19
- package/dist/lib/esm/errors/event-mapping.error.js.map +0 -1
- package/dist/lib/esm/errors/event-post-mapping-interception.error.js +0 -18
- package/dist/lib/esm/errors/event-post-mapping-interception.error.js.map +0 -1
- package/dist/lib/esm/errors/event-post-response-mapping-interception.error.js +0 -18
- package/dist/lib/esm/errors/event-post-response-mapping-interception.error.js.map +0 -1
- package/dist/lib/esm/errors/event-pre-mapping-interception.error.js +0 -19
- package/dist/lib/esm/errors/event-pre-mapping-interception.error.js.map +0 -1
- package/dist/lib/esm/errors/event-pre-response-mapping-interception.error.js +0 -18
- package/dist/lib/esm/errors/event-pre-response-mapping-interception.error.js.map +0 -1
- package/dist/types/errors/error-response-interception-execution.error.d.ts +0 -7
- package/dist/types/errors/event-dispatching.error.d.ts +0 -8
- package/dist/types/errors/event-interception-execution.error.d.ts +0 -8
- package/dist/types/errors/event-mapping.error.d.ts +0 -8
- package/dist/types/errors/event-post-mapping-interception.error.d.ts +0 -8
- package/dist/types/errors/event-post-response-mapping-interception.error.d.ts +0 -7
- package/dist/types/errors/event-pre-mapping-interception.error.d.ts +0 -8
- package/dist/types/errors/event-pre-response-mapping-interception.error.d.ts +0 -8
|
@@ -21,35 +21,39 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
21
21
|
};
|
|
22
22
|
import { inject, injectable, injectAll } from "tsyringe";
|
|
23
23
|
import { Event } from "../models/event";
|
|
24
|
-
import { EventContext, EventContextManager, ServiceDefinitionTagEnum } from "@pristine-ts/common";
|
|
25
|
-
import { EventMappingError } from "../errors/event-mapping.error";
|
|
26
|
-
import { EventPreMappingInterceptionError } from "../errors/event-pre-mapping-interception.error";
|
|
27
|
-
import { EventPostMappingInterceptionError } from "../errors/event-post-mapping-interception.error";
|
|
28
|
-
import { EventDispatchingError } from "../errors/event-dispatching.error";
|
|
29
|
-
import { EventPreResponseMappingInterceptionError } from "../errors/event-pre-response-mapping-interception.error";
|
|
30
|
-
import { EventPostResponseMappingInterceptionError } from "../errors/event-post-response-mapping-interception.error";
|
|
24
|
+
import { EventContext, EventContextManager, PristineError, PristineErrorKind, ServiceDefinitionTagEnum } from "@pristine-ts/common";
|
|
31
25
|
import { SpanKeynameEnum } from "@pristine-ts/telemetry";
|
|
32
|
-
import {
|
|
26
|
+
import { CoreErrorCode } from "../errors/core-error-code.enum";
|
|
33
27
|
let EventPipeline = class EventPipeline {
|
|
34
|
-
constructor(eventInterceptors, eventMappers, logHandler, tracingManager,
|
|
28
|
+
constructor(eventInterceptors, eventMappers, logHandler, tracingManager, eventContextManager) {
|
|
35
29
|
this.eventInterceptors = eventInterceptors;
|
|
36
30
|
this.eventMappers = eventMappers;
|
|
37
31
|
this.logHandler = logHandler;
|
|
38
32
|
this.tracingManager = tracingManager;
|
|
39
|
-
this.breadcrumbHandler = breadcrumbHandler;
|
|
40
33
|
this.eventContextManager = eventContextManager;
|
|
41
34
|
}
|
|
42
35
|
/**
|
|
43
36
|
* Builds the per-event `EventContext` and runs `fn` inside it. Centralizes the ALS
|
|
44
37
|
* boundary so the sequential and parallel execution paths in `execute()` install the
|
|
45
|
-
* same shape of context. Downstream code (`LogHandler.eventId` fallback, `@traced
|
|
46
|
-
*
|
|
47
|
-
*
|
|
38
|
+
* same shape of context. Downstream code (`LogHandler.eventId` fallback, `@traced`)
|
|
39
|
+
* reads from this context instead of receiving everything threaded through method
|
|
40
|
+
* parameters.
|
|
48
41
|
*/
|
|
49
42
|
runWithEventContext(event, childContainer, fn) {
|
|
50
43
|
const ctx = new EventContext();
|
|
51
44
|
ctx.eventId = event.id;
|
|
52
45
|
ctx.container = childContainer;
|
|
46
|
+
// Propagate the kernel-started trace into the EventContext so any TracingManager
|
|
47
|
+
// instance resolved from a child container (controllers, CLI commands, etc.) sees
|
|
48
|
+
// the same active trace as the kernel did when it called startTracing(). Without
|
|
49
|
+
// this, the kernel writes the trace to its root-container TracingManager's
|
|
50
|
+
// `this.trace` fallback, but per-event code reads from EventContext.trace and
|
|
51
|
+
// finds nothing — addEventToCurrentSpan would warn "outside any active trace."
|
|
52
|
+
ctx.trace = this.tracingManager.trace;
|
|
53
|
+
// Stash the kernel's TracingManager on the context so `@traced` uses the manager
|
|
54
|
+
// that owns the trace, not a fresh ContainerScoped instance the child container
|
|
55
|
+
// would build on first resolve.
|
|
56
|
+
ctx.tracingManager = this.tracingManager;
|
|
53
57
|
return this.eventContextManager.run(ctx, fn);
|
|
54
58
|
}
|
|
55
59
|
/**
|
|
@@ -87,15 +91,24 @@ let EventPipeline = class EventPipeline {
|
|
|
87
91
|
span.end();
|
|
88
92
|
}
|
|
89
93
|
catch (error) {
|
|
90
|
-
throw new
|
|
94
|
+
throw new PristineError("There was an error mapping the event into an Event object", {
|
|
95
|
+
code: CoreErrorCode.EventMappingFailed, kind: PristineErrorKind.SystemError, cause: error,
|
|
96
|
+
details: { event, interceptedEvent, executionContext },
|
|
97
|
+
});
|
|
91
98
|
}
|
|
92
99
|
if (numberOfEventMappers === 0) {
|
|
93
|
-
throw new
|
|
100
|
+
throw new PristineError("There are no Event Mappers that support the event", {
|
|
101
|
+
code: CoreErrorCode.EventNoMapperSupports, kind: PristineErrorKind.SystemError,
|
|
102
|
+
details: { event, interceptedEvent, executionContext },
|
|
103
|
+
});
|
|
94
104
|
}
|
|
95
105
|
if (eventExecutions.length === 0 || eventExecutions.reduce((agg, eventExecution) => {
|
|
96
106
|
return agg + eventExecution.events.length;
|
|
97
107
|
}, 0) === 0) {
|
|
98
|
-
throw new
|
|
108
|
+
throw new PristineError("There are no events to execute.", {
|
|
109
|
+
code: CoreErrorCode.EventNoEvents, kind: PristineErrorKind.SystemError,
|
|
110
|
+
details: { event, interceptedEvent, executionContext },
|
|
111
|
+
});
|
|
99
112
|
}
|
|
100
113
|
}
|
|
101
114
|
const eventsExecutionPromises = [];
|
|
@@ -119,6 +132,12 @@ let EventPipeline = class EventPipeline {
|
|
|
119
132
|
});
|
|
120
133
|
span.end();
|
|
121
134
|
span = this.tracingManager.startSpan(SpanKeynameEnum.EventDispatcherResolver);
|
|
135
|
+
// ── container.resolve, justified ──────────────────────────────────
|
|
136
|
+
// Per CLAUDE.md: framework-internal per-event dispatch. The child
|
|
137
|
+
// container was just created on the line above; the dispatcher must
|
|
138
|
+
// come from THAT container so it sees the right per-event services.
|
|
139
|
+
// Constructor-injecting it would bind to the kernel container's
|
|
140
|
+
// instance, not the per-event one.
|
|
122
141
|
const eventDispatcher = childContainer.resolve("EventDispatcherInterface");
|
|
123
142
|
span.end();
|
|
124
143
|
try {
|
|
@@ -149,6 +168,12 @@ let EventPipeline = class EventPipeline {
|
|
|
149
168
|
});
|
|
150
169
|
span.end();
|
|
151
170
|
span = this.tracingManager.startSpan(SpanKeynameEnum.EventDispatcherResolver);
|
|
171
|
+
// ── container.resolve, justified ──────────────────────────────────
|
|
172
|
+
// Per CLAUDE.md: framework-internal per-event dispatch. The child
|
|
173
|
+
// container was just created on the line above; the dispatcher must
|
|
174
|
+
// come from THAT container so it sees the right per-event services.
|
|
175
|
+
// Constructor-injecting it would bind to the kernel container's
|
|
176
|
+
// instance, not the per-event one.
|
|
152
177
|
const eventDispatcher = childContainer.resolve("EventDispatcherInterface");
|
|
153
178
|
span.end();
|
|
154
179
|
// Install the per-event ALS context for parallel-path execution too. Each
|
|
@@ -195,7 +220,10 @@ let EventPipeline = class EventPipeline {
|
|
|
195
220
|
interceptedEvent = (_b = yield ((_a = eventInterceptor.preMappingIntercept) === null || _a === void 0 ? void 0 : _a.call(eventInterceptor, interceptedEvent, executionContext))) !== null && _b !== void 0 ? _b : interceptedEvent;
|
|
196
221
|
}
|
|
197
222
|
catch (error) {
|
|
198
|
-
throw new
|
|
223
|
+
throw new PristineError("There was an error while executing the PreMapping Event interceptors", {
|
|
224
|
+
code: CoreErrorCode.EventPreMappingInterceptorFailed, kind: PristineErrorKind.SystemError, cause: error,
|
|
225
|
+
details: { interceptorName: eventInterceptor.constructor.name, event, executionContext },
|
|
226
|
+
});
|
|
199
227
|
}
|
|
200
228
|
}
|
|
201
229
|
span.end();
|
|
@@ -219,7 +247,10 @@ let EventPipeline = class EventPipeline {
|
|
|
219
247
|
interceptedEvent = (_b = yield ((_a = eventInterceptor.postMappingIntercept) === null || _a === void 0 ? void 0 : _a.call(eventInterceptor, interceptedEvent))) !== null && _b !== void 0 ? _b : interceptedEvent;
|
|
220
248
|
}
|
|
221
249
|
catch (error) {
|
|
222
|
-
throw new
|
|
250
|
+
throw new PristineError("There was an error while executing the PostMapping Event interceptors", {
|
|
251
|
+
code: CoreErrorCode.EventPostMappingInterceptorFailed, kind: PristineErrorKind.SystemError, cause: error,
|
|
252
|
+
details: { interceptorName: eventInterceptor.constructor.name, event },
|
|
253
|
+
});
|
|
223
254
|
}
|
|
224
255
|
}
|
|
225
256
|
span.end();
|
|
@@ -243,7 +274,10 @@ let EventPipeline = class EventPipeline {
|
|
|
243
274
|
interceptedEventResponse = (_b = yield ((_a = eventInterceptor.preResponseMappingIntercept) === null || _a === void 0 ? void 0 : _a.call(eventInterceptor, interceptedEventResponse))) !== null && _b !== void 0 ? _b : interceptedEventResponse;
|
|
244
275
|
}
|
|
245
276
|
catch (error) {
|
|
246
|
-
throw new
|
|
277
|
+
throw new PristineError("There was an error while executing the PreResponseMapping Event interceptors", {
|
|
278
|
+
code: CoreErrorCode.EventPreResponseInterceptorFailed, kind: PristineErrorKind.SystemError, cause: error,
|
|
279
|
+
details: { interceptorName: eventInterceptor.constructor.name, eventResponse },
|
|
280
|
+
});
|
|
247
281
|
}
|
|
248
282
|
}
|
|
249
283
|
span.end();
|
|
@@ -267,7 +301,10 @@ let EventPipeline = class EventPipeline {
|
|
|
267
301
|
interceptedEventResponse = (_b = yield ((_a = eventInterceptor.postResponseMappingIntercept) === null || _a === void 0 ? void 0 : _a.call(eventInterceptor, interceptedEventResponse))) !== null && _b !== void 0 ? _b : interceptedEventResponse;
|
|
268
302
|
}
|
|
269
303
|
catch (error) {
|
|
270
|
-
throw new
|
|
304
|
+
throw new PristineError("There was an error while executing the PostResponseMapping Event interceptors", {
|
|
305
|
+
code: CoreErrorCode.EventPostResponseInterceptorFailed, kind: PristineErrorKind.SystemError, cause: error,
|
|
306
|
+
details: { interceptorName: eventInterceptor.constructor.name, eventResponse },
|
|
307
|
+
});
|
|
271
308
|
}
|
|
272
309
|
}
|
|
273
310
|
span.end();
|
|
@@ -283,7 +320,6 @@ let EventPipeline = class EventPipeline {
|
|
|
283
320
|
*/
|
|
284
321
|
executeEvent(event, eventDispatcher) {
|
|
285
322
|
return __awaiter(this, void 0, void 0, function* () {
|
|
286
|
-
this.breadcrumbHandler.add(event.id, `${CoreModuleKeyname}:event.pipeline:executeEvent:enter`);
|
|
287
323
|
// 1 - Run the post mapped interceptors on every single event before they get executed.
|
|
288
324
|
const interceptedEvent = yield this.postMappingIntercept(event);
|
|
289
325
|
try {
|
|
@@ -292,13 +328,11 @@ let EventPipeline = class EventPipeline {
|
|
|
292
328
|
const response = yield eventDispatcher.dispatch(interceptedEvent);
|
|
293
329
|
eventExecutionSpan.end();
|
|
294
330
|
this.logHandler.debug("EventPipeline: Event dispatched successfully.", {
|
|
295
|
-
breadcrumb: `${CoreModuleKeyname}:event.pipeline:executeEvent:return`,
|
|
296
331
|
extra: {
|
|
297
332
|
event,
|
|
298
333
|
response,
|
|
299
334
|
},
|
|
300
335
|
});
|
|
301
|
-
this.breadcrumbHandler.reset(event.id);
|
|
302
336
|
return response;
|
|
303
337
|
}
|
|
304
338
|
catch (error) {
|
|
@@ -308,7 +342,10 @@ let EventPipeline = class EventPipeline {
|
|
|
308
342
|
interceptedEvent,
|
|
309
343
|
},
|
|
310
344
|
});
|
|
311
|
-
throw
|
|
345
|
+
// Re-throw the original error so its type and `instanceof` identity survive — the
|
|
346
|
+
// typed PristineError (e.g. NotFoundError, ValidationError) thrown by the controller
|
|
347
|
+
// must reach the channel responders intact. Pipeline context is logged above.
|
|
348
|
+
throw error;
|
|
312
349
|
}
|
|
313
350
|
});
|
|
314
351
|
}
|
|
@@ -319,8 +356,7 @@ EventPipeline = __decorate([
|
|
|
319
356
|
__param(1, injectAll(ServiceDefinitionTagEnum.EventMapper)),
|
|
320
357
|
__param(2, inject('LogHandlerInterface')),
|
|
321
358
|
__param(3, inject("TracingManagerInterface")),
|
|
322
|
-
|
|
323
|
-
__metadata("design:paramtypes", [Array, Array, Object, Object, Object, EventContextManager])
|
|
359
|
+
__metadata("design:paramtypes", [Array, Array, Object, Object, EventContextManager])
|
|
324
360
|
], EventPipeline);
|
|
325
361
|
export { EventPipeline };
|
|
326
362
|
//# sourceMappingURL=event.pipeline.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event.pipeline.js","sourceRoot":"","sources":["../../../../src/pipelines/event.pipeline.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAsB,MAAM,EAAE,UAAU,EAAE,SAAS,EAAC,MAAM,UAAU,CAAC;AAI5E,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAKtC,OAAO,EAAC,YAAY,EAAE,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"event.pipeline.js","sourceRoot":"","sources":["../../../../src/pipelines/event.pipeline.ts"],"names":[],"mappings":"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"}
|