@openhealth/oht-custom-parser-lib 0.4.3 → 0.5.2

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 (43) hide show
  1. package/dist/index.d.ts +3 -1
  2. package/dist/index.js +20 -2
  3. package/dist/index.js.map +1 -1
  4. package/dist/service/auxiliaryFunctions.service.d.ts +2 -0
  5. package/dist/service/auxiliaryFunctions.service.js +4 -3
  6. package/dist/service/auxiliaryFunctions.service.js.map +1 -1
  7. package/dist/service/fileUploadErrorHandler.service.d.ts +26 -0
  8. package/dist/service/fileUploadErrorHandler.service.js +257 -0
  9. package/dist/service/fileUploadErrorHandler.service.js.map +1 -0
  10. package/dist/service/ohtMeasurementsExtractor.service.js +22 -23
  11. package/dist/service/ohtMeasurementsExtractor.service.js.map +1 -1
  12. package/dist/service/ohtReportMeasurementsExtractor.service.d.ts +1 -0
  13. package/dist/service/ohtReportMeasurementsExtractor.service.js +33 -37
  14. package/dist/service/ohtReportMeasurementsExtractor.service.js.map +1 -1
  15. package/dist/service/processingLogger.service.d.ts +140 -0
  16. package/dist/service/processingLogger.service.js +515 -0
  17. package/dist/service/processingLogger.service.js.map +1 -0
  18. package/dist/service/reportCreator.service.d.ts +1 -1
  19. package/dist/service/reportCreator.service.js +53 -65
  20. package/dist/service/reportCreator.service.js.map +1 -1
  21. package/dist/service/slackMessages.service.js +4 -5
  22. package/dist/service/slackMessages.service.js.map +1 -1
  23. package/dist/service/transformationRules.service.js +3 -10
  24. package/dist/service/transformationRules.service.js.map +1 -1
  25. package/dist/types/error.types.d.ts +82 -0
  26. package/dist/types/error.types.js +195 -0
  27. package/dist/types/error.types.js.map +1 -1
  28. package/dist/types/oht.types.d.ts +5 -1
  29. package/dist/types/oht.types.js +4 -0
  30. package/dist/types/oht.types.js.map +1 -1
  31. package/dist/util-ts/apiUtils.js +2 -3
  32. package/dist/util-ts/apiUtils.js.map +1 -1
  33. package/dist/util-ts/dataUtils.js +24 -16
  34. package/dist/util-ts/dataUtils.js.map +1 -1
  35. package/dist/util-ts/extractionUtils.js +4 -8
  36. package/dist/util-ts/extractionUtils.js.map +1 -1
  37. package/dist/util-ts/pinoLogger.js +28 -1
  38. package/dist/util-ts/pinoLogger.js.map +1 -1
  39. package/package.json +36 -34
  40. package/readme.md +115 -99
  41. package/dist/service/ohtAgnosticMeasurementsExtractor.service.d.ts +0 -59
  42. package/dist/service/ohtAgnosticMeasurementsExtractor.service.js +0 -603
  43. package/dist/service/ohtAgnosticMeasurementsExtractor.service.js.map +0 -1
@@ -6,8 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.postDataImportFileUploadToCore = postDataImportFileUploadToCore;
7
7
  exports.postReportPreviewToCore = postReportPreviewToCore;
8
8
  const oht_types_1 = require("../types/oht.types");
9
- const pinoLogger_1 = __importDefault(require("../util-ts/pinoLogger"));
10
- const logger = (0, pinoLogger_1.default)();
9
+ const processingLogger_service_1 = require("./processingLogger.service");
11
10
  const dotenv_1 = __importDefault(require("dotenv"));
12
11
  const dataUtils_1 = require("../util-ts/dataUtils");
13
12
  const apiUtils_1 = require("../util-ts/apiUtils");
@@ -17,13 +16,10 @@ const OHT_CORE_URL = process.env.OHT_CORE_URL;
17
16
  * Posts report preview data (measurements and unknownMeasurements) to OHT Core API.
18
17
  * Uses the shared makeApiCallWithRetry helper (Basic auth) from oht-custom-parser-lib.
19
18
  */
