@dumanarge/xssrv-shared-lib 1.0.11 → 1.0.13

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.
@@ -10,6 +10,7 @@ export interface ObservabilityContextData {
10
10
  userId?: string;
11
11
  accountId?: string;
12
12
  userEmail?: string;
13
+ clientIp?: string;
13
14
  userRoles?: string[];
14
15
  origin?: 'http' | 'grpc' | 'rabbitmq' | 'cron' | 'system';
15
16
  operation?: string;
@@ -52,6 +52,7 @@ exports.ObservabilityContext = {
52
52
  userId: context?.userId,
53
53
  accountId: context?.accountId,
54
54
  userEmail: context?.userEmail,
55
+ clientIp: context?.clientIp,
55
56
  origin: context?.origin,
56
57
  operation: context?.operation,
57
58
  };
@@ -1 +1 @@
1
- {"version":3,"file":"observability-context.js","sourceRoot":"","sources":["../../src/context/observability-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observability-context.js","sourceRoot":"","sources":["../../src/context/observability-context.ts"],"names":[],"mappings":"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"}
@@ -137,6 +137,24 @@ function metadataValue(metadata, key) {
137
137
  }
138
138
  return undefined;
139
139
  }
140
+ function resolveClientIpFromGrpcMetadata(metadata) {
141
+ const forwardedFor = metadataValue(metadata, 'x-forwarded-for');
142
+ if (forwardedFor) {
143
+ const first = forwardedFor.split(',')[0]?.trim();
144
+ if (first) {
145
+ return first;
146
+ }
147
+ }
148
+ const realIp = metadataValue(metadata, 'x-real-ip');
149
+ if (realIp?.trim()) {
150
+ return realIp.trim();
151
+ }
152
+ const clientIp = metadataValue(metadata, 'x-client-ip');
153
+ if (clientIp?.trim()) {
154
+ return clientIp.trim();
155
+ }
156
+ return undefined;
157
+ }
140
158
  function parseTraceparent(traceparent) {
141
159
  if (!traceparent) {
142
160
  return {};
@@ -236,6 +254,7 @@ let ObservabilityGrpcInterceptor = class ObservabilityGrpcInterceptor {
236
254
  userId: metadataValue(metadata, 'x-user-id'),
237
255
  accountId: metadataValue(metadata, 'x-account-id'),
238
256
  userEmail: metadataValue(metadata, 'x-user-email'),
257
+ clientIp: resolveClientIpFromGrpcMetadata(metadata),
239
258
  userRoles: (metadataValue(metadata, 'x-roles') ?? '')
240
259
  .split(',')
241
260
  .map((role) => role.trim())
@@ -1 +1 @@
1
- {"version":3,"file":"observability.interceptor.js","sourceRoot":"","sources":["../../src/context/observability.interceptor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observability.interceptor.js","sourceRoot":"","sources":["../../src/context/observability.interceptor.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,7 @@ const context_1 = require("../context");
17
17
  const metrics_1 = require("../metrics");
18
18
  const severity_1 = require("./severity");
19
19
  const otel_log_emitter_1 = require("../observability/otel-log-emitter");
20
+ const prisma_exception_mapper_1 = require("./prisma-exception.mapper");
20
21
  exports.GRPC_APP_ERROR_METADATA_KEY = 'x-app-error';
21
22
  exports.GRPC_REQUEST_ID_METADATA_KEY = 'x-request-id';
22
23
  exports.GRPC_CORRELATION_ID_METADATA_KEY = 'x-correlation-id';
@@ -57,6 +58,10 @@ function normalizeException(exception, requestId, correlationId) {
57
58
  if (exception instanceof errors_1.AppError) {
58
59
  return exception;
59
60
  }
61
+ const prismaError = (0, prisma_exception_mapper_1.mapPrismaException)(exception, { requestId, correlationId });
62
+ if (prismaError) {
63
+ return prismaError;
64
+ }
60
65
  return errors_1.AppError.internal({
61
66
  requestId,
62
67
  correlationId,
@@ -1 +1 @@
1
- {"version":3,"file":"grpc-app-exception.filter.js","sourceRoot":"","sources":["../../src/filters/grpc-app-exception.filter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grpc-app-exception.filter.js","sourceRoot":"","sources":["../../src/filters/grpc-app-exception.filter.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ const context_1 = require("../context");
16
16
  const metrics_1 = require("../metrics");
17
17
  const severity_1 = require("./severity");
18
18
  const otel_log_emitter_1 = require("../observability/otel-log-emitter");
19
+ const prisma_exception_mapper_1 = require("./prisma-exception.mapper");
19
20
  function readHttpStartAt(request) {
20
21
  const startedAt = request.__requestStartedAt ??
21
22
  request['requestStartedAt'];
@@ -58,6 +59,21 @@ function normalizeException(exception, requestId, correlationId) {
58
59
  timestamp: new Date().toISOString(),
59
60
  };
60
61
  }
62
+ const prismaError = (0, prisma_exception_mapper_1.mapPrismaException)(exception, { requestId, correlationId });
63
+ if (prismaError) {
64
+ const prismaPayload = prismaError.toPayload();
65
+ return {
66
+ statusCode: prismaPayload.status.http,
67
+ errorCode: prismaPayload.code,
68
+ category: prismaPayload.category,
69
+ message: prismaPayload.message,
70
+ requestId: prismaPayload.requestId ?? requestId,
71
+ correlationId: prismaPayload.correlationId ?? correlationId,
72
+ retryable: prismaPayload.retryable,
73
+ timestamp: prismaPayload.timestamp,
74
+ details: prismaPayload.details,
75
+ };
76
+ }
61
77
  if (exception instanceof Error) {
62
78
  return {
63
79
  statusCode: common_1.HttpStatus.INTERNAL_SERVER_ERROR,
@@ -1 +1 @@
1
- {"version":3,"file":"http-app-exception.filter.js","sourceRoot":"","sources":["../../src/filters/http-app-exception.filter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-app-exception.filter.js","sourceRoot":"","sources":["../../src/filters/http-app-exception.filter.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  export { HttpAppExceptionFilter } from './http-app-exception.filter';
2
2
  export { GrpcAppExceptionFilter, GRPC_APP_ERROR_METADATA_KEY, GRPC_REQUEST_ID_METADATA_KEY, GRPC_CORRELATION_ID_METADATA_KEY, } from './grpc-app-exception.filter';
3
3
  export { resolveSeverity } from './severity';
4
+ export { mapPrismaException } from './prisma-exception.mapper';
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.resolveSeverity = exports.GRPC_CORRELATION_ID_METADATA_KEY = exports.GRPC_REQUEST_ID_METADATA_KEY = exports.GRPC_APP_ERROR_METADATA_KEY = exports.GrpcAppExceptionFilter = exports.HttpAppExceptionFilter = void 0;
3
+ exports.mapPrismaException = exports.resolveSeverity = exports.GRPC_CORRELATION_ID_METADATA_KEY = exports.GRPC_REQUEST_ID_METADATA_KEY = exports.GRPC_APP_ERROR_METADATA_KEY = exports.GrpcAppExceptionFilter = exports.HttpAppExceptionFilter = void 0;
4
4
  var http_app_exception_filter_1 = require("./http-app-exception.filter");
5
5
  Object.defineProperty(exports, "HttpAppExceptionFilter", { enumerable: true, get: function () { return http_app_exception_filter_1.HttpAppExceptionFilter; } });
6
6
  var grpc_app_exception_filter_1 = require("./grpc-app-exception.filter");
@@ -10,4 +10,6 @@ Object.defineProperty(exports, "GRPC_REQUEST_ID_METADATA_KEY", { enumerable: tru
10
10
  Object.defineProperty(exports, "GRPC_CORRELATION_ID_METADATA_KEY", { enumerable: true, get: function () { return grpc_app_exception_filter_1.GRPC_CORRELATION_ID_METADATA_KEY; } });
11
11
  var severity_1 = require("./severity");
12
12
  Object.defineProperty(exports, "resolveSeverity", { enumerable: true, get: function () { return severity_1.resolveSeverity; } });
13
+ var prisma_exception_mapper_1 = require("./prisma-exception.mapper");
14
+ Object.defineProperty(exports, "mapPrismaException", { enumerable: true, get: function () { return prisma_exception_mapper_1.mapPrismaException; } });
13
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/filters/index.ts"],"names":[],"mappings":";;;AAAA,yEAAqE;AAA5D,mIAAA,sBAAsB,OAAA;AAC/B,yEAKqC;AAJnC,mIAAA,sBAAsB,OAAA;AACtB,wIAAA,2BAA2B,OAAA;AAC3B,yIAAA,4BAA4B,OAAA;AAC5B,6IAAA,gCAAgC,OAAA;AAElC,uCAA6C;AAApC,2GAAA,eAAe,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/filters/index.ts"],"names":[],"mappings":";;;AAAA,yEAAqE;AAA5D,mIAAA,sBAAsB,OAAA;AAC/B,yEAKqC;AAJnC,mIAAA,sBAAsB,OAAA;AACtB,wIAAA,2BAA2B,OAAA;AAC3B,yIAAA,4BAA4B,OAAA;AAC5B,6IAAA,gCAAgC,OAAA;AAElC,uCAA6C;AAApC,2GAAA,eAAe,OAAA;AACxB,qEAA+D;AAAtD,6HAAA,kBAAkB,OAAA"}
@@ -0,0 +1,5 @@
1
+ import { AppError } from '../errors';
2
+ export declare function mapPrismaException(error: unknown, options?: {
3
+ requestId?: string;
4
+ correlationId?: string;
5
+ }): AppError | null;
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mapPrismaException = mapPrismaException;
4
+ const errors_1 = require("../errors");
5
+ const PRISMA_CLIENT_ERROR_NAMES = new Set([
6
+ 'PrismaClientKnownRequestError',
7
+ 'PrismaClientUnknownRequestError',
8
+ 'PrismaClientRustPanicError',
9
+ 'PrismaClientInitializationError',
10
+ 'PrismaClientValidationError',
11
+ ]);
12
+ const PRISMA_CODE_PATTERN = /^P\d{4}$/;
13
+ function isPrismaKnownError(error) {
14
+ if (typeof error !== 'object' || error === null)
15
+ return false;
16
+ const e = error;
17
+ return (typeof e.code === 'string' &&
18
+ PRISMA_CODE_PATTERN.test(e.code) &&
19
+ 'clientVersion' in e);
20
+ }
21
+ function isPrismaGenericError(error) {
22
+ if (typeof error !== 'object' || error === null)
23
+ return false;
24
+ const e = error;
25
+ return (typeof e.name === 'string' &&
26
+ PRISMA_CLIENT_ERROR_NAMES.has(e.name) &&
27
+ typeof e.message === 'string');
28
+ }
29
+ function normalizeTarget(target) {
30
+ if (!target)
31
+ return undefined;
32
+ if (Array.isArray(target))
33
+ return target;
34
+ return [target];
35
+ }
36
+ function mapPrismaException(error, options = {}) {
37
+ if (isPrismaKnownError(error)) {
38
+ const prismaCode = error.code;
39
+ const target = normalizeTarget(error.meta?.target);
40
+ const model = error.meta?.modelName;
41
+ const cause = error.meta?.cause;
42
+ const fieldName = error.meta?.field_name ?? error.meta?.column_name;
43
+ return errors_1.AppError.internal({
44
+ ...options,
45
+ details: {
46
+ prismaCode,
47
+ ...(model ? { prismaModel: model } : {}),
48
+ ...(target?.length ? { prismaTarget: target } : {}),
49
+ ...(fieldName ? { prismaField: fieldName } : {}),
50
+ ...(cause ? { prismaCause: cause } : {}),
51
+ prismaMessage: error.message,
52
+ },
53
+ });
54
+ }
55
+ if (isPrismaGenericError(error)) {
56
+ return errors_1.AppError.internal({
57
+ ...options,
58
+ details: {
59
+ prismaErrorType: error.name,
60
+ ...(error.errorCode ? { prismaCode: error.errorCode } : {}),
61
+ prismaMessage: error.message,
62
+ },
63
+ });
64
+ }
65
+ return null;
66
+ }
67
+ //# sourceMappingURL=prisma-exception.mapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prisma-exception.mapper.js","sourceRoot":"","sources":["../../src/filters/prisma-exception.mapper.ts"],"names":[],"mappings":";;AA0DA,gDAoCC;AA9FD,sCAAqC;AAsBrC,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAC;IACxC,+BAA+B;IAC/B,iCAAiC;IACjC,4BAA4B;IAC5B,iCAAiC;IACjC,6BAA6B;CAC9B,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,UAAU,CAAC;AAEvC,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,CAAC,GAAG,KAAgC,CAAC;IAC3C,OAAO,CACL,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ;QAC1B,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QAChC,eAAe,IAAI,CAAC,CACrB,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAc;IAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,CAAC,GAAG,KAAgC,CAAC;IAC3C,OAAO,CACL,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ;QAC1B,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;QACrC,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAC9B,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,MAAqC;IAC5D,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IACzC,OAAO,CAAC,MAAM,CAAC,CAAC;AAClB,CAAC;AAED,SAAgB,kBAAkB,CAChC,KAAc,EACd,UAA0D,EAAE;IAE5D,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,UAAU,GAAW,KAAK,CAAC,IAAI,CAAC;QACtC,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACnD,MAAM,KAAK,GAAuB,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC;QACxD,MAAM,KAAK,GAAuB,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC;QACpD,MAAM,SAAS,GAAuB,KAAK,CAAC,IAAI,EAAE,UAAU,IAAI,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC;QAExF,OAAO,iBAAQ,CAAC,QAAQ,CAAC;YACvB,GAAG,OAAO;YACV,OAAO,EAAE;gBACP,UAAU;gBACV,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnD,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChD,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxC,aAAa,EAAE,KAAK,CAAC,OAAO;aAC7B;SACF,CAAC,CAAC;IACL,CAAC;IAED,IAAI,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,iBAAQ,CAAC,QAAQ,CAAC;YACvB,GAAG,OAAO;YACV,OAAO,EAAE;gBACP,eAAe,EAAE,KAAK,CAAC,IAAI;gBAC3B,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3D,aAAa,EAAE,KAAK,CAAC,OAAO;aAC7B;SACF,CAAC,CAAC;IACL,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,9 @@
1
+ export declare abstract class InboxRepository {
2
+ abstract processIfNotSeen(messageId: string, routingKey: string, handler: () => Promise<void>, correlationId?: string): Promise<boolean>;
3
+ }
4
+ export declare class PrismaInboxRepository extends InboxRepository {
5
+ private readonly prisma;
6
+ private readonly logger;
7
+ constructor(prisma: any);
8
+ processIfNotSeen(messageId: string, routingKey: string, handler: () => Promise<void>, correlationId?: string): Promise<boolean>;
9
+ }
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var PrismaInboxRepository_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.PrismaInboxRepository = exports.InboxRepository = void 0;
14
+ const common_1 = require("@nestjs/common");
15
+ class InboxRepository {
16
+ }
17
+ exports.InboxRepository = InboxRepository;
18
+ let PrismaInboxRepository = PrismaInboxRepository_1 = class PrismaInboxRepository extends InboxRepository {
19
+ prisma;
20
+ logger = new common_1.Logger(PrismaInboxRepository_1.name);
21
+ constructor(prisma) {
22
+ super();
23
+ this.prisma = prisma;
24
+ }
25
+ async processIfNotSeen(messageId, routingKey, handler, correlationId) {
26
+ return this.prisma.$transaction(async (tx) => {
27
+ await tx.$executeRaw `
28
+ SELECT pg_advisory_xact_lock(hashtext(${messageId})::bigint)
29
+ `;
30
+ const inserted = await tx.$queryRaw `
31
+ INSERT INTO inbox_messages (message_id, routing_key, correlation_id)
32
+ VALUES (
33
+ ${messageId},
34
+ ${routingKey},
35
+ ${correlationId ?? null}
36
+ )
37
+ ON CONFLICT (message_id) DO NOTHING
38
+ RETURNING id
39
+ `;
40
+ if (inserted.length === 0) {
41
+ this.logger.debug(`[INBOX] Duplicate skipped messageId=${messageId} routingKey=${routingKey}`);
42
+ return false;
43
+ }
44
+ await handler();
45
+ return true;
46
+ });
47
+ }
48
+ };
49
+ exports.PrismaInboxRepository = PrismaInboxRepository;
50
+ exports.PrismaInboxRepository = PrismaInboxRepository = PrismaInboxRepository_1 = __decorate([
51
+ (0, common_1.Injectable)(),
52
+ __metadata("design:paramtypes", [Object])
53
+ ], PrismaInboxRepository);
54
+ //# sourceMappingURL=inbox.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inbox.repository.js","sourceRoot":"","sources":["../../src/inbox/inbox.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;;AA2BA,2CAAoD;AAiBpD,MAAsB,eAAe;CAapC;AAbD,0CAaC;AA4BM,IAAM,qBAAqB,6BAA3B,MAAM,qBAAsB,SAAQ,eAAe;IAG3B;IAFZ,MAAM,GAAG,IAAI,eAAM,CAAC,uBAAqB,CAAC,IAAI,CAAC,CAAC;IAEjE,YAA6B,MAAW;QACtC,KAAK,EAAE,CAAC;QADmB,WAAM,GAAN,MAAM,CAAK;IAExC,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,SAAiB,EACjB,UAAkB,EAClB,OAA4B,EAC5B,aAAsB;QAEtB,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,EAAO,EAAE,EAAE;YAGhD,MAAM,EAAE,CAAC,WAAW,CAAA;gDACsB,SAAS;OAClD,CAAC;YAIF,MAAM,QAAQ,GAAqB,MAAM,EAAE,CAAC,SAAS,CAAA;;;YAG/C,SAAS;YACT,UAAU;YACV,aAAa,IAAI,IAAI;;;;OAI1B,CAAC;YAEF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,uCAAuC,SAAS,eAAe,UAAU,EAAE,CAC5E,CAAC;gBACF,OAAO,KAAK,CAAC;YACf,CAAC;YAED,MAAM,OAAO,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AA5CY,sDAAqB;gCAArB,qBAAqB;IADjC,IAAA,mBAAU,GAAE;;GACA,qBAAqB,CA4CjC"}
@@ -0,0 +1,2 @@
1
+ export { InboxRepository, PrismaInboxRepository } from './inbox.repository';
2
+ export { RawPgInboxRepository, checkInboxDedup, type PgPoolLike, type PgPoolClientLike, type PgClientLike, type PgQueryResult, } from './raw-pg-inbox.repository';
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.checkInboxDedup = exports.RawPgInboxRepository = exports.PrismaInboxRepository = exports.InboxRepository = void 0;
4
+ var inbox_repository_1 = require("./inbox.repository");
5
+ Object.defineProperty(exports, "InboxRepository", { enumerable: true, get: function () { return inbox_repository_1.InboxRepository; } });
6
+ Object.defineProperty(exports, "PrismaInboxRepository", { enumerable: true, get: function () { return inbox_repository_1.PrismaInboxRepository; } });
7
+ var raw_pg_inbox_repository_1 = require("./raw-pg-inbox.repository");
8
+ Object.defineProperty(exports, "RawPgInboxRepository", { enumerable: true, get: function () { return raw_pg_inbox_repository_1.RawPgInboxRepository; } });
9
+ Object.defineProperty(exports, "checkInboxDedup", { enumerable: true, get: function () { return raw_pg_inbox_repository_1.checkInboxDedup; } });
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/inbox/index.ts"],"names":[],"mappings":";;;AAAA,uDAA4E;AAAnE,mHAAA,eAAe,OAAA;AAAE,yHAAA,qBAAqB,OAAA;AAC/C,qEAOmC;AANjC,+HAAA,oBAAoB,OAAA;AACpB,0HAAA,eAAe,OAAA"}
@@ -0,0 +1,22 @@
1
+ import { InboxRepository } from './inbox.repository';
2
+ export interface PgQueryResult {
3
+ rowCount: number | null;
4
+ rows: Record<string, unknown>[];
5
+ }
6
+ export interface PgClientLike {
7
+ query(text: string, values?: unknown[]): Promise<PgQueryResult>;
8
+ }
9
+ export interface PgPoolClientLike extends PgClientLike {
10
+ release(): void;
11
+ }
12
+ export interface PgPoolLike {
13
+ connect(): Promise<PgPoolClientLike>;
14
+ }
15
+ export declare function checkInboxDedup(client: PgClientLike, messageId: string, inboxTable?: string): Promise<boolean>;
16
+ export declare class RawPgInboxRepository extends InboxRepository {
17
+ private readonly pool;
18
+ private readonly inboxTable;
19
+ private readonly logger;
20
+ constructor(pool: PgPoolLike, inboxTable?: string);
21
+ processIfNotSeen(messageId: string, routingKey: string, handler: () => Promise<void>, correlationId?: string): Promise<boolean>;
22
+ }
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var RawPgInboxRepository_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.RawPgInboxRepository = void 0;
14
+ exports.checkInboxDedup = checkInboxDedup;
15
+ const common_1 = require("@nestjs/common");
16
+ const inbox_repository_1 = require("./inbox.repository");
17
+ async function checkInboxDedup(client, messageId, inboxTable = 'inbox_messages') {
18
+ await client.query('SELECT pg_advisory_xact_lock(hashtext($1)::bigint)', [messageId]);
19
+ const result = await client.query(`INSERT INTO ${inboxTable} (message_id)
20
+ VALUES ($1)
21
+ ON CONFLICT (message_id) DO NOTHING
22
+ RETURNING message_id`, [messageId]);
23
+ return (result.rowCount ?? 0) > 0;
24
+ }
25
+ let RawPgInboxRepository = RawPgInboxRepository_1 = class RawPgInboxRepository extends inbox_repository_1.InboxRepository {
26
+ pool;
27
+ inboxTable;
28
+ logger = new common_1.Logger(RawPgInboxRepository_1.name);
29
+ constructor(pool, inboxTable = 'inbox_messages') {
30
+ super();
31
+ this.pool = pool;
32
+ this.inboxTable = inboxTable;
33
+ }
34
+ async processIfNotSeen(messageId, routingKey, handler, correlationId) {
35
+ const client = await this.pool.connect();
36
+ try {
37
+ await client.query('BEGIN');
38
+ const isNew = await checkInboxDedup(client, messageId, this.inboxTable);
39
+ if (!isNew) {
40
+ await client.query('COMMIT');
41
+ this.logger.debug(`[INBOX] Duplicate skipped messageId=${messageId} routingKey=${routingKey}`);
42
+ return false;
43
+ }
44
+ await handler();
45
+ await client.query('COMMIT');
46
+ return true;
47
+ }
48
+ catch (err) {
49
+ try {
50
+ await client.query('ROLLBACK');
51
+ }
52
+ catch {
53
+ }
54
+ throw err;
55
+ }
56
+ finally {
57
+ client.release();
58
+ }
59
+ }
60
+ };
61
+ exports.RawPgInboxRepository = RawPgInboxRepository;
62
+ exports.RawPgInboxRepository = RawPgInboxRepository = RawPgInboxRepository_1 = __decorate([
63
+ (0, common_1.Injectable)(),
64
+ __metadata("design:paramtypes", [Object, String])
65
+ ], RawPgInboxRepository);
66
+ //# sourceMappingURL=raw-pg-inbox.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"raw-pg-inbox.repository.js","sourceRoot":"","sources":["../../src/inbox/raw-pg-inbox.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAmEA,0CAoBC;AA1DD,2CAAoD;AACpD,yDAAqD;AAqC9C,KAAK,UAAU,eAAe,CACnC,MAAoB,EACpB,SAAiB,EACjB,aAAqB,gBAAgB;IAGrC,MAAM,MAAM,CAAC,KAAK,CAChB,oDAAoD,EACpD,CAAC,SAAS,CAAC,CACZ,CAAC;IAEF,MAAM,MAAM,GAAkB,MAAM,MAAM,CAAC,KAAK,CAC9C,eAAe,UAAU;;;0BAGH,EACtB,CAAC,SAAS,CAAC,CACZ,CAAC;IAEF,OAAO,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;AACpC,CAAC;AAWM,IAAM,oBAAoB,4BAA1B,MAAM,oBAAqB,SAAQ,kCAAe;IAIpC;IAEA;IALF,MAAM,GAAG,IAAI,eAAM,CAAC,sBAAoB,CAAC,IAAI,CAAC,CAAC;IAEhE,YACmB,IAAgB,EAEhB,aAAqB,gBAAgB;QAEtD,KAAK,EAAE,CAAC;QAJS,SAAI,GAAJ,IAAI,CAAY;QAEhB,eAAU,GAAV,UAAU,CAA2B;IAGxD,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,SAAiB,EACjB,UAAkB,EAClB,OAA4B,EAC5B,aAAsB;QAEtB,MAAM,MAAM,GAAqB,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAE3D,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAE5B,MAAM,KAAK,GAAY,MAAM,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YAEjF,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,uCAAuC,SAAS,eAAe,UAAU,EAAE,CAC5E,CAAC;gBACF,OAAO,KAAK,CAAC;YACf,CAAC;YAED,MAAM,OAAO,EAAE,CAAC;YAChB,MAAM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC7B,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACjC,CAAC;YAAC,MAAM,CAAC;YAET,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;gBAAS,CAAC;YACT,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;CACF,CAAA;AA9CY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,mBAAU,GAAE;;GACA,oBAAoB,CA8ChC"}
package/dist/index.d.ts CHANGED
@@ -4,7 +4,8 @@ export { HttpAppExceptionFilter } from './logging/http-exception.filter';
4
4
  export { RequestLoggingInterceptor } from './logging/request-logging.interceptor';
5
5
  export * from './filters';
6
6
  export { HealthModule, HealthController, RedisHealthIndicator, RabbitMQHealthIndicator, } from './health/health.module';
7
- export { OutboxEvent, OutboxRepository, OutboxWorker, EventPublisher, RabbitMQEventPublisher, } from './outbox/outbox.module';
7
+ export { OutboxEvent, OutboxEventStatus, PublishOptions, OutboxRepository, OutboxWorker, EventPublisher, RabbitMQEventPublisher, } from './outbox/outbox.module';
8
+ export { InboxRepository, PrismaInboxRepository, RawPgInboxRepository, checkInboxDedup, type PgPoolLike, type PgPoolClientLike, type PgClientLike, type PgQueryResult, } from './inbox';
8
9
  export { LOG_KIND, LOG_TRANSPORT, ACCESS_LOG_RESULT_STATUS, ACCESS_LOG_OUTCOME, ACCESS_LOG_FAILURE_SOURCE, AUDIT_ACTOR_TYPE, AUDIT_SEVERITY, ACCESS_LOG_OPERATION_KIND, REDACTED_VALUE, DEFAULT_REDACTED_HEADER_KEYS, DEFAULT_REDACTED_BODY_KEYS, LogKind, LogTransport, AccessLogResultStatus, AccessLogOutcome, AccessLogFailureSource, AuditActorType, AuditSeverity, AccessLogOperationKind, AccessLogPayload, AuditLogPayload, DomainEventLogPayload, LogEvent, AccessLogEvent, AuditLogEvent, DomainLogEvent, buildLogRoutingKey, LogPublisher, NoopLogPublisher, RingBuffer, RingBufferOptions, RabbitMqLogPublisher, RabbitMqLogPublisherPort, RabbitMqLogPublisherOptions, LogSamplingPolicy, OutcomeAwareSamplingPolicy, AlwaysSampleLogPolicy, OutcomeAwareSamplingOptions, DefaultHttpAccessLogSamplingPolicy, DefaultHttpAccessLogSamplingPolicyOptions, AccessLogPayloadBuilder, AccessLogPayloadBuilderOptions, AccessLogInterceptor, AccessLogInterceptorOptions, RedactionOptions, TruncateBodyResult, redactHeaders, redactObject, truncateBody, hashEmail, } from './log-events';
9
10
  export { TenantContext, TenantMiddleware, TenantGuard, createPrismaTenantMiddleware, extractTenantFromGrpcMetadata, } from './auth/tenant.middleware';
10
11
  export { AuditInterceptor, AuditEntry } from './auth/audit.interceptor';
package/dist/index.js CHANGED
@@ -14,8 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.GracefulShutdownModule = exports.GracefulShutdownService = exports.AuditInterceptor = exports.extractTenantFromGrpcMetadata = exports.createPrismaTenantMiddleware = exports.TenantGuard = exports.TenantMiddleware = exports.TenantContext = exports.hashEmail = exports.truncateBody = exports.redactObject = exports.redactHeaders = exports.AccessLogInterceptor = exports.AccessLogPayloadBuilder = exports.DefaultHttpAccessLogSamplingPolicy = exports.AlwaysSampleLogPolicy = exports.OutcomeAwareSamplingPolicy = exports.LogSamplingPolicy = exports.RabbitMqLogPublisher = exports.RingBuffer = exports.NoopLogPublisher = exports.LogPublisher = exports.buildLogRoutingKey = exports.DEFAULT_REDACTED_BODY_KEYS = exports.DEFAULT_REDACTED_HEADER_KEYS = exports.REDACTED_VALUE = exports.ACCESS_LOG_OPERATION_KIND = exports.AUDIT_SEVERITY = exports.AUDIT_ACTOR_TYPE = exports.ACCESS_LOG_FAILURE_SOURCE = exports.ACCESS_LOG_OUTCOME = exports.ACCESS_LOG_RESULT_STATUS = exports.LOG_TRANSPORT = exports.LOG_KIND = exports.RabbitMQEventPublisher = exports.EventPublisher = exports.OutboxWorker = exports.OutboxRepository = exports.RabbitMQHealthIndicator = exports.RedisHealthIndicator = exports.HealthController = exports.HealthModule = exports.RequestLoggingInterceptor = exports.HttpAppExceptionFilter = exports.PINO_LOGGER_CONFIG = exports.LoggingModule = exports.SpanStatusCode = exports.context = exports.trace = exports.Span = void 0;
18
- exports.ObservabilityContextStorage = exports.resolveErrorSeverity = exports.emitAppErrorObservability = exports.FeatureFlagService = exports.enableGracefulShutdown = void 0;
17
+ exports.createPrismaTenantMiddleware = exports.TenantGuard = exports.TenantMiddleware = exports.TenantContext = exports.hashEmail = exports.truncateBody = exports.redactObject = exports.redactHeaders = exports.AccessLogInterceptor = exports.AccessLogPayloadBuilder = exports.DefaultHttpAccessLogSamplingPolicy = exports.AlwaysSampleLogPolicy = exports.OutcomeAwareSamplingPolicy = exports.LogSamplingPolicy = exports.RabbitMqLogPublisher = exports.RingBuffer = exports.NoopLogPublisher = exports.LogPublisher = exports.buildLogRoutingKey = exports.DEFAULT_REDACTED_BODY_KEYS = exports.DEFAULT_REDACTED_HEADER_KEYS = exports.REDACTED_VALUE = exports.ACCESS_LOG_OPERATION_KIND = exports.AUDIT_SEVERITY = exports.AUDIT_ACTOR_TYPE = exports.ACCESS_LOG_FAILURE_SOURCE = exports.ACCESS_LOG_OUTCOME = exports.ACCESS_LOG_RESULT_STATUS = exports.LOG_TRANSPORT = exports.LOG_KIND = exports.checkInboxDedup = exports.RawPgInboxRepository = exports.PrismaInboxRepository = exports.InboxRepository = exports.RabbitMQEventPublisher = exports.EventPublisher = exports.OutboxWorker = exports.OutboxRepository = exports.RabbitMQHealthIndicator = exports.RedisHealthIndicator = exports.HealthController = exports.HealthModule = exports.RequestLoggingInterceptor = exports.HttpAppExceptionFilter = exports.PINO_LOGGER_CONFIG = exports.LoggingModule = exports.SpanStatusCode = exports.context = exports.trace = exports.Span = void 0;
18
+ exports.ObservabilityContextStorage = exports.resolveErrorSeverity = exports.emitAppErrorObservability = exports.FeatureFlagService = exports.enableGracefulShutdown = exports.GracefulShutdownModule = exports.GracefulShutdownService = exports.AuditInterceptor = exports.extractTenantFromGrpcMetadata = void 0;
19
19
  var span_decorator_1 = require("./tracing/span.decorator");
20
20
  Object.defineProperty(exports, "Span", { enumerable: true, get: function () { return span_decorator_1.Span; } });
21
21
  Object.defineProperty(exports, "trace", { enumerable: true, get: function () { return span_decorator_1.trace; } });
@@ -39,6 +39,11 @@ Object.defineProperty(exports, "OutboxRepository", { enumerable: true, get: func
39
39
  Object.defineProperty(exports, "OutboxWorker", { enumerable: true, get: function () { return outbox_module_1.OutboxWorker; } });
40
40
  Object.defineProperty(exports, "EventPublisher", { enumerable: true, get: function () { return outbox_module_1.EventPublisher; } });
41
41
  Object.defineProperty(exports, "RabbitMQEventPublisher", { enumerable: true, get: function () { return outbox_module_1.RabbitMQEventPublisher; } });
42
+ var inbox_1 = require("./inbox");
43
+ Object.defineProperty(exports, "InboxRepository", { enumerable: true, get: function () { return inbox_1.InboxRepository; } });
44
+ Object.defineProperty(exports, "PrismaInboxRepository", { enumerable: true, get: function () { return inbox_1.PrismaInboxRepository; } });
45
+ Object.defineProperty(exports, "RawPgInboxRepository", { enumerable: true, get: function () { return inbox_1.RawPgInboxRepository; } });
46
+ Object.defineProperty(exports, "checkInboxDedup", { enumerable: true, get: function () { return inbox_1.checkInboxDedup; } });
42
47
  var log_events_1 = require("./log-events");
43
48
  Object.defineProperty(exports, "LOG_KIND", { enumerable: true, get: function () { return log_events_1.LOG_KIND; } });
44
49
  Object.defineProperty(exports, "LOG_TRANSPORT", { enumerable: true, get: function () { return log_events_1.LOG_TRANSPORT; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,2DAAgF;AAAvE,sGAAA,IAAI,OAAA;AAAE,uGAAA,KAAK,OAAA;AAAE,yGAAA,OAAO,OAAA;AAAE,gHAAA,cAAc,OAAA;AAG7C,2DAA6E;AAApE,+GAAA,aAAa,OAAA;AAAE,oHAAA,kBAAkB,OAAA;AAC1C,yEAAyE;AAAhE,+HAAA,sBAAsB,OAAA;AAC/B,qFAAkF;AAAzE,wIAAA,yBAAyB,OAAA;AAGlC,4CAA0B;AAG1B,wDAKgC;AAJ9B,6GAAA,YAAY,OAAA;AACZ,iHAAA,gBAAgB,OAAA;AAChB,qHAAA,oBAAoB,OAAA;AACpB,wHAAA,uBAAuB,OAAA;AAIzB,wDAMgC;AAJ9B,iHAAA,gBAAgB,OAAA;AAChB,6GAAA,YAAY,OAAA;AACZ,+GAAA,cAAc,OAAA;AACd,uHAAA,sBAAsB,OAAA;AAIxB,2CAmDsB;AAlDpB,sGAAA,QAAQ,OAAA;AACR,2GAAA,aAAa,OAAA;AACb,sHAAA,wBAAwB,OAAA;AACxB,gHAAA,kBAAkB,OAAA;AAClB,uHAAA,yBAAyB,OAAA;AACzB,8GAAA,gBAAgB,OAAA;AAChB,4GAAA,cAAc,OAAA;AACd,uHAAA,yBAAyB,OAAA;AACzB,4GAAA,cAAc,OAAA;AACd,0HAAA,4BAA4B,OAAA;AAC5B,wHAAA,0BAA0B,OAAA;AAgB1B,gHAAA,kBAAkB,OAAA;AAClB,0GAAA,YAAY,OAAA;AACZ,8GAAA,gBAAgB,OAAA;AAChB,wGAAA,UAAU,OAAA;AAEV,kHAAA,oBAAoB,OAAA;AAGpB,+GAAA,iBAAiB,OAAA;AACjB,wHAAA,0BAA0B,OAAA;AAC1B,mHAAA,qBAAqB,OAAA;AAErB,gIAAA,kCAAkC,OAAA;AAElC,qHAAA,uBAAuB,OAAA;AAEvB,kHAAA,oBAAoB,OAAA;AAIpB,2GAAA,aAAa,OAAA;AACb,0GAAA,YAAY,OAAA;AACZ,0GAAA,YAAY,OAAA;AACZ,uGAAA,SAAS,OAAA;AAIX,8DAMkC;AALhC,kHAAA,aAAa,OAAA;AACb,qHAAA,gBAAgB,OAAA;AAChB,gHAAA,WAAW,OAAA;AACX,iIAAA,4BAA4B,OAAA;AAC5B,kIAAA,6BAA6B,OAAA;AAG/B,8DAAwE;AAA/D,qHAAA,gBAAgB,OAAA;AAGzB,2CAAyB;AAGzB,4CAA0B;AAG1B,4CAA0B;AAG1B,gEAAmI;AAA1H,4HAAA,uBAAuB,OAAA;AAAE,2HAAA,sBAAsB,OAAA;AAAE,2HAAA,sBAAsB,OAAA;AAChF,wDAAyE;AAAhE,mHAAA,kBAAkB,OAAA;AAG3B,2EAK6C;AAJ3C,gIAAA,yBAAyB,OAAA;AACzB,2HAAA,oBAAoB,OAAA;AAItB,mEAGyC;AAFvC,8HAAA,2BAA2B,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,2DAAgF;AAAvE,sGAAA,IAAI,OAAA;AAAE,uGAAA,KAAK,OAAA;AAAE,yGAAA,OAAO,OAAA;AAAE,gHAAA,cAAc,OAAA;AAG7C,2DAA6E;AAApE,+GAAA,aAAa,OAAA;AAAE,oHAAA,kBAAkB,OAAA;AAC1C,yEAAyE;AAAhE,+HAAA,sBAAsB,OAAA;AAC/B,qFAAkF;AAAzE,wIAAA,yBAAyB,OAAA;AAGlC,4CAA0B;AAG1B,wDAKgC;AAJ9B,6GAAA,YAAY,OAAA;AACZ,iHAAA,gBAAgB,OAAA;AAChB,qHAAA,oBAAoB,OAAA;AACpB,wHAAA,uBAAuB,OAAA;AAIzB,wDAQgC;AAJ9B,iHAAA,gBAAgB,OAAA;AAChB,6GAAA,YAAY,OAAA;AACZ,+GAAA,cAAc,OAAA;AACd,uHAAA,sBAAsB,OAAA;AAIxB,iCASiB;AARf,wGAAA,eAAe,OAAA;AACf,8GAAA,qBAAqB,OAAA;AACrB,6GAAA,oBAAoB,OAAA;AACpB,wGAAA,eAAe,OAAA;AAQjB,2CAmDsB;AAlDpB,sGAAA,QAAQ,OAAA;AACR,2GAAA,aAAa,OAAA;AACb,sHAAA,wBAAwB,OAAA;AACxB,gHAAA,kBAAkB,OAAA;AAClB,uHAAA,yBAAyB,OAAA;AACzB,8GAAA,gBAAgB,OAAA;AAChB,4GAAA,cAAc,OAAA;AACd,uHAAA,yBAAyB,OAAA;AACzB,4GAAA,cAAc,OAAA;AACd,0HAAA,4BAA4B,OAAA;AAC5B,wHAAA,0BAA0B,OAAA;AAgB1B,gHAAA,kBAAkB,OAAA;AAClB,0GAAA,YAAY,OAAA;AACZ,8GAAA,gBAAgB,OAAA;AAChB,wGAAA,UAAU,OAAA;AAEV,kHAAA,oBAAoB,OAAA;AAGpB,+GAAA,iBAAiB,OAAA;AACjB,wHAAA,0BAA0B,OAAA;AAC1B,mHAAA,qBAAqB,OAAA;AAErB,gIAAA,kCAAkC,OAAA;AAElC,qHAAA,uBAAuB,OAAA;AAEvB,kHAAA,oBAAoB,OAAA;AAIpB,2GAAA,aAAa,OAAA;AACb,0GAAA,YAAY,OAAA;AACZ,0GAAA,YAAY,OAAA;AACZ,uGAAA,SAAS,OAAA;AAIX,8DAMkC;AALhC,kHAAA,aAAa,OAAA;AACb,qHAAA,gBAAgB,OAAA;AAChB,gHAAA,WAAW,OAAA;AACX,iIAAA,4BAA4B,OAAA;AAC5B,kIAAA,6BAA6B,OAAA;AAG/B,8DAAwE;AAA/D,qHAAA,gBAAgB,OAAA;AAGzB,2CAAyB;AAGzB,4CAA0B;AAG1B,4CAA0B;AAG1B,gEAAmI;AAA1H,4HAAA,uBAAuB,OAAA;AAAE,2HAAA,sBAAsB,OAAA;AAAE,2HAAA,sBAAsB,OAAA;AAChF,wDAAyE;AAAhE,mHAAA,kBAAkB,OAAA;AAG3B,2EAK6C;AAJ3C,gIAAA,yBAAyB,OAAA;AACzB,2HAAA,oBAAoB,OAAA;AAItB,mEAGyC;AAFvC,8HAAA,2BAA2B,OAAA"}
@@ -1,4 +1,9 @@
1
1
  import { OnModuleInit, OnModuleDestroy } from '@nestjs/common';
2
+ export type OutboxEventStatus = 'PENDING' | 'FAILED';
3
+ export interface PublishOptions {
4
+ messageId?: string;
5
+ correlationId?: string;
6
+ }
2
7
  export interface OutboxEvent {
3
8
  id?: string;
4
9
  aggregateType: string;
@@ -6,8 +11,10 @@ export interface OutboxEvent {
6
11
  eventType: string;
7
12
  payload: Record<string, any>;
8
13
  metadata?: Record<string, any>;
14
+ status?: OutboxEventStatus;
9
15
  createdAt?: Date;
10
16
  processedAt?: Date | null;
17
+ failedAt?: Date | null;
11
18
  retryCount?: number;
12
19
  maxRetries?: number;
13
20
  }
@@ -19,9 +26,10 @@ export declare class OutboxRepository {
19
26
  fetchUnprocessed(batchSize?: number): Promise<OutboxEvent[]>;
20
27
  markProcessed(eventId: string): Promise<void>;
21
28
  incrementRetry(eventId: string): Promise<void>;
29
+ markFailed(eventId: string): Promise<void>;
22
30
  }
23
31
  export declare abstract class EventPublisher {
24
- abstract publish(routingKey: string, payload: any): Promise<void>;
32
+ abstract publish(routingKey: string, payload: any, options?: PublishOptions): Promise<void>;
25
33
  }
26
34
  export declare class OutboxWorker implements OnModuleInit, OnModuleDestroy {
27
35
  private readonly outboxRepo;
@@ -35,10 +43,11 @@ export declare class OutboxWorker implements OnModuleInit, OnModuleDestroy {
35
43
  onModuleInit(): void;
36
44
  onModuleDestroy(): void;
37
45
  private processOutbox;
46
+ private processEvent;
38
47
  }
39
48
  export declare class RabbitMQEventPublisher extends EventPublisher {
40
49
  private readonly amqpConnection;
41
50
  private readonly logger;
42
51
  constructor(amqpConnection: any);
43
- publish(routingKey: string, payload: any): Promise<void>;
52
+ publish(routingKey: string, payload: any, options?: PublishOptions): Promise<void>;
44
53
  }
@@ -11,6 +11,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  var OutboxRepository_1, OutboxWorker_1, RabbitMQEventPublisher_1;
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  exports.RabbitMQEventPublisher = exports.OutboxWorker = exports.EventPublisher = exports.OutboxRepository = void 0;
14
+ const crypto_1 = require("crypto");
14
15
  const common_1 = require("@nestjs/common");
15
16
  const span_decorator_1 = require("../tracing/span.decorator");
16
17
  let OutboxRepository = OutboxRepository_1 = class OutboxRepository {
@@ -27,6 +28,7 @@ let OutboxRepository = OutboxRepository_1 = class OutboxRepository {
27
28
  eventType: event.eventType,
28
29
  payload: event.payload,
29
30
  metadata: event.metadata || {},
31
+ status: 'PENDING',
30
32
  retryCount: 0,
31
33
  maxRetries: event.maxRetries || 5,
32
34
  },
@@ -35,8 +37,8 @@ let OutboxRepository = OutboxRepository_1 = class OutboxRepository {
35
37
  async fetchUnprocessed(batchSize = 50) {
36
38
  return this.prisma.outboxEvent.findMany({
37
39
  where: {
40
+ status: 'PENDING',
38
41
  processedAt: null,
39
- retryCount: { lt: this.prisma.outboxEvent.fields?.maxRetries || 5 },
40
42
  },
41
43
  orderBy: { createdAt: 'asc' },
42
44
  take: batchSize,
@@ -54,6 +56,13 @@ let OutboxRepository = OutboxRepository_1 = class OutboxRepository {
54
56
  data: { retryCount: { increment: 1 } },
55
57
  });
56
58
  }
59
+ async markFailed(eventId) {
60
+ await this.prisma.outboxEvent.update({
61
+ where: { id: eventId },
62
+ data: { status: 'FAILED', failedAt: new Date() },
63
+ });
64
+ this.logger.warn(`[OUTBOX] Event permanently failed eventId=${eventId}`);
65
+ }
57
66
  };
58
67
  exports.OutboxRepository = OutboxRepository;
59
68
  exports.OutboxRepository = OutboxRepository = OutboxRepository_1 = __decorate([
@@ -95,22 +104,9 @@ let OutboxWorker = OutboxWorker_1 = class OutboxWorker {
95
104
  const events = await this.outboxRepo.fetchUnprocessed(this.batchSize);
96
105
  if (events.length === 0)
97
106
  return;
98
- this.logger.debug(`Processing ${events.length} outbox events`);
107
+ this.logger.debug(`Processing ${events.length} outbox event(s)`);
99
108
  for (const event of events) {
100
- try {
101
- await this.eventPublisher.publish(event.eventType, {
102
- aggregateType: event.aggregateType,
103
- aggregateId: event.aggregateId,
104
- payload: event.payload,
105
- metadata: event.metadata,
106
- timestamp: event.createdAt,
107
- });
108
- await this.outboxRepo.markProcessed(event.id);
109
- }
110
- catch (error) {
111
- this.logger.error(`Failed to process outbox event ${event.id}: ${error.message}`);
112
- await this.outboxRepo.incrementRetry(event.id);
113
- }
109
+ await this.processEvent(event);
114
110
  }
115
111
  }
116
112
  catch (error) {
@@ -120,6 +116,30 @@ let OutboxWorker = OutboxWorker_1 = class OutboxWorker {
120
116
  this.isProcessing = false;
121
117
  }
122
118
  }
119
+ async processEvent(event) {
120
+ try {
121
+ const messageId = event.id ?? (0, crypto_1.randomUUID)();
122
+ await this.eventPublisher.publish(event.eventType, {
123
+ aggregateType: event.aggregateType,
124
+ aggregateId: event.aggregateId,
125
+ payload: event.payload,
126
+ metadata: event.metadata,
127
+ timestamp: event.createdAt,
128
+ }, { messageId });
129
+ await this.outboxRepo.markProcessed(event.id);
130
+ }
131
+ catch (error) {
132
+ this.logger.error(`Failed to process outbox event ${event.id}: ${error.message}`);
133
+ const currentRetry = event.retryCount ?? 0;
134
+ const maxRetries = event.maxRetries ?? 5;
135
+ if (currentRetry + 1 >= maxRetries) {
136
+ await this.outboxRepo.markFailed(event.id);
137
+ }
138
+ else {
139
+ await this.outboxRepo.incrementRetry(event.id);
140
+ }
141
+ }
142
+ }
123
143
  };
124
144
  exports.OutboxWorker = OutboxWorker;
125
145
  __decorate([
@@ -140,27 +160,30 @@ let RabbitMQEventPublisher = RabbitMQEventPublisher_1 = class RabbitMQEventPubli
140
160
  super();
141
161
  this.amqpConnection = amqpConnection;
142
162
  }
143
- async publish(routingKey, payload) {
163
+ async publish(routingKey, payload, options) {
144
164
  const exchange = process.env.RABBITMQ_EXCHANGE || 'xenonsmart.events';
165
+ const messageId = options?.messageId ?? (0, crypto_1.randomUUID)();
145
166
  await this.amqpConnection.publish(exchange, routingKey, Buffer.from(JSON.stringify({
146
167
  ...payload,
147
168
  publishedAt: new Date().toISOString(),
148
169
  })), {
149
170
  persistent: true,
171
+ messageId,
150
172
  contentType: 'application/json',
151
173
  headers: {
152
174
  'x-event-type': routingKey,
153
175
  'x-source-service': process.env.SERVICE_NAME,
176
+ ...(options?.correlationId && { 'x-correlation-id': options.correlationId }),
154
177
  },
155
178
  });
156
- this.logger.debug(`Published event: ${routingKey}`);
179
+ this.logger.debug(`Published event routingKey=${routingKey} messageId=${messageId}`);
157
180
  }
158
181
  };
159
182
  exports.RabbitMQEventPublisher = RabbitMQEventPublisher;
160
183
  __decorate([
161
184
  (0, span_decorator_1.Span)('rabbitmq.publish'),
162
185
  __metadata("design:type", Function),
163
- __metadata("design:paramtypes", [String, Object]),
186
+ __metadata("design:paramtypes", [String, Object, Object]),
164
187
  __metadata("design:returntype", Promise)
165
188
  ], RabbitMQEventPublisher.prototype, "publish", null);
166
189
  exports.RabbitMQEventPublisher = RabbitMQEventPublisher = RabbitMQEventPublisher_1 = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"outbox.module.js","sourceRoot":"","sources":["../../src/outbox/outbox.module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"outbox.module.js","sourceRoot":"","sources":["../../src/outbox/outbox.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAcA,mCAAoC;AACpC,2CAAmF;AACnF,8DAAiD;AAqC1C,IAAM,gBAAgB,wBAAtB,MAAM,gBAAgB;IAGE;IAFZ,MAAM,GAAG,IAAI,eAAM,CAAC,kBAAgB,CAAC,IAAI,CAAC,CAAC;IAE5D,YAA6B,MAAW;QAAX,WAAM,GAAN,MAAM,CAAK;IAAG,CAAC;IAgB5C,KAAK,CAAC,mBAAmB,CAAC,EAAO,EAAE,KAAkB;QACnD,OAAO,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC;YAC3B,IAAI,EAAE;gBACJ,aAAa,EAAE,KAAK,CAAC,aAAa;gBAClC,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,OAAO,EAAE,KAAK,CAAC,OAAc;gBAC7B,QAAQ,EAAG,KAAK,CAAC,QAAgB,IAAI,EAAE;gBACvC,MAAM,EAAE,SAAS;gBACjB,UAAU,EAAE,CAAC;gBACb,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,CAAC;aAClC;SACF,CAAC,CAAC;IACL,CAAC;IAMD,KAAK,CAAC,gBAAgB,CAAC,YAAoB,EAAE;QAC3C,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC;YACtC,KAAK,EAAE;gBACL,MAAM,EAAE,SAAS;gBACjB,WAAW,EAAE,IAAI;aAClB;YACD,OAAO,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE;YAC7B,IAAI,EAAE,SAAS;SAChB,CAAC,CAAC;IACL,CAAC;IAGD,KAAK,CAAC,aAAa,CAAC,OAAe;QACjC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;YACnC,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE;YACtB,IAAI,EAAE,EAAE,WAAW,EAAE,IAAI,IAAI,EAAE,EAAE;SAClC,CAAC,CAAC;IACL,CAAC;IAMD,KAAK,CAAC,cAAc,CAAC,OAAe;QAClC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;YACnC,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE;YACtB,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE;SACvC,CAAC,CAAC;IACL,CAAC;IAMD,KAAK,CAAC,UAAU,CAAC,OAAe;QAC9B,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;YACnC,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE;YACtB,IAAI,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,IAAI,EAAE,EAAE;SACjD,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6CAA6C,OAAO,EAAE,CAAC,CAAC;IAC3E,CAAC;CACF,CAAA;AAhFY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,mBAAU,GAAE;;GACA,gBAAgB,CAgF5B;AAID,MAAsB,cAAc;CAMnC;AAND,wCAMC;AAIM,IAAM,YAAY,oBAAlB,MAAM,YAAY;IAQJ;IACA;IARF,MAAM,GAAG,IAAI,eAAM,CAAC,cAAY,CAAC,IAAI,CAAC,CAAC;IAChD,UAAU,GAA0B,IAAI,CAAC;IAChC,cAAc,CAAS;IACvB,SAAS,CAAS;IAC3B,YAAY,GAAG,KAAK,CAAC;IAE7B,YACmB,UAA4B,EAC5B,cAA8B;QAD9B,eAAU,GAAV,UAAU,CAAkB;QAC5B,mBAAc,GAAd,cAAc,CAAgB;QAE/C,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;QAClF,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,YAAY;QACV,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,iCAAiC,IAAI,CAAC,cAAc,cAAc,IAAI,CAAC,SAAS,GAAG,CACpF,CAAC;QACF,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACjF,CAAC;IAED,eAAe;QACb,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAGa,AAAN,KAAK,CAAC,aAAa;QACzB,IAAI,IAAI,CAAC,YAAY;YAAE,OAAO;QAC9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAEzB,IAAI,CAAC;YACH,MAAM,MAAM,GAAkB,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACrF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO;YAEhC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,MAAM,CAAC,MAAM,kBAAkB,CAAC,CAAC;YAEjE,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YACjC,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA6B,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QAC5E,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,KAAkB;QAC3C,IAAI,CAAC;YAGH,MAAM,SAAS,GAAW,KAAK,CAAC,EAAE,IAAI,IAAA,mBAAU,GAAE,CAAC;YAEnD,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAC/B,KAAK,CAAC,SAAS,EACf;gBACE,aAAa,EAAE,KAAK,CAAC,aAAa;gBAClC,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,SAAS,EAAE,KAAK,CAAC,SAAS;aAC3B,EACD,EAAE,SAAS,EAAE,CACd,CAAC;YAEF,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,EAAG,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,kCAAkC,KAAK,CAAC,EAAE,KAAM,KAAe,CAAC,OAAO,EAAE,CAC1E,CAAC;YAEF,MAAM,YAAY,GAAW,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC;YACnD,MAAM,UAAU,GAAW,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC;YAEjD,IAAI,YAAY,GAAG,CAAC,IAAI,UAAU,EAAE,CAAC;gBACnC,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,EAAG,CAAC,CAAC;YAC9C,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC,EAAG,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;IACH,CAAC;CACF,CAAA;AApFY,oCAAY;AA8BT;IADb,IAAA,qBAAI,EAAC,gBAAgB,CAAC;;;;iDAmBtB;uBAhDU,YAAY;IADxB,IAAA,mBAAU,GAAE;qCASoB,gBAAgB;QACZ,cAAc;GATtC,YAAY,CAoFxB;AAKM,IAAM,sBAAsB,8BAA5B,MAAM,sBAAuB,SAAQ,cAAc;IAG3B;IAFZ,MAAM,GAAG,IAAI,eAAM,CAAC,wBAAsB,CAAC,IAAI,CAAC,CAAC;IAElE,YAA6B,cAAmB;QAC9C,KAAK,EAAE,CAAC;QADmB,mBAAc,GAAd,cAAc,CAAK;IAEhD,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO,CACX,UAAkB,EAClB,OAAY,EACZ,OAAwB;QAExB,MAAM,QAAQ,GAAW,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,mBAAmB,CAAC;QAC9E,MAAM,SAAS,GAAW,OAAO,EAAE,SAAS,IAAI,IAAA,mBAAU,GAAE,CAAC;QAE7D,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAC/B,QAAQ,EACR,UAAU,EACV,MAAM,CAAC,IAAI,CACT,IAAI,CAAC,SAAS,CAAC;YACb,GAAG,OAAO;YACV,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACtC,CAAC,CACH,EACD;YACE,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,WAAW,EAAE,kBAAkB;YAC/B,OAAO,EAAE;gBACP,cAAc,EAAE,UAAU;gBAC1B,kBAAkB,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY;gBAC5C,GAAG,CAAC,OAAO,EAAE,aAAa,IAAI,EAAE,kBAAkB,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC;aAC7E;SACF,CACF,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,UAAU,cAAc,SAAS,EAAE,CAAC,CAAC;IACvF,CAAC;CACF,CAAA;AAvCY,wDAAsB;AAQ3B;IADL,IAAA,qBAAI,EAAC,kBAAkB,CAAC;;;;qDA+BxB;iCAtCU,sBAAsB;IADlC,IAAA,mBAAU,GAAE;;GACA,sBAAsB,CAuClC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dumanarge/xssrv-shared-lib",
3
- "version": "1.0.11",
3
+ "version": "1.0.13",
4
4
  "description": "Shared library for DumanArge IoT Platform services — tracing, logging, health, outbox, auth, config",
5
5
  "author": "Oguzhan Karahan <oguzhan.karahan@xenonsmart.com>",
6
6
  "license": "MIT",