{"_id":"@12-apps/shift","_rev":"40-8b01cbcaecad59a05822481a8e47fff9","name":"@12-apps/shift","dist-tags":{"latest":"3.4.0"},"versions":{"1.0.0":{"name":"@12-apps/shift","version":"1.0.0","license":"MIT","_id":"@12-apps/shift@1.0.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"243a18acaedd56274da1daca8d7b05d068827cb5","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.0.0.tgz","fileCount":12,"integrity":"sha512-1GViVBHgnBGTGXYGamnG8D6RCp9qi2WtOVcDl+q5YcOTf+xHgqgje1feRI7CimelIC0sAEiEuvG7/w4phIStHA==","signatures":[{"sig":"MEUCIEHD+46PO1DMzHxthfSLyuqKkP0PmVZ1cCTMblynVVUyAiEAk9x2WLvx8B+ohvwzx4VuQ9vDaTcyTU/OWdX9aJ9ghLo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60345},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"e1d0b7c4524e3a0cee4c80ebbf0bb7c11ee536f2","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"tigredonorte","email":"tigredonorte3@gmail.com"},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.1.0","@12-apps/typescript-config":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.0.0_1785896264087_0.8091772656772651","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@12-apps/shift","version":"1.2.0","license":"MIT","_id":"@12-apps/shift@1.2.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"158c277e61ac28bf94229d869fade5142aed05ca","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.2.0.tgz","fileCount":12,"integrity":"sha512-r5vPnAx2NipLBnp8NrguOHjqRkGyU6kb0MncwYUMkx7SFyz7k5VhtuVGuwCcvWiJLz9OWbcN+nBzMVrrzDM6oA==","signatures":[{"sig":"MEUCIQCpPYNroZlajg5lqzrdSI7CzXb9zB/3c1iSov/4aBdrMAIgP6EtjiVp0jv9J2B122IJqnNRvI05QTKg1PWzxc0wdX8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":60345},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"d05da896cc8a43f54fec717c51429eefed6682d3","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.3.0","@12-apps/typescript-config":"^1.3.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.2.0_1785946192051_0.0927211783833255","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@12-apps/shift","version":"1.2.1","license":"MIT","_id":"@12-apps/shift@1.2.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"45555034722a1fd974ce6bbedef34deab976acea","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.2.1.tgz","fileCount":12,"integrity":"sha512-4Yq/WkWGAHAFuVGFKb/zUY5RSo6Abx+6EqklHoBx+PALwbbeGv8pXNmJaTXmOFgV1eqoUQYYVlIsX0R2LcWgsA==","signatures":[{"sig":"MEUCIQDY9hESltIwf5tOGzOyLgzIA6bG9/E1PWrf/ZH7oB7VRQIgSp5/0iCrNzrPdHs9bc91WQEbcloHThYUDZ9egnZSP1E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":60345},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"6a59470cbaaf679bd15ec21462bb500a5843db54","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.3.1","@12-apps/typescript-config":"^1.3.1"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.2.1_1785949587548_0.4690031163588311","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@12-apps/shift","version":"1.3.0","license":"MIT","_id":"@12-apps/shift@1.3.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"94dc447824f45870045efd6e472d0b78884f455a","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.3.0.tgz","fileCount":12,"integrity":"sha512-bySnAyShki7mi49IkXjoabcPaLN6chMu3c3sSQpu/eN++ISCEFp5O2jvO3LE42hq8FLsUb3eujSVytYqo9OMVg==","signatures":[{"sig":"MEYCIQCAyKPHieS7yUNLL0r7IIns3bMu8fyCNhTs/5dJlLYi+QIhAMh2y8j8KnAkURkScK4CBgiABaDjhNt+AcrbEt6vdqXp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":60345},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"f52a264eaaba821a536b1f2a3fcfae9a6cc4f7c7","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.4.0","@12-apps/typescript-config":"^1.4.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.3.0_1785954880590_0.7977242178850816","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@12-apps/shift","version":"1.3.1","license":"MIT","_id":"@12-apps/shift@1.3.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"f16eff5bd480f73085b71d5cf538cf775cc2273c","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.3.1.tgz","fileCount":12,"integrity":"sha512-Q/okCNfW+zqeMlU3OJXzaApoouHzUgglSai2c2jn4vr1wHmLSbNqjEfZ6DFImEFvqKtoHuj/u0DpGvjj4isJ8w==","signatures":[{"sig":"MEQCIFQ9y2l+cBiaj5Lb65RNmJun0E0SCdwjamw4DZ8RoSk9AiBlrYWYeg3GQ4o2SOR4wJHjpuGokDxK5Q2NtjKwfdZGDw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":60345},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"4067cf613069590fbad29cf687882ba0f49e1073","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.4.1","@12-apps/typescript-config":"^1.4.1"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.3.1_1785955924454_0.9327156084220463","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@12-apps/shift","version":"1.4.0","license":"MIT","_id":"@12-apps/shift@1.4.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"07b456383a6a51dbbfdb8e4df86692846702df4b","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.4.0.tgz","fileCount":12,"integrity":"sha512-UUMRPKw4dL6XpFKqStFMQfetecNgbUZI/qA02KFK1vBtiU76aZxnCvdrUaKdIaVQWhXlZticcH6NAXnDDZMeSA==","signatures":[{"sig":"MEUCIQDgNTT9odbG7lMzURY6Z8n6kQz2qzwTlFpE+ma8wosgvgIgDyzDXOfRiX83wyj120xwip2giHYY2IVfXKkv5tKgwlM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":60345},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"9ac31454f10150e8721e44c9a38b8bb1d545dfea","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.5.0","@12-apps/typescript-config":"^1.5.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.4.0_1785966202363_0.8422117460317382","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"@12-apps/shift","version":"1.4.1","license":"MIT","_id":"@12-apps/shift@1.4.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"d52949dc82203b39da673542ea27a0be3ba1ce31","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.4.1.tgz","fileCount":10,"integrity":"sha512-kINA2J61iRm5cDcL5HtNa5+O4xD5XIXPx8mgvSkh9efXuyJ9Hly/o7ehgesGUII26rqputnJauzRFTMpXPf/pQ==","signatures":[{"sig":"MEUCIQCAEHJ9J10tfp0KlUQG7kN0KJbSpWgGaPTsP/KB80pEBAIgKKaSBu/Gf48fK49v91KXz2LC8uIvpCcV5qvkE2/rVrs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41584},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"81e7421d24f622d31b501c3562db19b0c6943936","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.5.1","@12-apps/typescript-config":"^1.5.1"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.4.1_1785978976004_0.3531548243619913","host":"s3://npm-registry-packages-npm-production"}},"1.4.2":{"name":"@12-apps/shift","version":"1.4.2","license":"MIT","_id":"@12-apps/shift@1.4.2","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"12808953cd8dca631816be21ee6bea31a34ee900","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.4.2.tgz","fileCount":10,"integrity":"sha512-y7aucZahq4W2l6i2OHCBcckF2JppLGR2zebyEFOT7Kc9cxnrL9et9HduSRC+BIeYCLwKQwOCZ3s9DjTqrWw1zQ==","signatures":[{"sig":"MEUCID7GhWS8qCB62iWsBWo2S0RrLMVMkCR7dvXzlaHr27kAAiEA3XoRXheBcw/6LppjLD/G2UgHCt38Hl0JIkIuB4C0iC4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41584},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"f57c50c67e9ea99974be5dcae253e526be4090d9","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.5.3","@12-apps/typescript-config":"^1.5.3"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.4.2_1785993097309_0.1886047527352841","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@12-apps/shift","version":"1.5.0","license":"MIT","_id":"@12-apps/shift@1.5.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"2f5cb691e1cabbac4baa0eeea4c2ea3cf5c364b2","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.5.0.tgz","fileCount":10,"integrity":"sha512-s+O2V10vl097h4xwUHbprHo81SLaOTz1HmpVCZ+AoBcvo2TBGX5fuoXiks+rr8JB/eaLYxNsv9b0qbbNMeUUNg==","signatures":[{"sig":"MEYCIQC8Gc/LNBU4Kc+6OTVwWyZXDej/TMx2SiK4SyJP7Fub/AIhAK6LurOSOOiDoo4LLRmjKSCKMTbUlzq7KLaT5pNUHbGK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41584},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"8e0cd152236f2f1e72297beceba8334893f28e2a","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.6.0","@12-apps/typescript-config":"^1.6.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.5.0_1786030910368_0.8842708637905983","host":"s3://npm-registry-packages-npm-production"}},"1.5.1":{"name":"@12-apps/shift","version":"1.5.1","license":"MIT","_id":"@12-apps/shift@1.5.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"2db4bbc8d7eb28a369a8fe9c738e95404e8c9f9a","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.5.1.tgz","fileCount":10,"integrity":"sha512-RLQZCN4xzuMkR75RZ9VkOt5kDYUNLxBcbv8cw5KU6w4x+ijxjq9BKGtATz+1v4ysGBttSBvjGsN1kn4DlQBwHw==","signatures":[{"sig":"MEQCIEp7444xFLs4+8uu7hMqLpmU9225AKF14jprbvCsgmhYAiBACdxxj2+dmDBcfYmWhvof6K3BiEL9pCoANKFuhU7zjg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41584},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"15f8407ccc08a7d53484c2d3d701a8b1eb28639d","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.19.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.6.1","@12-apps/typescript-config":"^1.6.1"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.5.1_1786059897680_0.6637408699895648","host":"s3://npm-registry-packages-npm-production"}},"1.5.2":{"name":"@12-apps/shift","version":"1.5.2","license":"MIT","_id":"@12-apps/shift@1.5.2","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"4193d9fe5430c7de925acc00b890fdf6bd4d89ed","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.5.2.tgz","fileCount":10,"integrity":"sha512-4NKXrb1WIQh1uISP+yvw42ExeLvdEzbnfmN/Ska2Ny8F4s/N9iFsuo0zQkDY4ynzQNMdgr1xPIlNrVNkAUDMUg==","signatures":[{"sig":"MEQCIEE5zqehD26+Pq2T0aqHHq7+FL0YI/v1KXtW6+Bx9BlHAiB8xAMU9png+h1A4VMjTESvn3MUnxKq6MDurh0IJCWffg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.5.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41584},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"5b1ad4d8fc1948a6a2494d48f84552644bd57405","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.6.2","@12-apps/typescript-config":"^1.6.2"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.5.2_1786061435751_0.1715090175402081","host":"s3://npm-registry-packages-npm-production"}},"1.5.3":{"name":"@12-apps/shift","version":"1.5.3","license":"MIT","_id":"@12-apps/shift@1.5.3","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"151220808654674ed154ec29f39c0be803eeec5e","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.5.3.tgz","fileCount":10,"integrity":"sha512-QGiEK+i7XIkXD1e6DQxZL/2uXMWV7CiT05SPQP9CTTg6/GRO28WW1F3EKiUhETtcRIASRO6sO5BbpmY5uSLjaA==","signatures":[{"sig":"MEUCIEVDMy6Ww5Mx4HdX09Fdbm/AQUd0Ry5IDlceZrsJZLaNAiEAw3XsospNbg7fNjJKvl7MLIZyQ+Bm/I0QbyTGDNf6jS4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.5.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41584},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"8ba6d6ad47840a83c06c146ef654227af5104a8e","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.6.3","@12-apps/typescript-config":"^1.6.3"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.5.3_1786066375607_0.5139919442204561","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@12-apps/shift","version":"1.6.0","license":"MIT","_id":"@12-apps/shift@1.6.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"7871f2a3cb2f67dfddd9f0ac8d178a5604620aa1","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.6.0.tgz","fileCount":10,"integrity":"sha512-kK/KQtM5wM9QzKueF9cM95WfncRVn4YhtdKukrq9S1SqqDX1tqWdjWZYOCUo1jP7zkZAbBm21rm2ApYu+2Zc8A==","signatures":[{"sig":"MEUCIBiYnPKIXK/+/IxAXRisi6p5e4ccobnl33+m0Nf4Kz7xAiEA1H94BTPw1AzrEdWRVMY5w69Kymwg/uW3vqScgxEVPt0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41584},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"1dbc1469b614c0f8b0f50e0116c4be4e99f39256","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.7.0","@12-apps/typescript-config":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.6.0_1786069540246_0.5759522538495667","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"@12-apps/shift","version":"1.7.0","license":"MIT","_id":"@12-apps/shift@1.7.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"11e8898468448db381a854af54425bcf82da42d7","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.7.0.tgz","fileCount":10,"integrity":"sha512-MgKagJtk1rhqsAffBOWBuiAuTAYYFD2A8mIBkzKZcTk4/S2Z1m8xMK+6J8CKasP9qatnJi1VgIpZ0B5Sj56ROw==","signatures":[{"sig":"MEUCICvRsW/IB+p2w2dfi3Zynsn+MZBvgV5Upg5qvcmP+aiCAiEA0UFsscDvuOOOszOzT4GGt2lhFLmfdQ6ih2LIMg9qNlw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41584},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"6d34a3a466269e83fcce802ee81df261bfb14523","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.0.1","@12-apps/typescript-config":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.7.0_1786076516656_0.3761086262802551","host":"s3://npm-registry-packages-npm-production"}},"1.7.1":{"name":"@12-apps/shift","version":"1.7.1","license":"MIT","_id":"@12-apps/shift@1.7.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"eabff5e0309bb53a9d8be5a55033bef63c9850f1","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.7.1.tgz","fileCount":10,"integrity":"sha512-IwF2RL2SQ7iyp9d0LNAkMa41BG7MQ7M6nYB/LP51tEOOBU1Nl9+KpyQOyEP8YhZEE/OY/6YtqgbL+/693xnWnw==","signatures":[{"sig":"MEYCIQDJWpxF+LKY5SVtqZlQJmCPNBsRzyH4ATre3hi1e0KhzQIhAJvrN8ICWI+JJeuZmbqOFX5bmhJJxH96VWKfYjYobVyY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.7.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41584},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"2e9d99f013ab8d5373a4e32a01a9c0221bd12190","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.8.1","@12-apps/typescript-config":"^1.8.1"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.7.1_1786077118022_0.7531702105427767","host":"s3://npm-registry-packages-npm-production"}},"1.8.0":{"name":"@12-apps/shift","version":"1.8.0","license":"MIT","_id":"@12-apps/shift@1.8.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"b6cdbdcc6cc5cf7609add9f274b65dbb479c309a","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.8.0.tgz","fileCount":10,"integrity":"sha512-+7DYf6OSfLgotWLCj+kyRxxh28dP1SCFImOr/h+Hymg+uZf1y3rUuIaBlsKDI6Cm2O4QblICNxs1w0sNX6I/Kw==","signatures":[{"sig":"MEQCIBvsxqlnsNrzqIj7Ku8h4rkji2yUQdNp5wWrTPIbLGyDAiAQWNOQpHgwq92ejVzTHDJUjY/ddqvdfXh6plijubBUrQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41584},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"7bfcec03feb4cfeb6db70c9dd7b69a936a1687bd","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.19.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.9.0","@12-apps/typescript-config":"^1.9.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.8.0_1786089735240_0.29280217864604086","host":"s3://npm-registry-packages-npm-production"}},"1.8.1":{"name":"@12-apps/shift","version":"1.8.1","license":"MIT","_id":"@12-apps/shift@1.8.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"4b377927e024aa0c93c1bbc363ebe40ede84c110","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.8.1.tgz","fileCount":10,"integrity":"sha512-U2Vm2Q3oLY+keatSjWYD9bo8kzPXkCKS8n3xjV5hF+DeIgP4nXZeQNyBfp2uVOC7nIPUWx8LencDJyuVT6hoWA==","signatures":[{"sig":"MEUCIB/1LSxGoW1/nF1vhpkSNYz06MxUNBpwClkE1gqRgxl0AiEAlbG09Te3mlL/n9dMOTn9dJIurVnU3wYHYWeM27KWt00=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41584},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"e7605e656458d821164b2c47ee7fe9d7d4d790bd","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.19.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.9.1","@12-apps/typescript-config":"^1.9.1"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.8.1_1786093395998_0.8503240449942038","host":"s3://npm-registry-packages-npm-production"}},"1.9.0":{"name":"@12-apps/shift","version":"1.9.0","license":"MIT","_id":"@12-apps/shift@1.9.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"59aefff18f2ee4493b85c0ea6bd9931aee28f342","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.9.0.tgz","fileCount":10,"integrity":"sha512-tHcnwWJOG0dr8Ud1Z4gIqAEVAxELXvsM58wwBxGt4q5R1e7eEkAanY2qAgtWjOh9k+IgS5bMpMjejuZU8/VwQQ==","signatures":[{"sig":"MEQCIGyDqJvi0Cw73Nmu3u8OLLRIF9WZh1VwUh3REvfZF5MGAiB3W9P3Vv859xtCA/bB6cs6xHNvs4mxWm85TMwNvhnAPA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41586},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"6bfe86e2215d81dffd8f616dad4aa181f027548b","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.10.0","@12-apps/typescript-config":"^1.10.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.9.0_1786100301423_0.7285541664292952","host":"s3://npm-registry-packages-npm-production"}},"1.10.0":{"name":"@12-apps/shift","version":"1.10.0","license":"MIT","_id":"@12-apps/shift@1.10.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"31c4dbd3592a55a39381ba84f1d1c5f5a0190609","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.10.0.tgz","fileCount":10,"integrity":"sha512-WeTks7uJuhv+mRtGMXVteUS9mUYM9PhPF6oVPwDBQS7cy6LmTNZGEaSl7/4qUMULVW4wcVI+ItuC2DCgjMFxfQ==","signatures":[{"sig":"MEUCIH4PfcDFZ8C3QadgCtfBOatxxXqGpKnQYl2TBA3MH51YAiEA+BOYzph84Ypi9UteATOgY5aLuK8WgqVZd/H20EAFug4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41587},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"ca77c6e24bbdd7ce427c8003f0de2444c95d88cf","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.11.0","@12-apps/typescript-config":"^1.11.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.10.0_1786103571442_0.8248846554267444","host":"s3://npm-registry-packages-npm-production"}},"1.10.1":{"name":"@12-apps/shift","version":"1.10.1","license":"MIT","_id":"@12-apps/shift@1.10.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"17d3302bd3fa220b009c685c37c479a996ab37cc","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.10.1.tgz","fileCount":10,"integrity":"sha512-cR1qV5urYNJUO7rBOALMMXRX/5vg5m2M0pHlEHRcxXT2UBUkg0yC8aj9N0/r4EQDZ7c9zYaBuf3GRZgBPzRGAA==","signatures":[{"sig":"MEQCIHu2GTdlYj5t5GJsopP5sCqLviZn/G1IqkL/Nf035ljnAiBxWP7yNwsb3qA01dJhTwH4t3ywVvXWFOEzCt7PzRuiYA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.10.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41587},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"b1c4a9ee167c219178d1933083ccaa44ba467ca2","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.11.1","@12-apps/typescript-config":"^1.11.1"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.10.1_1786108075603_0.6305870862476677","host":"s3://npm-registry-packages-npm-production"}},"1.11.0":{"name":"@12-apps/shift","version":"1.11.0","license":"MIT","_id":"@12-apps/shift@1.11.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"79d44dca483750a7f1d82994acd7d907d047d36d","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.11.0.tgz","fileCount":10,"integrity":"sha512-xmGd7GQ+1rORSr7nj6sA5D/GMgHoFBaiD+kiwaSqKhxiB4nV/L4VqugKEbq1vzwsc/nAm6D44fH3MaZXg2uOjw==","signatures":[{"sig":"MEQCIF+RPgUZdnwN91O91wHISp4ymkzeRJ8oFgXFb/LvxwIZAiB8jnDa4pK/gMHxY1NR/fhR4x+77D/jN5C0GEEk+9m1uQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41587},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"ec6d74e8ae3156dc9294ef46e3fd05dcdf8b6af4","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.12.1","@12-apps/typescript-config":"^1.12.1"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.11.0_1786117861634_0.36564795100476744","host":"s3://npm-registry-packages-npm-production"}},"1.11.1":{"name":"@12-apps/shift","version":"1.11.1","license":"MIT","_id":"@12-apps/shift@1.11.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"d1794e94c4b52e0c7523f89882429aa77b9cef99","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.11.1.tgz","fileCount":10,"integrity":"sha512-OIhBDG/0bAcIaxa9cRG1Q/IJvCtrfm/HtvzZllCDV6UJ2xVGnBey0L38h5Eds+fdY4iZSpdLVF2mF3ALwOiMKA==","signatures":[{"sig":"MEUCIQCGIkf4slcYSkM8k4OSiwVD7YYgGz59ZRzmNMJ7Iw2PHwIgRCjNlEd3JwURw0jxpJHEza4zoJ8oTODttP+FTj9EHgI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.11.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41587},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"e9fa4d72f92e37490fec1f39348375e9e34bf2ee","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.12.2","@12-apps/typescript-config":"^1.12.2"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.11.1_1786127734594_0.9920575003530832","host":"s3://npm-registry-packages-npm-production"}},"1.12.0":{"name":"@12-apps/shift","version":"1.12.0","license":"MIT","_id":"@12-apps/shift@1.12.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"405ec8ac36717bf18e251be635b80eacdefe95de","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.12.0.tgz","fileCount":10,"integrity":"sha512-V6r645WVn192BNYdeMO2rIrod4RVzJNZq7mEVNl2Auh4w1EwRwLwEVI7c3otkzd1MLU07UkWkNsUq048qoEgTA==","signatures":[{"sig":"MEQCIEhUVPQUwBtd5gCUlAykCwdEcrJhyvI44R6YL+eptGIeAiBQwj4a0OmBUMZtvbraizbPvaUuFU7jPQ+YJYYk+FjfeQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41587},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"903862a6809118567baa5931596f484c3ff8ff37","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.13.0","@12-apps/typescript-config":"^1.13.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.12.0_1786128543030_0.3232518851340227","host":"s3://npm-registry-packages-npm-production"}},"1.13.0":{"name":"@12-apps/shift","version":"1.13.0","license":"MIT","_id":"@12-apps/shift@1.13.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"d6823ac3d845ff0f2a0a7aa6a24c1da81f8af866","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.13.0.tgz","fileCount":10,"integrity":"sha512-cj9bJk0VDqtqsBKefixWJ635mxGX5nnFcT/puYAheovOBlOj0niMj2IQ3ziq+eXBQYpZ2cpI1dlh+k0mVDSTWQ==","signatures":[{"sig":"MEQCIG4Fe4W8YCQKdOcI6mf43FApRPw75EFHtIrlnWrt6Av0AiAXYKQtv+wIfH71Mbro7uh39Ez5lCwxgSdfywom3/3UDA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41587},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"f9c9457f43bc8c265f81d27b8d3bb5f250fce11e","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.15.0","@12-apps/typescript-config":"^1.15.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.13.0_1786133016379_0.8368966272706422","host":"s3://npm-registry-packages-npm-production"}},"1.14.0":{"name":"@12-apps/shift","version":"1.14.0","license":"MIT","_id":"@12-apps/shift@1.14.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"55f551448154c0573e31a87ba0bfb74ce16534a1","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.14.0.tgz","fileCount":10,"integrity":"sha512-0iPW1JS5+fX1LtBsrVnh+Nlm5c0pqZeYY6TThjQzqD6jjwkWQ6lg32huNlyyx+aTKyBjhYD8SinNbf18az1PyQ==","signatures":[{"sig":"MEUCIA/nzxOlvMrqSN38zVLZxTMR12K265dd2xiQlBmhocdgAiEA+vRAk1EuurK7rnqK9y3VIGf0lI57CVLPs70sf9BiStc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41587},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"ebccb7d5693b1f1340342b72139daef11fc81223","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.16.0","@12-apps/typescript-config":"^1.16.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.14.0_1786133719193_0.9904007875363918","host":"s3://npm-registry-packages-npm-production"}},"1.14.2":{"name":"@12-apps/shift","version":"1.14.2","license":"MIT","_id":"@12-apps/shift@1.14.2","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"b0f642499d9eb9a736f024264891ce4785cf46ec","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.14.2.tgz","fileCount":10,"integrity":"sha512-sncFRfm7RXsM3CfzWt8/+3aUS47q9Vd3L/rY57yKSDwqJszVHw2ygpdTpy29rBuo2oZ3r1+WREIPnpkP4jjAPA==","signatures":[{"sig":"MEUCIEhlUGR7Hd/FTU9RPby+mS0FiCiHEGekSkufu2C2Cl0kAiEA6qU+etMEC4OtR0kr8Jjw8rp36Yl2bFJCRv+P5FWP1+k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.14.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41587},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"bfd39495ffa882cae31b10538877b522984cbebc","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.16.2","@12-apps/typescript-config":"^1.16.2"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.14.2_1786138860529_0.19043530598570002","host":"s3://npm-registry-packages-npm-production"}},"1.15.0":{"name":"@12-apps/shift","version":"1.15.0","license":"MIT","_id":"@12-apps/shift@1.15.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"c9b61bd538014cb4b5a92d8401ca15323f121373","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.15.0.tgz","fileCount":10,"integrity":"sha512-1boozIysUgv86NIFzzsBE3W01ucbzJafdWGIeGY+bTNY1aul94QECrqhzAvKKTbv8ceXaRepBFnsxAn6t5kyEA==","signatures":[{"sig":"MEUCIQDjYBPFaPGSuIlVnEJLW6Qvb/wp64Ta/ZUk+fkf6je5owIgLmQS3UYGFfpqCMY9gz5DZehWnfueB1zmyKuXRRPArJ4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.15.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41587},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"2d4a0e9dbf04f79e2306b779f56f0dd5d079e09a","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.17.0","@12-apps/typescript-config":"^1.17.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.15.0_1786145561817_0.47899834895984417","host":"s3://npm-registry-packages-npm-production"}},"1.15.1":{"name":"@12-apps/shift","version":"1.15.1","license":"MIT","_id":"@12-apps/shift@1.15.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"7b79a28c51db0bfd524b63b1a2b482212ea5ac67","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.15.1.tgz","fileCount":10,"integrity":"sha512-rUSVnJCa/pXYfgFPeJqQV7xTStna0W898NGm+1iZr7VZzh9CXGRuj8ZqkTjaOZPcOdgP/ZX21yggX3MZ6o5zHQ==","signatures":[{"sig":"MEYCIQCCG04ahXpmCi1kw3oktdgQ7eK4LxPe1MsvmLoK459rMwIhAKMSpNXtrm3lo6AefC4sxX9o8JHmtXRJIOzHYaACXKX5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.15.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41587},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"f0356169f9682182eabba77485cf4772051235ae","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.17.1","@12-apps/typescript-config":"^1.17.1"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.15.1_1786146705612_0.22663108441880997","host":"s3://npm-registry-packages-npm-production"}},"1.15.2":{"name":"@12-apps/shift","version":"1.15.2","license":"MIT","_id":"@12-apps/shift@1.15.2","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"3a36491894f042aaf0ecf448db0ec1867d8cfe9e","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.15.2.tgz","fileCount":10,"integrity":"sha512-0L6g5DEXc3bydiOT5FQLrGpthbLB6PdtKRK48vJPteMogbuF6mxovpXPFoRg0GzNe+i8jrnDQRxZiOi82NxR3Q==","signatures":[{"sig":"MEUCICVGbw4IlIVBal5/LutgCHLL33Eciyp7UobUTFO07LzPAiEA57XNjkfKOat6AuvodnDuiXPBMWeCeA/N++1DgHGp3Cs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.15.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41587},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"4b2466cbe6cded4941ec25ef92cf41d7fab0697e","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.17.2","@12-apps/typescript-config":"^1.17.2"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.15.2_1786159959472_0.6233698553269702","host":"s3://npm-registry-packages-npm-production"}},"1.15.3":{"name":"@12-apps/shift","version":"1.15.3","license":"MIT","_id":"@12-apps/shift@1.15.3","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"ed24bd67b5faa9654bd56463d2d68248cf1ae459","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.15.3.tgz","fileCount":10,"integrity":"sha512-ii9VRDsSz/JoENT1mSZAd2wEQNykMiW+lZMH4Kof1JLqUELPLyj+7LQ78KQBMoZJaLOt43Kotp7jaSHkOi9eKQ==","signatures":[{"sig":"MEYCIQCRS2WYBpHRqb5mDgH3S9CWawIMV+IWeApdHEMmUB/d7AIhAMo+txEctsnkv0flBOzoEbi0knoWW6mvyimQ9/FQykbV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.15.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41587},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"ee3399530780d82beea32410802a945627ffe271","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.17.3","@12-apps/typescript-config":"^1.17.3"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.15.3_1786197934452_0.5973315170802378","host":"s3://npm-registry-packages-npm-production"}},"1.16.0":{"name":"@12-apps/shift","version":"1.16.0","license":"MIT","_id":"@12-apps/shift@1.16.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"84809a4b28ebfb00fd477438d46dabf904ad9df4","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.16.0.tgz","fileCount":10,"integrity":"sha512-h/N+pi6zhKRIzYtfWzAqmn9hzXB1ZjPznqecd8iQyjrAGYHhXvn7cqIbSQ6tQ38JNDOwKfmTljprHPPzMM1rAQ==","signatures":[{"sig":"MEQCIEkzH93aszSzZRXc+i7x3ahSmSps8flCE4pHJ+DmC/xFAiBvNK7vmDUuccfaDiMyVVJek1QYHHZ/Zgz8N+uuaUqEvA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.16.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41587},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"8af3c18e1811d042f30016a4ba43e74abc4b8c50","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.18.0","@12-apps/typescript-config":"^1.18.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.16.0_1786203907428_0.24593963684303977","host":"s3://npm-registry-packages-npm-production"}},"1.17.0":{"name":"@12-apps/shift","version":"1.17.0","license":"MIT","_id":"@12-apps/shift@1.17.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"f25d6a3c8c7256c10c335101c3142fd49a0079ac","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.17.0.tgz","fileCount":10,"integrity":"sha512-KxB9uY7Pl8mENgLiwDkwGvi9+UbKkn5s2Q7JFj7uLHcpC31VSfi28kvn6BPAlUVBeZBdgzrslsIl9q6M2cVLxA==","signatures":[{"sig":"MEQCIFAp62zWDer20ujYpHF2VZBIRmJ+hN+87NBzLbw3QW+YAiAKR4s7nIyJlMgackKhENrRQpDRywlZDbGhfkNdd1SJAw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.17.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41587},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"3a8eb1783f8cccce3b7ec49cb10e3e6d2c5d7310","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.19.0","@12-apps/typescript-config":"^1.19.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.17.0_1786206110211_0.7534681851259708","host":"s3://npm-registry-packages-npm-production"}},"1.18.0":{"name":"@12-apps/shift","version":"1.18.0","license":"MIT","_id":"@12-apps/shift@1.18.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"876775b977216d1c637eb665adb9737c209be6a9","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-1.18.0.tgz","fileCount":10,"integrity":"sha512-WZmnDcHrLCtrpEh9n9R8x/SSgpfUfSCUUnQLb4dmHwekGzGRS9z/j3mi7sApkZi9FKA9p0JGJMCvXNaVkNQqPQ==","signatures":[{"sig":"MEUCIQDjOVEgMPfsOdWaW5Wwk76zx6QNcMYGCi8mqxo7RREBaQIgHS9FolWnfJe4xlE3+iokTjzpgdKlNb2wM4GK27SQv3g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@1.18.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41587},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"21bbb5b06424cf045eaad617a5912aa00d0c654b","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.20.0","@12-apps/typescript-config":"^1.20.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_1.18.0_1786209456693_0.7871956819106736","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@12-apps/shift","version":"2.0.0","license":"MIT","_id":"@12-apps/shift@2.0.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"0689650f48159eec09f696e299e61058f8b32ae1","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-2.0.0.tgz","fileCount":10,"integrity":"sha512-Lj1X3JZlhSfpYpiJoeMt/HC2PdutDqA1LyW3N4kjz0/tiK4KGVATZE8exqq8/sDdv/eHlwNIp/PTD5qxXQ63Hg==","signatures":[{"sig":"MEQCIFlpE1uH9AeYUO0h2dHFyNdMD7KD6yHuA/RGqshnibg+AiBTx0qTFEUtV1LbFr0+5WRKdabSYKZP0optX2wJDkKnwQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41586},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"5f6a9a9dd6fadbaacb19a80e0f2b76d85ef0b07b","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.20.0","@12-apps/typescript-config":"^1.20.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_2.0.0_1786556899102_0.9045537159724804","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"@12-apps/shift","version":"3.0.0","license":"MIT","_id":"@12-apps/shift@3.0.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"5fd56dd9e38c50b197df3984ef1173e77eee69c0","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-3.0.0.tgz","fileCount":10,"integrity":"sha512-Yr0Si4cwtUwb23EwosZ8CF3bf64Cea0CqFDMWOLt/jf2WvvbFSlvb8VCcL5PHk7HErZgE7AP0cUqHd/vWknhMA==","signatures":[{"sig":"MEYCIQCuV6oJP0pfRznNX5i/2TMSPrWpkN8aT1OUEUfnck3x0QIhAKa2J7+qbsooDAxOhEe8n3E01G+IlIaU1wk4TNN70Izr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@3.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41591},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":"./src/index.ts","./types":"./src/types.ts"},"gitHead":"f837d4958a5b21e02d2f02a1c008ff1d1a23937a","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.19.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.20.0","@12-apps/typescript-config":"^1.20.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_3.0.0_1786800317614_0.6594064166583857","host":"s3://npm-registry-packages-npm-production"}},"3.0.1":{"name":"@12-apps/shift","version":"3.0.1","license":"MIT","_id":"@12-apps/shift@3.0.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"79df723c1871eb7c8d67c36e6ed3938cb98772e4","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-3.0.1.tgz","fileCount":19,"integrity":"sha512-yPF+iTapc5rLIloguiiIEWJR9JmXNk+w60ALPKneGb0vVm8zDGEnRbZve6M37OhSLUFCMX/2xxbMAN2ZfMVkng==","signatures":[{"sig":"MEUCIQCfcQ9fg1lLWFu7nn6fnVFb+NR2d7DVxDYzuxi/4F9c4gIgHn+q/b5q9lUnF9HWXE5jo/iOkHPXRaThh/pTGPL3S0Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@3.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":119809},"type":"module","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"}},"gitHead":"5a17fce7aad1374fed047dba175aab7e20d53a29","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"rm -rf dist && tsup","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.19.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","tsup":"^8.0.0","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.20.0","@12-apps/typescript-config":"^1.20.0"},"_npmOperationalInternal":{"tmp":"tmp/shift_3.0.1_1786983856300_0.795142623700481","host":"s3://npm-registry-packages-npm-production"}},"3.1.0":{"name":"@12-apps/shift","version":"3.1.0","license":"MIT","_id":"@12-apps/shift@3.1.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"2a07df88c09e9d65e3cb087fdfafda95aafbacda","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-3.1.0.tgz","fileCount":22,"integrity":"sha512-hw+2807e+KretX0RbjpQnb/giCD3uCCB6lyAjUlAyfYhs5WXbxwaH71Rc0P84xTIaHIplU+5mb4Mz+BfB7ZEMQ==","signatures":[{"sig":"MEUCIHuhZDVxDP7Ner8/Z+eW6bLswOgMEAMHCUMMYvHOCOFmAiEAlpbGfgJEnDSnjZyI1fDanrEKNDuY1igBpnrs/1Kn0T4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@3.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":124758},"type":"module","wiring":{"db":{"partial":"prisma/shift.prisma","migrations":"prisma/migrations"}},"engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./jobs":"./src/jobs.ts","./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./manifest":"./src/manifest/index.ts","./package.json":"./package.json","./manifest/server":"./src/manifest/server.ts"},"gitHead":"2cc004e03c52bad4eb652dabf1495fbcef6b321a","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"rm -rf dist && tsup","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.19.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","tsup":"^8.0.0","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@12-apps/wiring":"^1.4.0","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.21.0","@12-apps/typescript-config":"^1.20.0"},"peerDependencies":{"@12-apps/wiring":">=1.3.0"},"peerDependenciesMeta":{"@12-apps/wiring":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/shift_3.1.0_1787286472645_0.8902302085550224","host":"s3://npm-registry-packages-npm-production"}},"3.2.0":{"name":"@12-apps/shift","version":"3.2.0","license":"MIT","_id":"@12-apps/shift@3.2.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"95eda6009eb52e2d832fa28bd10cb10bae7633ec","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-3.2.0.tgz","fileCount":25,"integrity":"sha512-E3PuIYFikt442epH0JyvFONKBTJpKcDiidmicxVWDny7wG4sIoZRskUoJx64Dm6YJznxnza92AkZF1+rWP4Yaw==","signatures":[{"sig":"MEUCIQDf7VW1P+DEceFPH2nasf8ru61QonhRl6BQ9XCEWgn5SQIgIw7AvrW1NH8OhKFH1STMQp3EJHM2LqTRmoCpPy+r1a4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@3.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":144712},"type":"module","wiring":{"db":{"partial":"prisma/shift.prisma","migrations":"prisma/migrations"}},"engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./jobs":"./src/jobs.ts","./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./manifest":"./src/manifest/index.ts","./package.json":"./package.json","./manifest/server":"./src/manifest/server.ts"},"gitHead":"3c4711049bf8351685612372531c3cae1370bbbb","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"rm -rf dist && tsup","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7fa377b8-9747-4495-8484-0438bb7dc9e4"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.19.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","tsup":"^8.0.0","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@12-apps/wiring":"^1.6.1","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.21.1","@12-apps/typescript-config":"^1.20.1","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"@12-apps/wiring":">=1.3.0"},"peerDependenciesMeta":{"@12-apps/wiring":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/shift_3.2.0_1787327267934_0.15826031756269554","host":"s3://npm-registry-packages-npm-production"}},"3.3.0":{"name":"@12-apps/shift","version":"3.3.0","license":"MIT","_id":"@12-apps/shift@3.3.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"b32780833dca187b3a2443c6494db63f95bb35a6","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-3.3.0.tgz","fileCount":26,"integrity":"sha512-Z7aVXa9av9bwrrq1ivSLFs3avN4qHkfiWZEJZ+RnaCmpVav73pSryEDW79qZR/Al0pjw7uyBbJZUVk4tUUE6lA==","signatures":[{"sig":"MEUCIB+mPaekR7T5qdJEkiDeu6FIuFMZyiUfYkVTiJwPVcDRAiEArbxrDrXbggdpKAJQotYS3MmJmuyGDJ1uuufidVsYB7I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@3.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":155109},"type":"module","wiring":{"db":{"partial":"prisma/shift.prisma","migrations":"prisma/migrations"}},"engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./http":"./src/http.ts","./jobs":"./src/jobs.ts","./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./manifest":"./src/manifest/index.ts","./package.json":"./package.json","./manifest/server":"./src/manifest/server.ts"},"gitHead":"bb484cd7dec9e17822ecdf07ea9e762a62d0bcc2","scripts":{"lint":"eslint src --max-warnings 0","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"rm -rf dist && tsup","clean":"rm -rf node_modules coverage","typecheck":"tsc --noEmit","test:watch":"vitest watch","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5e997615-48aa-419e-9549-ed74320b11f5"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shift"},"_npmVersion":"12.0.2","description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","directories":{},"_nodeVersion":"24.19.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"pg":"^8.16.3","tsup":"^8.0.0","eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.9.2","@12-apps/wiring":"^1.8.0","@electric-sql/pglite":"0.2.17","@12-apps/eslint-config":"^1.21.1","@12-apps/typescript-config":"^1.20.1","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"@12-apps/wiring":">=1.3.0"},"peerDependenciesMeta":{"@12-apps/wiring":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/shift_3.3.0_1787339750777_0.08327817155508122","host":"s3://npm-registry-packages-npm-production"}},"3.4.0":{"name":"@12-apps/shift","version":"3.4.0","type":"module","sideEffects":false,"description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./jobs":{"types":"./dist/jobs.d.ts","default":"./dist/jobs.js"},"./http":{"types":"./dist/http.d.ts","default":"./dist/http.js"},"./manifest":{"types":"./dist/manifest/index.d.ts","default":"./dist/manifest/index.js"},"./manifest/server":{"types":"./dist/manifest/server.d.ts","default":"./dist/manifest/server.js"},"./package.json":"./package.json"},"scripts":{"build":"rm -rf dist && tsup","clean":"rm -rf node_modules coverage","test":"node ../../scripts/vitest-with-teardown.mjs run","test:watch":"vitest watch","lint":"eslint src --max-warnings 0","check-types":"tsc --noEmit","typecheck":"tsc --noEmit"},"devDependencies":{"@12-apps/eslint-config":"^1.22.0","@12-apps/typescript-config":"^1.21.0","@12-apps/wiring":"^1.14.0","@electric-sql/pglite":"0.2.17","@types/pg":"^8.16.0","eslint":"^9.39.1","eslint-plugin-test-flakiness":"^1.4.0","pg":"^8.16.3","tsup":"^8.0.0","typescript":"^5.9.2","vitest":"^3.2.4"},"engines":{"node":">=22.0.0"},"license":"MIT","publishConfig":{"registry":"https://registry.npmjs.org","access":"public"},"repository":{"type":"git","url":"git+https://github.com/12-apps/shared-packages.git","directory":"packages/shift"},"wiring":{"db":{"partial":"prisma/shift.prisma","migrations":"prisma/migrations"}},"peerDependencies":{"@12-apps/wiring":">=1.3.0"},"peerDependenciesMeta":{"@12-apps/wiring":{"optional":true}},"gitHead":"4714bd10c901bcc51544843d5d6091cc1509e649","_id":"@12-apps/shift@3.4.0","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"homepage":"https://github.com/12-apps/shared-packages#readme","_nodeVersion":"24.19.0","_npmVersion":"12.0.2","dist":{"integrity":"sha512-gbkl1xfsquvysE7H/MzQ76f+SgQevm4tE1wbbjSYJgiI06Hf85iAp/7Nmw1FPCB56ax4vkXi38Krbax4RtNY1A==","shasum":"4eb185dbbf13a8e39bcffd4a9a39d077612f6287","tarball":"https://registry.npmjs.org/@12-apps/shift/-/shift-3.4.0.tgz","fileCount":46,"unpackedSize":190618,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshift@3.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIDIcmaQRJHS3/Cna1uYVeoc2oANPxYjJ+DAYK7wVXYFEAiEA4NgHU+UaeAep3zUBwxh19DSYKtMh1hKN5SVOXwrXu0w="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5e997615-48aa-419e-9549-ed74320b11f5"}},"directories":{},"maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/shift_3.4.0_1787617852145_0.023117794151929827"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-05T02:17:43.872Z","modified":"2026-08-25T00:30:52.719Z","1.0.0":"2026-08-05T02:17:44.271Z","1.2.0":"2026-08-05T16:09:52.229Z","1.2.1":"2026-08-05T17:06:27.685Z","1.3.0":"2026-08-05T18:34:40.769Z","1.3.1":"2026-08-05T18:52:04.626Z","1.4.0":"2026-08-05T21:43:22.547Z","1.4.1":"2026-08-06T01:16:16.141Z","1.4.2":"2026-08-06T05:11:37.446Z","1.5.0":"2026-08-06T15:41:50.524Z","1.5.1":"2026-08-06T23:44:57.875Z","1.5.2":"2026-08-07T00:10:35.899Z","1.5.3":"2026-08-07T01:32:55.753Z","1.6.0":"2026-08-07T02:25:40.405Z","1.7.0":"2026-08-07T04:21:56.810Z","1.7.1":"2026-08-07T04:31:58.155Z","1.8.0":"2026-08-07T08:02:15.383Z","1.8.1":"2026-08-07T09:03:16.138Z","1.9.0":"2026-08-07T10:58:21.588Z","1.10.0":"2026-08-07T11:52:51.599Z","1.10.1":"2026-08-07T13:07:55.742Z","1.11.0":"2026-08-07T15:51:01.777Z","1.11.1":"2026-08-07T18:35:34.735Z","1.12.0":"2026-08-07T18:49:03.216Z","1.13.0":"2026-08-07T20:03:36.521Z","1.14.0":"2026-08-07T20:15:19.353Z","1.14.2":"2026-08-07T21:41:00.763Z","1.15.0":"2026-08-07T23:32:41.978Z","1.15.1":"2026-08-07T23:51:45.768Z","1.15.2":"2026-08-08T03:32:39.631Z","1.15.3":"2026-08-08T14:05:34.596Z","1.16.0":"2026-08-08T15:45:07.586Z","1.17.0":"2026-08-08T16:21:50.367Z","1.18.0":"2026-08-08T17:17:36.857Z","2.0.0":"2026-08-12T17:48:19.263Z","3.0.0":"2026-08-15T13:25:17.799Z","3.0.1":"2026-08-17T16:24:16.422Z","3.1.0":"2026-08-21T04:27:52.786Z","3.2.0":"2026-08-21T15:47:48.079Z","3.3.0":"2026-08-21T19:15:50.924Z","3.4.0":"2026-08-25T00:30:52.340Z"},"bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"license":"MIT","homepage":"https://github.com/12-apps/shared-packages#readme","repository":{"type":"git","url":"git+https://github.com/12-apps/shared-packages.git","directory":"packages/shift"},"description":"Headless tenant-scoped work shifts with resource bindings and audit ports.","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"readme":"# @12-apps/shift\n\nHeadless, tenant-scoped work shifts: a worker opens a period, optionally claims\na resource for its duration, and the period is closed by the worker, by a\nsupervisor, or by a sweep. Immutable once closed, audited through a port, and\nbacked by a Prisma partial plus the PostgreSQL guarantees Prisma cannot express.\n\nThe package owns the mechanism. It owns none of the vocabulary.\n\n## The host states its kinds\n\n`kind` is the one field on a shift whose values describe a business rather than\na work period, so there is no default and there is no built-in list — the set is\nrequired config:\n\n```ts\nimport { createShiftService, defineShiftVocabulary } from '@12-apps/shift';\n\nexport const CLINIC_KINDS = ['hygiene', 'surgery', 'reception'] as const;\n\nconst service = createShiftService(shiftDb, { kinds: CLINIC_KINDS });\n```\n\nPass an `as const` tuple and every input on the returned service narrows to\nexactly those values, so the host keeps compile-time safety over its own words:\n\n```ts\nawait service.openShift({\n  clientId, userId, actorUserId,\n  kind: 'surgery',              // ✅ declared\n  resource: { type: 'operatory-chair', id: 'chair-3', exclusive: true },\n});\n\nawait service.openShift({ ...input, kind: 'grooming' });\n// ✗ compile error, and at runtime a ShiftError('INVALID_SHIFT') naming the\n//   kinds this service was constructed with.\n```\n\nAn empty, blank or duplicated entry throws `ShiftConfigError` at construction —\nwhere it is legible — rather than at the request where nobody can clock in.\n\n### Reading a kind back\n\n`Shift.kind` is a `string`, because a row holds whatever is in the column. A\nhost that wants its union back narrows with the guard `defineShiftVocabulary`\nreturns, built from the same declaration the service validates against:\n\n```ts\nconst vocabulary = defineShiftVocabulary(CLINIC_KINDS);\nconst kind = vocabulary.has(shift.kind) ? shift.kind : null;\n//    ^? 'hygiene' | 'surgery' | 'reception' | null\n```\n\nOne declaration, so the values a service accepts and the values a host narrows\nto cannot drift apart.\n\n`resourceType` and `resourceId` have always worked this way: carried by value,\nwith the host owning what they mean. Kinds simply joined them.\n\n## Upgrading from 3.x\n\n`createShiftService(db)` no longer compiles: `options.kinds` is required.\n\n1. Declare your kinds in host code as an `as const` tuple and pass them.\n2. Replace imports of the removed kind list, kind union and the two\n   resource-type constants with host constants of your own. The resource-type\n   values were never validated by this package — they are strings it stores and\n   compares — so keeping the same literals preserves every existing row.\n3. Migrate. `20260821120000_shift_kind_host_vocabulary` drops the CHECK\n   constraint that restricted `shifts.kind` to the extraction origin's two\n   values and replaces it with a non-blank check. Existing rows satisfy it, so\n   there is no backfill.\n\nNothing else changed: the wire shape of a shift, the audit port, the exclusivity\nrules, the sweep and every error code are as they were.\n\n## Exports\n\n| Export | What it is |\n| --- | --- |\n| `createShiftService(db, options)` | The service. `options.kinds` is required. |\n| `defineShiftVocabulary(kinds)` | Validates a host's kinds; returns the type guard over them. |\n| `createMemoryShiftDb()` | An in-memory `ShiftDb`, for host tests. |\n| `ShiftError` / `ShiftConfigError` | A request outcome, and a wiring mistake. |\n| `@12-apps/shift/jobs` | The auto-close blueprint, deps left open. |\n| `@12-apps/shift/manifest` | The wiring manifest and its server half. |\n\n## Database\n\nThe Prisma partial (`prisma/shift.prisma`) and the migrations under\n`prisma/migrations` are contributed to the host's schema. Tenant, user and\nresource identifiers are stored by value, with no foreign key into host tables —\nwhich is what lets a host purge a tenant without the package having an opinion.\n","readmeFilename":"README.md"}