@bernierllc/backoff-retry 0.3.1 ā 0.5.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/CHANGELOG.md +54 -0
- package/debug-metrics-simple.js +27 -0
- package/debug-metrics.js +43 -0
- package/debug-retry-manager.js +35 -0
- package/dist/memory-protection.d.ts.map +1 -1
- package/dist/memory-protection.js +3 -1
- package/dist/memory-protection.js.map +1 -1
- package/dist/retry-manager.d.ts +9 -0
- package/dist/retry-manager.d.ts.map +1 -1
- package/dist/retry-manager.js +133 -15
- package/dist/retry-manager.js.map +1 -1
- package/package.json +12 -6
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,57 @@
|
|
|
1
|
+
# Change Log
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
|
+
|
|
6
|
+
# [0.5.0](https://github.com/bernier-llc/tools/compare/@bernierllc/backoff-retry@0.1.1...@bernierllc/backoff-retry@0.5.0) (2025-12-25)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* **ci:** add lerna version step before publish ([3d20300](https://github.com/bernier-llc/tools/commit/3d203002143bf353fffafe4f8a78a99009567347))
|
|
12
|
+
* **ci:** fix release workflow + convert internal deps to workspace:* ([01c078b](https://github.com/bernier-llc/tools/commit/01c078b49d6025f7eef750f79207a1c71c8d85dc))
|
|
13
|
+
* **jest:** move global options to root config and fix typos ([c14710c](https://github.com/bernier-llc/tools/commit/c14710c11e8fc34dd7f773edf01328151564323a))
|
|
14
|
+
* **jest:** resolve Node.js v25+ localStorage SecurityError ([8ffc512](https://github.com/bernier-llc/tools/commit/8ffc512805519bc5ba523bdbcd1c457e84998c9e))
|
|
15
|
+
* resolve major TypeScript build errors and improve package management system ([dfa7752](https://github.com/bernier-llc/tools/commit/dfa775221bde951c854b033064ed08d9ecea89b3))
|
|
16
|
+
* resolve TypeScript and ESLint errors across packages ([592c0d1](https://github.com/bernier-llc/tools/commit/592c0d17e10ed01cb87c9f3453f551c54ea80915))
|
|
17
|
+
* update neverhub-adapter deps to workspace:* and publish 0.1.2 ([f0e3d04](https://github.com/bernier-llc/tools/commit/f0e3d04d8d4f094e3bb899ddf81e93243d16e2c2))
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Features
|
|
21
|
+
|
|
22
|
+
* complete enhanced development CLI with all edge case handling ([cb3cbd0](https://github.com/bernier-llc/tools/commit/cb3cbd06f8678e99e7bec2f8ad19b6abdf2fe639))
|
|
23
|
+
* enhance development CLI with graceful error handling and reporting ([b8b7c71](https://github.com/bernier-llc/tools/commit/b8b7c7152d273a7be8ba19c09c3c525ebb964664))
|
|
24
|
+
* implement core license manager dual licensing support ([a3a68ee](https://github.com/bernier-llc/tools/commit/a3a68ee054490b40fc4f6cda717aef3a91e1d83c))
|
|
25
|
+
* migrate packages to subdirectory structure ([c01f383](https://github.com/bernier-llc/tools/commit/c01f383df1a818f57164ec62ec380c7ec42fa3c0))
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
# [0.4.0](https://github.com/bernier-llc/tools/compare/@bernierllc/backoff-retry@0.1.1...@bernierllc/backoff-retry@0.4.0) (2025-12-25)
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
### Bug Fixes
|
|
35
|
+
|
|
36
|
+
* **ci:** fix release workflow + convert internal deps to workspace:* ([01c078b](https://github.com/bernier-llc/tools/commit/01c078b49d6025f7eef750f79207a1c71c8d85dc))
|
|
37
|
+
* **jest:** move global options to root config and fix typos ([c14710c](https://github.com/bernier-llc/tools/commit/c14710c11e8fc34dd7f773edf01328151564323a))
|
|
38
|
+
* **jest:** resolve Node.js v25+ localStorage SecurityError ([8ffc512](https://github.com/bernier-llc/tools/commit/8ffc512805519bc5ba523bdbcd1c457e84998c9e))
|
|
39
|
+
* resolve major TypeScript build errors and improve package management system ([dfa7752](https://github.com/bernier-llc/tools/commit/dfa775221bde951c854b033064ed08d9ecea89b3))
|
|
40
|
+
* resolve TypeScript and ESLint errors across packages ([592c0d1](https://github.com/bernier-llc/tools/commit/592c0d17e10ed01cb87c9f3453f551c54ea80915))
|
|
41
|
+
* update neverhub-adapter deps to workspace:* and publish 0.1.2 ([f0e3d04](https://github.com/bernier-llc/tools/commit/f0e3d04d8d4f094e3bb899ddf81e93243d16e2c2))
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
### Features
|
|
45
|
+
|
|
46
|
+
* complete enhanced development CLI with all edge case handling ([cb3cbd0](https://github.com/bernier-llc/tools/commit/cb3cbd06f8678e99e7bec2f8ad19b6abdf2fe639))
|
|
47
|
+
* enhance development CLI with graceful error handling and reporting ([b8b7c71](https://github.com/bernier-llc/tools/commit/b8b7c7152d273a7be8ba19c09c3c525ebb964664))
|
|
48
|
+
* implement core license manager dual licensing support ([a3a68ee](https://github.com/bernier-llc/tools/commit/a3a68ee054490b40fc4f6cda717aef3a91e1d83c))
|
|
49
|
+
* migrate packages to subdirectory structure ([c01f383](https://github.com/bernier-llc/tools/commit/c01f383df1a818f57164ec62ec380c7ec42fa3c0))
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
|
|
1
55
|
# @bernierllc/backoff-retry
|
|
2
56
|
|
|
3
57
|
## 0.3.0
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
const { MetricsCollector } = require('@bernierllc/retry-metrics');
|
|
4
|
+
const { createMetricsStorage } = require('@bernierllc/retry-metrics');
|
|
5
|
+
|
|
6
|
+
console.log('š DEBUG: Simple Metrics Collector Test\n');
|
|
7
|
+
|
|
8
|
+
// Test 1: Direct MetricsCollector usage
|
|
9
|
+
console.log('=== Test 1: Direct MetricsCollector ===');
|
|
10
|
+
const metricsCollector = new MetricsCollector({
|
|
11
|
+
enabled: true,
|
|
12
|
+
storage: createMetricsStorage('memory')
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
console.log('Initial metrics:', JSON.stringify(metricsCollector.getMetrics(), null, 2));
|
|
16
|
+
|
|
17
|
+
metricsCollector.recordAttemptStart('test1', 1);
|
|
18
|
+
console.log('After recordAttemptStart:', JSON.stringify(metricsCollector.getMetrics(), null, 2));
|
|
19
|
+
|
|
20
|
+
metricsCollector.recordAttemptEnd('test1', 1, true, 100);
|
|
21
|
+
console.log('After recordAttemptEnd (success):', JSON.stringify(metricsCollector.getMetrics(), null, 2));
|
|
22
|
+
|
|
23
|
+
metricsCollector.recordAttemptStart('test2', 1);
|
|
24
|
+
metricsCollector.recordAttemptEnd('test2', 1, false, 200, 'Test error');
|
|
25
|
+
console.log('After recordAttemptEnd (failure):', JSON.stringify(metricsCollector.getMetrics(), null, 2));
|
|
26
|
+
|
|
27
|
+
console.log('\nš DEBUG: Simple Test Complete');
|
package/debug-metrics.js
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
const { MetricsCollector } = require('@bernierllc/retry-metrics');
|
|
4
|
+
const { createMetricsStorage } = require('@bernierllc/retry-metrics');
|
|
5
|
+
const { RetryManager } = require('./src/retry-manager');
|
|
6
|
+
const { MemoryStorageAdapter } = require('./src/storage');
|
|
7
|
+
|
|
8
|
+
async function debugMetrics() {
|
|
9
|
+
console.log('š DEBUG: Metrics Collector Investigation\n');
|
|
10
|
+
|
|
11
|
+
// Test 1: Direct MetricsCollector usage
|
|
12
|
+
console.log('=== Test 1: Direct MetricsCollector ===');
|
|
13
|
+
const metricsCollector = new MetricsCollector({
|
|
14
|
+
enabled: true,
|
|
15
|
+
storage: createMetricsStorage('memory')
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
console.log('Initial metrics:', metricsCollector.getMetrics());
|
|
19
|
+
|
|
20
|
+
metricsCollector.recordAttemptStart('test1', 1);
|
|
21
|
+
console.log('After recordAttemptStart:', metricsCollector.getMetrics());
|
|
22
|
+
|
|
23
|
+
metricsCollector.recordAttemptEnd('test1', 1, true, 100);
|
|
24
|
+
console.log('After recordAttemptEnd (success):', metricsCollector.getMetrics());
|
|
25
|
+
|
|
26
|
+
// Test 2: RetryManager
|
|
27
|
+
console.log('\n=== Test 2: RetryManager ===');
|
|
28
|
+
const storage = new MemoryStorageAdapter();
|
|
29
|
+
const retryManager = new RetryManager({
|
|
30
|
+
storage,
|
|
31
|
+
defaultOptions: { maxRetries: 1, initialDelayMs: 10 }
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
console.log('Initial RetryManager metrics:', retryManager.getMetrics());
|
|
35
|
+
|
|
36
|
+
const successFn = () => Promise.resolve('success');
|
|
37
|
+
await retryManager.executeWithRetry('success-id', successFn);
|
|
38
|
+
console.log('After successful operation:', retryManager.getMetrics());
|
|
39
|
+
|
|
40
|
+
console.log('\nš DEBUG: Investigation Complete');
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
debugMetrics().catch(console.error);
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
// Import the compiled JavaScript version
|
|
4
|
+
const { RetryManager } = require('./dist/retry-manager');
|
|
5
|
+
const { MemoryStorageAdapter } = require('./dist/storage');
|
|
6
|
+
|
|
7
|
+
async function debugRetryManager() {
|
|
8
|
+
console.log('š DEBUG: RetryManager Metrics Test\n');
|
|
9
|
+
|
|
10
|
+
const storage = new MemoryStorageAdapter();
|
|
11
|
+
const retryManager = new RetryManager({
|
|
12
|
+
storage,
|
|
13
|
+
defaultOptions: { maxRetries: 1, initialDelayMs: 10 }
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
console.log('Initial RetryManager metrics:', JSON.stringify(retryManager.getMetrics(), null, 2));
|
|
17
|
+
|
|
18
|
+
const successFn = () => Promise.resolve('success');
|
|
19
|
+
console.log('\n--- Executing successful operation ---');
|
|
20
|
+
await retryManager.executeWithRetry('success-id', successFn);
|
|
21
|
+
console.log('After successful operation:', JSON.stringify(retryManager.getMetrics(), null, 2));
|
|
22
|
+
|
|
23
|
+
const failureFn = () => Promise.reject(new Error('Failure'));
|
|
24
|
+
console.log('\n--- Executing failed operation ---');
|
|
25
|
+
try {
|
|
26
|
+
await retryManager.executeWithRetry('failure-id', failureFn, { maxRetries: 1 });
|
|
27
|
+
} catch (error) {
|
|
28
|
+
console.log('Expected error caught:', error.message);
|
|
29
|
+
}
|
|
30
|
+
console.log('After failed operation:', JSON.stringify(retryManager.getMetrics(), null, 2));
|
|
31
|
+
|
|
32
|
+
console.log('\nš DEBUG: RetryManager Test Complete');
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
debugRetryManager().catch(console.error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-protection.d.ts","sourceRoot":"","sources":["../src/memory-protection.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,sBAAsB,EAAc,MAAM,SAAS,CAAC;AAE7D;;GAEG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,eAAe,CAAC,CAAiB;IACzC,OAAO,CAAC,kBAAkB,CAAgB;IAC1C,OAAO,CAAC,cAAc,CAAO;gBAEjB,MAAM,EAAE,sBAAsB;IAK1C;;OAEG;IACH,gBAAgB,IAAI,OAAO;IAY3B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAe7B;;OAEG;IACH,OAAO,CAAC,mBAAmB;
|
|
1
|
+
{"version":3,"file":"memory-protection.d.ts","sourceRoot":"","sources":["../src/memory-protection.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,sBAAsB,EAAc,MAAM,SAAS,CAAC;AAE7D;;GAEG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,eAAe,CAAC,CAAiB;IACzC,OAAO,CAAC,kBAAkB,CAAgB;IAC1C,OAAO,CAAC,cAAc,CAAO;gBAEjB,MAAM,EAAE,sBAAsB;IAK1C;;OAEG;IACH,gBAAgB,IAAI,OAAO;IAY3B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAe7B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAiB3B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAO3B;;OAEG;IACH,cAAc,IAAI,MAAM;IAcxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAU5B;;OAEG;IACH,OAAO,CAAC,cAAc;IAOtB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAexB;;OAEG;IACH,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,EAAE;IAehD,OAAO,CAAC,QAAQ;IAKhB,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,WAAW;IAKnB;;OAEG;IACH,QAAQ;;;;;;;IAUR;;OAEG;IACH,OAAO,IAAI,IAAI;CAMhB;AAED;;GAEG;AACH,eAAO,MAAM,gCAAgC,EAAE,sBAK9C,CAAC"}
|
|
@@ -50,7 +50,9 @@ class MemoryProtectionManager {
|
|
|
50
50
|
*/
|
|
51
51
|
estimateMemoryUsage() {
|
|
52
52
|
let size = 0;
|
|
53
|
-
|
|
53
|
+
// Check for window in browser environments
|
|
54
|
+
const windowRef = typeof globalThis.window !== 'undefined' ? globalThis.window : undefined;
|
|
55
|
+
const objects = [global, globalThis, windowRef].filter(Boolean);
|
|
54
56
|
for (const obj of objects) {
|
|
55
57
|
try {
|
|
56
58
|
size += JSON.stringify(obj).length;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-protection.js","sourceRoot":"","sources":["../src/memory-protection.ts"],"names":[],"mappings":";AAAA;;;;;;EAME;;;AAIF;;GAEG;AACH,MAAa,uBAAuB;IAMlC,YAAY,MAA8B;QAHlC,uBAAkB,GAAa,EAAE,CAAC;QAClC,mBAAc,GAAG,GAAG,CAAC;QAG3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAClD,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;QAEvC,IAAI,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,iBAAiB,YAAY,0BAA0B,IAAI,CAAC,MAAM,CAAC,cAAc,SAAS,CAAC,CAAC;YACzG,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACK,qBAAqB;QAC3B,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YAC1D,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;YACvC,OAAO,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAC/C,CAAC;QAED,wDAAwD;QACxD,IAAI,OAAO,WAAW,KAAK,WAAW,IAAK,WAAmB,CAAC,MAAM,EAAE,CAAC;YACtE,OAAQ,WAAmB,CAAC,MAAM,CAAC,cAAc,CAAC;QACpD,CAAC;QAED,kDAAkD;QAClD,OAAO,IAAI,CAAC,mBAAmB,EAAE,CAAC;IACpC,CAAC;IAED;;OAEG;IACK,mBAAmB;QACzB,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"memory-protection.js","sourceRoot":"","sources":["../src/memory-protection.ts"],"names":[],"mappings":"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"}
|
package/dist/retry-manager.d.ts
CHANGED
|
@@ -15,8 +15,17 @@ export declare class RetryManager {
|
|
|
15
15
|
constructor(config?: Partial<RetryManagerConfig>);
|
|
16
16
|
/**
|
|
17
17
|
* Execute a function with retry logic and persistent state
|
|
18
|
+
* This is the main public interface that orchestrates the retry process
|
|
18
19
|
*/
|
|
19
20
|
executeWithRetry<T>(id: string, fn: () => Promise<T>, options?: Partial<RetryOptions>): Promise<RetryResult<T>>;
|
|
21
|
+
/**
|
|
22
|
+
* Execute the retry loop - handles the orchestration of multiple attempts
|
|
23
|
+
*/
|
|
24
|
+
private executeRetryLoop;
|
|
25
|
+
/**
|
|
26
|
+
* Execute a single attempt (no retry logic)
|
|
27
|
+
*/
|
|
28
|
+
private executeSingleAttempt;
|
|
20
29
|
/**
|
|
21
30
|
* Execute retry with backoff (original function from plans)
|
|
22
31
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry-manager.d.ts","sourceRoot":"","sources":["../src/retry-manager.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,kBAAkB,EAClB,WAAW,EAEZ,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,kBAAkB,IAAI,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGnF,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AA4B9E;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,gBAAgB,CAAmB;gBAE/B,MAAM,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC;IAuBhD
|
|
1
|
+
{"version":3,"file":"retry-manager.d.ts","sourceRoot":"","sources":["../src/retry-manager.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,kBAAkB,EAClB,WAAW,EAEZ,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,kBAAkB,IAAI,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGnF,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AA4B9E;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,gBAAgB,CAAmB;gBAE/B,MAAM,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC;IAuBhD;;;OAGG;IACG,gBAAgB,CAAC,CAAC,EACtB,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,OAAO,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAC9B,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IA0C1B;;OAEG;YACW,gBAAgB;IAyD9B;;OAEG;YACW,oBAAoB;IAkIlC;;OAEG;IACG,gBAAgB,CAAC,CAAC,EACtB,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,CAAC,CAAC;IAuCb;;OAEG;IACG,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAI3D;;OAEG;IACG,eAAe,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAI7D;;OAEG;IACG,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB5C;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAI/B;;OAEG;IACH,UAAU;IAOV;;OAEG;IACH,cAAc;;;;;;;IAId;;OAEG;IACH,qBAAqB,IAAI,kBAAkB;IAI3C;;OAEG;IACH,sBAAsB,CAAC,IAAI,EAAE,MAAM,iBAAiB,GAAG,OAAO;IAI9D;;OAEG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,iBAAiB,EAAE,MAAM,CAAC,EAAE,GAAG,GAAG,IAAI;IAIpE;;OAEG;IACH,kBAAkB,CAAC,IAAI,EAAE,MAAM,iBAAiB,GAAG,IAAI;IAIvD;;OAEG;IACH,6BAA6B,IAAI,MAAM,EAAE;IAIzC;;OAEG;IACH,OAAO,IAAI,IAAI;IAQf;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAkCjC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAmBjC;;OAEG;IACH,OAAO,CAAC,KAAK;CAGd;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,YAAY,CAErF"}
|
package/dist/retry-manager.js
CHANGED
|
@@ -41,6 +41,7 @@ class RetryManager {
|
|
|
41
41
|
}
|
|
42
42
|
/**
|
|
43
43
|
* Execute a function with retry logic and persistent state
|
|
44
|
+
* This is the main public interface that orchestrates the retry process
|
|
44
45
|
*/
|
|
45
46
|
async executeWithRetry(id, fn, options) {
|
|
46
47
|
const startTime = Date.now();
|
|
@@ -64,21 +65,96 @@ class RetryManager {
|
|
|
64
65
|
throw new Error('Invalid retry state');
|
|
65
66
|
}
|
|
66
67
|
// Check if operation was cancelled
|
|
67
|
-
if (state.status === '
|
|
68
|
+
if (state.status === 'cancelled') {
|
|
68
69
|
return {
|
|
69
70
|
success: false,
|
|
70
|
-
error:
|
|
71
|
+
error: new Error('Retry cancelled'),
|
|
71
72
|
attempts: state.attempt,
|
|
72
73
|
totalTime: Date.now() - startTime
|
|
73
74
|
};
|
|
74
75
|
}
|
|
76
|
+
// Save the initial state before starting the retry loop
|
|
77
|
+
await this.storage.set(id, state);
|
|
78
|
+
// Start the retry loop
|
|
79
|
+
return this.executeRetryLoop(id, fn, mergedOptions, startTime);
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Execute the retry loop - handles the orchestration of multiple attempts
|
|
83
|
+
*/
|
|
84
|
+
async executeRetryLoop(id, fn, options, startTime) {
|
|
85
|
+
while (true) {
|
|
86
|
+
// Get current state
|
|
87
|
+
let state = await this.storage.get(id);
|
|
88
|
+
if (!state) {
|
|
89
|
+
throw new Error('Retry state not found');
|
|
90
|
+
}
|
|
91
|
+
// Check if operation was cancelled
|
|
92
|
+
if (state.status === 'cancelled') {
|
|
93
|
+
return {
|
|
94
|
+
success: false,
|
|
95
|
+
error: new Error('Retry cancelled'),
|
|
96
|
+
attempts: state.attempt,
|
|
97
|
+
totalTime: Date.now() - startTime
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
// Check if we've exceeded max attempts
|
|
101
|
+
if ((0, retry_state_1.hasExceededMaxAttempts)(state)) {
|
|
102
|
+
const error = state.error || new Error('Max retries exceeded');
|
|
103
|
+
return {
|
|
104
|
+
success: false,
|
|
105
|
+
error,
|
|
106
|
+
attempts: state.attempt,
|
|
107
|
+
totalTime: Date.now() - startTime
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
// Execute a single attempt
|
|
111
|
+
const attemptResult = await this.executeSingleAttempt(id, fn, options, startTime);
|
|
112
|
+
// If successful, return the result
|
|
113
|
+
if (attemptResult.success) {
|
|
114
|
+
return attemptResult;
|
|
115
|
+
}
|
|
116
|
+
// If we shouldn't retry, return the failure
|
|
117
|
+
if (!attemptResult.shouldRetry) {
|
|
118
|
+
return {
|
|
119
|
+
success: false,
|
|
120
|
+
error: attemptResult.error,
|
|
121
|
+
attempts: attemptResult.attempts,
|
|
122
|
+
totalTime: attemptResult.totalTime
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
// Continue the loop for the next attempt
|
|
126
|
+
// The sleep and state updates are handled in executeSingleAttempt
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Execute a single attempt (no retry logic)
|
|
131
|
+
*/
|
|
132
|
+
async executeSingleAttempt(id, fn, options, startTime) {
|
|
133
|
+
// Get current state
|
|
134
|
+
let state = await this.storage.get(id);
|
|
135
|
+
if (!state) {
|
|
136
|
+
throw new Error('Retry state not found');
|
|
137
|
+
}
|
|
138
|
+
// If cancelled before starting attempt, short-circuit immediately
|
|
139
|
+
if (state.status === 'cancelled') {
|
|
140
|
+
return {
|
|
141
|
+
success: false,
|
|
142
|
+
error: new Error('Retry cancelled'),
|
|
143
|
+
attempts: state.attempt,
|
|
144
|
+
totalTime: Date.now() - startTime
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
// Capture attempt number and record attempt start in metrics
|
|
148
|
+
const attemptNumber = state.attempt;
|
|
149
|
+
this.metricsCollector.recordAttemptStart(id, attemptNumber);
|
|
75
150
|
try {
|
|
76
151
|
const result = await fn();
|
|
77
152
|
// Success - update state using core package
|
|
153
|
+
state = (0, retry_state_1.updateRetryState)(state, { attempt: state.attempt + 1 });
|
|
78
154
|
state = (0, retry_state_1.markAsCompleted)(state);
|
|
79
155
|
await this.storage.set(id, state);
|
|
80
156
|
// Record metrics using core package
|
|
81
|
-
this.metricsCollector.recordAttemptEnd(id,
|
|
157
|
+
this.metricsCollector.recordAttemptEnd(id, attemptNumber, true, Date.now() - startTime);
|
|
82
158
|
const totalTime = Date.now() - startTime;
|
|
83
159
|
return {
|
|
84
160
|
success: true,
|
|
@@ -89,20 +165,20 @@ class RetryManager {
|
|
|
89
165
|
}
|
|
90
166
|
catch (error) {
|
|
91
167
|
// Calculate delay for next retry using core package
|
|
92
|
-
const delay = (0, retry_policy_1.calculateRetryDelay)(state.attempt,
|
|
168
|
+
const delay = (0, retry_policy_1.calculateRetryDelay)(state.attempt, options, {});
|
|
93
169
|
// Update state for retry attempt using core package
|
|
94
170
|
state = (0, retry_state_1.prepareForNextAttempt)(state, delay);
|
|
95
171
|
// Check if we should retry using core package
|
|
96
172
|
if ((0, retry_state_1.hasExceededMaxAttempts)(state) ||
|
|
97
|
-
!(0, retry_policy_1.shouldRetry)(state.attempt, error,
|
|
173
|
+
!(0, retry_policy_1.shouldRetry)(state.attempt, error, options)) {
|
|
98
174
|
// Final failure - mark as failed using core package
|
|
99
175
|
const errorObj = error instanceof Error ? error : new Error(String(error));
|
|
100
176
|
state = (0, retry_state_1.markAsFailed)(state, errorObj);
|
|
101
177
|
await this.storage.set(id, state);
|
|
102
178
|
// Record metrics using core package
|
|
103
|
-
this.metricsCollector.recordAttemptEnd(id,
|
|
104
|
-
if (
|
|
105
|
-
|
|
179
|
+
this.metricsCollector.recordAttemptEnd(id, attemptNumber, false, Date.now() - startTime, error instanceof Error ? error.message : String(error));
|
|
180
|
+
if (options.onFailure) {
|
|
181
|
+
options.onFailure(error);
|
|
106
182
|
}
|
|
107
183
|
return {
|
|
108
184
|
success: false,
|
|
@@ -116,14 +192,40 @@ class RetryManager {
|
|
|
116
192
|
delay,
|
|
117
193
|
updateNextRetry: true
|
|
118
194
|
});
|
|
195
|
+
// If cancellation occurred concurrently, honor it and short-circuit
|
|
196
|
+
const latestBeforePersist = await this.storage.get(id);
|
|
197
|
+
if (latestBeforePersist?.status === 'cancelled') {
|
|
198
|
+
return {
|
|
199
|
+
success: false,
|
|
200
|
+
error: new Error('Retry cancelled'),
|
|
201
|
+
attempts: latestBeforePersist.attempt,
|
|
202
|
+
totalTime: Date.now() - startTime
|
|
203
|
+
};
|
|
204
|
+
}
|
|
119
205
|
await this.storage.set(id, state);
|
|
120
|
-
if (
|
|
121
|
-
|
|
206
|
+
if (options.onRetry) {
|
|
207
|
+
options.onRetry(state.attempt, delay, error);
|
|
122
208
|
}
|
|
123
209
|
// Wait for delay
|
|
124
210
|
await this.sleep(delay);
|
|
125
|
-
//
|
|
126
|
-
|
|
211
|
+
// Check if cancelled during sleep
|
|
212
|
+
const currentState = await this.storage.get(id);
|
|
213
|
+
if (currentState?.status === 'cancelled') {
|
|
214
|
+
return {
|
|
215
|
+
success: false,
|
|
216
|
+
error: new Error('Retry cancelled'),
|
|
217
|
+
attempts: currentState.attempt,
|
|
218
|
+
totalTime: Date.now() - startTime
|
|
219
|
+
};
|
|
220
|
+
}
|
|
221
|
+
// Indicate that we should retry
|
|
222
|
+
return {
|
|
223
|
+
success: false,
|
|
224
|
+
error,
|
|
225
|
+
attempts: state.attempt,
|
|
226
|
+
totalTime: Date.now() - startTime,
|
|
227
|
+
shouldRetry: true
|
|
228
|
+
};
|
|
127
229
|
}
|
|
128
230
|
}
|
|
129
231
|
/**
|
|
@@ -176,10 +278,22 @@ class RetryManager {
|
|
|
176
278
|
*/
|
|
177
279
|
async cancelRetry(id) {
|
|
178
280
|
const state = await this.storage.get(id);
|
|
179
|
-
if (state
|
|
180
|
-
|
|
181
|
-
|
|
281
|
+
if (state) {
|
|
282
|
+
if (state.status !== 'completed' && state.status !== 'failed' && state.status !== 'cancelled') {
|
|
283
|
+
const cancelledState = (0, retry_state_1.markAsCancelled)(state);
|
|
284
|
+
await this.storage.set(id, cancelledState);
|
|
285
|
+
}
|
|
286
|
+
return;
|
|
182
287
|
}
|
|
288
|
+
// If no state exists yet, create a cancelled state so the retry loop picks it up immediately
|
|
289
|
+
const defaultOptions = { ...retry_policy_1.DEFAULT_RETRY_OPTIONS, ...this.config.defaultOptions };
|
|
290
|
+
const initial = (0, retry_state_1.createRetryState)({
|
|
291
|
+
id,
|
|
292
|
+
maxRetries: defaultOptions.maxRetries,
|
|
293
|
+
initialDelayMs: defaultOptions.initialDelayMs
|
|
294
|
+
});
|
|
295
|
+
const cancelledInitial = (0, retry_state_1.markAsCancelled)(initial);
|
|
296
|
+
await this.storage.set(id, cancelledInitial);
|
|
183
297
|
}
|
|
184
298
|
/**
|
|
185
299
|
* Clear all retry states
|
|
@@ -191,6 +305,9 @@ class RetryManager {
|
|
|
191
305
|
* Get retry metrics
|
|
192
306
|
*/
|
|
193
307
|
getMetrics() {
|
|
308
|
+
// Refresh memory usage from memory protection before returning metrics
|
|
309
|
+
const memoryStats = this.memoryProtection.getStats();
|
|
310
|
+
this.metricsCollector.updateMemoryUsage(memoryStats.currentUsage);
|
|
194
311
|
return this.metricsCollector.getMetrics();
|
|
195
312
|
}
|
|
196
313
|
/**
|
|
@@ -235,6 +352,7 @@ class RetryManager {
|
|
|
235
352
|
destroy() {
|
|
236
353
|
this.memoryProtection.destroy();
|
|
237
354
|
this.enhancementManager.removeAllListeners();
|
|
355
|
+
this.metricsCollector.destroy();
|
|
238
356
|
}
|
|
239
357
|
// Helper methods now use core packages - no longer needed
|
|
240
358
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry-manager.js","sourceRoot":"","sources":["../src/retry-manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"retry-manager.js","sourceRoot":"","sources":["../src/retry-manager.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bernierllc/backoff-retry",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"description": "Portable async retry utility with exponential backoff, jitter, and error filtering for API and webhook management",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"scripts": {
|
|
8
8
|
"build": "tsc",
|
|
9
9
|
"test": "jest",
|
|
10
|
+
"test:run": "jest --watchAll=false",
|
|
10
11
|
"test:watch": "jest --watch",
|
|
11
12
|
"lint": "eslint src/**/*.ts",
|
|
12
13
|
"clean": "rm -rf dist"
|
|
@@ -25,10 +26,10 @@
|
|
|
25
26
|
"license": "MIT",
|
|
26
27
|
"repository": "https://github.com/bernier-llc/tools",
|
|
27
28
|
"dependencies": {
|
|
28
|
-
"
|
|
29
|
-
"@bernierllc/retry-policy": "
|
|
30
|
-
"@bernierllc/retry-state": "
|
|
31
|
-
"
|
|
29
|
+
"@bernierllc/retry-metrics": "0.2.0",
|
|
30
|
+
"@bernierllc/retry-policy": "0.3.0",
|
|
31
|
+
"@bernierllc/retry-state": "0.2.0",
|
|
32
|
+
"events": "^3.3.0"
|
|
32
33
|
},
|
|
33
34
|
"optionalDependencies": {
|
|
34
35
|
"@types/crypto-js": "^4.2.2",
|
|
@@ -49,5 +50,10 @@
|
|
|
49
50
|
},
|
|
50
51
|
"peerDependencies": {
|
|
51
52
|
"redis": "^4.6.0"
|
|
52
|
-
}
|
|
53
|
+
},
|
|
54
|
+
"publishConfig": {
|
|
55
|
+
"access": "public",
|
|
56
|
+
"registry": "https://registry.npmjs.org/"
|
|
57
|
+
},
|
|
58
|
+
"gitHead": "af7e74b3715d56d3a193e1bb6743b337c2b0df6d"
|
|
53
59
|
}
|