@adaptic/backend-legacy 0.0.935 → 0.0.937
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/esm/plugins/error-sanitizer.d.ts.map +1 -1
- package/esm/plugins/error-sanitizer.js.map +1 -1
- package/esm/plugins/error-sanitizer.mjs +41 -1
- package/esm/prismaClient.d.ts.map +1 -1
- package/esm/prismaClient.js.map +1 -1
- package/esm/prismaClient.mjs +31 -1
- package/package.json +1 -1
- package/prismaClient.cjs +31 -1
- package/server.cjs +19 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-sanitizer.d.ts","sourceRoot":"","sources":["../../../src/plugins/error-sanitizer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAgB,qBAAqB,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"error-sanitizer.d.ts","sourceRoot":"","sources":["../../../src/plugins/error-sanitizer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAgB,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAsM9D;;GAEG;AACH,wBAAgB,oBAAoB,KAIhC,gBAAgB,qBAAqB,EACrC,OAAO,OAAO,KACb,qBAAqB,CA+CzB;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,mBAvDJ,qBAAqB,SAC9B,OAAO,KACb,qBAqD4C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-sanitizer.js","sourceRoot":"","sources":["../../../src/plugins/error-sanitizer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,YAAY,EAAyB,MAAM,SAAS,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAyBzC;;GAEG;AACH,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;IAC/B,sBAAsB;IACtB,2BAA2B;IAC3B,gBAAgB;IAChB,iBAAiB;IACjB,WAAW;IACX,2BAA2B;IAC3B,+BAA+B;IAC/B,aAAa;IACb,4BAA4B;CAC7B,CAAC,CAAC;AAEH;;GAEG;AACH,SAAS,WAAW,CAAC,IAAwB;IAC3C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,KAAmB;IAIzC,MAAM,UAAU,GAAG,KAAK,CAAC,UAA6B,CAAC;IAEvD,qCAAqC;IACrC,MAAM,OAAO,GAAG,UAAU,EAAE,OAAmC,CAAC;IAEhE,MAAM,MAAM,GAAG,OAAO,EAAE,IAAI,EAAE,GAAG,IAAI,OAAO,EAAE,IAAI,EAAE,KAAK,IAAI,WAAW,CAAC;IACzE,MAAM,SAAS,GAAG,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,cAAc,CAAC,IAAI,SAAS,CAAC;IAEvE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AAC/B,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"error-sanitizer.js","sourceRoot":"","sources":["../../../src/plugins/error-sanitizer.ts"],"names":[],"mappings":"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"}
|
|
@@ -61,7 +61,33 @@ function getUserContext(error) {
|
|
|
61
61
|
return { userId, requestId };
|
|
62
62
|
}
|
|
63
63
|
/**
|
|
64
|
-
*
|
|
64
|
+
* Returns true when the GraphQL error wraps a Prisma "delete/update missing
|
|
65
|
+
* record" P2025 race condition that callers handle gracefully (e.g. trade
|
|
66
|
+
* cleanup deletes after order failure). These should not log at ERROR.
|
|
67
|
+
*/
|
|
68
|
+
function isExpectedDeleteRace(error) {
|
|
69
|
+
const message = error.message || '';
|
|
70
|
+
return (message.includes('No record was found for a delete') ||
|
|
71
|
+
message.includes('No record was found for an update'));
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Returns true when the GraphQL error wraps a Prisma "Inconsistent column
|
|
75
|
+
* data: Error creating UUID" — i.e. the caller passed a non-UUID value into
|
|
76
|
+
* a `String @db.Uuid` column. The engine has been hardened to detect this
|
|
77
|
+
* upstream; remaining occurrences are caller-side bugs and should log at WARN
|
|
78
|
+
* with full diagnostics, not ERROR.
|
|
79
|
+
*/
|
|
80
|
+
function isInvalidUuidInput(error) {
|
|
81
|
+
const message = error.message || '';
|
|
82
|
+
return (message.includes('Error creating UUID') ||
|
|
83
|
+
message.includes('Inconsistent column data: Error creating UUID'));
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Logs the full error details server-side. Two classes of "errors" are
|
|
87
|
+
* expected/caller-side and demoted to lower log levels so they do not pollute
|
|
88
|
+
* ERROR logs or trigger spurious alerts:
|
|
89
|
+
* - Delete/update race conditions on already-removed rows -> INFO
|
|
90
|
+
* - Invalid UUID input from buggy callers -> WARN with full diagnostics
|
|
65
91
|
*/
|
|
66
92
|
function logError(error, isProduction) {
|
|
67
93
|
const { userId, requestId } = getUserContext(error);
|
|
@@ -75,6 +101,20 @@ function logError(error, isProduction) {
|
|
|
75
101
|
locations: error.locations,
|
|
76
102
|
timestamp: new Date().toISOString(),
|
|
77
103
|
};
|
|
104
|
+
if (isExpectedDeleteRace(error)) {
|
|
105
|
+
logger.info('[GraphQL] Expected race (record already removed)', {
|
|
106
|
+
...logData,
|
|
107
|
+
handledByCaller: true,
|
|
108
|
+
});
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
if (isInvalidUuidInput(error)) {
|
|
112
|
+
logger.warn('[GraphQL] Invalid UUID input rejected by Prisma', {
|
|
113
|
+
...logData,
|
|
114
|
+
hint: 'Caller passed a non-UUID value to a UUID column. Validate inputs upstream.',
|
|
115
|
+
});
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
78
118
|
// In development, include the full error details
|
|
79
119
|
if (!isProduction) {
|
|
80
120
|
logger.error('[GraphQL Error]', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prismaClient.d.ts","sourceRoot":"","sources":["../../src/prismaClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C;;GAEG;AACH,OAAO,CAAC,MAAM,CAAC;IAEb,IAAI,MAAM,EAAE,YAAY,GAAG,SAAS,CAAC;CACtC;
|
|
1
|
+
{"version":3,"file":"prismaClient.d.ts","sourceRoot":"","sources":["../../src/prismaClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C;;GAEG;AACH,OAAO,CAAC,MAAM,CAAC;IAEb,IAAI,MAAM,EAAE,YAAY,GAAG,SAAS,CAAC;CACtC;AA4ND,QAAA,MAAM,MAAM,EAAE,YAA4B,CAAC;AA+F3C;;;;GAIG;AACH,wBAAgB,4BAA4B,IAAI,MAAM,IAAI,CAgBzD;AAED;;GAEG;AACH,wBAAgB,2BAA2B,IAAI,IAAI,CAMlD;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,SAAS,SAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAkB3E;AAED,eAAe,MAAM,CAAC"}
|
package/esm/prismaClient.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prismaClient.js","sourceRoot":"","sources":["../../src/prismaClient.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"prismaClient.js","sourceRoot":"","sources":["../../src/prismaClient.ts"],"names":[],"mappings":"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"}
|
package/esm/prismaClient.mjs
CHANGED
|
@@ -132,7 +132,37 @@ if (!global.prisma) {
|
|
|
132
132
|
errorInfo.model = modelMatch[1];
|
|
133
133
|
}
|
|
134
134
|
// Categorize for alerting and triage
|
|
135
|
-
|
|
135
|
+
//
|
|
136
|
+
// Two classes of "errors" are expected and handled by the caller and must
|
|
137
|
+
// not pollute ERROR-level logs (they distort error budgets and trigger
|
|
138
|
+
// spurious alerts):
|
|
139
|
+
//
|
|
140
|
+
// 1. "No record was found for a delete/update" — race condition where the
|
|
141
|
+
// target row was already removed by another worker. Engine callers
|
|
142
|
+
// handle this gracefully (see crypto-trade-execution-engine.ts and
|
|
143
|
+
// order-manager.ts deleteTrade()). Demoted to INFO.
|
|
144
|
+
//
|
|
145
|
+
// 2. "Inconsistent column data: Error creating UUID" — caller passed a
|
|
146
|
+
// non-UUID value to a `String @db.Uuid` column. This is a caller-side
|
|
147
|
+
// bug; the engine has been hardened to detect synthetic positionIds
|
|
148
|
+
// upstream (see engine/src/di/options-lifecycle.ts UUID_REGEX guard),
|
|
149
|
+
// but for any remaining cases, log at WARN with full diagnostics so
|
|
150
|
+
// callers can be tracked down without flooding ERROR logs.
|
|
151
|
+
const isExpectedDeleteRace = message.includes('No record was found for a delete') ||
|
|
152
|
+
message.includes('No record was found for an update');
|
|
153
|
+
const isInvalidUuidInput = message.includes('Error creating UUID') ||
|
|
154
|
+
message.includes('Inconsistent column data: Error creating UUID');
|
|
155
|
+
if (isExpectedDeleteRace) {
|
|
156
|
+
errorInfo.category = 'EXPECTED_RACE';
|
|
157
|
+
errorInfo.handledByCaller = true;
|
|
158
|
+
logger.info('Prisma expected race (record already removed)', errorInfo);
|
|
159
|
+
}
|
|
160
|
+
else if (isInvalidUuidInput) {
|
|
161
|
+
errorInfo.category = 'INVALID_INPUT_FORMAT';
|
|
162
|
+
errorInfo.hint = 'Caller passed a non-UUID value to a UUID column. Validate inputs upstream.';
|
|
163
|
+
logger.warn('Prisma rejected invalid UUID input', errorInfo);
|
|
164
|
+
}
|
|
165
|
+
else if (message.includes('pool') || message.includes('connection') || message.includes('timeout')) {
|
|
136
166
|
errorInfo.category = 'CONNECTION_POOL';
|
|
137
167
|
logger.error('Database connection pool issue detected', errorInfo);
|
|
138
168
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adaptic/backend-legacy",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.937",
|
|
4
4
|
"description": "Backend executable CRUD functions with dynamic variables construction, and type definitions for the Adaptic AI platform.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"types": "index.d.ts",
|
package/prismaClient.cjs
CHANGED
|
@@ -137,7 +137,37 @@ if (!global.prisma) {
|
|
|
137
137
|
errorInfo.model = modelMatch[1];
|
|
138
138
|
}
|
|
139
139
|
// Categorize for alerting and triage
|
|
140
|
-
|
|
140
|
+
//
|
|
141
|
+
// Two classes of "errors" are expected and handled by the caller and must
|
|
142
|
+
// not pollute ERROR-level logs (they distort error budgets and trigger
|
|
143
|
+
// spurious alerts):
|
|
144
|
+
//
|
|
145
|
+
// 1. "No record was found for a delete/update" — race condition where the
|
|
146
|
+
// target row was already removed by another worker. Engine callers
|
|
147
|
+
// handle this gracefully (see crypto-trade-execution-engine.ts and
|
|
148
|
+
// order-manager.ts deleteTrade()). Demoted to INFO.
|
|
149
|
+
//
|
|
150
|
+
// 2. "Inconsistent column data: Error creating UUID" — caller passed a
|
|
151
|
+
// non-UUID value to a `String @db.Uuid` column. This is a caller-side
|
|
152
|
+
// bug; the engine has been hardened to detect synthetic positionIds
|
|
153
|
+
// upstream (see engine/src/di/options-lifecycle.ts UUID_REGEX guard),
|
|
154
|
+
// but for any remaining cases, log at WARN with full diagnostics so
|
|
155
|
+
// callers can be tracked down without flooding ERROR logs.
|
|
156
|
+
const isExpectedDeleteRace = message.includes('No record was found for a delete') ||
|
|
157
|
+
message.includes('No record was found for an update');
|
|
158
|
+
const isInvalidUuidInput = message.includes('Error creating UUID') ||
|
|
159
|
+
message.includes('Inconsistent column data: Error creating UUID');
|
|
160
|
+
if (isExpectedDeleteRace) {
|
|
161
|
+
errorInfo.category = 'EXPECTED_RACE';
|
|
162
|
+
errorInfo.handledByCaller = true;
|
|
163
|
+
logger_1.logger.info('Prisma expected race (record already removed)', errorInfo);
|
|
164
|
+
}
|
|
165
|
+
else if (isInvalidUuidInput) {
|
|
166
|
+
errorInfo.category = 'INVALID_INPUT_FORMAT';
|
|
167
|
+
errorInfo.hint = 'Caller passed a non-UUID value to a UUID column. Validate inputs upstream.';
|
|
168
|
+
logger_1.logger.warn('Prisma rejected invalid UUID input', errorInfo);
|
|
169
|
+
}
|
|
170
|
+
else if (message.includes('pool') || message.includes('connection') || message.includes('timeout')) {
|
|
141
171
|
errorInfo.category = 'CONNECTION_POOL';
|
|
142
172
|
logger_1.logger.error('Database connection pool issue detected', errorInfo);
|
|
143
173
|
}
|
package/server.cjs
CHANGED
|
@@ -107,9 +107,26 @@ const startServer = async () => {
|
|
|
107
107
|
],
|
|
108
108
|
formatError: (err) => {
|
|
109
109
|
var _a;
|
|
110
|
-
logger_1.logger.error('GraphQL Error', { graphqlError: err });
|
|
111
|
-
// Check if this error is due to unreachable DB
|
|
112
110
|
const message = err.message || '';
|
|
111
|
+
// Demote known caller-handled / caller-side error patterns to lower
|
|
112
|
+
// log levels so they don't pollute ERROR logs and trigger spurious
|
|
113
|
+
// alerts. The Prisma client error categorizer in prismaClient.ts also
|
|
114
|
+
// demotes these on the raw client side; this mirror keeps the
|
|
115
|
+
// GraphQL-formatted error consistent.
|
|
116
|
+
const isExpectedDeleteRace = message.includes('No record was found for a delete') ||
|
|
117
|
+
message.includes('No record was found for an update');
|
|
118
|
+
const isInvalidUuidInput = message.includes('Error creating UUID') ||
|
|
119
|
+
message.includes('Inconsistent column data: Error creating UUID');
|
|
120
|
+
if (isExpectedDeleteRace) {
|
|
121
|
+
logger_1.logger.info('GraphQL expected race (record already removed)', { graphqlError: err });
|
|
122
|
+
}
|
|
123
|
+
else if (isInvalidUuidInput) {
|
|
124
|
+
logger_1.logger.warn('GraphQL rejected invalid UUID input', { graphqlError: err });
|
|
125
|
+
}
|
|
126
|
+
else {
|
|
127
|
+
logger_1.logger.error('GraphQL Error', { graphqlError: err });
|
|
128
|
+
}
|
|
129
|
+
// Check if this error is due to unreachable DB
|
|
113
130
|
if (message.includes("Can't reach database server")) {
|
|
114
131
|
dbUnreachableCount += 1;
|
|
115
132
|
logger_1.logger.warn('Database unreachable', { dbUnreachableCount });
|