20
- async function postReportPreviewToCore(reportPreviewId, measurements, unknownMeasurements, filename, unknownUnits, partnerId, isReportParsedCorrectly, notes, ohtCoreApiKey) {
19
+ async function postReportPreviewToCore(reportPreviewId, measurements, unknownMeasurements, filename, unknownUnits, partnerId, ohtCoreApiKey) {
21
20
  if (!OHT_CORE_URL) {
22
21
  throw new Error(`ERROR: OHT_CORE_URL is required for report preview, filename: ${filename}`);
23
22
  }
24
- let status = isReportParsedCorrectly
25
- ? oht_types_1.DataImportFileUploadStatus.READY
26
- : oht_types_1.DataImportFileUploadStatus.FOR_REVIEW;
27
23
  const apiUrl = `${OHT_CORE_URL}/v1/report-preview/${reportPreviewId}`;
28
24
  // send unknown units to the server
29
25
  if (unknownUnits.length > 0) {
@@ -31,55 +27,48 @@ async function postReportPreviewToCore(reportPreviewId, measurements, unknownMea
31
27
  await (0, dataUtils_1.bulkCreateCustomParserUnknownUnits)(partnerId, unknownUnits, ohtCoreApiKey);
32
28
  }
33
29
  catch (error) {
34
- logger.error({
30
+ processingLogger_service_1.processingLogger.logError(`Failed to send unknown units to server, filename: ${filename}`, error instanceof Error ? error : new Error(String(error)), {
35
31
  error: (0, apiUtils_1.parseErrorObj)(error),
36
32
  partnerId: partnerId,
37
- unknownUnitsCount: unknownUnits.length
38
- }, `Failed to send unknown units to server, filename: ${filename}`);
33
+ unknownUnitsCount: unknownUnits.length,
34
+ });
39
35
  }
40
36
  }
41
37
  // Always send both arrays, with empty arrays if no data
42
38
  const requestBody = {
43
- status: status,
39
+ status: 'READY',
44
40
  measurements: measurements || [],
45
41
  unknownMeasurements: unknownMeasurements || [],
46
- notes: notes,
47
42
  };
48
- logger.info({
43
+ processingLogger_service_1.processingLogger.logInfo(`postReportPreviewToCore: Sending report preview to OHT Core API (${(measurements || []).length} measurements, ${(unknownMeasurements || []).length} unknownMeasurements), filename: ${filename}`, {
49
44
  filename,
50
- reportPreviewId,
51
- measurementsCount: (measurements || []).length,
52
- unknownMeasurementsCount: (unknownMeasurements || []).length,
53
- request: {
54
- method: 'POST',
55
- url: apiUrl,
56
- },
57
- }, `postReportPreviewToCore: Sending report preview to OHT Core API (${(measurements || []).length} measurements, ${(unknownMeasurements || []).length} unknownMeasurements), filename: ${filename}`);
45
+ report_preview_id: reportPreviewId,
46
+ measurements_count: (measurements || []).length,
47
+ unknown_measurements_count: (unknownMeasurements || []).length,
48
+ request: { method: 'POST', url: apiUrl },
49
+ });
58
50
  try {
59
51
  const response = await (0, apiUtils_1.makeApiCallWithRetry)('post', apiUrl, requestBody, ohtCoreApiKey);
60
- logger.info({
52
+ const responseData = response?.data;
53
+ processingLogger_service_1.processingLogger.logInfo(`postReportPreviewToCore: Successfully sent report preview to OHT Core API (${(measurements || []).length} measurements, ${(unknownMeasurements || []).length} unknownMeasurements), filename: ${filename}`, {
61
54
  filename,
62
- reportPreviewId,
63
- measurementsCount: (measurements || []).length,
64
- unknownMeasurementsCount: (unknownMeasurements || []).length,
65
- response: response?.data,
66
- hasNotes: Boolean(notes?.trim()),
67
- }, `postReportPreviewToCore: Successfully sent report preview to OHT Core API (${(measurements || []).length} measurements, ${(unknownMeasurements || []).length} unknownMeasurements), filename: ${filename}`);
55
+ report_preview_id: reportPreviewId,
56
+ measurements_count: (measurements || []).length,
57
+ unknown_measurements_count: (unknownMeasurements || []).length,
58
+ http_status: response?.status,
59
+ response_message: typeof responseData?.message === 'string' ? responseData.message : undefined,
60
+ response_status: responseData?.status,
61
+ });
68
62
  }
69
63
  catch (apiError) {
70
- const errorDetails = (0, apiUtils_1.parseErrorObj)(apiError);
71
- const httpResponse = errorDetails.responseData;
72
- logger.error({
64
+ processingLogger_service_1.processingLogger.logError(`postReportPreviewToCore: Failed to send report preview to OHT Core API, filename: ${filename}`, apiError instanceof Error ? apiError : undefined, {
73
65
  filename,
74
- reportPreviewId,
75
- measurementsCount: (measurements || []).length,
76
- unknownMeasurementsCount: (unknownMeasurements || []).length,
77
- errorType: apiError instanceof Error ? apiError.constructor.name : typeof apiError,
78
- errorMessage: apiError instanceof Error ? apiError.message : String(apiError),
79
- errorDetails,
80
- httpResponse,
81
- errorStack: apiError instanceof Error ? apiError.stack : undefined,
82
- }, `postReportPreviewToCore: Failed to send report preview to OHT Core API, filename: ${filename}`);
66
+ report_preview_id: reportPreviewId,
67
+ measurements_count: (measurements || []).length,
68
+ unknown_measurements_count: (unknownMeasurements || []).length,
69
+ error_details: (0, apiUtils_1.parseErrorObj)(apiError),
70
+ http_response: (0, apiUtils_1.parseErrorObj)(apiError).responseData,
71
+ });
83
72
  // Re-throw so the caller can handle it
84
73
  throw apiError;
85
74
  }
@@ -94,9 +83,9 @@ async function postDataImportFileUploadToCore(dataImportFileUpload, unknownMeasu
94
83
  // Get the owner user binding to update the user with patient information
95
84
  const userBindingUrl = `${OHT_CORE_URL}/v1/useruploadbinding/useruploadbindings/${dataImportFileUpload.id}`;
96
85
  const userBindingResponse = await (0, apiUtils_1.makeApiCallWithRetry)('get', userBindingUrl, null, ohtCoreApiKey);
97
- logger.info({ response: userBindingResponse.data }, `Resp: GET BINDING /v1/useruploadbinding/useruploadbindings/${dataImportFileUpload.id}, filename: ${filename}`);
86
+ processingLogger_service_1.processingLogger.logInfo(`Resp: GET BINDING /v1/useruploadbinding/useruploadbindings/${dataImportFileUpload.id}, filename: ${filename}`, { response: userBindingResponse.data });
98
87
  if (!userBindingResponse?.data?.ownerUserId) {
99
- logger.error({ response: userBindingResponse?.data }, `ERROR: No ownerUserId found in binding response for fileUploadId: ${dataImportFileUpload.id}, filename: ${filename}`);
88
+ processingLogger_service_1.processingLogger.logError(`ERROR: No ownerUserId found in binding response for fileUploadId: ${dataImportFileUpload.id}, filename: ${filename}`, undefined, { response: userBindingResponse?.data });
100
89
  throw new Error(`No ownerUserId found for fileUploadId: ${dataImportFileUpload.id}`);
101
90
  }
102
91
  const ownerUserId = userBindingResponse.data.ownerUserId;
@@ -114,23 +103,23 @@ async function postDataImportFileUploadToCore(dataImportFileUpload, unknownMeasu
114
103
  };
115
104
  const userUrl = `${OHT_CORE_URL}/v1/user/users/${ownerUserId}`;
116
105
  const userResponse = await (0, apiUtils_1.makeApiCallWithRetry)('patch', userUrl, userPayload, ohtCoreApiKey);
117
- logger.info({ response: userResponse.data }, `Resp: PATCH USER /v1/users/${ownerUserId}, filename: ${filename}`);
106
+ processingLogger_service_1.processingLogger.logInfo(`Resp: PATCH USER /v1/users/${ownerUserId}, filename: ${filename}`, { response: userResponse.data });
118
107
  try {
119
108
  // Send unknown measurements if they exist (before ingestion)
120
109
  if (unknownMeasurements.unmappedlabkeys.length > 0) {
121
110
  try {
122
111
  await (0, dataUtils_1.updatePartnerCustomParserUnmappedLabKeys)(dataImportFileUpload.partnerId, unknownMeasurements, ohtCoreApiKey);
123
- logger.info({
124
- partnerId: dataImportFileUpload.partnerId,
125
- unknownMeasurementsCount: unknownMeasurements.unmappedlabkeys.length
126
- }, `Successfully sent unknown measurements to server, filename: ${filename}`);
112
+ processingLogger_service_1.processingLogger.logInfo(`Successfully sent unknown measurements to server, filename: ${filename}`, {
113
+ partner_id: dataImportFileUpload.partnerId,
114
+ unknown_measurements_count: unknownMeasurements.unmappedlabkeys.length,
115
+ });
127
116
  }
128
117
  catch (error) {
129
- logger.error({
130
- error: (0, apiUtils_1.parseErrorObj)(error),
131
- partnerId: dataImportFileUpload.partnerId,
132
- unknownMeasurementsCount: unknownMeasurements.unmappedlabkeys.length
133
- }, `Failed to send unknown measurements to server, filename: ${filename}`);
118
+ processingLogger_service_1.processingLogger.logError(`Failed to send unknown measurements to server, filename: ${filename}`, error instanceof Error ? error : undefined, {
119
+ partner_id: dataImportFileUpload.partnerId,
120
+ unknown_measurements_count: unknownMeasurements.unmappedlabkeys.length,
121
+ error_details: (0, apiUtils_1.parseErrorObj)(error),
122
+ });
134
123
  }
135
124
  }
136
125
  if (unknownUnits.length > 0) {
@@ -138,11 +127,11 @@ async function postDataImportFileUploadToCore(dataImportFileUpload, unknownMeasu
138
127
  await (0, dataUtils_1.bulkCreateCustomParserUnknownUnits)(dataImportFileUpload.partnerId, unknownUnits, ohtCoreApiKey);
139
128
  }
140
129
  catch (error) {
141
- logger.error({
142
- error: (0, apiUtils_1.parseErrorObj)(error),
143
- partnerId: dataImportFileUpload.partnerId,
144
- unknownUnitsCount: unknownUnits.length
145
- }, `Failed to send unknown units to server, filename: ${filename}`);
130
+ processingLogger_service_1.processingLogger.logError(`Failed to send unknown units to server, filename: ${filename}`, error instanceof Error ? error : undefined, {
131
+ partner_id: dataImportFileUpload.partnerId,
132
+ unknown_units_count: unknownUnits.length,
133
+ error_details: (0, apiUtils_1.parseErrorObj)(error),
134
+ });
146
135
  }
147
136
  }
148
137
  // Use ingestion endpoint - handles report creation and READY status automatically
@@ -155,7 +144,7 @@ async function postDataImportFileUploadToCore(dataImportFileUpload, unknownMeasu
155
144
  pipelineStep: oht_types_1.PipelineStep.SENDING_RESULTS,
156
145
  },
157
146
  }, ohtCoreApiKey);
158
- logger.info({ response: ingestionResponse.data }, `Resp: PATCH ingestion status: ${patchStatus} ${ohtCoreIngestionUrl}, filename: ${filename}`);
147
+ processingLogger_service_1.processingLogger.logInfo(`Resp: PATCH ingestion status: ${patchStatus} ${ohtCoreIngestionUrl}, filename: ${filename}`, { response: ingestionResponse.data });
159
148
  // Ingestion endpoint returns acknowledgment: { message: "Ingestion started", fileUploadId: "..." }
160
149
  // Processing (user updates, report creation, READY status) happens asynchronously in background
161
150
  // For PROCESSED status, it will automatically:
@@ -164,19 +153,18 @@ async function postDataImportFileUploadToCore(dataImportFileUpload, unknownMeasu
164
153
  // - Set status to READY
165
154
  // - Trigger all notifications and webhooks
166
155
  if (!isReportParsedCorrectly || rejectedStatus !== undefined) {
167
- logger.warn({
168
- isReportParsedCorrectly,
169
- rejectedStatus,
170
- ingestionResponse: ingestionResponse.data,
171
- }, `Report not parsed correctly fileUploadID ${dataImportFileUpload.id}, filename: ${filename}`);
156
+ processingLogger_service_1.processingLogger.logWarn(`Report not parsed correctly fileUploadID ${dataImportFileUpload.id}, filename: ${filename}`, {
157
+ is_report_parsed_correctly: isReportParsedCorrectly,
158
+ rejected_status: rejectedStatus,
159
+ ingestion_response: ingestionResponse.data,
160
+ });
172
161
  }
173
162
  // Return null since ingestion is asynchronous and we don't have the updated file upload object
174
163
  // The caller should not rely on the returned value for status checking
175
164
  return null;
176
165
  }
177
166
  catch (error) {
178
- const errorDetail = (0, apiUtils_1.parseErrorObj)(error);
179
- logger.error({ patchStatus, resp: errorDetail }, `ERROR: on report generation url:${ohtCoreIngestionUrl} filename: ${filename}`);
167
+ processingLogger_service_1.processingLogger.logError(`ERROR: on report generation url:${ohtCoreIngestionUrl} filename: ${filename}`, error instanceof Error ? error : undefined, { patch_status: patchStatus, resp: (0, apiUtils_1.parseErrorObj)(error) });
180
168
  // Set digitalization error for tracking
181
169
  try {
182
170
  await (0, apiUtils_1.makeApiCallWithRetry)('patch', ohtCoreDigitalizationUrl, {
@@ -186,7 +174,7 @@ async function postDataImportFileUploadToCore(dataImportFileUpload, unknownMeasu
186
174
  }, ohtCoreApiKey);
187
175
  }
188
176
  catch (digitalizationError) {
189
- logger.error({ digitalizationError: (0, apiUtils_1.parseErrorObj)(digitalizationError) }, `Failed to update digitalization status, filename: ${filename}`);
177
+ processingLogger_service_1.processingLogger.logError(`Failed to update digitalization status, filename: ${filename}`, digitalizationError instanceof Error ? digitalizationError : undefined, { digitalization_error: (0, apiUtils_1.parseErrorObj)(digitalizationError) });
190
178
  }
191
179
  // Re-throw error so it can be handled by the error handler in agnostic-parser
192
180
  // The error handler will detect 409 conflicts and update file upload status appropriately
@@ -1 +1 @@
1
- {"version":3,"file":"reportCreator.service.js","sourceRoot":"","sources":["../../service/reportCreator.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reportCreator.service.js","sourceRoot":"","sources":["../../service/reportCreator.service.ts"],"names":[],"mappings":"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"}
@@ -8,8 +8,7 @@ exports.sendMessageToSlack = sendMessageToSlack;
8
8
  exports.aggregateMessages = aggregateMessages;
9
9
  const axios_1 = __importDefault(require("axios"));
10
10
  const dotenv_1 = __importDefault(require("dotenv"));
11
- const pinoLogger_1 = __importDefault(require("../util-ts/pinoLogger"));
12
- const logger = (0, pinoLogger_1.default)();
11
+ const processingLogger_service_1 = require("./processingLogger.service");
13
12
  dotenv_1.default.config({ path: `.env.local` });
14
13
  // Get the Slack webhook URL from the environment variable
15
14
  const slackWebhookUrl = process.env.SLACK_WEBHOOK_URL;
@@ -79,14 +78,14 @@ async function sendMessageToSlack(payload) {
79
78
  try {
80
79
  const response = await axios_1.default.post(slackWebhookUrl, payload);
81
80
  if (response.status === 200) {
82
- logger.info('Message successfully sent to Slack.');
81
+ processingLogger_service_1.processingLogger.logInfo('Message successfully sent to Slack.');
83
82
  }
84
83
  else {
85
- logger.info('Error sending message to Slack:', response.status, response.statusText);
84
+ processingLogger_service_1.processingLogger.logInfo('Error sending message to Slack:', { status: response.status, statusText: response.statusText });
86
85
  }
87
86
  }
88
87
  catch (error) {
89
- logger.warn('Error sending message to Slack:', error);
88
+ processingLogger_service_1.processingLogger.logWarn('Error sending message to Slack:', { error: error instanceof Error ? error.message : String(error) });
90
89
  }
91
90
  }
92
91
  //# sourceMappingURL=slackMessages.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"slackMessages.service.js","sourceRoot":"","sources":["../../service/slackMessages.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slackMessages.service.js","sourceRoot":"","sources":["../../service/slackMessages.service.ts"],"names":[],"mappings":"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"}
@@ -6,8 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.validateJsonataExpression = exports.applyRules = void 0;
7
7
  const jsonata_1 = __importDefault(require("jsonata"));
8
8
  const transformationRules_1 = require("../util-ts/transformationRules");
9
- const pinoLogger_1 = __importDefault(require("../util-ts/pinoLogger"));
10
- const logger = (0, pinoLogger_1.default)();
9
+ const processingLogger_service_1 = require("./processingLogger.service");
11
10
  /**
12
11
  * JSON Transformation Rules Engine
13
12
  *
@@ -40,10 +39,7 @@ const evaluateCondition = async (condition, context) => {
40
39
  return Boolean(result);
41
40
  }
42
41
  catch (error) {
43
- logger.error({
44
- error: error instanceof Error ? error.message : String(error),
45
- condition,
46
- }, 'Error evaluating condition.');
42
+ processingLogger_service_1.processingLogger.logError('Error evaluating condition.', error instanceof Error ? error : undefined, { condition });
47
43
  return false;
48
44
  }
49
45
  };
@@ -62,10 +58,7 @@ const evaluateValueExpression = async (valueExpression, context) => {
62
58
  return result;
63
59
  }
64
60
  catch (error) {
65
- logger.error({
66
- error: error instanceof Error ? error.message : String(error),
67
- valueExpression,
68
- }, 'Error evaluating value expression.');
61
+ processingLogger_service_1.processingLogger.logError('Error evaluating value expression.', error instanceof Error ? error : undefined, { valueExpression });
69
62
  throw error;
70
63
  }
71
64
  };
@@ -1 +1 @@
1
- {"version":3,"file":"transformationRules.service.js","sourceRoot":"","sources":["../../service/transformationRules.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transformationRules.service.js","sourceRoot":"","sources":["../../service/transformationRules.service.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { RejectReason } from './oht.types';
1
2
  export interface Destination {
2
3
  slack: boolean;
3
4
  notes: boolean;
@@ -8,3 +9,84 @@ export interface ErrorMessage {
8
9
  message: string;
9
10
  item?: string;
10
11
  }
12
+ /**
13
+ * Unified error codes for file-upload / parser / normalizer error handling.
14
+ * Coding: ERR_{DOMAIN}_{DESCRIPTION}
15
+ * - VAL = validation (context, payload, config, normalized data)
16
+ * - IO = file I/O, bucket
17
+ * - NORM = normalizer (fetch, execution, compile, selection)
18
+ * - UPLOAD = file upload handler (status, Slack, processing)
19
+ * - PARSE = parsing
20
+ */
21
+ export declare enum ErrorCode {
22
+ VAL_MISSING_PAYLOAD = "ERR_VAL_MISSING_PAYLOAD",
23
+ VAL_MISSING_API_CONFIG = "ERR_VAL_MISSING_API_CONFIG",
24
+ VAL_MISSING_FILE_OR_BUCKET = "ERR_VAL_MISSING_FILE_OR_BUCKET",
25
+ VAL_INVALID_FILE_TYPE = "ERR_VAL_INVALID_FILE_TYPE",
26
+ VAL_NO_REPORTS_FOUND = "ERR_VAL_NO_REPORTS_FOUND",
27
+ VAL_MISSING_PARTNER_ID = "ERR_VAL_MISSING_PARTNER_ID",
28
+ VAL_INVALID_NORMALIZED_DATA = "ERR_VAL_INVALID_NORMALIZED_DATA",
29
+ VAL_INVALID_NORMALIZED_OBJECT = "ERR_VAL_INVALID_NORMALIZED_OBJECT",
30
+ VAL_INVALID_NORMALIZED_EXAMS = "ERR_VAL_INVALID_NORMALIZED_EXAMS",
31
+ IO_FILE_FETCH = "ERR_IO_FILE_FETCH",
32
+ NORM_FETCH = "ERR_NORM_FETCH",
33
+ NORM_EXECUTION = "ERR_NORM_EXECUTION",
34
+ NORM_FILE_NOT_FOUND = "ERR_NORM_FILE_NOT_FOUND",
35
+ NORM_NOT_COMPILED = "ERR_NORM_NOT_COMPILED",
36
+ NORM_UNSUPPORTED_FORCED = "ERR_NORM_UNSUPPORTED_FORCED",
37
+ NORM_UNSUPPORTED_DEFAULT = "ERR_NORM_UNSUPPORTED_DEFAULT",
38
+ NORM_RETURNED_NULL = "ERR_NORM_RETURNED_NULL",
39
+ UPLOAD_MISSING_SIGNED_UPLOAD_ID = "ERR_UPLOAD_MISSING_SIGNED_UPLOAD_ID",
40
+ UPLOAD_FILE_NOT_FOUND = "ERR_UPLOAD_FILE_NOT_FOUND",
41
+ UPLOAD_SLACK_FAILED = "ERR_UPLOAD_SLACK_FAILED",
42
+ UPLOAD_STATUS_UPDATE_FAILED = "ERR_UPLOAD_STATUS_UPDATE_FAILED",
43
+ UPLOAD_PROCESSING_FAILED = "ERR_UPLOAD_PROCESSING_FAILED",
44
+ UPLOAD_HANDLING_FAILED = "ERR_UPLOAD_HANDLING_FAILED",
45
+ UPLOAD_FILE_UPLOAD_ID_NOT_FOUND = "ERR_UPLOAD_FILE_UPLOAD_ID_NOT_FOUND",
46
+ PARSE_ERROR = "ERR_PARSE_ERROR",
47
+ UNHANDLED = "ERR_UNHANDLED"
48
+ }
49
+ export type ErrorCatalogEntry = {
50
+ /** Internal/log message. For client-facing explanation use rejectReason. */
51
+ message: string;
52
+ /**
53
+ * Client-facing explanation shown to the client (e.g. in file upload status).
54
+ * - Client/file problem: use a descriptive RejectReason (e.g. INVALID_DATA_NO_BIOMARKER_DATA).
55
+ * - Internal/system problem: use PROCESSING_COULD_NOT_BE_COMPLETED so we do not expose or blame our system.
56
+ */
57
+ rejectReason?: RejectReason;
58
+ };
59
+ /**
60
+ * Single source of truth: error code, message (internal), and rejectReason (client-facing).
61
+ * Use getErrorMessage() / getRejectReason() or ERROR_MESSAGES for backward compatibility.
62
+ */
63
+ export declare const ERROR_CATALOG: Record<ErrorCode, ErrorCatalogEntry>;
64
+ export declare function getErrorMessage(code: ErrorCode): string;
65
+ export declare function getRejectReason(code: ErrorCode): RejectReason | undefined;
66
+ /**
67
+ * Backward-compatible flat map: logical key -> message.
68
+ * Prefer getErrorMessage(ErrorCode.XXX) for new code.
69
+ */
70
+ export declare const ERROR_MESSAGES: {
71
+ readonly MISSING_PAYLOAD: string;
72
+ readonly MISSING_API_CONFIG: string;
73
+ readonly MISSING_FILE_OR_BUCKET: string;
74
+ readonly INVALID_FILE_TYPE: string;
75
+ readonly FILE_FETCH_ERROR: string;
76
+ readonly NO_REPORTS_FOUND: string;
77
+ readonly NO_SIGNED_UPLOAD_ID: string;
78
+ readonly FILE_UPLOAD_ID_NOT_FOUND: string;
79
+ readonly NORMALIZER_FETCH_ERROR: string;
80
+ readonly NORMALIZER_EXECUTION_ERROR: string;
81
+ readonly MISSING_PARTNER_ID: string;
82
+ readonly INVALID_NORMALIZED_DATA: string;
83
+ readonly INVALID_NORMALIZED_DATA_OBJECT: string;
84
+ readonly INVALID_NORMALIZED_DATA_EXAMS: string;
85
+ readonly NORMALIZER_FILE_NOT_FOUND: string;
86
+ readonly NORMALIZER_NOT_COMPILED: string;
87
+ readonly UNSUPPORTED_FORCED_NORMALIZER: string;
88
+ readonly UNSUPPORTED_DEFAULT_NORMALIZER: string;
89
+ readonly NORMALIZER_RETURNED_NULL: string;
90
+ readonly PARSING_ERROR: string;
91
+ readonly UNHANDLED_ERROR: string;
92
+ };