{"_id":"@ydbjs/retry","_rev":"31-7ac422a3dd610047346f6cd230ab9082","name":"@ydbjs/retry","dist-tags":{"alpha":"6.0.0-alpha.9","latest":"6.3.0"},"versions":{"6.0.0-alpha.1":{"name":"@ydbjs/retry","version":"6.0.0-alpha.1","license":"Apache-2.0","_id":"@ydbjs/retry@6.0.0-alpha.1","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"dist":{"shasum":"7d9e773bee34cffb1477d341df72f97e2e56501c","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.0-alpha.1.tgz","fileCount":23,"integrity":"sha512-ikZ+HP+C7d3h41/fES4Ccj3bOU3Bd/rUUDOWhBZZcjjVN+85emnr8GvxQxV2buqyAeNVw0M385PXeAYPfMQ/gQ==","signatures":[{"sig":"MEUCIQDHr61DdJA0PVm54EwgZuSyDM3NjOKEesswS1g/nKpfzgIgHRxzd6i/a8hVY5ynbaGq9Ko8/B/9GbkDRwVh4z3Tg0Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22017},"main":"dist/cjs/index.js","type":"module","types":"dist/esm/index.d.ts","module":"dist/esm/index.js","exports":{".":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./budget":{"import":"./dist/esm/budget.js","require":"./dist/cjs/budget.js"},"./strategy":{"import":"./dist/esm/strategy.js","require":"./dist/cjs/strategy.js"}},"gitHead":"23cb3d90a7c08f8fca27d8447bfcb292beaf46a5","scripts":{"attw":"attw --pack","test":"node --import tsx --test ./tests/**.test.ts","build":"npm run build:cjs && npm run build:esm","prebuild":"rm -rf ./dist/*","build:cjs":"tsc --project tsconfig.json --module commonjs --verbatimModuleSyntax false --moduleResolution node10 --outDir ./dist/cjs && echo >./dist/cjs/package.json '{\"type\":\"commonjs\"}'","build:esm":"tsc --project tsconfig.json --outDir ./dist/esm","test:watch":"node --import tsx --test --watch"},"_npmUser":{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"},"_npmVersion":"10.9.2","description":"YDB Retry","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.0-alpha.1","@ydbjs/error":"6.0.0-alpha.1"},"typesVersions":{"*":{"budget":["./dist/cjs/budget.d.ts"],"strategy":["./dist/cjs/strategy.d.ts"]}},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.0-alpha.1_1743973462252_0.13412479759777374","host":"s3://npm-registry-packages-npm-production"}},"6.0.0-alpha.2":{"name":"@ydbjs/retry","version":"6.0.0-alpha.2","license":"Apache-2.0","_id":"@ydbjs/retry@6.0.0-alpha.2","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"dist":{"shasum":"ab8b3834a779fce8e35ee6cf6071f513c601ad69","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.0-alpha.2.tgz","fileCount":29,"integrity":"sha512-LKOV8GpEzF9DRfzFYZNSKqfm5PVUQY9K0reFIAclHrYDXt3rdDvuf7iv/YnG/R29Kv78xtEk0hC2mQWVm9LVqQ==","signatures":[{"sig":"MEYCIQDJsfAFODS5PefzlCD4TDcqgrUEatFzabvMN51fS5WWaQIhAPqp9aGCIwrq5+FYwNzeaPcnl7KoOsFD6XvjJoGTOHie","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":26264},"main":"dist/cjs/index.js","type":"module","types":"dist/esm/index.d.ts","module":"dist/esm/index.js","exports":{".":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./budget":{"import":"./dist/esm/budget.js","require":"./dist/cjs/budget.js"},"./strategy":{"import":"./dist/esm/strategy.js","require":"./dist/cjs/strategy.js"}},"gitHead":"121fe40ddf404dd6f84a6a11b1e1423a014f998d","scripts":{"attw":"attw --pack","test":"node --import tsx --test ./tests/**.test.ts","build":"npm run build:cjs && npm run build:esm","prebuild":"rm -rf ./dist/*","build:cjs":"tsc --project tsconfig.json --module commonjs --verbatimModuleSyntax false --moduleResolution node10 --outDir ./dist/cjs && echo >./dist/cjs/package.json '{\"type\":\"commonjs\"}'","build:esm":"tsc --project tsconfig.json --outDir ./dist/esm","test:watch":"node --import tsx --test --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"},"_npmVersion":"10.9.2","description":"YDB Retry","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.0-alpha.2","@ydbjs/error":"6.0.0-alpha.2"},"typesVersions":{"*":{"budget":["./dist/cjs/budget.d.ts"],"strategy":["./dist/cjs/strategy.d.ts"]}},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/retry_6.0.0-alpha.2_1743975379314_0.4583256350288065","host":"s3://npm-registry-packages-npm-production"}},"6.0.0-alpha.3":{"name":"@ydbjs/retry","version":"6.0.0-alpha.3","license":"Apache-2.0","_id":"@ydbjs/retry@6.0.0-alpha.3","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"dist":{"shasum":"68cdf6ec5f29b694f903e3445634ddc3e9bbe2ed","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.0-alpha.3.tgz","fileCount":30,"integrity":"sha512-HEYfpfzeRcQJ3NJ6l/mEsQHG4hzq3plokKipWe5dx34pZJ+Wn7ljJZx36/EZ0DxTBKwSRiSVNCX6T/q0YpHfUw==","signatures":[{"sig":"MEQCIB34rpnkFGnT1+YhC9rAP77Ts5DDtckPVuoF5OVndM0WAiB120f921yyxGj13u58CxjmkwAtz7om40bWxONjULKdFw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":26309},"main":"dist/cjs/index.js","type":"module","types":"dist/esm/index.d.ts","module":"dist/esm/index.js","exports":{".":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./budget":{"import":"./dist/esm/budget.js","require":"./dist/cjs/budget.js"},"./strategy":{"import":"./dist/esm/strategy.js","require":"./dist/cjs/strategy.js"}},"gitHead":"cc9086143f2802a697b59d4e4ebc45c8c1b6cef6","scripts":{"attw":"attw --pack","test":"node --import tsx --test ./tests/**.test.ts","build:cjs":"tsc --project tsconfig.json --module commonjs --verbatimModuleSyntax false --moduleResolution node10 --outDir ./dist/cjs && echo >./dist/cjs/package.json '{\"type\":\"commonjs\"}'","build:esm":"tsc --project tsconfig.json --outDir ./dist/esm","test:watch":"node --import tsx --test --watch"},"_npmUser":{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"},"_npmVersion":"10.9.2","description":"YDB Retry","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.0-alpha.3","@ydbjs/error":"6.0.0-alpha.3"},"typesVersions":{"*":{"budget":["./dist/cjs/budget.d.ts"],"strategy":["./dist/cjs/strategy.d.ts"]}},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.0-alpha.3_1743977495457_0.9595244191856649","host":"s3://npm-registry-packages-npm-production"}},"6.0.0-alpha.4":{"name":"@ydbjs/retry","version":"6.0.0-alpha.4","license":"Apache-2.0","_id":"@ydbjs/retry@6.0.0-alpha.4","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"dist":{"shasum":"a0dbd0fddedc7750fe6caf3f3373672d10ebd512","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.0-alpha.4.tgz","fileCount":30,"integrity":"sha512-hi1aVHW80O3x+b1lk9TzzgtvqgWwRfI909qjLxlGzCl04XOlpk7hVbd4Z3h0gCVhOEyaUK605hER/M9ymthBnA==","signatures":[{"sig":"MEUCIQCR8jlDhAndTj85s/ZAy+TgSPXS+Im2W3arGXHPXJRArQIgAf8NFXa2Ck5qBVy5X9SITn0iQMCGVqO+tAxbAYRrZx8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":26524},"main":"dist/cjs/index.js","type":"module","types":"dist/esm/index.d.ts","module":"dist/esm/index.js","exports":{".":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./budget":{"import":"./dist/esm/budget.js","require":"./dist/cjs/budget.js"},"./strategy":{"import":"./dist/esm/strategy.js","require":"./dist/cjs/strategy.js"}},"gitHead":"f0902396b4c6ac1f20bee7875c77d46976670f33","scripts":{"attw":"attw --pack","test":"node --import tsx --test ./tests/**.test.ts","build:cjs":"tsc --project tsconfig.json --module commonjs --verbatimModuleSyntax false --moduleResolution node10 --outDir ./dist/cjs && echo >./dist/cjs/package.json '{\"type\":\"commonjs\"}'","build:esm":"tsc --project tsconfig.json --outDir ./dist/esm","test:watch":"node --import tsx --test --watch"},"_npmUser":{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"},"_npmVersion":"10.9.2","description":"YDB Retry","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.0-alpha.4","@ydbjs/error":"6.0.0-alpha.4"},"typesVersions":{"*":{"budget":["./dist/cjs/budget.d.ts"],"strategy":["./dist/cjs/strategy.d.ts"]}},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.0-alpha.4_1744004715722_0.7240677778924351","host":"s3://npm-registry-packages-npm-production"}},"6.0.0-alpha.5":{"name":"@ydbjs/retry","version":"6.0.0-alpha.5","license":"Apache-2.0","_id":"@ydbjs/retry@6.0.0-alpha.5","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"dist":{"shasum":"e487d9c5471224bd35a396555b5f519e971be395","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.0-alpha.5.tgz","fileCount":24,"integrity":"sha512-sldSEA7YVQ6c7j1CiubIv+Que+1jJqvUFMFknB8tCEJNPY30SbDlu6l9A9mken1KYkCvfUDXmhaDb6i3ep0a3Q==","signatures":[{"sig":"MEUCIAElxOhyuATABOOnAeD6TpW+HYDpfPVd6/1ZUdltIK4fAiEAzvnizLdDMxXWg6J3xOgySc7zPzitsWerQkeTFi9rsuU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22585},"main":"dist/cjs/index.js","type":"module","types":"dist/esm/index.d.ts","module":"dist/esm/index.js","exports":{".":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./budget":{"import":"./dist/esm/budget.js","require":"./dist/cjs/budget.js"},"./strategy":{"import":"./dist/esm/strategy.js","require":"./dist/cjs/strategy.js"}},"gitHead":"a20d0378b1df61db2f368386e0912bb4eb1a6957","scripts":{"attw":"attw --pack","test":"node --import tsx --test ./tests/**.test.ts","build:cjs":"tsc --project tsconfig.json --module commonjs --verbatimModuleSyntax false --moduleResolution node10 --outDir ./dist/cjs && echo >./dist/cjs/package.json '{\"type\":\"commonjs\"}'","build:esm":"tsc --project tsconfig.json --outDir ./dist/esm","test:watch":"node --import tsx --test --watch"},"_npmUser":{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"},"_npmVersion":"10.9.2","description":"YDB Retry","directories":{},"sideEffects":false,"_nodeVersion":"23.10.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.0-alpha.4","@ydbjs/error":"6.0.0-alpha.4"},"publishConfig":{"tag":"alpha","access":"public"},"typesVersions":{"*":{"budget":["./dist/cjs/budget.d.ts"],"strategy":["./dist/cjs/strategy.d.ts"]}},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.0-alpha.5_1744031276570_0.7674090885599434","host":"s3://npm-registry-packages-npm-production"}},"6.0.0-alpha.6":{"name":"@ydbjs/retry","version":"6.0.0-alpha.6","license":"Apache-2.0","_id":"@ydbjs/retry@6.0.0-alpha.6","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"dist":{"shasum":"e51d6ef05d3d469053738378d40fd689c558bda9","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.0-alpha.6.tgz","fileCount":24,"integrity":"sha512-tIgUsZUTJUIMaP6C+D1+y2DW1Qf6KKYZKocRV8yYN0cCpv3yeDfKjdgUunvkyBgWBY7XwVb7P+Op4LOk0dTHyQ==","signatures":[{"sig":"MEQCIA7Z/C7UHPryPPOPQhmZHFF1VpIPoFFnlj4bemliwRfdAiAU/d5LbsyiU6qGZK72Z2HAjrIYczgF/KYaPOufpkQ9+g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20215},"main":"dist/cjs/index.js","type":"module","types":"dist/esm/index.d.ts","module":"dist/esm/index.js","exports":{".":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./budget":{"import":"./dist/esm/budget.js","require":"./dist/cjs/budget.js"},"./strategy":{"import":"./dist/esm/strategy.js","require":"./dist/cjs/strategy.js"}},"gitHead":"9be672f8bbbe5e84a32e0d01bc8864d89af35b4e","scripts":{"attw":"attw --pack","test":"node --import tsx --test ./tests/**.test.ts","build:cjs":"tsc --project tsconfig.json --module commonjs --verbatimModuleSyntax false --moduleResolution node10 --outDir ./dist/cjs && echo >./dist/cjs/package.json '{\"type\":\"commonjs\"}'","build:esm":"tsc --project tsconfig.json --outDir ./dist/esm","test:watch":"node --import tsx --test --watch"},"_npmUser":{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"},"_npmVersion":"10.9.2","description":"YDB Retry","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.0-alpha.5","@ydbjs/error":"6.0.0-alpha.5"},"publishConfig":{"tag":"alpha","access":"public"},"typesVersions":{"*":{"budget":["./dist/cjs/budget.d.ts"],"strategy":["./dist/cjs/strategy.d.ts"]}},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.0-alpha.6_1744706161423_0.4550436412300587","host":"s3://npm-registry-packages-npm-production"}},"6.0.0-alpha.9":{"name":"@ydbjs/retry","version":"6.0.0-alpha.9","license":"Apache-2.0","_id":"@ydbjs/retry@6.0.0-alpha.9","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"dist":{"shasum":"f178cecb9973cb54a65f4d6ecb723476789d4241","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.0-alpha.9.tgz","fileCount":24,"integrity":"sha512-mpVll1bruwhkPPnPDQ0tM+tISUFwuurD97mW/Fv2IOs5CtcCgA512h4voWQ8+Drdcfc5Gb4mMxrdn1COr0sn3g==","signatures":[{"sig":"MEUCIFSm1e9KCPez5ja08qrWXBMqZnofUQ0bzKqK/UKDJDp2AiEAh32R5pLPkEnOC6toC31hKfZhrBVSfNPylKX4VMbmhKA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23939},"main":"dist/cjs/index.js","type":"module","types":"dist/esm/index.d.ts","module":"dist/esm/index.js","exports":{".":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./budget":{"import":"./dist/esm/budget.js","require":"./dist/cjs/budget.js"},"./strategy":{"import":"./dist/esm/strategy.js","require":"./dist/cjs/strategy.js"}},"gitHead":"63bf679f6911a4bc13d559a9de372e63b704d747","scripts":{"attw":"attw --pack","test":"node --import tsx --test ./tests/**.test.ts","build:cjs":"tsc --project tsconfig.json --module commonjs --verbatimModuleSyntax false --moduleResolution node10 --outDir ./dist/cjs && echo >./dist/cjs/package.json '{\"type\":\"commonjs\"}'","build:esm":"tsc --project tsconfig.json --outDir ./dist/esm","test:watch":"node --import tsx --test --watch"},"_npmUser":{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"},"_npmVersion":"10.9.2","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.0-alpha.7","@ydbjs/error":"6.0.0-alpha.7"},"publishConfig":{"tag":"alpha","access":"public"},"typesVersions":{"*":{"budget":["./dist/cjs/budget.d.ts"],"strategy":["./dist/cjs/strategy.d.ts"]}},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.0-alpha.9_1745008338118_0.3034127220651557","host":"s3://npm-registry-packages-npm-production"}},"6.0.0-alpha.10":{"name":"@ydbjs/retry","version":"6.0.0-alpha.10","license":"Apache-2.0","_id":"@ydbjs/retry@6.0.0-alpha.10","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"dist":{"shasum":"22623493813ed3ecfaf4457709047715753ffaaf","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.0-alpha.10.tgz","fileCount":25,"integrity":"sha512-4X6jbL0Hk7ziwy3oQUAtnYE+z8Vm0uDSiALKWgMn+aggg7yDQCxJtfIsiiVD6WMSo1ANC6FNZ6QFFgGOUe1FnA==","signatures":[{"sig":"MEYCIQCmY+x6dCz6NBzH2Lo+kjqu2TVBbaDe5SX1+kWG41P3uAIhAI1fjJn0aBapN1Q994nRfm72tArep7AbuX9ljQ+8WQOx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24176},"main":"dist/cjs/index.js","type":"module","types":"dist/esm/index.d.ts","module":"dist/esm/index.js","exports":{".":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./budget":{"import":"./dist/esm/budget.js","require":"./dist/cjs/budget.js"},"./strategy":{"import":"./dist/esm/strategy.js","require":"./dist/cjs/strategy.js"}},"gitHead":"14eaa1a5b0f8ca2db42615d5b7c9e360b73f78ba","scripts":{"attw":"attw --pack","test":"vitest --run","clean":"rm -rf dist","build:cjs":"tsc --project tsconfig.json --module commonjs --verbatimModuleSyntax false --moduleResolution node10 --outDir ./dist/cjs && echo >./dist/cjs/package.json '{\"type\":\"commonjs\"}'","build:esm":"tsc --project tsconfig.json --outDir ./dist/esm","test:watch":"vitest --watch"},"_npmUser":{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"},"_npmVersion":"11.3.0","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"23.4.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.0-alpha.7","@ydbjs/error":"6.0.0-alpha.7"},"publishConfig":{"tag":"alpha","access":"public"},"typesVersions":{"*":{"budget":["./dist/cjs/budget.d.ts"],"strategy":["./dist/cjs/strategy.d.ts"]}},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.0-alpha.10_1745441258217_0.7268723974297304","host":"s3://npm-registry-packages-npm-production"}},"6.0.0-alpha.12":{"name":"@ydbjs/retry","version":"6.0.0-alpha.12","license":"Apache-2.0","_id":"@ydbjs/retry@6.0.0-alpha.12","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"dist":{"shasum":"0d6395deb87567af6880dc9a501fbbbcb3bd9e22","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.0-alpha.12.tgz","fileCount":25,"integrity":"sha512-XxzCy7fF++EEM0xc9baVX5AgILSIHouYOHE/hWu94NWHyPNdX+e0+QCYmm2bYJ1/MkJCBro+S3/rQ+MgQVAMQA==","signatures":[{"sig":"MEYCIQCkT0c2CD46SuHKE/58ohfZADfTNlHALlZYadn7Y6i06gIhAO2wHKuQigq+fdRzyNV8Yn1HtX2gxYCT0bYz97pnIuG/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24321},"main":"dist/cjs/index.js","type":"module","types":"dist/esm/index.d.ts","module":"dist/esm/index.js","exports":{".":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./budget":{"import":"./dist/esm/budget.js","require":"./dist/cjs/budget.js"},"./strategy":{"import":"./dist/esm/strategy.js","require":"./dist/cjs/strategy.js"}},"gitHead":"7c95694e75b96edd434d27ce4420eeccfa281687","scripts":{"attw":"attw --pack","test":"vitest --run","clean":"rm -rf dist","build:cjs":"tsc --project tsconfig.json --module commonjs --verbatimModuleSyntax false --moduleResolution node10 --outDir ./dist/cjs && echo >./dist/cjs/package.json '{\"type\":\"commonjs\"}'","build:esm":"tsc --project tsconfig.json --outDir ./dist/esm","test:watch":"vitest --watch"},"_npmUser":{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"},"_npmVersion":"11.3.0","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"23.4.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.0-alpha.8","@ydbjs/error":"6.0.0-alpha.8"},"publishConfig":{"tag":"alpha","access":"public"},"typesVersions":{"*":{"budget":["./dist/cjs/budget.d.ts"],"strategy":["./dist/cjs/strategy.d.ts"]}},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.0-alpha.12_1749381248297_0.9723344540817955","host":"s3://npm-registry-packages-npm-production"}},"6.0.0-alpha.13":{"name":"@ydbjs/retry","version":"6.0.0-alpha.13","license":"Apache-2.0","_id":"@ydbjs/retry@6.0.0-alpha.13","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"dist":{"shasum":"84b5779aa12bc0b334c2909d727b4c9e4068ca18","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.0-alpha.13.tgz","fileCount":25,"integrity":"sha512-1mcUM+kbphAf+pzsqYjz9J/HNbnvkk+xDhB5c2et6Ta5oJQb0GgkpvhSBMCOJl25PwdFxyE8kXhxBVQCOf9iNQ==","signatures":[{"sig":"MEUCIHFa1D9vDjG+W2AnVofVV01PEDC/TbTowu9Hc4aAVC4EAiEAjlmJi8WwM5P93TR8vRkdrFleJn+fZNBxZeNpXSFpHvQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24414},"main":"dist/cjs/index.js","type":"module","types":"dist/esm/index.d.ts","module":"dist/esm/index.js","exports":{".":{"import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./budget":{"import":"./dist/esm/budget.js","require":"./dist/cjs/budget.js"},"./strategy":{"import":"./dist/esm/strategy.js","require":"./dist/cjs/strategy.js"}},"gitHead":"732126ab5faab98d185a71959c308df5d0d03273","scripts":{"attw":"attw --pack","test":"vitest --run","clean":"rm -rf dist","build:cjs":"tsc --project tsconfig.json --module commonjs --verbatimModuleSyntax false --moduleResolution node10 --outDir ./dist/cjs && echo >./dist/cjs/package.json '{\"type\":\"commonjs\"}'","build:esm":"tsc --project tsconfig.json --outDir ./dist/esm","test:watch":"vitest --watch"},"_npmUser":{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"},"_npmVersion":"11.3.0","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"23.4.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.0-alpha.8","@ydbjs/error":"6.0.0-alpha.9"},"publishConfig":{"tag":"alpha","access":"public"},"typesVersions":{"*":{"budget":["./dist/cjs/budget.d.ts"],"strategy":["./dist/cjs/strategy.d.ts"]}},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.0-alpha.13_1749384163100_0.49758555360183254","host":"s3://npm-registry-packages-npm-production"}},"6.0.0-alpha.27":{"name":"@ydbjs/retry","version":"6.0.0-alpha.27","license":"Apache-2.0","_id":"@ydbjs/retry@6.0.0-alpha.27","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"dist":{"shasum":"7d81a006cdd371376f72ebb489c7c8671767b84c","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.0-alpha.27.tgz","fileCount":24,"integrity":"sha512-+KJ+xryumxpLEMdobi4Hxg0OMhXCSoJcn72ApCcfdFZJnIFVGGbvzr+OZOT3UNM3updJMHLYxSi+CrLg2qSHVw==","signatures":[{"sig":"MEQCIGS0gu7V+bVrLxQn8AOh3Q/HNVnLHsR8dW/uKY6gk5FPAiAXa/GqqWPbZoN99DBoOFYSTsdnuqOXAxygc+eS6BKFvA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23738},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./budget":"./dist/budget.js","./strategy":"./dist/strategy.js"},"gitHead":"ebed95d26e899e0120c0d5cd23fffc61c53007bc","scripts":{"attw":"attw --pack --profile esm-only","test":"vitest --run","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"ydb-platform","actor":{"name":"ydb-platform","type":"user","email":"ydb-platform@yandex-team.ru"},"email":"ydb-platform@yandex-team.ru"},"_npmVersion":"11.4.2","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"23.4.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.0-alpha.27","@ydbjs/error":"6.0.0-alpha.27"},"publishConfig":{"tag":"alpha","access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.0-alpha.27_1751140492247_0.2839671457264421","host":"s3://npm-registry-packages-npm-production"}},"6.0.0-alpha.28":{"name":"@ydbjs/retry","version":"6.0.0-alpha.28","keywords":["ydb","database","retry","resilience","typescript"],"author":{"url":"https://ydb.tech","name":"YDB Team","email":"team@ydb.tech"},"license":"Apache-2.0","_id":"@ydbjs/retry@6.0.0-alpha.28","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"contributors":[{"name":"Vladislav Polyakov","email":"me@polrk.com"}],"homepage":"https://github.com/ydb-platform/ydb-js-sdk#readme","bugs":{"url":"https://github.com/ydb-platform/ydb-js-sdk/issues"},"dist":{"shasum":"c389b9e4efc9496b45e8200cfd8d2f9518fe17db","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.0-alpha.28.tgz","fileCount":24,"integrity":"sha512-illZnKqM6/2mpCDOYw2ltSO4RVsc/VTrwBeCQRocju59rQsbSFYH907979dsgRaWOF6q9Wu6K261pY2KemdrEQ==","signatures":[{"sig":"MEUCIQCDhmg8g+uoEJrowUdvD1mUs9iU1v8YJYvf54JHHBOkjwIgTEWzXfl1Tik/7vbILnO5PnN+ZiLt3muvVlfwKwd2Q9M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24495},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":">=10","node":">=20.19.0"},"exports":{".":"./dist/index.js","./budget":"./dist/budget.js","./strategy":"./dist/strategy.js"},"gitHead":"055711fd7a150ab0105461e58c7e7723483fb58e","scripts":{"attw":"attw --pack --profile esm-only","test":"vitest --run","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"ydb-platform","actor":{"name":"ydb-platform","type":"user","email":"ydb-platform@yandex-team.ru"},"email":"ydb-platform@yandex-team.ru"},"repository":{"url":"git+https://github.com/ydb-platform/ydb-js-sdk.git","type":"git","directory":"packages/retry"},"_npmVersion":"11.4.2","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"23.4.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.0-alpha.28","@ydbjs/error":"6.0.0-alpha.28"},"engineStrict":true,"publishConfig":{"tag":"alpha","access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.0-alpha.28_1751142561828_0.6511590139862931","host":"s3://npm-registry-packages-npm-production"}},"6.0.0-alpha.29":{"name":"@ydbjs/retry","version":"6.0.0-alpha.29","keywords":["ydb","database","retry","resilience","typescript"],"author":{"url":"https://ydb.tech","name":"YDB Team","email":"team@ydb.tech"},"license":"Apache-2.0","_id":"@ydbjs/retry@6.0.0-alpha.29","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"contributors":[{"name":"Vladislav Polyakov","email":"me@polrk.com"}],"homepage":"https://github.com/ydb-platform/ydb-js-sdk#readme","bugs":{"url":"https://github.com/ydb-platform/ydb-js-sdk/issues"},"dist":{"shasum":"025d8469ea6de206bc806c1f2f2edd0aa348be18","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.0-alpha.29.tgz","fileCount":39,"integrity":"sha512-PH+bOQ1zsB1LjCf9pPt9sYIHhLFCqro3YKb6/LguC446RSwOvWklTSfEWDsPZnVbFDU9QbmcU6NUA+dLxwMA0g==","signatures":[{"sig":"MEUCIBzdA+b5cuUH8SL9f+8eZcntr1RLT7NWEV2AnWJA+kwnAiEAxfL/lOdlV8bJRWVstVH8D4y6fD3wMTDfDGr0wmZyeaU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":142559},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":">=10","node":">=20.19.0"},"exports":{".":"./dist/index.js","./budget":"./dist/budget.js","./strategy":"./dist/strategy.js"},"gitHead":"9577490c7a02d0bd01d93cebb44b94e8fd9655ee","scripts":{"attw":"attw --pack --profile esm-only","test":"vitest --run","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"ydb-platform","actor":{"name":"ydb-platform","type":"user","email":"ydb-platform@yandex-team.ru"},"email":"ydb-platform@yandex-team.ru"},"repository":{"url":"git+https://github.com/ydb-platform/ydb-js-sdk.git","type":"git","directory":"packages/retry"},"_npmVersion":"11.4.2","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"23.4.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.0-alpha.29","@ydbjs/debug":"6.0.0-alpha.29","@ydbjs/error":"6.0.0-alpha.29","@ydbjs/abortable":"6.0.0-alpha.29"},"engineStrict":true,"publishConfig":{"tag":"alpha","access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.0-alpha.29_1751203001873_0.13812058417792916","host":"s3://npm-registry-packages-npm-production"}},"6.0.1-alpha.30":{"name":"@ydbjs/retry","version":"6.0.1-alpha.30","keywords":["ydb","database","retry","resilience","typescript"],"author":{"url":"https://ydb.tech","name":"YDB Team","email":"team@ydb.tech"},"license":"Apache-2.0","_id":"@ydbjs/retry@6.0.1-alpha.30","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"contributors":[{"name":"Vladislav Polyakov","email":"me@polrk.com"}],"homepage":"https://github.com/ydb-platform/ydb-js-sdk#readme","bugs":{"url":"https://github.com/ydb-platform/ydb-js-sdk/issues"},"dist":{"shasum":"ced79d092d7a01de37f0f61abccc8b8f15a923e7","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.1-alpha.30.tgz","fileCount":24,"integrity":"sha512-vrYyi/Vww36+bF9/QjdDoITvZ/9OzA4BctWXUD1cmQDz9EcofyJQepUwbxVduAQpIW0wuIlyEd06tgXiF/AM9A==","signatures":[{"sig":"MEUCIHAaMv4YbY7+S9Udpg4nvCBqDSZ8nWnPl3dR7OqU4URFAiEA4oku3UApaQUTBxNDmsJ0eDiZvgq3GNoBGwW+MBbefAs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":26353},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":">=10","node":">=20.19.0"},"exports":{".":"./dist/index.js","./budget":"./dist/budget.js","./strategy":"./dist/strategy.js"},"gitHead":"7bb0583194a4cc289a66c2e091adb0c45f5aafb7","scripts":{"attw":"attw --pack --profile esm-only","test":"vitest --run","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"ydb-platform","actor":{"name":"ydb-platform","type":"user","email":"ydb-platform@yandex-team.ru"},"email":"ydb-platform@yandex-team.ru"},"repository":{"url":"git+https://github.com/ydb-platform/ydb-js-sdk.git","type":"git","directory":"packages/retry"},"_npmVersion":"11.4.2","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.1-alpha.30","@ydbjs/debug":"6.0.1-alpha.30","@ydbjs/error":"6.0.1-alpha.30","@ydbjs/abortable":"6.0.1-alpha.30"},"engineStrict":true,"publishConfig":{"tag":"alpha","access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.1-alpha.30_1751440928554_0.44586214148200787","host":"s3://npm-registry-packages-npm-production"}},"6.0.1-alpha.31":{"name":"@ydbjs/retry","version":"6.0.1-alpha.31","keywords":["ydb","database","retry","resilience","typescript"],"author":{"url":"https://ydb.tech","name":"YDB Team","email":"team@ydb.tech"},"license":"Apache-2.0","_id":"@ydbjs/retry@6.0.1-alpha.31","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"contributors":[{"name":"Vladislav Polyakov","email":"me@polrk.com"}],"homepage":"https://github.com/ydb-platform/ydb-js-sdk#readme","bugs":{"url":"https://github.com/ydb-platform/ydb-js-sdk/issues"},"dist":{"shasum":"45959d01b6bc5d54038185e9812e77d59362793c","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.1-alpha.31.tgz","fileCount":24,"integrity":"sha512-8kEF757+guQ5d80MehX673udQy+4Ez24fX/6c1M4/9fSU7YfudkXp1r0iNDZ9NxbvPEaVqoPKKKIf4zKYxNpJA==","signatures":[{"sig":"MEQCIHGTuEjV1bOG44ANSInxF87Yl2+Fy3FxCNvi9rjn0W0eAiARTY/B3oWB59NO51Om+TWSWNzeflv+h8MH1BVjpgmYlw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":26545},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":">=10","node":">=20.19.0"},"exports":{".":"./dist/index.js","./budget":"./dist/budget.js","./strategy":"./dist/strategy.js"},"gitHead":"80d2b54f1a02bddbc72463c900485df8b1047cdf","scripts":{"attw":"attw --pack --profile esm-only","test":"vitest --run","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"ydb-platform","actor":{"name":"ydb-platform","type":"user","email":"ydb-platform@yandex-team.ru"},"email":"ydb-platform@yandex-team.ru"},"repository":{"url":"git+https://github.com/ydb-platform/ydb-js-sdk.git","type":"git","directory":"packages/retry"},"_npmVersion":"11.4.2","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.1-alpha.31","@ydbjs/debug":"6.0.1-alpha.31","@ydbjs/error":"6.0.1-alpha.31","@ydbjs/abortable":"6.0.1-alpha.31"},"engineStrict":true,"publishConfig":{"tag":"alpha","access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.1-alpha.31_1752052406569_0.12431634007079184","host":"s3://npm-registry-packages-npm-production"}},"6.0.1-alpha.32":{"name":"@ydbjs/retry","version":"6.0.1-alpha.32","keywords":["ydb","database","retry","resilience","typescript"],"author":{"url":"https://ydb.tech","name":"YDB Team","email":"team@ydb.tech"},"license":"Apache-2.0","_id":"@ydbjs/retry@6.0.1-alpha.32","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"contributors":[{"name":"Vladislav Polyakov","email":"me@polrk.com"}],"homepage":"https://github.com/ydb-platform/ydb-js-sdk#readme","bugs":{"url":"https://github.com/ydb-platform/ydb-js-sdk/issues"},"dist":{"shasum":"4c8632875ff1434070a02fabeb806bb2ab941549","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.1-alpha.32.tgz","fileCount":24,"integrity":"sha512-GC2uSSzVqEwQ9hROeDdMYfJtCYyuigoetoAHVjoDj7tMxwU6AH6UZhgWnF15OmIZK9PlJKY7YKvySN+nftoYPw==","signatures":[{"sig":"MEYCIQDLemPgoMvM3fvkANTU+bQgHz02y9TBQStA9uDfS3mdjgIhAIT5Tli4qkHf4D4ChE48YIQMJgY7IplL42J51gqLGdWq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":26793},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":">=10","node":">=20.19.0"},"exports":{".":"./dist/index.js","./budget":"./dist/budget.js","./strategy":"./dist/strategy.js"},"gitHead":"af5b1f2b0374b5c7639da559bdd2fc736cda851e","scripts":{"attw":"attw --pack --profile esm-only","test":"vitest --run","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"},"repository":{"url":"git+https://github.com/ydb-platform/ydb-js-sdk.git","type":"git","directory":"packages/retry"},"_npmVersion":"11.4.2","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.1-alpha.32","@ydbjs/debug":"6.0.1-alpha.32","@ydbjs/error":"6.0.1-alpha.32","@ydbjs/abortable":"6.0.1-alpha.32"},"engineStrict":true,"publishConfig":{"tag":"alpha","access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.1-alpha.32_1752225184080_0.8854002524393096","host":"s3://npm-registry-packages-npm-production"}},"7.0.0-alpha.33":{"name":"@ydbjs/retry","version":"7.0.0-alpha.33","keywords":["ydb","database","retry","resilience","typescript"],"author":{"url":"https://ydb.tech","name":"YDB Team","email":"team@ydb.tech"},"license":"Apache-2.0","_id":"@ydbjs/retry@7.0.0-alpha.33","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"contributors":[{"name":"Vladislav Polyakov","email":"me@polrk.com"}],"homepage":"https://github.com/ydb-platform/ydb-js-sdk#readme","bugs":{"url":"https://github.com/ydb-platform/ydb-js-sdk/issues"},"dist":{"shasum":"39a271d692ce7107ddf41790f25edcac3d1a29da","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-7.0.0-alpha.33.tgz","fileCount":24,"integrity":"sha512-n1L/Esg/su+Hv8moml9ZwEHvKRTFc7A0901sneulXxE9bK9PckXRxxxUQDoEvRmeZ2EIGgcdvhgstBNhfctM9g==","signatures":[{"sig":"MEQCICsU7BSrJkUabJ06HabxxisTC7SnUeeKegmhKMHme7KyAiBq448ACtrwyJcCL0mCO5oJxCp9Cg/R6Ar+//7b4BZkqw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":26995},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":">=10","node":">=20.19.0"},"exports":{".":"./dist/index.js","./budget":"./dist/budget.js","./strategy":"./dist/strategy.js"},"gitHead":"bd3dfd8496964fdb1a429619906c6ff469180aa1","scripts":{"attw":"attw --pack --profile esm-only","test":"vitest --run","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"},"repository":{"url":"git+https://github.com/ydb-platform/ydb-js-sdk.git","type":"git","directory":"packages/retry"},"_npmVersion":"11.4.2","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"24.3.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"7.0.0-alpha.33","@ydbjs/debug":"7.0.0-alpha.33","@ydbjs/error":"7.0.0-alpha.33","@ydbjs/abortable":"7.0.0-alpha.33"},"engineStrict":true,"publishConfig":{"tag":"alpha","access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_7.0.0-alpha.33_1757338825456_0.38223955940351995","host":"s3://npm-registry-packages-npm-production"}},"6.0.0":{"name":"@ydbjs/retry","version":"6.0.0","keywords":["ydb","database","retry","resilience","typescript"],"author":{"url":"https://ydb.tech","name":"YDB Team","email":"team@ydb.tech"},"license":"Apache-2.0","_id":"@ydbjs/retry@6.0.0","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"contributors":[{"name":"Vladislav Polyakov","email":"me@polrk.com"}],"homepage":"https://github.com/ydb-platform/ydb-js-sdk#readme","bugs":{"url":"https://github.com/ydb-platform/ydb-js-sdk/issues"},"dist":{"shasum":"997675c149357fcf4854c51d8693f6735d38bbfb","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.0.tgz","fileCount":23,"integrity":"sha512-AWGBGrTlRbxiiL31a766wdgSB9VhtzeFQHSbsaTcoPwdtJ3fqpajEpaWPTAsoo1EDBToPGirtTo1aIvZgdLpqg==","signatures":[{"sig":"MEYCIQD1oTqzg6pcP8Pz5BFVRysWEVYwYrFbJwth1QYHhs3hswIhAPZb/vvWYgtztsJS6pedBrM96ctKOP7S9fjmjdGB+Px1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23983},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":">=10","node":">=20.19.0"},"exports":{".":"./dist/index.js","./budget":"./dist/budget.js","./strategy":"./dist/strategy.js"},"gitHead":"f6ccbfdc7773e32c4e0d367712af92f05d256663","scripts":{"attw":"attw --pack --profile esm-only","test":"vitest --run","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"},"repository":{"url":"git+https://github.com/ydb-platform/ydb-js-sdk.git","type":"git","directory":"packages/retry"},"_npmVersion":"11.5.1","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"24.7.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.0","@ydbjs/debug":"6.0.0","@ydbjs/error":"6.0.0","@ydbjs/abortable":"6.0.0"},"engineStrict":true,"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.0_1758628001749_0.06418772651254256","host":"s3://npm-registry-packages-npm-production"}},"6.0.1":{"name":"@ydbjs/retry","version":"6.0.1","keywords":["ydb","database","retry","resilience","typescript"],"author":{"url":"https://ydb.tech","name":"YDB Team","email":"team@ydb.tech"},"license":"Apache-2.0","_id":"@ydbjs/retry@6.0.1","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"contributors":[{"name":"Vladislav Polyakov","email":"me@polrk.com"}],"homepage":"https://github.com/ydb-platform/ydb-js-sdk#readme","bugs":{"url":"https://github.com/ydb-platform/ydb-js-sdk/issues"},"dist":{"shasum":"a011671d774f36bbbc5560ad23a6883842b55610","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.1.tgz","fileCount":24,"integrity":"sha512-t37kaW0uk3Bhj4fxCmONXSH64OoQVXFxf9ZPRjxcSmwxi0N15p7t+ZOhYmvnXS7jxrYN4K63upX39GmP5vovUA==","signatures":[{"sig":"MEYCIQCQcbNWxLcuum/o8duEEjEcoasVGPfjCN1Fw7BAOOE8gAIhAKVqYNL4jOgDfXmL19OuoHmaW9N6qBbcLkwJf8TJX3Ri","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24114},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":">=10","node":">=20.19.0"},"exports":{".":"./dist/index.js","./budget":"./dist/budget.js","./strategy":"./dist/strategy.js"},"gitHead":"887ee215a48298f49db8678d0f65f2ad95849f6b","scripts":{"attw":"attw --pack --profile esm-only","test":"vitest --run","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"},"repository":{"url":"git+https://github.com/ydb-platform/ydb-js-sdk.git","type":"git","directory":"packages/retry"},"_npmVersion":"11.5.1","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"24.7.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.1","@ydbjs/debug":"6.0.1","@ydbjs/error":"6.0.1","@ydbjs/abortable":"6.0.1"},"engineStrict":true,"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.1_1760173744879_0.939675926416123","host":"s3://npm-registry-packages-npm-production"}},"6.0.2":{"name":"@ydbjs/retry","version":"6.0.2","keywords":["ydb","database","retry","resilience","typescript"],"author":{"url":"https://ydb.tech","name":"YDB Team","email":"team@ydb.tech"},"license":"Apache-2.0","_id":"@ydbjs/retry@6.0.2","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"contributors":[{"name":"Vladislav Polyakov","email":"me@polrk.com"}],"homepage":"https://github.com/ydb-platform/ydb-js-sdk#readme","bugs":{"url":"https://github.com/ydb-platform/ydb-js-sdk/issues"},"dist":{"shasum":"48398e7ed5b5ed81c1499e0ff0a5b9d3aac7dda9","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.2.tgz","fileCount":24,"integrity":"sha512-sQ1FWg0UlOqWR/krowPHimNoc8a+2srUA7Cfc9onBdf5xfbmwZudgZPveAfGLByMRzvu8I6ppZbO/3DKUYwLVQ==","signatures":[{"sig":"MEUCIQCYB5WK8mtjSgV4p2xwggoM+2lAfYLzKxRPMsAr0QzpfQIgI+FyIsCbHjT73x/Ndo3mvdLFe3DApeu12Q88ULlPIqg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24230},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":">=10","node":">=20.19.0"},"exports":{".":"./dist/index.js","./budget":"./dist/budget.js","./strategy":"./dist/strategy.js"},"gitHead":"918d329d3fed24b87d6b36d9e83cdbad8f62d988","scripts":{"attw":"attw --pack --profile esm-only","test":"vitest --run","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"},"repository":{"url":"git+https://github.com/ydb-platform/ydb-js-sdk.git","type":"git","directory":"packages/retry"},"_npmVersion":"11.5.1","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"24.7.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.2","@ydbjs/debug":"6.0.2","@ydbjs/error":"6.0.2","@ydbjs/abortable":"6.0.2"},"engineStrict":true,"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.2_1760173917305_0.1481958086952575","host":"s3://npm-registry-packages-npm-production"}},"6.0.3":{"name":"@ydbjs/retry","version":"6.0.3","keywords":["ydb","database","retry","resilience","typescript"],"author":{"url":"https://ydb.tech","name":"YDB Team","email":"team@ydb.tech"},"license":"Apache-2.0","_id":"@ydbjs/retry@6.0.3","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"contributors":[{"name":"Vladislav Polyakov","email":"me@polrk.com"}],"homepage":"https://github.com/ydb-platform/ydb-js-sdk#readme","bugs":{"url":"https://github.com/ydb-platform/ydb-js-sdk/issues"},"dist":{"shasum":"233668d05e27944c707217543a38bcea97097cef","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.3.tgz","fileCount":24,"integrity":"sha512-2y3uWEpJuBCr5szFs0FA88QcM++8SzoE/atSIq4sG2VxUGjVp3sWpLeoDQYzhGAn2EyDwM+w+VTBzuumLu5V0w==","signatures":[{"sig":"MEUCIF58Sh76+4H2UauRHS+6fBfBBO1fLjJyALm6+iApGR27AiEAniMfv3riKo3W/yXDrCMWz+C3Y3O84KhE3cXQUhwBFZ4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24346},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":">=10","node":">=20.19.0"},"exports":{".":"./dist/index.js","./budget":"./dist/budget.js","./strategy":"./dist/strategy.js"},"gitHead":"ec55f5b68e574edc553b29a10c15d2a18d4fc584","scripts":{"attw":"attw --pack --profile esm-only","test":"vitest --run","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"},"repository":{"url":"git+https://github.com/ydb-platform/ydb-js-sdk.git","type":"git","directory":"packages/retry"},"_npmVersion":"11.5.1","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"24.7.0","dependencies":{"debug":"^4.4.0","nice-grpc":"^2.1.12","@ydbjs/api":"6.0.3","@ydbjs/debug":"6.0.3","@ydbjs/error":"6.0.3","@ydbjs/abortable":"6.0.3"},"engineStrict":true,"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.3_1760174016635_0.7541485065256952","host":"s3://npm-registry-packages-npm-production"}},"6.0.4":{"name":"@ydbjs/retry","version":"6.0.4","keywords":["ydb","database","retry","resilience","typescript"],"author":{"url":"https://ydb.tech","name":"YDB Team","email":"team@ydb.tech"},"license":"Apache-2.0","_id":"@ydbjs/retry@6.0.4","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"contributors":[{"name":"Vladislav Polyakov","email":"me@polrk.com"}],"homepage":"https://github.com/ydb-platform/ydb-js-sdk#readme","bugs":{"url":"https://github.com/ydb-platform/ydb-js-sdk/issues"},"dist":{"shasum":"1c4eaa3f6b2e541bf0154d840436d3f124c1d50c","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.4.tgz","fileCount":24,"integrity":"sha512-uiDey7HNrvjEiWuMiZ8TbinxbukPdIaEQ0FclNTzhd9AsDAsj+usZ4yXQkLcQyKctArEZ2GkUi7SDfZequceDw==","signatures":[{"sig":"MEYCIQD93ZEXkx+zIoqbhhgtZ8J1M3Rx3LjfRSLvXLWSwqEUxgIhANiG162eP9ARbkP6j0L9kzdSIFEanO5LPBLmKFhYDDqj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24513},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":">=10","node":">=20.19.0"},"exports":{".":"./dist/index.js","./budget":"./dist/budget.js","./strategy":"./dist/strategy.js"},"gitHead":"b1982540d6303773b450b086dc09fe1580b3366c","scripts":{"attw":"attw --pack --profile esm-only","test":"vitest --run","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"},"repository":{"url":"git+https://github.com/ydb-platform/ydb-js-sdk.git","type":"git","directory":"packages/retry"},"_npmVersion":"11.5.1","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"24.7.0","dependencies":{"nice-grpc":"^2.1.13","@ydbjs/api":"6.0.4","@ydbjs/debug":"6.0.4","@ydbjs/error":"6.0.4","@ydbjs/abortable":"6.0.4"},"engineStrict":true,"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.4_1760206226565_0.5006143768550724","host":"s3://npm-registry-packages-npm-production"}},"6.0.5":{"name":"@ydbjs/retry","version":"6.0.5","keywords":["ydb","database","retry","resilience","typescript"],"author":{"url":"https://ydb.tech","name":"YDB Team","email":"team@ydb.tech"},"license":"Apache-2.0","_id":"@ydbjs/retry@6.0.5","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"contributors":[{"name":"Vladislav Polyakov","email":"me@polrk.com"}],"homepage":"https://github.com/ydb-platform/ydb-js-sdk#readme","bugs":{"url":"https://github.com/ydb-platform/ydb-js-sdk/issues"},"dist":{"shasum":"7ef4b65b1723933eca0ad504cc07ac56a1ca3cd3","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.0.5.tgz","fileCount":23,"integrity":"sha512-LaFKcVTYf5ACbc3myyUUknZI7xdDpYcUa4Mv3MP/NsMo79ggNFaqynp9OSiu1t3204QEZtCIQeTs1Zuz7AbOkQ==","signatures":[{"sig":"MEUCICvVSxXZ+9WaaBs3KIoFM3QOXV3clltYoQ96FsOcPWf0AiEA04elsuDt9KtOoqzQAeCtilN23F8ECuyehazoQJPfWaE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24647},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":">=10","node":">=20.19.0"},"exports":{".":"./dist/index.js","./budget":"./dist/budget.js","./strategy":"./dist/strategy.js"},"gitHead":"ca383711798637230c676315e13ee9ae6444095b","scripts":{"attw":"attw --pack --profile esm-only","test":"vitest --run","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"},"repository":{"url":"git+https://github.com/ydb-platform/ydb-js-sdk.git","type":"git","directory":"packages/retry"},"_npmVersion":"10.9.4","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"22.21.1","dependencies":{"nice-grpc":"^2.1.13","@ydbjs/api":"6.0.5","@ydbjs/debug":"6.0.5","@ydbjs/error":"6.0.5","@ydbjs/abortable":"6.0.5"},"engineStrict":true,"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.0.5_1762290070847_0.004380888928469329","host":"s3://npm-registry-packages-npm-production"}},"6.1.0":{"name":"@ydbjs/retry","version":"6.1.0","keywords":["ydb","database","retry","resilience","typescript"],"author":{"url":"https://ydb.tech","name":"YDB Team","email":"team@ydb.tech"},"license":"Apache-2.0","_id":"@ydbjs/retry@6.1.0","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"contributors":[{"name":"Vladislav Polyakov","email":"me@polrk.com"}],"homepage":"https://github.com/ydb-platform/ydb-js-sdk#readme","bugs":{"url":"https://github.com/ydb-platform/ydb-js-sdk/issues"},"dist":{"shasum":"bd6fd7b83bb2137fdcea0392740bffa0115de0fb","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.1.0.tgz","fileCount":23,"integrity":"sha512-hqtwIfRFRk6xD9AXYmt5wPxzgXnTJ89tiLvTD5K8qZXB4T+4UuMHwvazcKCtGrgUrBrn8Xx6E+9dqBIflUnZ1Q==","signatures":[{"sig":"MEUCIQCQ6I3pQZ59qCqCI+ohAul5r9ecwebLoTsAk5lJvFsLqQIgK78ld2Yq9N6Q6C2UwsKRwr9myUPy3CY0KDt+zZ7GWaw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ydbjs%2fretry@6.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":29492},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":">=10","node":">=20.19.0"},"exports":{".":"./dist/index.js","./budget":"./dist/budget.js","./strategy":"./dist/strategy.js"},"gitHead":"8818965670d1a6d5fa6c919b66bf530384c7e81a","scripts":{"attw":"attw --pack --profile esm-only","test":"vitest --run","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:090122a4-0092-4cbc-9af1-78c758e4e296"}},"repository":{"url":"git+https://github.com/ydb-platform/ydb-js-sdk.git","type":"git","directory":"packages/retry"},"_npmVersion":"11.8.0","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.1","dependencies":{"nice-grpc":"^2.1.13","@ydbjs/api":"^6.0.0","@ydbjs/debug":"^6.0.0","@ydbjs/error":"^6.0.0","@ydbjs/abortable":"^6.0.0"},"engineStrict":true,"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.1.0_1772201790097_0.016617055840441042","host":"s3://npm-registry-packages-npm-production"}},"6.1.1":{"name":"@ydbjs/retry","version":"6.1.1","keywords":["database","resilience","retry","typescript","ydb"],"author":{"url":"https://ydb.tech","name":"YDB Team","email":"team@ydb.tech"},"license":"Apache-2.0","_id":"@ydbjs/retry@6.1.1","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"contributors":[{"name":"Vladislav Polyakov","email":"me@polrk.com"}],"homepage":"https://github.com/ydb-platform/ydb-js-sdk#readme","bugs":{"url":"https://github.com/ydb-platform/ydb-js-sdk/issues"},"dist":{"shasum":"c6334f8454048e0167e092af443fbbb2746c33c4","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.1.1.tgz","fileCount":23,"integrity":"sha512-MtgP2t+tP0L8juOuM3vRzMVK27YVoTLj+c4C3ckWyUAxuh0RcLXdnjQeXS2yLiy4UKUYYvKEJfV9usYlvey38w==","signatures":[{"sig":"MEUCIQC9ZHJG+HBK1GFbR1s3XWx2CuwbwZPXOfs04sFZahZMngIgDjTjs54EbV2ci7glZx1dFT9H09BCM29SOld1za7hBX8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ydbjs%2fretry@6.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":30285},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":">=10","node":">=20.19.0"},"exports":{".":"./dist/index.js","./budget":"./dist/budget.js","./strategy":"./dist/strategy.js"},"gitHead":"6822fff534f8a056ed563a43140dd0a14cf042b6","scripts":{"attw":"attw --pack --profile esm-only","test":"vitest --run","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:090122a4-0092-4cbc-9af1-78c758e4e296"}},"repository":{"url":"git+https://github.com/ydb-platform/ydb-js-sdk.git","type":"git","directory":"packages/retry"},"_npmVersion":"11.9.0","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"nice-grpc":"^2.1.13","@ydbjs/api":"^6.0.0","@ydbjs/debug":"^6.0.0","@ydbjs/error":"^6.0.0","@ydbjs/abortable":"^6.0.0"},"engineStrict":true,"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.1.1_1773247562993_0.086788353300427","host":"s3://npm-registry-packages-npm-production"}},"6.2.0":{"name":"@ydbjs/retry","version":"6.2.0","keywords":["database","resilience","retry","typescript","ydb"],"author":{"url":"https://ydb.tech","name":"YDB Team","email":"team@ydb.tech"},"license":"Apache-2.0","_id":"@ydbjs/retry@6.2.0","maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"contributors":[{"name":"Vladislav Polyakov","email":"me@polrk.com"}],"homepage":"https://github.com/ydb-platform/ydb-js-sdk#readme","bugs":{"url":"https://github.com/ydb-platform/ydb-js-sdk/issues"},"dist":{"shasum":"e624cd614fc16a49d8bd15dc87b8de5aea9edb70","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.2.0.tgz","fileCount":23,"integrity":"sha512-RBvrY4tBFgTDLfoOy3Qn5QTiwvhqs0C92T+GpI99SGIXK9sqcUiURyA5RtECUdLsESAnwjOq1feruP4Yoe2TuA==","signatures":[{"sig":"MEUCIQDhjHBbnbQmUQizDaO1cVRZMA43RlS/ESjq2wVbeZviIAIgN2p0JTGWPjoedXHsDF0GKfL50ucdeZezZZBmf+B7kno=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ydbjs%2fretry@6.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":34311},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":">=10","node":">=20.19.0"},"exports":{".":"./dist/index.js","./budget":"./dist/budget.js","./strategy":"./dist/strategy.js"},"gitHead":"31d6f015c988d23efe88c42630b0297398814ad0","scripts":{"attw":"attw --pack --profile esm-only","test":"vitest --run","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:090122a4-0092-4cbc-9af1-78c758e4e296"}},"repository":{"url":"git+https://github.com/ydb-platform/ydb-js-sdk.git","type":"git","directory":"packages/retry"},"_npmVersion":"11.9.0","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"nice-grpc":"^2.1.13","@ydbjs/api":"^6.0.0","@ydbjs/debug":"^6.0.0","@ydbjs/error":"^6.0.0","@ydbjs/abortable":"^6.1.0"},"engineStrict":true,"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/retry_6.2.0_1773687710171_0.6643276422313966","host":"s3://npm-registry-packages-npm-production"}},"6.3.0":{"name":"@ydbjs/retry","version":"6.3.0","description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","keywords":["database","resilience","retry","typescript","ydb"],"homepage":"https://github.com/ydb-platform/ydb-js-sdk#readme","bugs":{"url":"https://github.com/ydb-platform/ydb-js-sdk/issues"},"license":"Apache-2.0","author":{"name":"YDB Team","email":"team@ydb.tech","url":"https://ydb.tech"},"contributors":[{"name":"Vladislav Polyakov","email":"me@polrk.com"}],"repository":{"type":"git","url":"git+https://github.com/ydb-platform/ydb-js-sdk.git","directory":"packages/retry"},"type":"module","sideEffects":false,"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./budget":"./dist/budget.js","./strategy":"./dist/strategy.js"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"scripts":{"clean":"rm -rf dist","build":"tsc","test":"vitest --run","attw":"attw --pack --profile esm-only"},"dependencies":{"@ydbjs/abortable":"^6.1.0","@ydbjs/api":"^6.0.0","@ydbjs/debug":"^6.0.0","@ydbjs/error":"^6.0.0","nice-grpc":"^2.1.13"},"engines":{"node":">=20.19.0","npm":">=10"},"engineStrict":true,"gitHead":"4a4a5c9e50c82488f7702339aae278795f0ce4d4","_id":"@ydbjs/retry@6.3.0","_nodeVersion":"24.15.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-4NyensaFV6E8fyeWrsCv/Q3bkJSifsfJgLY+eU28uQ4P0oS1x4ngO7lFXgCng+bPG+wjsEf2/oiDL8eL24kONQ==","shasum":"7c076ccb59f23f470f67fd338ee8bec18fdbd78e","tarball":"https://registry.npmjs.org/@ydbjs/retry/-/retry-6.3.0.tgz","fileCount":23,"unpackedSize":52104,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ydbjs%2fretry@6.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIHBNSqwE6O7OwhHJDf2QVqOjG5p8eUccgsDqY2qsvX3aAiEA1Ln+282i8Z9anpluaUmUs28IZnmF/mCyuzARXLf4EJU="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:090122a4-0092-4cbc-9af1-78c758e4e296"}},"directories":{},"maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/retry_6.3.0_1779226139708_0.8159980931982318"},"_hasShrinkwrap":false}},"time":{"created":"2025-04-06T21:04:22.192Z","modified":"2026-05-19T21:29:00.176Z","6.0.0-alpha.1":"2025-04-06T21:04:22.441Z","6.0.0-alpha.2":"2025-04-06T21:36:19.478Z","6.0.0-alpha.3":"2025-04-06T22:11:35.659Z","6.0.0-alpha.4":"2025-04-07T05:45:15.984Z","6.0.0-alpha.5":"2025-04-07T13:07:56.734Z","6.0.0-alpha.6":"2025-04-15T08:36:01.876Z","6.0.0-alpha.9":"2025-04-18T20:32:18.296Z","6.0.0-alpha.10":"2025-04-23T20:47:38.391Z","6.0.0-alpha.12":"2025-06-08T11:14:08.504Z","6.0.0-alpha.13":"2025-06-08T12:02:43.277Z","6.0.0-alpha.27":"2025-06-28T19:54:52.482Z","6.0.0-alpha.28":"2025-06-28T20:29:22.024Z","6.0.0-alpha.29":"2025-06-29T13:16:42.087Z","6.0.1-alpha.30":"2025-07-02T07:22:08.753Z","6.0.1-alpha.31":"2025-07-09T09:13:26.720Z","6.0.1-alpha.32":"2025-07-11T09:13:04.265Z","7.0.0-alpha.33":"2025-09-08T13:40:25.689Z","6.0.0":"2025-09-23T11:46:41.929Z","6.0.1":"2025-10-11T09:09:05.101Z","6.0.2":"2025-10-11T09:11:57.492Z","6.0.3":"2025-10-11T09:13:36.845Z","6.0.4":"2025-10-11T18:10:26.753Z","6.0.5":"2025-11-04T21:01:11.057Z","6.1.0":"2026-02-27T14:16:30.266Z","6.1.1":"2026-03-11T16:46:03.122Z","6.2.0":"2026-03-16T19:01:50.349Z","6.3.0":"2026-05-19T21:28:59.902Z"},"bugs":{"url":"https://github.com/ydb-platform/ydb-js-sdk/issues"},"author":{"name":"YDB Team","email":"team@ydb.tech","url":"https://ydb.tech"},"license":"Apache-2.0","homepage":"https://github.com/ydb-platform/ydb-js-sdk#readme","keywords":["database","resilience","retry","typescript","ydb"],"repository":{"type":"git","url":"git+https://github.com/ydb-platform/ydb-js-sdk.git","directory":"packages/retry"},"description":"Flexible, configurable retry logic for YDB operations. Supports custom strategies, budgets, and integration with async workflows.","contributors":[{"name":"Vladislav Polyakov","email":"me@polrk.com"}],"maintainers":[{"name":"ydb-platform","email":"ydb-platform@yandex-team.ru"}],"readme":"# @ydbjs/retry\n\nThe `@ydbjs/retry` package provides utilities for implementing retry logic in your applications. It is designed to work seamlessly with YDB services, allowing you to handle transient errors and ensure reliable operations.\n\n## Features\n\n- Configurable retry policies\n- Support for custom retry strategies\n- Budget management for retry attempts\n- Predicate functions to determine retryability\n- TypeScript support with type definitions\n- Lightweight and easy to integrate\n\n## Installation\n\nTo install the package, use your preferred package manager:\n\n```bash\nnpm install @ydbjs/retry@6.0.0-alpha.2\n```\n\n## Usage\n\n### Basic Example\n\nHere is an example of how to use the `@ydbjs/retry` package to implement retry logic:\n\n```ts\nimport { retry, defaultRetryConfig } from '@ydbjs/retry'\n\nasync function fetchData() {\n  return await retry(defaultRetryConfig, async () => {\n    // Your operation that might fail\n    const response = await fetch('https://example.com/api')\n    if (!response.ok) {\n      throw new Error('Failed to fetch data')\n    }\n    return response.json()\n  })\n}\n\nfetchData()\n  .then((data) => {\n    console.log('Data fetched successfully:', data)\n  })\n  .catch((error) => {\n    console.error('Failed to fetch data:', error)\n  })\n```\n\n### Configuration Options\n\nThe `retry` function accepts the following configuration options:\n\n```ts\nimport type { RetryConfig } from '@ydbjs/retry';\n\nconst options: RetryConfig = {\n    /** Predicate to determine if an error is retryable */\n    retry?: boolean | ((error: RetryContext['error'], idempotent: boolean) => boolean),\n    /** Budget for retry attempts */\n    budget?: number | RetryBudget,\n    /** Strategy to calculate delay */\n    strategy?: number | RetryStrategy,\n    /** Idempotent operation */\n    idempotent?: boolean,\n    /** Hook to be called before retrying */\n    onRetry?: (ctx: RetryContext) => void,\n    /** Optional AbortSignal (from Abortable) */\n    signal?: AbortSignal,\n};\n```\n\n- `retry` (boolean | (error, idempotent) => boolean): Predicate to determine if an error is retryable. Receives both the error and the idempotent flag.\n- `budget` (number | RetryBudget): The budget for retry attempts. Can be a fixed number or a custom function.\n- `strategy` (number | RetryStrategy): Strategy to calculate delay between retries. Can be a fixed number or a custom function.\n- `idempotent` (boolean): Indicates if the operation is idempotent.\n- `onRetry` ((ctx) => void): Hook called before each retry attempt.\n- `signal` (AbortSignal): Optional signal to support cancellation.\n\n## Advanced Usage\n\n### Custom Retry Strategy\n\nYou can define your own retry strategy to control the delay between attempts:\n\n```ts\nimport { retry } from '@ydbjs/retry'\n\nconst customStrategy = (ctx, cfg) => {\n  // Exponential backoff with a cap\n  return Math.min(1000 * 2 ** ctx.attempt, 10000)\n}\n\nawait retry(\n  {\n    strategy: customStrategy,\n    budget: 5,\n    retry: (error) => error instanceof Error,\n  },\n  async () => {\n    // Your operation\n  }\n)\n```\n\n### Dynamic Retry Budget\n\nBudgets can be dynamic, based on error type or context:\n\n```ts\nconst dynamicBudget = (ctx, cfg) => {\n  // Allow more attempts for network errors\n  if (ctx.error && ctx.error.message.includes('network')) {\n    return 10\n  }\n  return 3\n}\n\nawait retry(\n  {\n    budget: dynamicBudget,\n    // ...other config\n  },\n  async () => {\n    /* ... */\n  }\n)\n```\n\n### onRetry Hook\n\nYou can use the `onRetry` hook to log or perform side effects on each retry:\n\n```ts\nawait retry(\n  {\n    onRetry: (ctx) => {\n      console.log(`Retry attempt #${ctx.attempt} after error:`, ctx.error)\n    },\n    // ...other config\n  },\n  async () => {\n    /* ... */\n  }\n)\n```\n\n### Combining Strategies\n\nYou can compose multiple strategies for more advanced control:\n\n```ts\nimport { strategies, retry } from '@ydbjs/retry'\n\nconst combined = strategies.compose(strategies.exponential(500), strategies.jitter(100))\n\nawait retry(\n  {\n    strategy: combined,\n    budget: 5,\n  },\n  async () => {\n    /* ... */\n  }\n)\n```\n\n### Using AbortSignal in Retry Callback\n\nYou can use the `AbortSignal` provided to the retried function to support cancellation with custom clients (for example, a YDB driver from the core package):\n\n```ts\nimport { retry } from '@ydbjs/retry'\nimport { Driver } from '@ydbjs/core'\n\nconst driver = new Driver('grpc://localhost:2135?database=/local')\n\nawait retry(\n  {\n    budget: 5,\n  },\n  async (signal) => {\n    // Pass the signal to a method that supports AbortSignal, e.g., driver.ready\n    await driver.ready(signal)\n    // Or, if using a generated client:\n    // const client = driver.createClient(SomeServiceDefinition);\n    // return await client.someMethod(request, { signal });\n  }\n)\n```\n\n## Observability via `node:diagnostics_channel`\n\n`@ydbjs/retry` publishes events to [`node:diagnostics_channel`](https://nodejs.org/api/diagnostics_channel.html) so external subscribers (`@ydbjs/telemetry`, OpenTelemetry, custom loggers) can build traces and metrics for retry behaviour without the caller knowing anything about them.\n\nEvery code path that uses `retry()` — driver discovery, query execution, transactions, auth token refresh — inherits these channels automatically.\n\n### Channels\n\n| Channel                       | Type    | Payload                                                                                                                                                                                         |\n| ----------------------------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `tracing:ydb:retry.run`       | tracing | `{ idempotent: boolean, outcome?: RetryOutcome }` — whole retry loop. `outcome` is set on the ctx before resolve / throw.                                                                       |\n| `tracing:ydb:retry.attempt`   | tracing | `{ attempt: number, idempotent: boolean, backoffMs: number }` — a single attempt (including the first); `backoffMs` is the wait actually observed before this attempt (`0` for `attempt === 1`) |\n| `ydb:retry.attempt.completed` | publish | `{ attempt: number, idempotent: boolean, outcome: RetryOutcome }` — emitted once per attempt with its outcome                                                                                   |\n| `ydb:retry.exhausted`         | publish | `{ attempts: number, totalDuration: number, lastError: unknown }` — ms. See below.                                                                                                              |\n\n```ts\ntype RetryOutcome = 'success' | 'retried' | 'non_retryable' | 'exhausted'\n```\n\n`retry.attempt` is published once per attempt starting from `attempt: 1`. Because `tracingChannel.tracePromise` wraps every attempt, `tracing:ydb:retry.attempt.error` fires for **every** failed attempt — both the ones that will be retried and the final one that exits the loop. The final attempt's failure additionally surfaces on `tracing:ydb:retry.run.error`.\n\n`ydb:retry.attempt.completed` is the metrics-friendly companion: it fires exactly once per attempt regardless of success or failure, with an `outcome` tag suited for a `Counter`. Use it instead of subscribing to both `attempt.asyncEnd` and `attempt.error` when all you want is a count.\n\n`ydb:retry.exhausted` fires when the retry policy itself gives up — either the budget ran out or the predicate returned `false`. It does **not** fire when the loop exits via `AbortError` or `TimeoutError`: those are rethrown immediately as caller-driven cancellations. Subscribers tracking \"retry budget exhausted\" should not expect this event for cancellations or timeouts; use `tracing:ydb:retry.run.error` for the broader \"retry loop failed\" signal.\n\nFor end-to-end retry duration with outcome dimensions, read `outcome` off the `retry.run` ctx on `asyncEnd` / `error`:\n\n```ts\ntracingChannel('tracing:ydb:retry.run').subscribe({\n  asyncEnd(ctx) {\n    histogram.record(elapsed, { outcome: ctx.outcome })\n  },\n  error(ctx) {\n    histogram.record(elapsed, { outcome: ctx.outcome })\n  },\n})\n```\n\n### Subscribing\n\n```ts\nimport { channel, tracingChannel } from 'node:diagnostics_channel'\n\ntracingChannel('tracing:ydb:retry.run').subscribe({\n  start(ctx) {\n    // ctx.idempotent\n  },\n  asyncEnd() {\n    /* success */\n  },\n  error(ctx) {\n    /* ctx.error is the final failure */\n  },\n})\n\nchannel('ydb:retry.exhausted').subscribe((msg) => {\n  alert.budgetExhausted.add(1, { attempts: msg.attempts })\n})\n```\n\n### ⚠️ Subscribers must be safe\n\n**`node:diagnostics_channel` invokes subscribers synchronously.** Any exception thrown inside a subscriber propagates up the call stack and **will** disrupt the SDK — a buggy retry subscriber can break the very operation it observes. `@ydbjs/retry` does **not** wrap subscribers; wrap them yourself:\n\n```ts\ntracingChannel('tracing:ydb:retry.attempt').subscribe({\n  start(ctx) {\n    try {\n      span.startChild({ name: 'retry.attempt', attributes: { attempt: ctx.attempt } })\n    } catch (err) {\n      console.error('telemetry subscriber failed', err)\n    }\n  },\n})\n```\n\n### Stability\n\nChannel names and payload field names follow semantic versioning. Adding new optional fields is a minor change; renaming or removing fields is a major change. Treat the channel surface as a public API.\n\n## Development\n\nTo build the package:\n\n```bash\nnpm run build\n```\n\nTo run tests:\n\n```bash\nnpm test\n```\n\n## License\n\nThis project is licensed under the [Apache 2.0 License](../../LICENSE).\n\n## Links\n\n- [YDB Documentation](https://ydb.tech)\n- [GitHub Repository](https://github.com/ydb-platform/ydb-js-sdk)\n- [Issues](https://github.com/ydb-platform/ydb-js-sdk/issues)\n","readmeFilename":"README.md"}