curvance 3.0.17 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/retry-provider.d.ts +48 -0
- package/dist/retry-provider.d.ts.map +1 -0
- package/dist/retry-provider.js +287 -0
- package/dist/retry-provider.js.map +1 -0
- package/dist/setup.d.ts.map +1 -1
- package/dist/setup.js +2 -0
- package/dist/setup.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -31,4 +31,5 @@ __exportStar(require("./classes/Kuru"), exports);
|
|
|
31
31
|
__exportStar(require("./helpers"), exports);
|
|
32
32
|
__exportStar(require("./setup"), exports);
|
|
33
33
|
__exportStar(require("./types"), exports);
|
|
34
|
+
__exportStar(require("./retry-provider"), exports);
|
|
34
35
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2DAAyC;AACzC,mDAAiC;AACjC,0DAAwC;AACxC,mDAAiC;AACjC,mDAAiC;AACjC,kDAAgC;AAChC,mDAAiC;AACjC,qDAAmC;AACnC,qDAAmC;AACnC,6DAA2C;AAC3C,wDAAsC;AACtC,4DAA0C;AAC1C,gDAA8B;AAC9B,iDAA+B;AAC/B,4CAA0B;AAC1B,0CAAwB;AACxB,0CAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2DAAyC;AACzC,mDAAiC;AACjC,0DAAwC;AACxC,mDAAiC;AACjC,mDAAiC;AACjC,kDAAgC;AAChC,mDAAiC;AACjC,qDAAmC;AACnC,qDAAmC;AACnC,6DAA2C;AAC3C,wDAAsC;AACtC,4DAA0C;AAC1C,gDAA8B;AAC9B,iDAA+B;AAC/B,4CAA0B;AAC1B,0CAAwB;AACxB,0CAAwB;AACxB,mDAAiC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { curvance_provider } from "./types";
|
|
2
|
+
export interface RetryConfig {
|
|
3
|
+
maxRetries: number;
|
|
4
|
+
baseDelay: number;
|
|
5
|
+
maxDelay: number;
|
|
6
|
+
backoffMultiplier: number;
|
|
7
|
+
retryableErrors: string[];
|
|
8
|
+
onRetry?: (attempt: number, error: Error, delay: number) => void;
|
|
9
|
+
}
|
|
10
|
+
export declare const DEFAULT_RETRY_CONFIG: RetryConfig;
|
|
11
|
+
declare class RetryableProvider {
|
|
12
|
+
private config;
|
|
13
|
+
constructor(config?: Partial<RetryConfig>);
|
|
14
|
+
private sleep;
|
|
15
|
+
private calculateDelay;
|
|
16
|
+
private isRetryableError;
|
|
17
|
+
private executeWithRetry;
|
|
18
|
+
wrapProvider(provider: curvance_provider): curvance_provider;
|
|
19
|
+
private isRpcMethod;
|
|
20
|
+
updateConfig(newConfig: Partial<RetryConfig>): void;
|
|
21
|
+
getConfig(): RetryConfig;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Configure global retry settings for all RPC calls
|
|
25
|
+
*/
|
|
26
|
+
export declare function configureRetries(config?: Partial<RetryConfig>): void;
|
|
27
|
+
/**
|
|
28
|
+
* Create a provider with retry capabilities
|
|
29
|
+
*/
|
|
30
|
+
export declare function createRetryableProvider(provider: curvance_provider, config?: Partial<RetryConfig>): curvance_provider;
|
|
31
|
+
/**
|
|
32
|
+
* Wrap a provider with the global retry configuration
|
|
33
|
+
*/
|
|
34
|
+
export declare function wrapProviderWithRetries(provider: curvance_provider): curvance_provider;
|
|
35
|
+
/**
|
|
36
|
+
* Utility function to check if a provider is already wrapped with retries
|
|
37
|
+
*/
|
|
38
|
+
export declare function isRetryableProvider(provider: curvance_provider): boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Utility function to classify error types for debugging
|
|
41
|
+
*/
|
|
42
|
+
export declare function classifyError(error: any): {
|
|
43
|
+
type: 'contract' | 'network' | 'rpc' | 'rate_limit' | 'unknown';
|
|
44
|
+
isRetryable: boolean;
|
|
45
|
+
message: string;
|
|
46
|
+
};
|
|
47
|
+
export { RetryableProvider };
|
|
48
|
+
//# sourceMappingURL=retry-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry-provider.d.ts","sourceRoot":"","sources":["../src/retry-provider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,MAAM,WAAW,WAAW;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACpE;AAED,eAAO,MAAM,oBAAoB,EAAE,WAuDlC,CAAC;AAEF,cAAM,iBAAiB;IACnB,OAAO,CAAC,MAAM,CAAc;gBAEhB,MAAM,GAAE,OAAO,CAAC,WAAW,CAAM;YAI/B,KAAK;IAInB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,gBAAgB;YA+CV,gBAAgB;IAuC9B,YAAY,CAAC,QAAQ,EAAE,iBAAiB,GAAG,iBAAiB;IAyD5D,OAAO,CAAC,WAAW;IA2BnB,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI;IAInD,SAAS,IAAI,WAAW;CAG3B;AAKD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,GAAE,OAAO,CAAC,WAAW,CAAM,GAAG,IAAI,CAMxE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACnC,QAAQ,EAAE,iBAAiB,EAC3B,MAAM,GAAE,OAAO,CAAC,WAAW,CAAM,GAClC,iBAAiB,CAGnB;AAYD;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,iBAAiB,CAGtF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAExE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,GAAG,GAAG;IACvC,IAAI,EAAE,UAAU,GAAG,SAAS,GAAG,KAAK,GAAG,YAAY,GAAG,SAAS,CAAC;IAChE,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACnB,CAwCA;AAGD,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
|
|
@@ -0,0 +1,287 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RetryableProvider = exports.DEFAULT_RETRY_CONFIG = void 0;
|
|
4
|
+
exports.configureRetries = configureRetries;
|
|
5
|
+
exports.createRetryableProvider = createRetryableProvider;
|
|
6
|
+
exports.wrapProviderWithRetries = wrapProviderWithRetries;
|
|
7
|
+
exports.isRetryableProvider = isRetryableProvider;
|
|
8
|
+
exports.classifyError = classifyError;
|
|
9
|
+
exports.DEFAULT_RETRY_CONFIG = {
|
|
10
|
+
maxRetries: 3,
|
|
11
|
+
baseDelay: 1000, // 1 second
|
|
12
|
+
maxDelay: 10000, // 10 seconds
|
|
13
|
+
backoffMultiplier: 2,
|
|
14
|
+
retryableErrors: [
|
|
15
|
+
// Rate limiting
|
|
16
|
+
'rate limit',
|
|
17
|
+
'too many requests',
|
|
18
|
+
'429', // Rate limit HTTP status
|
|
19
|
+
// Network connectivity issues
|
|
20
|
+
'timeout',
|
|
21
|
+
'network error',
|
|
22
|
+
'connection',
|
|
23
|
+
'ECONNRESET',
|
|
24
|
+
'ENOTFOUND',
|
|
25
|
+
'ETIMEDOUT',
|
|
26
|
+
'socket hang up',
|
|
27
|
+
'request timeout',
|
|
28
|
+
'network timeout',
|
|
29
|
+
'connect timeout',
|
|
30
|
+
// Server/infrastructure errors
|
|
31
|
+
'server error',
|
|
32
|
+
'internal server error',
|
|
33
|
+
'bad gateway',
|
|
34
|
+
'service unavailable',
|
|
35
|
+
'gateway timeout',
|
|
36
|
+
'proxy error',
|
|
37
|
+
'upstream error',
|
|
38
|
+
'500', // Internal server error
|
|
39
|
+
'502', // Bad gateway
|
|
40
|
+
'503', // Service unavailable
|
|
41
|
+
'504', // Gateway timeout
|
|
42
|
+
// RPC-specific errors
|
|
43
|
+
'rpc error',
|
|
44
|
+
'node error',
|
|
45
|
+
'provider error',
|
|
46
|
+
'endpoint error',
|
|
47
|
+
'method not found', // Sometimes temporary
|
|
48
|
+
'parse error', // Could be temporary JSON parsing issue
|
|
49
|
+
// Temporary blockchain node issues
|
|
50
|
+
'block not found', // Sometimes temporary
|
|
51
|
+
'header not found', // Sometimes temporary
|
|
52
|
+
'missing trie node',
|
|
53
|
+
// Generic temporary failures
|
|
54
|
+
'temporary failure',
|
|
55
|
+
'temporarily unavailable',
|
|
56
|
+
'try again',
|
|
57
|
+
'retry'
|
|
58
|
+
]
|
|
59
|
+
};
|
|
60
|
+
class RetryableProvider {
|
|
61
|
+
config;
|
|
62
|
+
constructor(config = {}) {
|
|
63
|
+
this.config = { ...exports.DEFAULT_RETRY_CONFIG, ...config };
|
|
64
|
+
}
|
|
65
|
+
async sleep(ms) {
|
|
66
|
+
return new Promise(resolve => setTimeout(resolve, ms));
|
|
67
|
+
}
|
|
68
|
+
calculateDelay(attempt) {
|
|
69
|
+
const delay = this.config.baseDelay * Math.pow(this.config.backoffMultiplier, attempt);
|
|
70
|
+
return Math.min(delay, this.config.maxDelay);
|
|
71
|
+
}
|
|
72
|
+
isRetryableError(error) {
|
|
73
|
+
// First check for non-retryable smart contract errors
|
|
74
|
+
const errorMessage = error?.message?.toLowerCase() || '';
|
|
75
|
+
const errorCode = error?.code?.toString() || '';
|
|
76
|
+
// These are contract execution errors that should NOT be retried
|
|
77
|
+
const nonRetryablePatterns = [
|
|
78
|
+
'revert',
|
|
79
|
+
'execution reverted',
|
|
80
|
+
'transaction reverted',
|
|
81
|
+
'insufficient funds',
|
|
82
|
+
'gas required exceeds allowance',
|
|
83
|
+
'nonce too high',
|
|
84
|
+
'nonce too low',
|
|
85
|
+
'replacement transaction underpriced',
|
|
86
|
+
'already pending',
|
|
87
|
+
'invalid opcode',
|
|
88
|
+
'stack overflow',
|
|
89
|
+
'stack underflow',
|
|
90
|
+
'out of gas',
|
|
91
|
+
'call_exception',
|
|
92
|
+
'unpredictable_gas_limit',
|
|
93
|
+
'invalid_argument',
|
|
94
|
+
'missing_argument',
|
|
95
|
+
'unexpected_argument',
|
|
96
|
+
'numeric_fault'
|
|
97
|
+
];
|
|
98
|
+
// If it's a contract execution error, don't retry
|
|
99
|
+
const isContractError = nonRetryablePatterns.some(pattern => errorMessage.includes(pattern) || errorCode.includes(pattern));
|
|
100
|
+
if (isContractError) {
|
|
101
|
+
return false;
|
|
102
|
+
}
|
|
103
|
+
// Now check for retryable network/RPC errors
|
|
104
|
+
const errorStatus = error?.response?.status?.toString() || '';
|
|
105
|
+
return this.config.retryableErrors.some(retryableError => errorMessage.includes(retryableError.toLowerCase()) ||
|
|
106
|
+
errorCode.includes(retryableError) ||
|
|
107
|
+
errorStatus.includes(retryableError));
|
|
108
|
+
}
|
|
109
|
+
async executeWithRetry(operation, context = 'RPC call') {
|
|
110
|
+
let lastError;
|
|
111
|
+
for (let attempt = 0; attempt <= this.config.maxRetries; attempt++) {
|
|
112
|
+
try {
|
|
113
|
+
return await operation();
|
|
114
|
+
}
|
|
115
|
+
catch (error) {
|
|
116
|
+
lastError = error;
|
|
117
|
+
const isRetryable = this.isRetryableError(error);
|
|
118
|
+
// Don't retry on the last attempt or if error is not retryable
|
|
119
|
+
if (attempt === this.config.maxRetries || !isRetryable) {
|
|
120
|
+
if (!isRetryable && attempt === 0) {
|
|
121
|
+
// Log that this error is not retryable for debugging
|
|
122
|
+
console.debug(`${context} failed with non-retryable error: ${error.message}`);
|
|
123
|
+
}
|
|
124
|
+
throw error;
|
|
125
|
+
}
|
|
126
|
+
const delay = this.calculateDelay(attempt);
|
|
127
|
+
// Call retry callback if provided
|
|
128
|
+
if (this.config.onRetry) {
|
|
129
|
+
this.config.onRetry(attempt + 1, error, delay);
|
|
130
|
+
}
|
|
131
|
+
console.warn(`${context} failed (attempt ${attempt + 1}/${this.config.maxRetries + 1}): ${error.message}. Retrying in ${delay}ms...`);
|
|
132
|
+
await this.sleep(delay);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
throw lastError;
|
|
136
|
+
}
|
|
137
|
+
wrapProvider(provider) {
|
|
138
|
+
// If it's already wrapped, return as-is
|
|
139
|
+
if (provider._isRetryable) {
|
|
140
|
+
return provider;
|
|
141
|
+
}
|
|
142
|
+
const retryableProvider = new Proxy(provider, {
|
|
143
|
+
get: (target, prop, receiver) => {
|
|
144
|
+
const original = Reflect.get(target, prop, receiver);
|
|
145
|
+
// Mark as retryable
|
|
146
|
+
if (prop === '_isRetryable') {
|
|
147
|
+
return true;
|
|
148
|
+
}
|
|
149
|
+
// Wrap the main RPC send method
|
|
150
|
+
if (prop === 'send' && typeof original === 'function') {
|
|
151
|
+
return async (method, params) => {
|
|
152
|
+
return this.executeWithRetry(() => original.apply(target, [method, params]), `RPC ${method}`);
|
|
153
|
+
};
|
|
154
|
+
}
|
|
155
|
+
// For JsonRpcProvider, also wrap _send if it exists
|
|
156
|
+
if (prop === '_send' && typeof original === 'function') {
|
|
157
|
+
return async (payload, callback) => {
|
|
158
|
+
return this.executeWithRetry(() => original.apply(target, arguments), `RPC ${payload.method || 'unknown'}`);
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
// Wrap other async methods that might make RPC calls
|
|
162
|
+
if (typeof original === 'function' && this.isRpcMethod(prop)) {
|
|
163
|
+
return async (...args) => {
|
|
164
|
+
return this.executeWithRetry(() => original.apply(target, args), `Provider method ${String(prop)}`);
|
|
165
|
+
};
|
|
166
|
+
}
|
|
167
|
+
// If it's a function, bind it to the target
|
|
168
|
+
if (typeof original === 'function') {
|
|
169
|
+
return original.bind(target);
|
|
170
|
+
}
|
|
171
|
+
return original;
|
|
172
|
+
}
|
|
173
|
+
});
|
|
174
|
+
return retryableProvider;
|
|
175
|
+
}
|
|
176
|
+
isRpcMethod(prop) {
|
|
177
|
+
if (typeof prop !== 'string')
|
|
178
|
+
return false;
|
|
179
|
+
// Common ethers.js methods that make RPC calls
|
|
180
|
+
const rpcMethods = [
|
|
181
|
+
'getBalance',
|
|
182
|
+
'getCode',
|
|
183
|
+
'getStorageAt',
|
|
184
|
+
'getTransactionCount',
|
|
185
|
+
'getBlock',
|
|
186
|
+
'getBlockNumber',
|
|
187
|
+
'getGasPrice',
|
|
188
|
+
'getFeeData',
|
|
189
|
+
'getTransaction',
|
|
190
|
+
'getTransactionReceipt',
|
|
191
|
+
'call',
|
|
192
|
+
'estimateGas',
|
|
193
|
+
'sendTransaction',
|
|
194
|
+
'waitForTransaction',
|
|
195
|
+
'getLogs',
|
|
196
|
+
'getNetwork',
|
|
197
|
+
'detectNetwork'
|
|
198
|
+
];
|
|
199
|
+
return rpcMethods.includes(prop);
|
|
200
|
+
}
|
|
201
|
+
updateConfig(newConfig) {
|
|
202
|
+
this.config = { ...this.config, ...newConfig };
|
|
203
|
+
}
|
|
204
|
+
getConfig() {
|
|
205
|
+
return { ...this.config };
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
exports.RetryableProvider = RetryableProvider;
|
|
209
|
+
// Global retry provider instance
|
|
210
|
+
let globalRetryProvider = null;
|
|
211
|
+
/**
|
|
212
|
+
* Configure global retry settings for all RPC calls
|
|
213
|
+
*/
|
|
214
|
+
function configureRetries(config = {}) {
|
|
215
|
+
if (!globalRetryProvider) {
|
|
216
|
+
globalRetryProvider = new RetryableProvider(config);
|
|
217
|
+
}
|
|
218
|
+
else {
|
|
219
|
+
globalRetryProvider.updateConfig(config);
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* Create a provider with retry capabilities
|
|
224
|
+
*/
|
|
225
|
+
function createRetryableProvider(provider, config = {}) {
|
|
226
|
+
const retryProvider = new RetryableProvider(config);
|
|
227
|
+
return retryProvider.wrapProvider(provider);
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Get the global retry provider, creating one with defaults if it doesn't exist
|
|
231
|
+
*/
|
|
232
|
+
function getGlobalRetryProvider() {
|
|
233
|
+
if (!globalRetryProvider) {
|
|
234
|
+
globalRetryProvider = new RetryableProvider();
|
|
235
|
+
}
|
|
236
|
+
return globalRetryProvider;
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* Wrap a provider with the global retry configuration
|
|
240
|
+
*/
|
|
241
|
+
function wrapProviderWithRetries(provider) {
|
|
242
|
+
const retryProvider = getGlobalRetryProvider();
|
|
243
|
+
return retryProvider.wrapProvider(provider);
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* Utility function to check if a provider is already wrapped with retries
|
|
247
|
+
*/
|
|
248
|
+
function isRetryableProvider(provider) {
|
|
249
|
+
return provider._isRetryable === true;
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Utility function to classify error types for debugging
|
|
253
|
+
*/
|
|
254
|
+
function classifyError(error) {
|
|
255
|
+
const errorMessage = error?.message?.toLowerCase() || '';
|
|
256
|
+
const errorCode = error?.code?.toString() || '';
|
|
257
|
+
const errorStatus = error?.response?.status?.toString() || '';
|
|
258
|
+
// Contract execution errors
|
|
259
|
+
const contractPatterns = [
|
|
260
|
+
'revert', 'execution reverted', 'transaction reverted',
|
|
261
|
+
'insufficient funds', 'gas required exceeds allowance',
|
|
262
|
+
'nonce too high', 'nonce too low', 'out of gas',
|
|
263
|
+
'call_exception', 'unpredictable_gas_limit'
|
|
264
|
+
];
|
|
265
|
+
if (contractPatterns.some(pattern => errorMessage.includes(pattern) || errorCode.includes(pattern))) {
|
|
266
|
+
return { type: 'contract', isRetryable: false, message: error.message };
|
|
267
|
+
}
|
|
268
|
+
// Rate limiting
|
|
269
|
+
if (errorMessage.includes('rate limit') || errorMessage.includes('too many requests') || errorStatus === '429') {
|
|
270
|
+
return { type: 'rate_limit', isRetryable: true, message: error.message };
|
|
271
|
+
}
|
|
272
|
+
// Network errors
|
|
273
|
+
const networkPatterns = [
|
|
274
|
+
'timeout', 'network error', 'connection', 'ECONNRESET',
|
|
275
|
+
'ENOTFOUND', 'ETIMEDOUT', 'socket hang up'
|
|
276
|
+
];
|
|
277
|
+
if (networkPatterns.some(pattern => errorMessage.includes(pattern) || errorCode.includes(pattern))) {
|
|
278
|
+
return { type: 'network', isRetryable: true, message: error.message };
|
|
279
|
+
}
|
|
280
|
+
// RPC errors
|
|
281
|
+
const rpcPatterns = ['rpc error', 'node error', 'provider error', 'parse error'];
|
|
282
|
+
if (rpcPatterns.some(pattern => errorMessage.includes(pattern))) {
|
|
283
|
+
return { type: 'rpc', isRetryable: true, message: error.message };
|
|
284
|
+
}
|
|
285
|
+
return { type: 'unknown', isRetryable: false, message: error.message };
|
|
286
|
+
}
|
|
287
|
+
//# sourceMappingURL=retry-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry-provider.js","sourceRoot":"","sources":["../src/retry-provider.ts"],"names":[],"mappings":"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"}
|
package/dist/setup.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAyB,MAAM,QAAQ,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,WAAW,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAyB,MAAM,QAAQ,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAGhD,MAAM,MAAM,iBAAiB,GAAG;IAC5B,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAA;CAChB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AACnD,MAAM,MAAM,UAAU,GAAG;IAAE,CAAC,GAAG,EAAE,OAAO,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAA;CAAE,CAAC;AAEtE,eAAO,IAAI,YAAY,EAAE;IACrB,KAAK,EAAE,cAAc,CAAC;IACtB,SAAS,EAAE,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC;IACnD,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,CAAC;AAgBF,eAAO,MAAM,YAAY;;;;;wBAK+C,OAAO;;;sBAES,OAAO;;;;;;;;wBAjB3B,OAAO;;;sBAES,OAAO;;;;sBAIR,OAAO;wBAA8D,OAAO;;;;;;;wBAN3F,OAAO;;;sBAES,OAAO;;;;sBAIR,OAAO;wBAA8D,OAAO;;;CAoB9J,CAAC;AAEF,wBAAsB,UAAU,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,iBAAiB,GAAG,IAAI,EAAE,mBAAmB,GAAE,OAAe,EAAE,OAAO,GAAE,MAAM,GAAG,IAAW;;;;;GAyD9J"}
|
package/dist/setup.js
CHANGED
|
@@ -12,6 +12,7 @@ const ProtocolReader_1 = require("./classes/ProtocolReader");
|
|
|
12
12
|
const OracleManager_1 = require("./classes/OracleManager");
|
|
13
13
|
const Kuru_1 = __importDefault(require("./classes/Kuru"));
|
|
14
14
|
const KuruMainnet_1 = __importDefault(require("./classes/KuruMainnet"));
|
|
15
|
+
const retry_provider_1 = require("./retry-provider");
|
|
15
16
|
const monad_mainnet_config = {
|
|
16
17
|
dexAgg: KuruMainnet_1.default,
|
|
17
18
|
provider: new ethers_1.JsonRpcProvider("https://rpc-mainnet.monadinfra.com/rpc/yXdhejk7tio3mpBmpTyzQCdIQjDXsuAk"),
|
|
@@ -50,6 +51,7 @@ async function setupChain(chain, provider, approval_protection = false, api_url
|
|
|
50
51
|
if (provider == null) {
|
|
51
52
|
provider = exports.chain_config[chain].provider;
|
|
52
53
|
}
|
|
54
|
+
provider = (0, retry_provider_1.wrapProviderWithRetries)(provider);
|
|
53
55
|
exports.setup_config = {
|
|
54
56
|
chain,
|
|
55
57
|
provider,
|
package/dist/setup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"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"}
|