{"_id":"@marianmeres/steve","_rev":"39-7cd88aa189167460528a67c25c032ff2","name":"@marianmeres/steve","dist-tags":{"latest":"3.0.0"},"versions":{"1.0.1":{"name":"@marianmeres/steve","version":"1.0.1","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.0.1","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"eaf09a6514001c96dce62db91ed9142f4fc4c85b","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.0.1.tgz","fileCount":31,"integrity":"sha512-k3XXZAczViB4+6NnrYbYL+GTAzKTCwXCSxoqN64AQkPBWI86oD5Z9Sh30GdCq2yX+s8l3O9PX+H+6PbhynvZVQ==","signatures":[{"sig":"MEQCIHDXCgB0nF1fhf5TYL8FdC3moNGX/EslqQyg1OZWV/OOAiA5YA9ELNQTSU3/mlh6KJkREF7E6yXT8sApyORj7rE6Og==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31959},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"6aaa1721de372633e229a2626d99b23baca97ac3","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.0.0","@marianmeres/parse-boolean":"^1.1.7"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.0.1_1751222160725_0.09193489034038116","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@marianmeres/steve","version":"1.0.2","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.0.2","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"57519d0942c5aec15320db94838701142468017c","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.0.2.tgz","fileCount":31,"integrity":"sha512-itofsczHeVRmCr4KsTNbq4owNPv4trZK8yRiwaIW6uEW7d2pmAD4mf2D9CoO0gUq4D8VfIxDmSyeEQ5ieFuATQ==","signatures":[{"sig":"MEUCIEebiZl0lHGlmS4LAvIocQp1OrAHWvCovsDKNERRmHsJAiEAlpJqa5Vw3DDmOyfxGkv3wxhib5gJtt1oz/3Wk4Vk4K4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33349},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"7bd8eaa3e4420b0c66389d24816d86dd8badbe0c","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.0.0","@marianmeres/parse-boolean":"^1.1.7"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.0.2_1751224553700_0.0697568968820681","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@marianmeres/steve","version":"1.0.3","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.0.3","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"7f97e3d672dcda2c4ecc4b0344c682aa78f7bfab","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.0.3.tgz","fileCount":31,"integrity":"sha512-PSvITQ5/iHZK6VPYEbr9tmirRbukV0op4RfU/hurtwYPzgdr6CnroBg4bd4ekNkbG2z6rlK1InIMEIgB87T2XA==","signatures":[{"sig":"MEQCIDMFkYEm6vNaPLlra+yddAdcZU5vPKKnFx2geJIjJKORAiB4xNtz4lzHExvEqsV7mBmuMC+iSHV2KqDytgh2UT6Vqg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33470},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"e7a7d4776f2003e7aaac8a9c797ed97494b8efa5","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.0.0","@marianmeres/parse-boolean":"^1.1.7"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.0.3_1751225194643_0.6875187984770337","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@marianmeres/steve","version":"1.0.4","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.0.4","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"d9d59c1370a915a6c43e917da11500c21db2d8d7","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.0.4.tgz","fileCount":31,"integrity":"sha512-yCkMOFY8xigoEdlMTDMZB9Kc7cnKLl46XgzRz2GIh5sr1RedJYzwS57bwa5FfvptjCHch2A0GmSUgNSZmHQZaw==","signatures":[{"sig":"MEYCIQC6Lb23gz7M9iZrNXvZCOwS/UZbjBeqvkBK3iJo3HFviwIhAM3EL+wVfUyxSY8SVi8NYX55GllP69gu8NiGskF5HyY9","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33175},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"13464739fda3caf0883ce81df56b1dba49064d8d","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.0.0","@marianmeres/parse-boolean":"^1.1.7"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.0.4_1751226427442_0.5458286433687605","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"@marianmeres/steve","version":"1.0.6","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.0.6","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"4e8adecd10cd8d3e8871771516262305b3fbfd6f","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.0.6.tgz","fileCount":31,"integrity":"sha512-kYvgn7YKt7Hl4qJW9mPc1zNzxZhSbLoNGX/nCn/JTNjHETO7WLuIZXXEVFvB446zcLJsfR87/DcqXW7DR3/YZQ==","signatures":[{"sig":"MEUCIQD8UbjjejJp77pFJvviabG/vZ8eoYpzVBIB5qJfBBBC1QIgZvZ1vRSodPcjOTCwhqiJ2gOcXzbg5fLYSlR5Bfmnfz0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":35220},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"7d3d1d430904c67c2ea3c4b972f7238ac5052bef","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.0.0","@marianmeres/parse-boolean":"^1.1.7"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.0.6_1751359387681_0.7831498317770271","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@marianmeres/steve","version":"1.1.0","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.1.0","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"effb390a7956264ad7b292be5062f76cea3bacba","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.1.0.tgz","fileCount":33,"integrity":"sha512-nxJrxatY4o67xTGqqCgcloq71WSdUSbUZVwkKh7uHdVV5pCmIgmn1vPN1zGD9rYl6crN4gf/ifFGwR+6e7Y8eQ==","signatures":[{"sig":"MEUCIAaU4hkiUd5BSqZQ5WJYB8EOlopzEKGItGICAGEkG82nAiEA2sPB5Z7lm2aZjp0GlwXe2cFCo/R2OBIQqSfUbifUcI8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37982},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"734d81e8e2a74461df71f61ef853df4956b32e8a","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.0.0","@marianmeres/parse-boolean":"^1.1.7"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.1.0_1751381863606_0.44746419322423314","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@marianmeres/steve","version":"1.2.0","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.2.0","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"661e584db98860738a0cd68cd6c1bd38489c5e0a","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.2.0.tgz","fileCount":33,"integrity":"sha512-h+TAB52rmo//rH2xrVONX+4KYfD+HfBTIYKYotjbCWmelkb6r6MM1Ugd7LfJFRT2odJ+50NHWaXSsYXK1XY8jA==","signatures":[{"sig":"MEUCIDyQPFv94fI8yPNbYU0PEkuUCetW1dSNzOikdvUMF85/AiEAt0iQ4qBQYazOr9jYxzJh0ElWtltkYNIi0wd2iEw4mAI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":40260},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"d9e6f881940813fc5af57c49462f51e8681c94f1","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.0.0","@marianmeres/parse-boolean":"^1.1.7"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.2.0_1751459979725_0.37805779880279133","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@marianmeres/steve","version":"1.3.0","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.3.0","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"23dca08b19b4726f3cdc257b170c098415d285ef","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.3.0.tgz","fileCount":33,"integrity":"sha512-v2IUEi9GiQcb5OwLhoNq/g05ZrY/gusi3ehKDbay+QSAN+n9Lohhjp2Uqz8VdC6z67EB7yZgpWi6HA/lK/5vVQ==","signatures":[{"sig":"MEYCIQCloP4sj08xSTgQUWNtPwtdN0BuF7+hJ0gdUP9ibwgFMwIhAIDZvzJMTem5Www0bQzC49ooggWYOxdgWK75qPVnTOac","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39840},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"7471fd2d59460edec5f16b97e70bf23a35b4495b","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.0.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.1.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.3.0_1751535071187_0.014920822600367423","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@marianmeres/steve","version":"1.3.1","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.3.1","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"f763aa22b6d0db7c0a81520aadf4f2a46716db19","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.3.1.tgz","fileCount":33,"integrity":"sha512-OUpoNOEQTFdr4ZqFB/yIDFmmagPRB7ru9Z1UXw8BOVIlA1UUAZrefb+5UauheWmNvxLgbJcwcIs6ZrzWrCnr6Q==","signatures":[{"sig":"MEUCIEB3o0WQ0ssJ4Au6UaFuWSuHkvKVWy8Yl8SqpHUN5XvHAiEAiHwDbFXL7OwkTTRRtiLMJtiGHvb11Il7gChA4Lq3lDU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39848},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"3bc18b37413b3b89e26395e24e1c7318eb987611","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.1.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.2.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.3.1_1751537096167_0.01424358724584307","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"@marianmeres/steve","version":"1.3.2","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.3.2","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"81cb8d2f67fbc70ff05222b6b741a416214d248c","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.3.2.tgz","fileCount":33,"integrity":"sha512-YWvtSHknR64ioV3djPel3j5vHijHtsYw2H+Fcn4x9yPeRNqLPt3lqfCvbVcANJFej/b9EvizXx1FtVIhlUyKZA==","signatures":[{"sig":"MEYCIQC32PqLXHFqRdg6F9SZZWOq+u6p8yMeCXJwRlTBV2hCUQIhANDflk4fJD5lUWd+dGFx6NmLC8sCqdmDxW4y5NhHOCI1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39848},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"3a32db9d46e908d2b316dfc00fa48f50f2aef580","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.1.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.2.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.3.2_1751545983767_0.7933235212005718","host":"s3://npm-registry-packages-npm-production"}},"1.3.3":{"name":"@marianmeres/steve","version":"1.3.3","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.3.3","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"46a2b5d64d2c9fe1a56530c160d2075b7bc9b1ad","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.3.3.tgz","fileCount":33,"integrity":"sha512-gEC3FLbFVuse0rs8vWizz/4Fz1T2GYIbqONWOg2Xln5tS1Of+6FYfa8PK2Ktmfl9sNNelmkQZxZHcdv/drpQ2w==","signatures":[{"sig":"MEUCIHKYKVV2LoDFITV4/Q50hdEkSIikxThp3c6FLOvXo1FKAiEA6fmnDnjXM5KtzwjUS1U50xF8+1mlEZQIxNFYYrUXSto=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39848},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"32813d063f8058037ba2aed89261ac29ac797366","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.1.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.3.3_1751552768336_0.9896103860152821","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@marianmeres/steve","version":"1.4.0","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.4.0","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"b53cd2a73221c7328ad4a932d449fc4a22d1f815","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.4.0.tgz","fileCount":35,"integrity":"sha512-SPl40ufbYUGhoDwoI3txvvi9DnTPYEcGJLxsSBG6GNLcolKfsG6jX0X6sZLf1aWqII6NHzeYmaYyvtHj5j/6Ig==","signatures":[{"sig":"MEYCIQDzOg+/cqz8gzTw0iF01tKAxrvLUXFbbCGb4NQI2D/Z6QIhAO1TZZeY51L1dlUaRTzKnywSW3BHWiri16lYEGkvyvwx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41918},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"a784e76bf98ab8e845f6df82b6fdb6c8d0fdedee","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.1.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.4.0_1751557089525_0.6899833526605095","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"@marianmeres/steve","version":"1.4.1","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.4.1","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"972e6fe8a123a5d1883b61795896fc9f100292a5","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.4.1.tgz","fileCount":35,"integrity":"sha512-OyqlIIkmtbaR+Czv/QkRdYF8FxZrG0cikDMp0vh0jG+t0vjWP89ZUHFa4Q/Fc/pdnPnjeMM5zPMdasBc5STX/Q==","signatures":[{"sig":"MEYCIQCjdP93DjY2KsjWgDtKPUdzJLZn6qr0XSfg8Jvp8V0ijAIhAO4t2CEee75pN7plToLLAy8aJF+6TV1Q8tcgjmE8ve2W","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41924},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"2baadb686f8eaa4a2413c3739816b49547f1baae","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.1.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.4.1_1751626989927_0.8585978297595829","host":"s3://npm-registry-packages-npm-production"}},"1.4.2":{"name":"@marianmeres/steve","version":"1.4.2","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.4.2","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"f35f48b1a01d63577ce2111a0689f3f162d0fb24","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.4.2.tgz","fileCount":35,"integrity":"sha512-c6PYlpFehNpYVUAqVNTqXCqQl7AuCZV8kcpQObRDQz3pKGSz1wE3MUX4HOwt/mqZsjg81A7LRAvV7ynHYixzBw==","signatures":[{"sig":"MEUCIDQuYLFskKYf9NdOPDNmBm2w+/GkHIGlngyINwdW01HaAiEA1+ie/zn4SEs5o4/9zRe2mBPD7zGbRh1tVkvkrEASeLw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41954},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"998a30536922a6bc0f6708088a253a0f49b2de90","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.1.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.4.2_1751627316560_0.6029554058031381","host":"s3://npm-registry-packages-npm-production"}},"1.4.3":{"name":"@marianmeres/steve","version":"1.4.3","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.4.3","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"163cce23f7f70337bce70b27a387fc9b920b33d5","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.4.3.tgz","fileCount":35,"integrity":"sha512-e629fyvf3md7qsatdzpi+HcUYthHadhPSBJ6xl7AMYmYMBpsCqquhUXc7vGiTKCTkKOMTKGRqDUzJWbMKsaDRQ==","signatures":[{"sig":"MEYCIQDbk+dTn6vLxcnq+PGtVV68qCpNpUt3u/L6Jx3iTShzJAIhAJ+V+GD+z9RwRgg+6uvnrG+YzG/6wImtclDF881acla0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42013},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"f568fa3a7cd1bc2c4d010231abbeb227d41c85df","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.1.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.4.3_1751627694985_0.27783795998778005","host":"s3://npm-registry-packages-npm-production"}},"1.4.4":{"name":"@marianmeres/steve","version":"1.4.4","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.4.4","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"7d1301d98ec817f1799516cad4a456cacb52d6c6","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.4.4.tgz","fileCount":35,"integrity":"sha512-8GjTHld7R5tFXoftjFdNRBICZgsJJdJg6Uzqu98puBv0JOKRFq+DCzbEk7Cdm28GSU3Unj8YATlYjeysQDcgyg==","signatures":[{"sig":"MEYCIQDVScVBjIqL0Fpsgfs/aZtykOHhwBjTsw9widEUAo8n8QIhAICO+8hhf0vv9dQEpt6E2GE4rhDYSrgSHASI20/NvGOv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42534},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"5edb04423e8bef49c4dd776ec05c4d6d13508051","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.1.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.4.4_1751630561485_0.4510477247035549","host":"s3://npm-registry-packages-npm-production"}},"1.4.5":{"name":"@marianmeres/steve","version":"1.4.5","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.4.5","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"6c03915e004a960da717e9c804dd7d7d098c8e17","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.4.5.tgz","fileCount":35,"integrity":"sha512-ySCN2j6NSYgGpBdduWPT5q5tA5YboFnLB9b+wUhUbNZF28BUsNSBwrP2Eoft77E6NaJThoAsj1v0CqpfKFuKeQ==","signatures":[{"sig":"MEQCIAbMEX5JgmGohVWPJL3iJETdy9HDqWyrHS4BMvSBNg7UAiAw00+t14I7SFpz9EKBea7rb385dk86B+JaHicQOMw5sw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42413},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"755fe4ae94abf2649a101e6da88847cda9f6a27b","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.1.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.4.5_1751631300653_0.4749252692864314","host":"s3://npm-registry-packages-npm-production"}},"1.4.6":{"name":"@marianmeres/steve","version":"1.4.6","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.4.6","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"9d0e0ebaebe71dff30571917f71d136006c57007","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.4.6.tgz","fileCount":35,"integrity":"sha512-dNLxyQNtJTEMivvQWw8+HewpO96Kee/Ir803+EKPUKbq/Z6wvENkoal0dgsToi6aBjGBxQRJviAKl1KpPyWpkg==","signatures":[{"sig":"MEUCIQCdnbBRY9FhlDYGolr8NfmA1kTI6DV5kcVNcyJcYBrz6gIgVl0qZ/Zoc6ye40bACJecziEPVhjU5SIBLovrkSdJrrA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42393},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"8ee3ac5f9c15a1d9a1cf93159e800fe9aa26904e","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.1.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.4.6_1751871409865_0.5351243737302689","host":"s3://npm-registry-packages-npm-production"}},"1.4.7":{"name":"@marianmeres/steve","version":"1.4.7","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.4.7","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"b98ea281e208bb4671533b2074c3a813fc128e68","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.4.7.tgz","fileCount":35,"integrity":"sha512-hxEDbsCF8CIYBXglno1kAXc5CxCncTIiUMrd2Ziaq8QSWKMwuT9OA5uklC1GBfAOX5E9W2+/8mow6Ca/+ZbxJA==","signatures":[{"sig":"MEQCIBPiPgXbZfY5WNRiGZNAHwvYUYad/Ld20AYNXYItroRNAiBX5PR0brJaKh4+CDDuM2JDW9DM8OFVgU2n+wDykwpS7w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42354},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"92bffdab1fa2c9166c4f4d5174f03048e61602be","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.1.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.4.7_1752041056646_0.05266264835933243","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@marianmeres/steve","version":"1.5.0","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.5.0","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"e0fe73fb5802ae773c6cd3d44826fc897a28fe7b","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.5.0.tgz","fileCount":35,"integrity":"sha512-4Uw3vrU1u/LeQ/H/zyrA0XI+zKlIc0ck0nmgUOrKASKCuypvYg390PBVRWH+dWqjSG4LiZcwo3M5QhZ3jWvexw==","signatures":[{"sig":"MEQCIFkrQJjRPofUOP90eHAh8Jw+psYa5okpGC0nthGo7mYfAiB0DKXKj9VaofonN13ReXbgnAybW10iwPHlL6OoVfC20w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42356},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"758d0acf70b9def250b943fd8b71b845ebe2983f","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.3.0","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.2.0","dependencies":{"@types/pg":"latest","@types/node":"latest","@marianmeres/pubsub":"^2.1.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.5.0_1752079222082_0.3876066145371737","host":"s3://npm-registry-packages-npm-production"}},"1.5.2":{"name":"@marianmeres/steve","version":"1.5.2","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.5.2","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"73d3e5fd3d31a48dc5cf2ca27d4c06d60b394dae","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.5.2.tgz","fileCount":33,"integrity":"sha512-oEcxy+QqWZS2mL/KE2oz8rDGSNb33LfbW93LVCANQGJj++ORzQTwXL1eEM8egW6S5axCjK6lxHMNmMV9AJ12qQ==","signatures":[{"sig":"MEUCIAH4+jlrx/XkfedpIZtYwOHMwu79/+vWEq+oXiRZOwB/AiEAowxG+RoMphz0R+7yLIrzJBqbm62PYeTPcwtuFxokrE8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":40828},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"a5fae8dbaa48862c8ac7d9c5ead5ac131fd2fede","_npmUser":{"name":"marianmeres","actor":{"name":"marianmeres","type":"user","email":"marian@meres.sk"},"email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.4.2","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@marianmeres/clog":"^2.3.2","@marianmeres/pubsub":"^2.1.1","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"latest","@types/node":"latest"},"_npmOperationalInternal":{"tmp":"tmp/steve_1.5.2_1752094035847_0.5412866308455664","host":"s3://npm-registry-packages-npm-production"}},"1.5.3":{"name":"@marianmeres/steve","version":"1.5.3","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.5.3","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"640ca0b0a2378a35d30bd199dcecffdb6e539d73","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.5.3.tgz","fileCount":33,"integrity":"sha512-pyMxY2ofAZwOeR4KLaBNaxktTfFu1wf1javHAkVUjETjYysYaqf0kmtJ6RurrcHs7zt499IlOl4UHW+VCJQFhA==","signatures":[{"sig":"MEQCIDA2L3K7M4UPiwfcGsuKUViTdYTgUIybZQOkj9QofktcAiBQc4n5PGmtVDTXTT3+rlifXyKMVCiLhh0dJhpOYbWJYg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41057},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"eb3640149ffe200a73a7ceda152502397fa8af30","_npmUser":{"name":"marianmeres","email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.5.1","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.5.0","dependencies":{"@marianmeres/clog":"^2.3.3","@marianmeres/pubsub":"^2.1.1","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"latest","@types/node":"latest"},"_npmOperationalInternal":{"tmp":"tmp/steve_1.5.3_1757514956346_0.8768147869820024","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@marianmeres/steve","version":"1.6.0","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.6.0","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"36ed4d51315f97de8f5a1422202ecc61245780ea","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.6.0.tgz","fileCount":33,"integrity":"sha512-kQpgOaUsLoW5gEAmDPAnMxOcudo8vn4bbrWUDAcc/L37KQeO9d5wR3Bv8psoAL/wpWTk2rXiVM5NOBw7dedi5A==","signatures":[{"sig":"MEQCICJm0MZAPvwCgQKVDyjlX66aDga3d2Y+P5MO9if0kbnXAiBJt2S/WxKkgCqlBl8yPagWtkYJ04MX/EPhnW5pZsNIBw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41296},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"4bf988034f699856605c4dde7478d6516d03980c","_npmUser":{"name":"marianmeres","email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.5.1","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.5.0","dependencies":{"@marianmeres/clog":"^2.3.3","@marianmeres/pubsub":"^2.2.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"latest","@types/node":"latest"},"_npmOperationalInternal":{"tmp":"tmp/steve_1.6.0_1757668313117_0.4802971686095081","host":"s3://npm-registry-packages-npm-production"}},"1.6.1":{"name":"@marianmeres/steve","version":"1.6.1","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.6.1","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"9c6d089229f9d26c54eda5ecb0b66ea4d656718e","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.6.1.tgz","fileCount":33,"integrity":"sha512-6/VrsTZWr9ka1RwRu7YT+pXpSAC6qrEnV+ztWEa37WDUjFIBMs4FlDU8X0aT6E16JnMU+1aRfXcfRMswT5GsNA==","signatures":[{"sig":"MEYCIQC5rpPGA7ott0XZyRTNdwAnxY2MYcqlxfucC8Wileo/XQIhAIclgBHgJBua7b0bveg1LwRDnZppC68ngoyEphNTMugD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42558},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"d70c3f955cc9d5c6356f5bf00bad233381c0f1f9","_npmUser":{"name":"marianmeres","email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.5.1","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.5.0","dependencies":{"@marianmeres/clog":"^2.3.3","@marianmeres/pubsub":"^2.2.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"latest","@types/node":"latest"},"_npmOperationalInternal":{"tmp":"tmp/steve_1.6.1_1757686822549_0.4748359005974778","host":"s3://npm-registry-packages-npm-production"}},"1.6.2":{"name":"@marianmeres/steve","version":"1.6.2","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.6.2","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"7244c4f7621ab08abea55052f65d6bacf0aa9b9f","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.6.2.tgz","fileCount":33,"integrity":"sha512-iTO8EtbiQDYjdTStmlXXKjuljhx/719PktFiY7lmaedeEHYtu3yI089iR+cnJP9LIu7QQ8bNJXyejjpPyUivkQ==","signatures":[{"sig":"MEYCIQCC0x57VI5c4QKcNynbGbIbQn8Okvkl5tzNgT5da/6hcQIhAJF/K0RMeuMVZD9IJXyzS3MA/JdHnFIuu3LOwfFwm59Q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":43722},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"72ec11f7a99cc091f9a64fd7028721cc8cd54e52","_npmUser":{"name":"marianmeres","email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.5.1","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.5.0","dependencies":{"@marianmeres/clog":"^2.3.3","@marianmeres/pubsub":"^2.2.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"latest","@types/node":"latest"},"_npmOperationalInternal":{"tmp":"tmp/steve_1.6.2_1757688024242_0.4172636489740873","host":"s3://npm-registry-packages-npm-production"}},"1.6.3":{"name":"@marianmeres/steve","version":"1.6.3","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.6.3","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"127f0b734bca3d2d06f0ab92c994ed5137d13b53","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.6.3.tgz","fileCount":33,"integrity":"sha512-WjgWvlpK0lQy/HwjesuLgp28xwVnVgNpP5Ga47NscKW+C64wjJVtH9iNI5VROt1nkpP/JY1raxIh1yPqrj5L/g==","signatures":[{"sig":"MEUCIFHJtKUt53b/eBNoDSo1z/RHOfKyG523tcqAr+Y279IQAiEAnWo94ek6kFSrSYz73J1OzgIKns/3ue2K7DsvanuzKWo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":43730},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"051db85fbe9def53b4c4d2067026b7fef5716331","_npmUser":{"name":"marianmeres","email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.5.1","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.5.0","dependencies":{"@marianmeres/clog":"^2.3.3","@marianmeres/pubsub":"^2.2.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"latest","@types/node":"latest"},"_npmOperationalInternal":{"tmp":"tmp/steve_1.6.3_1757688560661_0.008152967957475887","host":"s3://npm-registry-packages-npm-production"}},"1.6.4":{"name":"@marianmeres/steve","version":"1.6.4","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.6.4","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"46436356f8b96113bf1c3c116c21923460f22ca6","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.6.4.tgz","fileCount":33,"integrity":"sha512-kKBx8MHQ4OhjjNo5twwhL3Tad2ueBiUaYtYYtMDMwimPYyGf28+NrqcQFpvdgUddLIa25yHPIiyRHcrJrEREJw==","signatures":[{"sig":"MEYCIQDFQMAuAZhP1CTYjUZPSSxYQ7oXMPErjf8/2Kg7doNmUQIhAPzt82Wnu8EYKygupDcpd7GRw3Oq5Y7kxyWlUt7eKuor","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":43710},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"03f5bf194a65ea6cb6b9640276eca14d840b3c51","_npmUser":{"name":"marianmeres","email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.5.1","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.5.0","dependencies":{"@marianmeres/clog":"^2.3.3","@marianmeres/pubsub":"^2.2.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"latest","@types/node":"latest"},"_npmOperationalInternal":{"tmp":"tmp/steve_1.6.4_1757689234394_0.894312893290008","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"@marianmeres/steve","version":"1.7.0","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.7.0","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"cd762463fc67a4a2b59d4344e95f4c12afc330a6","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.7.0.tgz","fileCount":33,"integrity":"sha512-Hz/ofAtfiJhhYmz4lPXzY7QLw7kfzmO45VTUhoZ4glqTnQCR/lrDHWm2AvsIEXHGRgFKegMl3pzWNMoKqi+uUg==","signatures":[{"sig":"MEQCIH3/Xzdxuhv+j60kvJGb0GWtE0G62Z/Wh9ATmnRDkiDhAiB+AaU1BKA0INl+TGebM99zYdZR1oWmUWx5XhUsY4Suow==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":44128},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"8224fe8f6e98bcc98e31752382daa30add9ce353","_npmUser":{"name":"marianmeres","email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.5.1","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.5.0","dependencies":{"@marianmeres/clog":"^2.3.3","@marianmeres/pubsub":"^2.2.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"latest","@types/node":"latest"},"_npmOperationalInternal":{"tmp":"tmp/steve_1.7.0_1757697671292_0.9737155722206658","host":"s3://npm-registry-packages-npm-production"}},"1.8.0":{"name":"@marianmeres/steve","version":"1.8.0","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.8.0","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"c68d3a075668496730a1f9410b74d14b5151d87b","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.8.0.tgz","fileCount":33,"integrity":"sha512-Ulkfh7ifEJYorHKSi1JpcbqZ0OqUpS3P7A1Ct5BeRdrNTNBjUfGDlg/+A8gCJBgfJeMoGpDZ3a1cSJ+TUL/wyQ==","signatures":[{"sig":"MEQCIFsJv0dR4+Gu6hNB7t34ueZ6fmX65RITuQvFeuih5tpJAiBBVMk2hGWXOsNcsi71aTiR4RU7KQIDaCq/tcBAJVRBiA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":45726},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"ed6320482bee620f442323d6815ba3b304994b56","_npmUser":{"name":"marianmeres","email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.5.1","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"24.5.0","dependencies":{"@marianmeres/clog":"^2.3.3","@marianmeres/pubsub":"^2.2.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"latest","@types/node":"latest"},"_npmOperationalInternal":{"tmp":"tmp/steve_1.8.0_1757883549735_0.022734062285406864","host":"s3://npm-registry-packages-npm-production"}},"1.9.0":{"name":"@marianmeres/steve","version":"1.9.0","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.9.0","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"f4ab25db3e4a6dece803cbc05d9ab033bdf2d243","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.9.0.tgz","fileCount":37,"integrity":"sha512-qQMsCi5dn8mZ9yD4hS2albeLsWYe0Ze/45ZwP/3afDO0GsYezn5QW/nG2b++nIqxwO8LPU2vOJw9ro56lPnSig==","signatures":[{"sig":"MEUCIFj+Wp8pDNmjZmRYgoD5d+gYRq4K5F5lgNKhk3EjU4B3AiEA7/keywKDvu1Hf83jnMn8s/mChaGneVNQ74qO+ts9v0U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":55101},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"3e20651374e524215b3441c4ad9ac2c3841d49cd","_npmUser":{"name":"marianmeres","email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.6.2","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"@marianmeres/clog":"^2.3.3","@marianmeres/pubsub":"^2.4.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"latest","@types/node":"latest"},"_npmOperationalInternal":{"tmp":"tmp/steve_1.9.0_1764309807785_0.7188592066969639","host":"s3://npm-registry-packages-npm-production"}},"1.9.1":{"name":"@marianmeres/steve","version":"1.9.1","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.9.1","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"e617a339fecbf1354dc5d92a8951f8d59022ed66","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.9.1.tgz","fileCount":37,"integrity":"sha512-ZUMeFIM09Rg7D7qygSkniLi+wZAxN3pyH2t5zTUc9QnbeGfVozoPuR0Qt6Q/zJT5FQ24iR0E2Mmm+MWIGSD0eQ==","signatures":[{"sig":"MEUCICz9zOGfLpgdZCn8yL/yx2AEtX4Tu88TnjD4z+BnrRYbAiEA4t9KgZirTMrYZ0fuXtQA9MBmVb6JJi+PE3LFQC+aUvQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":55101},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"88855b7a53b747f3ecdb6963c8aac72025ba5c95","_npmUser":{"name":"marianmeres","email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.6.2","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"@marianmeres/clog":"^2.3.3","@marianmeres/pubsub":"^2.4.0","@marianmeres/parse-boolean":"^1.1.7","@marianmeres/data-to-sql-params":"^1.4.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"latest","@types/node":"latest"},"_npmOperationalInternal":{"tmp":"tmp/steve_1.9.1_1764309872569_0.7070116127773001","host":"s3://npm-registry-packages-npm-production"}},"1.9.3":{"name":"@marianmeres/steve","version":"1.9.3","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.9.3","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"75013df955284dada18573aac76b0ff794180149","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.9.3.tgz","fileCount":37,"integrity":"sha512-+J75FG4HrBX4/C897DQxSYcuFvuSX0ox4d4nAajKzP1Ce+3AXa4YZG+NdCVQUNtc5njMsqvITXRSTr9/X99R7g==","signatures":[{"sig":"MEQCIBuo5bTboj55tJQDFzB1OldsSZxm1Rcl7uVqtASL7RQ0AiB8z3ksw9ArfXRcKLHwVW3oACvMNS8vkVpqA0yn6u1V6A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":55291},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","gitHead":"c9b8481f1f8a40c2bb029c419fda19788264ce45","_npmUser":{"name":"marianmeres","email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.6.2","description":"PostgreSQL based jobs processing manager.","directories":{},"_nodeVersion":"25.2.1","dependencies":{"@marianmeres/clog":"^3.2.1","@marianmeres/pubsub":"^2.4.1","@marianmeres/parse-boolean":"^2.0.1","@marianmeres/data-to-sql-params":"^1.5.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"latest","@types/node":"latest"},"_npmOperationalInternal":{"tmp":"tmp/steve_1.9.3_1764495873124_0.3891432505413799","host":"s3://npm-registry-packages-npm-production"}},"1.9.5":{"name":"@marianmeres/steve","version":"1.9.5","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.9.5","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"75c2a9b5d580dc46bfa5f9971abd65c6be8b1f46","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.9.5.tgz","fileCount":39,"integrity":"sha512-IRVYwAm+zn5S1LL8QR5PLWT6Uvo+Mu+rnRQyEKyHBQK/Sq2mG2/MhDk/IX0KbEjyTC7eSK0qBI4/n7q4zkgc1A==","signatures":[{"sig":"MEQCIG48kRrQsG+nPtt1jch+9cChOiPlCIQrLHr/mpMNFMrXAiAx+ItzFkawjJfN2xHbgwXm3p6Ekkfo7w5Pe4GV67UrpQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100032},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","exports":{".":{"types":"./dist/mod.d.ts","import":"./dist/mod.js"}},"gitHead":"58e18a5df5c5bdb91742aa10f5c98ef30c38b127","_npmUser":{"name":"marianmeres","email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.6.2","description":"[![NPM version](https://img.shields.io/npm/v/@marianmeres/steve.svg)](https://www.npmjs.com/package/@marianmeres/steve) [![JSR version](https://jsr.io/badges/@marianmeres/steve)](https://jsr.io/@marianmeres/steve) [![License: MIT](https://img.shields.io/b","directories":{},"_nodeVersion":"25.2.1","dependencies":{"pg":"^8.16.3","@types/pg":"^8.16.0","@marianmeres/clog":"^3.15.0","@marianmeres/pubsub":"^2.4.4","@marianmeres/parse-boolean":"^2.0.5","@marianmeres/data-to-sql-params":"^1.5.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.9.5_1766851859270_0.012877683618198965","host":"s3://npm-registry-packages-npm-production"}},"1.9.6":{"name":"@marianmeres/steve","version":"1.9.6","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.9.6","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"3736b68987ca54169b3ed42bad5889ce812b342f","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.9.6.tgz","fileCount":39,"integrity":"sha512-agZ0M4TQ3lnWbdd0ZKOZ/hFBFWUjx9IkYmaeolG5wRy0YwsYg8Xa2LFeCQWofClZGwZzMkOBynmYXL+EzVjlnw==","signatures":[{"sig":"MEYCIQC0ULwO86xQaNarGhH2AXp3YtmTJfdOeao4NYCyMvSQhAIhAMbNEEjNQL4+R7EREo6cNoa9hwhmehAj8R6yedwT3wRV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100424},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","exports":{".":{"types":"./dist/mod.d.ts","import":"./dist/mod.js"}},"gitHead":"0eda58e5f42a19a1625507d2cb12f641a6411755","_npmUser":{"name":"marianmeres","email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.8.0","description":"[![NPM version](https://img.shields.io/npm/v/@marianmeres/steve.svg)](https://www.npmjs.com/package/@marianmeres/steve) [![JSR version](https://jsr.io/badges/@marianmeres/steve)](https://jsr.io/@marianmeres/steve) [![License: MIT](https://img.shields.io/b","directories":{},"_nodeVersion":"25.5.0","dependencies":{"pg":"^8.18.0","@types/pg":"^8.16.0","@marianmeres/clog":"^3.15.2","@marianmeres/pubsub":"^2.4.6","@marianmeres/parse-boolean":"^2.0.5","@marianmeres/data-to-sql-params":"^1.5.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.9.6_1770232597096_0.5631066515192846","host":"s3://npm-registry-packages-npm-production"}},"1.9.7":{"name":"@marianmeres/steve","version":"1.9.7","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@1.9.7","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"a7ab3768d0ed717415890692457f40269b9eb22e","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-1.9.7.tgz","fileCount":39,"integrity":"sha512-AENmdpw6G+BN048MIdVVXxUjtJn2IIhKkPWUGg75bSqH2oiLd5Z6FEiw4MFNdZ/7f+az8LpX8617uQJJmLVy0w==","signatures":[{"sig":"MEUCIQDxtyzfWCX4eFs4syrgQHTIH4oROndDhAyHearZ7z5/SwIgNOerks4YTrJbbbyFIlAnwG7JrP8CYVCrlTzorxyFZO4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":102150},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","exports":{".":{"types":"./dist/mod.d.ts","import":"./dist/mod.js"}},"gitHead":"0fe2b970c353aa0369a5d74c26f43809eb2b1f94","_npmUser":{"name":"marianmeres","email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.11.0","description":"[![NPM version](https://img.shields.io/npm/v/@marianmeres/steve.svg)](https://www.npmjs.com/package/@marianmeres/steve) [![JSR version](https://jsr.io/badges/@marianmeres/steve)](https://jsr.io/@marianmeres/steve) [![License: MIT](https://img.shields.io/b","directories":{},"_nodeVersion":"25.8.0","dependencies":{"pg":"^8.20.0","@types/pg":"^8.18.0","@marianmeres/clog":"^3.15.2","@marianmeres/pubsub":"^2.4.6","@marianmeres/parse-boolean":"^2.0.5","@marianmeres/data-to-sql-params":"^1.5.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_1.9.7_1773308961388_0.6266105418845977","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@marianmeres/steve","version":"2.0.0","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@2.0.0","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"a1dc097116c49518b5329e845866d556c196fa89","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-2.0.0.tgz","fileCount":42,"integrity":"sha512-aQdbQqJrBNbwtRK7EIlqBwmaRyhuxqLf1JOKQpfbSL9ObMED6qoZBuR6cS6eWHMi6G91wC7zG+wbhggXFPZ/zA==","signatures":[{"sig":"MEYCIQCsdb0eN9R8DC+Hz2o23XzPnPj0TXq+qVn5lTqGR5+A0wIhALztmtOOnoM8sYOkRIiyW648f8vD2j3jd3LpKBupci4e","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124518},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","exports":{".":{"types":"./dist/mod.d.ts","import":"./dist/mod.js"}},"gitHead":"beeb0f0cb1ed18e918d52af4fab701b981cb4ab2","_npmUser":{"name":"marianmeres","email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.12.1","description":"[![NPM version](https://img.shields.io/npm/v/@marianmeres/steve.svg)](https://www.npmjs.com/package/@marianmeres/steve) [![JSR version](https://jsr.io/badges/@marianmeres/steve)](https://jsr.io/@marianmeres/steve) [![License: MIT](https://img.shields.io/b","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","@types/pg":"^8.20.0","@marianmeres/clog":"^3.17.0","@marianmeres/pubsub":"^3.0.0","@marianmeres/parse-boolean":"^2.1.0","@marianmeres/data-to-sql-params":"^1.6.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_2.0.0_1776524129379_0.13215645353238004","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@marianmeres/steve","version":"2.0.1","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@2.0.1","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"0d13c9b324d4dd7613842040201b5f3442b2eef8","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-2.0.1.tgz","fileCount":42,"integrity":"sha512-XE5kZZd/mQftLnZx1OWBCvPHZjI8rz51b07JkqO9LL0YeHKyvw+bjmMA243ETXpgkYA7FTf2m16G56qjYtvwtw==","signatures":[{"sig":"MEQCIAfG/WS/2VAjIts38KKKxSaffqHp1bjMRKRHWszA/3beAiARRTtklsQ2XJuHZYcxsJPlBD+v7a0LtFb7ar1Cg9JYbA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124518},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","exports":{".":{"types":"./dist/mod.d.ts","import":"./dist/mod.js"}},"gitHead":"e68078d9adea8a126d74963d43240cf2ae6aec11","_npmUser":{"name":"marianmeres","email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.12.1","description":"[![NPM version](https://img.shields.io/npm/v/@marianmeres/steve.svg)](https://www.npmjs.com/package/@marianmeres/steve) [![JSR version](https://jsr.io/badges/@marianmeres/steve)](https://jsr.io/@marianmeres/steve) [![License: MIT](https://img.shields.io/b","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","@types/pg":"^8.20.0","@marianmeres/clog":"^3.17.1","@marianmeres/pubsub":"^3.0.0","@marianmeres/parse-boolean":"^2.1.0","@marianmeres/data-to-sql-params":"^1.6.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_2.0.1_1776528397893_0.060891538764989095","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"@marianmeres/steve","version":"2.0.2","author":{"name":"Marian Meres"},"license":"MIT","_id":"@marianmeres/steve@2.0.2","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"homepage":"https://github.com/marianmeres/steve#readme","bugs":{"url":"https://github.com/marianmeres/steve/issues"},"dist":{"shasum":"63bf1aa38d244a193761bc31f10ede4d80f51bc7","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-2.0.2.tgz","fileCount":42,"integrity":"sha512-OAU70u9LiVjxBiM8dNEYCJGT/FaViwBfM7ShPWYw4ZoCrGFaMazA58OS2vuZ8FD4IsXBfeJTElfwshNx0lAx6g==","signatures":[{"sig":"MEYCIQDZgZiUAIcR7aGih3C2fQVBdahKI6XGLuPw/VWF1EVHAAIhAJyN4J/VHsaY3L3PL+0OKdKr/wpt1jkDJKB2f5eoTreF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124518},"main":"dist/mod.js","type":"module","types":"dist/mod.d.ts","exports":{".":{"types":"./dist/mod.d.ts","import":"./dist/mod.js"}},"gitHead":"0831f4dac217fbe43df5060cb574229fa80d4571","_npmUser":{"name":"marianmeres","email":"marian@meres.sk"},"repository":{"url":"git+https://github.com/marianmeres/steve.git","type":"git"},"_npmVersion":"11.12.1","description":"[![NPM version](https://img.shields.io/npm/v/@marianmeres/steve.svg)](https://www.npmjs.com/package/@marianmeres/steve) [![JSR version](https://jsr.io/badges/@marianmeres/steve)](https://jsr.io/@marianmeres/steve) [![License: MIT](https://img.shields.io/b","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","@types/pg":"^8.20.0","@marianmeres/clog":"^3.21.0","@marianmeres/pubsub":"^3.0.0","@marianmeres/parse-boolean":"^2.1.0","@marianmeres/data-to-sql-params":"^1.6.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/steve_2.0.2_1778922404426_0.8723060062006585","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"@marianmeres/steve","version":"3.0.0","type":"module","main":"dist/mod.js","types":"dist/mod.d.ts","exports":{".":{"types":"./dist/mod.d.ts","import":"./dist/mod.js"}},"author":{"name":"Marian Meres"},"license":"MIT","dependencies":{"@marianmeres/clog":"^3.21.0","@marianmeres/data-to-sql-params":"^1.6.0","@marianmeres/parse-boolean":"^2.1.0","@marianmeres/pubsub":"^3.0.0","@types/pg":"^8.20.0","pg":"^8.21.0"},"repository":{"type":"git","url":"git+https://github.com/marianmeres/steve.git"},"bugs":{"url":"https://github.com/marianmeres/steve/issues"},"gitHead":"c637f456354eb8353de9115c7f35d8fb9f310d2a","_id":"@marianmeres/steve@3.0.0","description":"[![NPM version](https://img.shields.io/npm/v/@marianmeres/steve.svg)](https://www.npmjs.com/package/@marianmeres/steve) [![JSR version](https://jsr.io/badges/@marianmeres/steve)](https://jsr.io/@marianmeres/steve) [![License: MIT](https://img.shields.io/b","homepage":"https://github.com/marianmeres/steve#readme","_nodeVersion":"26.0.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-XtRSU+M+HzHcfoRs+DWLtu+Y3QhvcCFuaBIr0yXdd3qccz9BAyb6kp3spvMwiDYLiSkkLRor6nhfchOPHjbS1Q==","shasum":"80d57bc1576f6f30158bc9f776adc49c1bd6f1f2","tarball":"https://registry.npmjs.org/@marianmeres/steve/-/steve-3.0.0.tgz","fileCount":42,"unpackedSize":138138,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCj1/jNzEqRMRs8R7/4hk3ThwAalgvk7wUGgMb3yO78cwIhAJnq8TB+OQvtwrhP4jKRvv/08qMPkia62eX5v+z7dhFI"}]},"_npmUser":{"name":"marianmeres","email":"marian@meres.sk"},"directories":{},"maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/steve_3.0.0_1781119196758_0.35752416224912187"},"_hasShrinkwrap":false}},"time":{"created":"2025-06-29T18:36:00.618Z","modified":"2026-06-10T19:19:57.053Z","1.0.1":"2025-06-29T18:36:00.911Z","1.0.2":"2025-06-29T19:15:53.904Z","1.0.3":"2025-06-29T19:26:34.848Z","1.0.4":"2025-06-29T19:47:07.659Z","1.0.6":"2025-07-01T08:43:07.864Z","1.1.0":"2025-07-01T14:57:43.794Z","1.2.0":"2025-07-02T12:39:39.999Z","1.3.0":"2025-07-03T09:31:11.361Z","1.3.1":"2025-07-03T10:04:56.327Z","1.3.2":"2025-07-03T12:33:03.959Z","1.3.3":"2025-07-03T14:26:08.551Z","1.4.0":"2025-07-03T15:38:09.726Z","1.4.1":"2025-07-04T11:03:10.203Z","1.4.2":"2025-07-04T11:08:36.717Z","1.4.3":"2025-07-04T11:14:55.183Z","1.4.4":"2025-07-04T12:02:41.670Z","1.4.5":"2025-07-04T12:15:00.856Z","1.4.6":"2025-07-07T06:56:50.025Z","1.4.7":"2025-07-09T06:04:16.823Z","1.5.0":"2025-07-09T16:40:22.268Z","1.5.2":"2025-07-09T20:47:16.024Z","1.5.3":"2025-09-10T14:35:56.521Z","1.6.0":"2025-09-12T09:11:53.293Z","1.6.1":"2025-09-12T14:20:22.736Z","1.6.2":"2025-09-12T14:40:24.454Z","1.6.3":"2025-09-12T14:49:20.851Z","1.6.4":"2025-09-12T15:00:34.596Z","1.7.0":"2025-09-12T17:21:11.471Z","1.8.0":"2025-09-14T20:59:09.931Z","1.9.0":"2025-11-28T06:03:27.981Z","1.9.1":"2025-11-28T06:04:32.809Z","1.9.3":"2025-11-30T09:44:33.303Z","1.9.5":"2025-12-27T16:10:59.395Z","1.9.6":"2026-02-04T19:16:37.255Z","1.9.7":"2026-03-12T09:49:21.520Z","2.0.0":"2026-04-18T14:55:29.525Z","2.0.1":"2026-04-18T16:06:38.049Z","2.0.2":"2026-05-16T09:06:44.580Z","3.0.0":"2026-06-10T19:19:56.954Z"},"bugs":{"url":"https://github.com/marianmeres/steve/issues"},"author":{"name":"Marian Meres"},"license":"MIT","homepage":"https://github.com/marianmeres/steve#readme","repository":{"type":"git","url":"git+https://github.com/marianmeres/steve.git"},"description":"[![NPM version](https://img.shields.io/npm/v/@marianmeres/steve.svg)](https://www.npmjs.com/package/@marianmeres/steve) [![JSR version](https://jsr.io/badges/@marianmeres/steve)](https://jsr.io/@marianmeres/steve) [![License: MIT](https://img.shields.io/b","maintainers":[{"name":"marianmeres","email":"marian@meres.sk"}],"readme":"# @marianmeres/steve\n\n[![NPM version](https://img.shields.io/npm/v/@marianmeres/steve.svg)](https://www.npmjs.com/package/@marianmeres/steve)\n[![JSR version](https://jsr.io/badges/@marianmeres/steve)](https://jsr.io/@marianmeres/steve)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nPostgreSQL based jobs processing manager.\n\nSupports concurrent multiple \"workers\" (job processors), job scheduling,\nconfigurable retry logic (with capped exponential backoff), configurable max allowed duration\nper attempt (with cooperative `AbortSignal`), database resilience with automatic retries and\nreal single-connection transactions, health monitoring, automatic cleanup of crashed-worker\nleftovers, detailed logging and more...\n\nUses [node-postgres](https://node-postgres.com/) internally.\n\n## Installation\n\n```shell\ndeno add jsr:@marianmeres/steve\n```\n\n```shell\nnpm i @marianmeres/steve\n```\n\n## Basic Usage\n\n### Job handlers\n\nJob handling function(s) can be specified via constructor options either as a single\n`jobHandler` function or as a `jobHandlers` functions map (keyed by job type). Both options \n`jobHandlers` and `jobHandler` can be used together, where the `jobHandlers` map will \nhave priority and `jobHandler` will act as a fallback.\n\nIf none of the `jobHandlers` or `jobHandler` options is specified, the system will still be\nnormally functional, all incoming jobs will be handled with the internal `noop` handler.\n\n### Example\n\n```typescript\nimport { Jobs } from \"@marianmeres/steve\";\n\n// the manager instance\nconst jobs = new Jobs({\n    // pg.Pool or pg.Client\n    db,\n    // global job handler for all jobs\n    jobHandler: (job: Job, signal?: AbortSignal) => {\n        // Do the work...\n        // Must throw on error.\n        // Returned data will be available as the `result` prop.\n        // The AbortSignal fires when `max_attempt_duration_ms` elapses — respect it\n        // (e.g. pass to `fetch`) so you can bail out early on timeout.\n    },\n    // or, jobHandlers by type map\n    jobHandlers: {\n        my_job_type: (job: Job) => { /*...*/ },\n        // ...\n    },\n    // how long the worker idles before polling for a new job (±25% jitter applied)\n    pollTimeoutMs, // default 1_000\n    // optional: enable database retry on transient failures (default: disabled)\n    dbRetry: true, // or provide custom options\n    // optional: enable database health monitoring (default: disabled)\n    dbHealthCheck: true, // or provide custom options\n    // optional: periodic reaping of crashed-worker leftovers (default: disabled)\n    autoCleanup: true, // or { intervalMs, maxAllowedRunDurationMinutes }\n});\n\n// later, as new job types are needed, just re/set the handler\njobs.setHandler('my_type', myHandler);\njobs.setHandler('my_type', null); // this removes the `my_type` handler altogether\n\n// kicks off the job processing (with, let's say, 2 concurrent processors).\n// Throws on initialization failure; idempotent on repeat calls while already running.\nawait jobs.start(2);\n\n// now the system is ready to handle any incoming jobs...\n\n// stops processing (while gracefully finishes all currently running jobs, stops\n// the health monitor/auto-cleanup and removes the SIGTERM listener)\nawait jobs.stop();\n```\n\n## Creating a job\n\n```typescript\nconst job = await jobs.create(\n    'my_job_type', // required\n    { foo: 'bar' }, // optional payload\n    {\n        // maximum number of retry attempts before giving up\n        max_attempts: 3, \n        // maximum allowed attempt duration before timing out (zero means no limit)\n        max_attempt_duration_ms: 0,\n        // 'exp' -> exp. backoff with 2^attempts seconds\n        backoff_strategy: 'exp', // or 'none' \n        // timestamp to schedule job run/start in the future\n        run_at: Date,\n        // optional tenant to tag the job with, for audit/filtering (see Multitenancy)\n        tenant_id: 'acme'\n    }, // optional options\n    // optional \"onDone\" callback for this particular job\n    function onDone(job: Job) {\n        // job is either completed or failed... see `job.status`\n    }\n);\n```\n\n## Listening to job events\n\nBoth methods below return `unsubscribe` function.\n\n```typescript\njobs.onDone('my_job_type', (job: Job) => {\n    // Fires on terminal state: `completed`, `failed` (all retries exhausted),\n    // or `expired` (worker crashed and the reaper picked it up).\n});\n\njobs.onAttempt('my_job_type', (job: Job) => {\n    // Fires on every state transition: `running`, `completed`, `failed`, or `pending` (planned retry).\n});\n```\n\nNote that the `onAttempt` is fired twice for each \"physical\" attempt - once just when \nthe job is claimed and is starting the execution (with status `running`) and once when \nthe execution is done (with one of the `completed`, `failed` or `pending`).\n\n## Automatic cleanup of stuck jobs\n\nIf a worker process crashes mid-job, the row stays in `running` until it is explicitly\nreaped. Enable `autoCleanup` to have Steve do this periodically, or call\n`jobs.cleanup()` manually. Reaped jobs are marked as `expired`, have `completed_at` set,\nand fire `onDone` so consumers can react.\n\n```typescript\nnew Jobs({\n    db,\n    autoCleanup: {\n        intervalMs: 60_000,                   // check every minute\n        maxAllowedRunDurationMinutes: 5,      // \"stuck\" threshold\n    },\n});\n```\n\n## Examining the job manually\n\n```typescript\njobs.find(\n    uid: string,\n    withAttempts: boolean = false,\n    // optional tenant guard - a mismatch is reported as not-found (job is undefined)\n    options: { tenant_id?: string | null } = {}\n): Promise<{ job: Job; attempts: null | JobAttempt[] }>;\n```\n\n## Listing all jobs\n\n```typescript\njobs.fetchAll(\n    status: undefined | null | Job[\"status\"] | Job[\"status\"][] = null,\n    options: Partial<{\n        limit: number;\n        offset: number;\n        // optionally restrict to one or more tenants\n        tenant_id: string | string[] | null;\n    }> = {}\n): Promise<Job[]>\n```\n\n## Multitenancy (`tenant_id`)\n\nSteve has an **optional**, free-form `tenant_id` column on every job, following the\necosystem tenant convention. It is purely for **audit / scoping / filtering** — there is\n**no foreign key** and no tenant registry table is required. If you never set it, nothing\nchanges: jobs are created with `tenant_id = null` (global / un-scoped) and every API\nbehaves exactly as before.\n\n```typescript\n// tag a job\nawait jobs.create('send-email', { to: '...' }, { tenant_id: 'acme' });\n\n// the tag is on the returned row and survives processing\nconst { job } = await jobs.find(uid);\njob.tenant_id; // 'acme' | null\n\n// audit / filter by tenant\nawait jobs.fetchAll(null, { tenant_id: 'acme' });             // one tenant\nawait jobs.fetchAll('failed', { tenant_id: ['acme', 'bca'] }); // many + status\nawait jobs.healthPreview(60, { tenant_id: 'acme' });          // per-tenant stats\nawait jobs.cleanup(5, { tenant_id: 'acme' });                 // reap one tenant's stuck jobs\n```\n\nNotes / scope:\n\n- **Workers stay tenant-blind.** A worker pool drains jobs for **all** tenants (including\n  global `null` jobs) regardless of how they were tagged — per-tenant worker pools and\n  cross-tenant fairness are intentionally out of scope.\n- **`autoCleanup` is always tenant-blind** (it reaps every tenant). Pass `tenant_id` to a\n  manual `cleanup()` call when you need scoped reaping.\n- **Events are tenant-blind.** A type-keyed `jobs.onDone('email', cb)` fires for **every**\n  tenant's `email` jobs — filter on `job.tenant_id` inside the callback if you need\n  per-tenant reaction. (`onDoneFor` / `create(..., onDone)` are uid-keyed and inherently\n  tenant-safe.)\n- There is **no FK** by design. If you want referential integrity to a tenant registry,\n  add the constraint yourself in an app-level migration (e.g. `ALTER TABLE __job ADD\n  CONSTRAINT ... FOREIGN KEY (tenant_id) REFERENCES ... NOT VALID`).\n\n## Database Resilience\n\nSteve includes built-in database retry logic and health monitoring for production environments.\n\n### Database Retry\n\nAutomatically retry database operations on transient failures (connection timeouts, resets, etc.):\n\n```typescript\nconst jobs = new Jobs({\n    db,\n    // Enable with defaults\n    dbRetry: true,\n    // Or customize\n    dbRetry: {\n        maxRetries: 5,\n        initialDelayMs: 200,\n        maxDelayMs: 10_000,\n    },\n});\n```\n\n### Health Monitoring\n\nMonitor database health with periodic checks and callbacks:\n\n```typescript\nconst jobs = new Jobs({\n    db,\n    // Enable with defaults (checks every 30s)\n    dbHealthCheck: true,\n    // Or customize\n    dbHealthCheck: {\n        intervalMs: 60_000,\n        onUnhealthy: (status) => console.error('DB unhealthy!', status),\n        onHealthy: (status) => console.log('DB recovered!', status),\n    },\n});\n\n// Check health anytime\nconst health = jobs.getDbHealth();\nconsole.log('DB healthy?', health?.healthy);\n\n// Or manually trigger a check\nconst currentHealth = await jobs.checkDbHealth();\n```\n\nSee [USAGE_DB_RESILIENCE.md](USAGE_DB_RESILIENCE.md) for detailed configuration options.\n\n## API Reference\n\nFor complete API documentation, types, and interfaces, see [API.md](API.md).\n\n## Jobs monitor example\n\n![](./demo-monitor.png \"Demo monitor\")\n\nSteve comes with toy example of jobs monitoring ([server](example/server.ts) \nand [client](example/index.html)). To run it locally follow these steps:\n\n```shell\ngit clone git@github.com:marianmeres/steve.git\ncd steve\ncp .env.example .env\n```\n\nNow edit the `.env` and set `EXAMPLE_PG_*` postgres credentials. Then, finally, \nrun the server:\n\n```shell\ndeno task example\n```\n\nOnce deps are installed and server is running, just visit http://localhost:8000.\n\n## Upgrading from 1.x to 2.0\n\nVersion 2.0.0 fixes several correctness and security bugs. Most users won't\nneed code changes, but a few behaviors differ:\n\n- **`Jobs.start()` now throws on initialization failure** (previously it logged\n  and silently returned). Wrap in try/catch if you relied on the swallowed error.\n- **`Jobs.start()` is idempotent** — calling it twice no longer doubles the\n  processor count. Re-start via `stop()` then `start()`.\n- **`jobs.cleanup()` returns `number`** (count of reaped jobs) instead of\n  `void`, and now fires `onDone` events for each expired job. If you had listeners\n  that assumed only completed/failed statuses reach onDone, branch on\n  `job.status === \"expired\"` as well.\n- **`Job.status` TypeScript union now includes `\"expired\"`** (was runtime-only\n  previously). This is a widening; `switch` statements without an `expired` arm\n  still compile but you should add one.\n- **`JobHandler` signature adds an optional `signal?: AbortSignal`** as the\n  second argument. Existing handlers that take only `(job)` continue to work.\n- **Exponential backoff is now capped at 1 hour.** If you deliberately relied\n  on multi-day backoff at high attempt counts, you'll need a custom scheduling\n  strategy.\n- **`started_at` now records the FIRST attempt start, not the latest.** If you\n  queried `started_at` expecting the current retry's start, switch to\n  `updated_at` or to the latest attempt log row.\n\n## Upgrading to 3.x (optional `tenant_id`)\n\n3.x adds the optional [`tenant_id`](#multitenancy-tenant_id) column. It is additive and\nopt-in; **single-tenant / tenant-unaware users need no code or behavior changes**.\n\n- **`Job` now always carries a `tenant_id: string | null` field.** This is the only\n  breaking change and it is **type-level only**: code that *reads* `Job` is unaffected\n  (the field is simply present, `null` for un-scoped jobs); code that *constructs* `Job`\n  object literals (mocks/fixtures) must add `tenant_id`.\n- **The `__job` table auto-gains a nullable `tenant_id` column** on next start via\n  `ALTER TABLE ... ADD COLUMN IF NOT EXISTS` (metadata-only — instant, no table rewrite;\n  existing rows read back `null`). The runtime claim query and the default index layout\n  are unchanged; one additional **partial** index is added (zero write cost while all\n  `tenant_id` are `null`). The attempt-log table is intentionally unchanged.\n- **No FK and no tenant registry are required.** `create()`, `find()`, `fetchAll()`,\n  `healthPreview()` and `cleanup()` gain optional `tenant_id` arguments; omitting them\n  preserves today's behavior exactly.\n\n## License\n\n[MIT](LICENSE)\n","readmeFilename":"README.md"}