{"_id":"@hublo/sentinel","_rev":"136-66c8c6528c514a32b43e5e15512c3cb0","name":"@hublo/sentinel","dist-tags":{"alpha":"1.4.0-alpha.58","latest":"1.4.1"},"versions":{"0.1.0-alpha.0":{"name":"@hublo/sentinel","version":"0.1.0-alpha.0","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@0.1.0-alpha.0","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"e07a8796ebb72028b9a223f87b632c58ac597630","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-0.1.0-alpha.0.tgz","fileCount":14,"integrity":"sha512-L2RUFnS6YHIsiKgtv5WMFBJsVdd16b5cqj8ffoejJwJaxQa3dF/lqGhTQ6eKDWBDTv+0/LQVOn87DHN87ptf0w==","signatures":[{"sig":"MEYCIQDEPFgoKIq8DRYLXMZZWoGrVbHjdtuJQTibWfkYo4QDfAIhAPsfFGbARiNyEu9bD/EFi3+gMrXQaHuxgLZFTRRs3GLd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":145279},"type":"module","_from":"file:hublo-sentinel-0.1.0-alpha.0.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","release":"pnpm build && changeset publish","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","changeset":"changeset","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/private/var/folders/gg/yv3yylnn25n87fcf1s9h_6540000gp/T/4b0c170c36da2cb86f023a01ebae0c27/hublo-sentinel-0.1.0-alpha.0.tgz","_integrity":"sha512-L2RUFnS6YHIsiKgtv5WMFBJsVdd16b5cqj8ffoejJwJaxQa3dF/lqGhTQ6eKDWBDTv+0/LQVOn87DHN87ptf0w==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"11.12.1","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"26.0.0","dependencies":{"commander":"^13.0.0","jsonc-parser":"^3.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","@changesets/cli":"^2.27.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_0.1.0-alpha.0_1785486557854_0.4080706630607409","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.1":{"name":"@hublo/sentinel","version":"0.1.0-alpha.1","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@0.1.0-alpha.1","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"e54e1a641d4690a819d10cebda4c1bf987931964","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-0.1.0-alpha.1.tgz","fileCount":14,"integrity":"sha512-lP4EkAIYClbJ6Q66YvMHUM5fd79hmHbBhzYguuvzwgi3hQHPAr9t6M3Wrm6DcrsfFoILsPxRth0IS+TRkBDRHg==","signatures":[{"sig":"MEUCIDb9OPWZrZXrbe3iVk2UdvTAiu0vG9iiGS+AYk4kHaFXAiEA6zWuwmq4X+cb+iWhE2e/NdpOSAb81J/XP3LAx4j4M0s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":147092},"type":"module","_from":"file:hublo-sentinel-0.1.0-alpha.1.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","release":"pnpm build && changeset publish","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","changeset":"changeset","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/private/var/folders/gg/yv3yylnn25n87fcf1s9h_6540000gp/T/0cb39b4e07b7cc445c42221f844b1c12/hublo-sentinel-0.1.0-alpha.1.tgz","_integrity":"sha512-lP4EkAIYClbJ6Q66YvMHUM5fd79hmHbBhzYguuvzwgi3hQHPAr9t6M3Wrm6DcrsfFoILsPxRth0IS+TRkBDRHg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"11.12.1","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"26.0.0","dependencies":{"commander":"^13.0.0","jsonc-parser":"^3.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","@changesets/cli":"^2.27.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_0.1.0-alpha.1_1785487821273_0.36896625717961595","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.2":{"name":"@hublo/sentinel","version":"0.1.0-alpha.2","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@0.1.0-alpha.2","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"33e177ca2b91e8c262b8592c0186c0d336d3d7af","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-0.1.0-alpha.2.tgz","fileCount":14,"integrity":"sha512-UrlEgarkaTgc61nCAIkhW72DsXryxuEJYdxwJw1b9PeFe5DoO8TBtvXTcQe1geKJgulbfNvB3JV8k4wVTEufcA==","signatures":[{"sig":"MEYCIQDXqJI9vaQaQ5b3m2tLYOzfAW2oeBagXyqn/7xrFGZAyQIhALapiafe/xFVhD8AIwFhkvFLNN4EYhLypkEPtuYy/Iad","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":149454},"type":"module","_from":"file:hublo-sentinel-0.1.0-alpha.2.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","release":"pnpm build && changeset publish","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","changeset":"changeset","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/private/var/folders/gg/yv3yylnn25n87fcf1s9h_6540000gp/T/6724d209c854186395038c8d638dbc21/hublo-sentinel-0.1.0-alpha.2.tgz","_integrity":"sha512-UrlEgarkaTgc61nCAIkhW72DsXryxuEJYdxwJw1b9PeFe5DoO8TBtvXTcQe1geKJgulbfNvB3JV8k4wVTEufcA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"11.12.1","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"26.0.0","dependencies":{"commander":"^13.0.0","jsonc-parser":"^3.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","@changesets/cli":"^2.27.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_0.1.0-alpha.2_1785490505747_0.9901196520379809","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.3":{"name":"@hublo/sentinel","version":"0.1.0-alpha.3","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@0.1.0-alpha.3","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"ce3a7afe21ec75ac7b17dc646a81bff0a79c20c0","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-0.1.0-alpha.3.tgz","fileCount":14,"integrity":"sha512-XUimk0d5PDoQkJPQJEanW6MgtQNRCd8MQ7tJJ7m8+F6yMd8/R7PKVL3e+MMPlxIACgmbEL6DDCNRk+05Q6CPRw==","signatures":[{"sig":"MEUCIAew4lIyNn9n2VnbkKRPaikBiSmCezsZlFeaeTFyLPM+AiEA31YE6UBa+LBxcuSJdn4TjCZqq5iGXnPvIjMOuslVm/I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":152322},"type":"module","_from":"file:hublo-sentinel-0.1.0-alpha.3.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","release":"pnpm build && changeset publish","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","changeset":"changeset","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/private/var/folders/gg/yv3yylnn25n87fcf1s9h_6540000gp/T/b33459d6f3dc13294c1bae4731f645b6/hublo-sentinel-0.1.0-alpha.3.tgz","_integrity":"sha512-XUimk0d5PDoQkJPQJEanW6MgtQNRCd8MQ7tJJ7m8+F6yMd8/R7PKVL3e+MMPlxIACgmbEL6DDCNRk+05Q6CPRw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"11.12.1","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"26.0.0","dependencies":{"commander":"^13.0.0","jsonc-parser":"^3.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","@changesets/cli":"^2.27.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_0.1.0-alpha.3_1785495539793_0.1974575924758828","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.4":{"name":"@hublo/sentinel","version":"0.1.0-alpha.4","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@0.1.0-alpha.4","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"4b78bb1f9ab474ce5cb056ac1cbaf998256c8119","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-0.1.0-alpha.4.tgz","fileCount":14,"integrity":"sha512-AkyTwr9LpeblgT6B597IlmxU6nt2YoBj67R8U19yjWivrWE1ehhZO7Sc1qW0boAFv9hY7KrNVWREYjBK25eOvw==","signatures":[{"sig":"MEYCIQC9EVaWt8IWfGtXzv3QehAMSXyKqy0Y5YRl0SltJY4nYQIhAPT/2v4wUNY13fhD9YpSwlWsScU2rx/hYB5NzR0lgu21","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":155981},"type":"module","_from":"file:hublo-sentinel-0.1.0-alpha.4.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","release":"pnpm build && changeset publish","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","changeset":"changeset","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/private/var/folders/gg/yv3yylnn25n87fcf1s9h_6540000gp/T/d3dd6ba1eb1eb0c4049d46cb6f8e894a/hublo-sentinel-0.1.0-alpha.4.tgz","_integrity":"sha512-AkyTwr9LpeblgT6B597IlmxU6nt2YoBj67R8U19yjWivrWE1ehhZO7Sc1qW0boAFv9hY7KrNVWREYjBK25eOvw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"11.12.1","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"26.0.0","dependencies":{"commander":"^13.0.0","jsonc-parser":"^3.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","@changesets/cli":"^2.27.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_0.1.0-alpha.4_1785499047360_0.4161212223957016","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.5":{"name":"@hublo/sentinel","version":"0.1.0-alpha.5","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@0.1.0-alpha.5","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"2c7ba6a7a597d7d504565a018440ffabb40d2f35","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-0.1.0-alpha.5.tgz","fileCount":14,"integrity":"sha512-U9xo7cavAimEJL0/w1YN1ihstbU40cLnxUaJKwtamZe/LqDeOW095+cpxgLHudlpWaiGHxUjaT+hXd3moEjgeQ==","signatures":[{"sig":"MEUCIBAFx86hhdnPb+g4ZiwFkuiaZFKM9bP0nMiP5Z/wUBRsAiEA2x5Duy/TaWvAeF8YQGNet6cogOK02Z5LX9FiQNM97so=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":163016},"type":"module","_from":"file:hublo-sentinel-0.1.0-alpha.5.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","release":"pnpm build && changeset publish","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","changeset":"changeset","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/private/var/folders/gg/yv3yylnn25n87fcf1s9h_6540000gp/T/4d1037ae47b9e4c916bf1371e4c11892/hublo-sentinel-0.1.0-alpha.5.tgz","_integrity":"sha512-U9xo7cavAimEJL0/w1YN1ihstbU40cLnxUaJKwtamZe/LqDeOW095+cpxgLHudlpWaiGHxUjaT+hXd3moEjgeQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"11.12.1","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"26.0.0","dependencies":{"commander":"^13.0.0","jsonc-parser":"^3.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","@changesets/cli":"^2.27.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_0.1.0-alpha.5_1785502856076_0.8877154818390278","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.6":{"name":"@hublo/sentinel","version":"0.1.0-alpha.6","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@0.1.0-alpha.6","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"1e6e69979ab269d2f0c78baaa31a41ee83410bb4","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-0.1.0-alpha.6.tgz","fileCount":14,"integrity":"sha512-KJlZfVoFg7QxSFsGbE+ztobc++Hq6daQSNa78AoOG8yKilZb/vI64npbfzxql12nUHVorckw1u8rUE0nDw6NKA==","signatures":[{"sig":"MEQCIDKy8I3cvaynOSF/4g8bqWU8s4jQCHX4VbIUbaKVRq/oAiBR6ATHk/AfDlqwFKCbKOIFmROq2VTjwh6aNv8MEBFT3g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":172068},"type":"module","_from":"file:hublo-sentinel-0.1.0-alpha.6.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","release":"pnpm build && changeset publish","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","changeset":"changeset","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/41f05681c4cba8ef0693842dfab10af1/hublo-sentinel-0.1.0-alpha.6.tgz","_integrity":"sha512-KJlZfVoFg7QxSFsGbE+ztobc++Hq6daQSNa78AoOG8yKilZb/vI64npbfzxql12nUHVorckw1u8rUE0nDw6NKA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"commander":"^13.0.0","jsonc-parser":"^3.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","@changesets/cli":"^2.27.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_0.1.0-alpha.6_1785509076744_0.43050450310690835","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.7":{"name":"@hublo/sentinel","version":"0.1.0-alpha.7","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@0.1.0-alpha.7","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"04d8d7ee352f10cc3225eba7c85e744acd5031e3","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-0.1.0-alpha.7.tgz","fileCount":14,"integrity":"sha512-VDdN/QMtFF2uhERD9rz2uJn8ovpH6FqmkvfW5/NXrA+0oue3fJC2aQgVbCtZOvXC8ILP1VCpz/pg+iscsLvl8Q==","signatures":[{"sig":"MEQCICZxUTb8EmczXIRfkcAUqnGfv8Vv28XwalL2b07uzwIWAiBKvS9w8N3yGhUDpN+XToUxPkI1r2WBGBOl52qlPaUZ8g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":172068},"type":"module","_from":"file:hublo-sentinel-0.1.0-alpha.7.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","release":"pnpm build && changeset publish","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","changeset":"changeset","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/d06718b9166e2649c1c2607719c2691f/hublo-sentinel-0.1.0-alpha.7.tgz","_integrity":"sha512-VDdN/QMtFF2uhERD9rz2uJn8ovpH6FqmkvfW5/NXrA+0oue3fJC2aQgVbCtZOvXC8ILP1VCpz/pg+iscsLvl8Q==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"commander":"^13.0.0","jsonc-parser":"^3.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","@changesets/cli":"^2.27.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_0.1.0-alpha.7_1785510303996_0.876409753003673","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.8":{"name":"@hublo/sentinel","version":"0.1.0-alpha.8","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@0.1.0-alpha.8","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"cb64ef5bf4a5fe3c36ce31eaa47bf478c3602a07","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-0.1.0-alpha.8.tgz","fileCount":14,"integrity":"sha512-nY/NHmGegVZSuTkW8QV/Ulj8a0MDvswSAKINc3DDPOaRGZXsdgDdn6Of5qiO4vGFFMLM/wGEZ5HbNktIWk8S+A==","signatures":[{"sig":"MEUCIQDrynvYr0fYEtiPhxljZcGiXcFbqha2oCLJzWvLJcz2xgIgXiRI7fE4dhcPm0h4Yh7+7lvdODDKZoB+FT5OflQRON0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":189027},"type":"module","_from":"file:hublo-sentinel-0.1.0-alpha.8.tgz","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","release":"pnpm build && changeset publish","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","changeset":"changeset","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/2a7627efdf24cccc0440e86eff92bd6b/hublo-sentinel-0.1.0-alpha.8.tgz","_integrity":"sha512-nY/NHmGegVZSuTkW8QV/Ulj8a0MDvswSAKINc3DDPOaRGZXsdgDdn6Of5qiO4vGFFMLM/wGEZ5HbNktIWk8S+A==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"commander":"^13.0.0","jsonc-parser":"^3.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","@changesets/cli":"^2.27.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_0.1.0-alpha.8_1785513239316_0.8174414768896718","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.9":{"name":"@hublo/sentinel","version":"0.1.0-alpha.9","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@0.1.0-alpha.9","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"c04604bb88882db2f747b0b7fa3b525b4f0ce820","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-0.1.0-alpha.9.tgz","fileCount":14,"integrity":"sha512-wp9pY/8y/DPsgrXuumqhQv0gKMJ6nDu4WsaBRYz4eoj1JZRyb8kdyCQ8wvB3P2QMXLFC0XQH7Fmfi63wCD9RZA==","signatures":[{"sig":"MEYCIQD/mw4NCOm74u+TqxniDcyTGx2ZR7iVe2to0pXwyOgU6wIhAKfkxyNpd30vGxsO2WJu3j1lGyL5zEJjkSXLTFPVyOC2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":220242},"type":"module","_from":"file:hublo-sentinel-0.1.0-alpha.9.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/e3ed19d15a9050e4c168c00f217156b9/hublo-sentinel-0.1.0-alpha.9.tgz","_integrity":"sha512-wp9pY/8y/DPsgrXuumqhQv0gKMJ6nDu4WsaBRYz4eoj1JZRyb8kdyCQ8wvB3P2QMXLFC0XQH7Fmfi63wCD9RZA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"commander":"^13.0.0","jsonc-parser":"^3.3.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_0.1.0-alpha.9_1785841032283_0.16009155014354803","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.10":{"name":"@hublo/sentinel","version":"0.1.0-alpha.10","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@0.1.0-alpha.10","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"81afae717984e6498e13413ef5bb1c953a9e1387","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-0.1.0-alpha.10.tgz","fileCount":14,"integrity":"sha512-WhCoepvndevUkhr796VXXGYMXWLO3bSwnzCQzUxm6XIuWBYCZg8wFDJm/mHwCFLCjdIIYMbGg6rvvanJJE8Yiw==","signatures":[{"sig":"MEYCIQDxF3KX42FV5yrYq/sFXmknetNXFT7lba9aE6GKV5GVQAIhANqsJdxOp7BJYT/BdkaPGm7KnzpBVxOkCb5j0rl0XoZP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222231},"type":"module","_from":"file:hublo-sentinel-0.1.0-alpha.10.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/459a0a1ab7dfb77cf63a7716eb7648d9/hublo-sentinel-0.1.0-alpha.10.tgz","_integrity":"sha512-WhCoepvndevUkhr796VXXGYMXWLO3bSwnzCQzUxm6XIuWBYCZg8wFDJm/mHwCFLCjdIIYMbGg6rvvanJJE8Yiw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"commander":"^13.0.0","jsonc-parser":"^3.3.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_0.1.0-alpha.10_1785851105532_0.835234550725902","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.11":{"name":"@hublo/sentinel","version":"0.1.0-alpha.11","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@0.1.0-alpha.11","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"b55e648fbfad474dd55af84d2329d7d650dd3488","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-0.1.0-alpha.11.tgz","fileCount":14,"integrity":"sha512-t/0pki69qaS0BYASo9tpnpLtaSTpx+hfYhSfa6RvCV4uhrGCQSDHKd60Mpvx6dtvRcuLsKwLezZmoglN2dL2hA==","signatures":[{"sig":"MEUCIQCj4LZBBcItb/vzhGlPbZMmBzSqzRAgWAQWqTOTPi+WswIgPoF62/B+UkAmdQGG9Bza6F4T9tgP4O0YWunCRYiAtFA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222685},"type":"module","_from":"file:hublo-sentinel-0.1.0-alpha.11.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/131ca12077f7d0bfff083887ab585408/hublo-sentinel-0.1.0-alpha.11.tgz","_integrity":"sha512-t/0pki69qaS0BYASo9tpnpLtaSTpx+hfYhSfa6RvCV4uhrGCQSDHKd60Mpvx6dtvRcuLsKwLezZmoglN2dL2hA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"commander":"^13.0.0","jsonc-parser":"^3.3.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_0.1.0-alpha.11_1785859487656_0.27353598949759084","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.12":{"name":"@hublo/sentinel","version":"0.1.0-alpha.12","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@0.1.0-alpha.12","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"618fc15e2371e72a66c6ee16ce9ced248e25535b","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-0.1.0-alpha.12.tgz","fileCount":14,"integrity":"sha512-YrzbjN8EDQlD5ew5fwTDbNclH3MbUALPLUWe4+b6YwxMB6jvwv0weo0UtwTCjen9ns6qLmjZWf1T/xi29uL9yQ==","signatures":[{"sig":"MEQCICg6bczbXBaQT4L/20H4mlR7Vo2Jis8QpUB/NhajaDpSAiAFbxnx/FxJ7YKX4dcbUVDVwuGQh4zP8SL8nYsAbnJYLg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":236837},"type":"module","_from":"file:hublo-sentinel-0.1.0-alpha.12.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/306218310f87d03ec623ccdac4ddb8b7/hublo-sentinel-0.1.0-alpha.12.tgz","_integrity":"sha512-YrzbjN8EDQlD5ew5fwTDbNclH3MbUALPLUWe4+b6YwxMB6jvwv0weo0UtwTCjen9ns6qLmjZWf1T/xi29uL9yQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"commander":"^13.0.0","jsonc-parser":"^3.3.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_0.1.0-alpha.12_1785864890860_0.16927314588539288","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@hublo/sentinel","version":"1.0.0","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.0.0","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"e0d2549f5d4727b9c027636c5c7df71578ac8d09","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.0.0.tgz","fileCount":11,"integrity":"sha512-B+bdJUTTKQASDEbsa9ZVbxev5D9eITKog2sJ/xOswcbf62y6A7ldPZ0eF60Ghc67CSi/V9WRt7sKKdX2Tjauvg==","signatures":[{"sig":"MEUCIBBp8/jCkabPmAXhKo+pUVHoHQAsopmiojFXC63+JasVAiEA550zLRYRogb/LRmHCLWxwcT0XJIk8lJRQiAurbPG8Js=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":98268},"type":"module","_from":"file:hublo-sentinel-1.0.0.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/9244a91aabcb1d3eeb8c05a7581c5586/hublo-sentinel-1.0.0.tgz","_integrity":"sha512-B+bdJUTTKQASDEbsa9ZVbxev5D9eITKog2sJ/xOswcbf62y6A7ldPZ0eF60Ghc67CSi/V9WRt7sKKdX2Tjauvg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"commander":"^13.0.0","jsonc-parser":"^3.3.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.0.0_1785922689639_0.29730955746372234","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@hublo/sentinel","version":"1.0.1","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.0.1","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"b98a00340c1eb672a440b66c40822c4025747d30","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.0.1.tgz","fileCount":11,"integrity":"sha512-ST0uQetycjxUN1DAuw2Zix4Pl9Fw2coHRZtrnTFC5TNA6DCkRAlytzgp8Zx0N1jemDGnhLxMsQsyk4t9XYb8WQ==","signatures":[{"sig":"MEUCIQCh0GAmr5HMJSjLm95Ab+k0QlMTU6+sDRqAo57RFyRHEAIgKJ0/m65lHMEkF2bd494F+SMhsmhJ8jgK9iYOFUgkgwk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":98268},"type":"module","_from":"file:hublo-sentinel-1.0.1.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/e45ba58746a34a256b074bd8a0783e1e/hublo-sentinel-1.0.1.tgz","_integrity":"sha512-ST0uQetycjxUN1DAuw2Zix4Pl9Fw2coHRZtrnTFC5TNA6DCkRAlytzgp8Zx0N1jemDGnhLxMsQsyk4t9XYb8WQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"commander":"^13.0.0","jsonc-parser":"^3.3.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.0.1_1785925612752_0.3422729138726144","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@hublo/sentinel","version":"1.0.2","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.0.2","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"e14ff374863d5c434f30e7d9766f4adaa03013f7","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.0.2.tgz","fileCount":11,"integrity":"sha512-iUrYzKmlR360KM3qQCVYeeuohawQNl8nTYuwwYm3cUlKRruohw+3sXztBTk2CiLq1OH0gzErWca2mJs5q6bqWA==","signatures":[{"sig":"MEQCIE8t5BBoMHZ+hLcuKqWDAuxppKsRYd70wXS6JsgfDXj6AiAvytls8pW9TmJgtF+W2uPTPi25g/AaeTVehbFvt+l8fA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100343},"type":"module","_from":"file:hublo-sentinel-1.0.2.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/8ca357d9a19db0aa2168b09f249ea022/hublo-sentinel-1.0.2.tgz","_integrity":"sha512-iUrYzKmlR360KM3qQCVYeeuohawQNl8nTYuwwYm3cUlKRruohw+3sXztBTk2CiLq1OH0gzErWca2mJs5q6bqWA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"commander":"^13.0.0","jsonc-parser":"^3.3.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.0.2_1785932316566_0.7518411066304753","host":"s3://npm-registry-packages-npm-production"}},"1.1.0-alpha.1":{"name":"@hublo/sentinel","version":"1.1.0-alpha.1","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.1.0-alpha.1","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"8aa4c18e2a35db1f095faa235b06918a5a2389e7","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.1.0-alpha.1.tgz","fileCount":13,"integrity":"sha512-7+975kzEYQp3TTttPuo54MSQHx+kzF3V0hkpb7bSpvk+qqN0qH70OwYFDyOWk2e3JATZ2Z5HQ09u06IFpCxyYQ==","signatures":[{"sig":"MEQCIDvAwCSKkBUU6LaJTCVQXuH5f2Oac5+qwd9EfAGpERCwAiBHHRfsKiAyaAvPa3rFuWdF3JtQB+IWVZol31rBchMQFg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":140264},"type":"module","_from":"file:hublo-sentinel-1.1.0-alpha.1.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./oxlint/nest":{"default":"./oxlint/nest.json"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/9bafe2e932256ab4fe42a1802b0c8115/hublo-sentinel-1.1.0-alpha.1.tgz","_integrity":"sha512-7+975kzEYQp3TTttPuo54MSQHx+kzF3V0hkpb7bSpvk+qqN0qH70OwYFDyOWk2e3JATZ2Z5HQ09u06IFpCxyYQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"oxlint":"1.77.0","commander":"^13.0.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.1.0-alpha.1_1786440762598_0.48217735925894845","host":"s3://npm-registry-packages-npm-production"}},"1.1.0-alpha.2":{"name":"@hublo/sentinel","version":"1.1.0-alpha.2","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.1.0-alpha.2","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"277dfdd71e043bd18fa50a9c1277f468706699c1","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.1.0-alpha.2.tgz","fileCount":15,"integrity":"sha512-vg8nJFkJfGfMT9q9i2f/VozJb8BqbGvhSIgefp88NTLagPkogE6VHxROJjihd9DEB01aqiXKoGqSbAMAowKzDg==","signatures":[{"sig":"MEUCIB9tKnaMA1KiEzYhX3n/FcI9fOPQTOY0Y5vazrBGDnTNAiEAgg2dA37yY4QdgbJm+MkyoyZw5wdZwpZaSjW1K7ro7w8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":180710},"type":"module","_from":"file:hublo-sentinel-1.1.0-alpha.2.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./oxlint/nest":{"default":"./oxlint/nest.json"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/33e1efa598ff3b055c887e9a426a5eb2/hublo-sentinel-1.1.0-alpha.2.tgz","_integrity":"sha512-vg8nJFkJfGfMT9q9i2f/VozJb8BqbGvhSIgefp88NTLagPkogE6VHxROJjihd9DEB01aqiXKoGqSbAMAowKzDg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"oxlint":"1.77.0","commander":"^13.0.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.1.0-alpha.2_1786461582629_0.3790294436377768","host":"s3://npm-registry-packages-npm-production"}},"1.1.0-alpha.3":{"name":"@hublo/sentinel","version":"1.1.0-alpha.3","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.1.0-alpha.3","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"b80a597ef2616a27fe32332356eeaa48afea3d4d","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.1.0-alpha.3.tgz","fileCount":15,"integrity":"sha512-LhTiCKvc3IDFksoleEx/AL0TIbdZBN/Ie9T8uR6QS7OvqHi2md2aHMCJf69hmtpJfDzlTyeAIPS4aKyepZVznw==","signatures":[{"sig":"MEUCIQCisBQhHafqPfQo5ezdtHc/6kHhP9jnuf8quO1TsQ8EnQIgH74Owbl43F4iQykiNItd7lnEhiYNKmPnlgdIeTYywjI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":183014},"type":"module","_from":"file:hublo-sentinel-1.1.0-alpha.3.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./oxlint/nest":{"default":"./oxlint/nest.json"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/f3b8a71f33607e95ba8dbd086005f445/hublo-sentinel-1.1.0-alpha.3.tgz","_integrity":"sha512-LhTiCKvc3IDFksoleEx/AL0TIbdZBN/Ie9T8uR6QS7OvqHi2md2aHMCJf69hmtpJfDzlTyeAIPS4aKyepZVznw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"oxlint":"1.77.0","commander":"^13.0.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","@nx/eslint-plugin":"23.0.1","eslint-plugin-import":"2.32.0","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.1.0-alpha.3_1786522296837_0.41996884277977076","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@hublo/sentinel","version":"1.0.3","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.0.3","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"0fcad4acbba313710ed34d6e474f6dacfedb9ed6","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.0.3.tgz","fileCount":11,"integrity":"sha512-QVap7wVfILfuA5v6YFOqZivjeC/hdxub5HuvbNfYsdMR8s2ADE+dIsgGBaJBq153FpD6h+Y20IwOdKDSgo771g==","signatures":[{"sig":"MEYCIQCGvPh+Sq92uy/HsfsMVEKrO7Bq21EU3tPyXgoo3AOFFgIhALTqGvBTCnBMuyQi7klT8LMgw64gskiXyKcL1uTS/kjp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":104468},"type":"module","_from":"file:hublo-sentinel-1.0.3.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/6e674d0ca3a008b8c7d99b9d8e195999/hublo-sentinel-1.0.3.tgz","_integrity":"sha512-QVap7wVfILfuA5v6YFOqZivjeC/hdxub5HuvbNfYsdMR8s2ADE+dIsgGBaJBq153FpD6h+Y20IwOdKDSgo771g==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"commander":"^13.0.0","jsonc-parser":"^3.3.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.0.3_1786542139366_0.6078402185918608","host":"s3://npm-registry-packages-npm-production"}},"1.1.0-alpha.4":{"name":"@hublo/sentinel","version":"1.1.0-alpha.4","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.1.0-alpha.4","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"047b0386879e89ce768c7de8a51a9d7d1dc26972","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.1.0-alpha.4.tgz","fileCount":16,"integrity":"sha512-YWWnVJvTaBq15lRXfMCl+mjFUZSkoyau3ilkcwAFDJ8wtLZAnSjntmW3wH/gnJqYs4hwDyfn3cKGHlQbaPK8wQ==","signatures":[{"sig":"MEQCIHNO7pfagZIqjJb34Zds3pNBc4o0MUYGjqIY8f9VLpK8AiAECirQweQmH9DdkbjnnQCw65doErWyj5xIXB3Vh2/3nA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":238444},"type":"module","_from":"file:hublo-sentinel-1.1.0-alpha.4.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup && tsx scripts/build-presets.ts","format":"prettier --write .","lint:fix":"eslint . --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh","format:check":"prettier --check ."},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/71c73ababeaab044e7e702ca8e7ad059/hublo-sentinel-1.1.0-alpha.4.tgz","_integrity":"sha512-YWWnVJvTaBq15lRXfMCl+mjFUZSkoyau3ilkcwAFDJ8wtLZAnSjntmW3wH/gnJqYs4hwDyfn3cKGHlQbaPK8wQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"oxlint":"1.77.0","commander":"^13.0.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","@nx/eslint-plugin":"23.0.1","eslint-plugin-import":"2.32.0","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","eslint":"^10.8.0","vitest":"^2.1.0","prettier":"^3.9.6","@eslint/js":"^10.0.1","typescript":"^5.9.0","@types/node":"^22.0.0","typescript-eslint":"^8.65.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.1.0-alpha.4_1786718450180_0.9945996433151634","host":"s3://npm-registry-packages-npm-production"}},"1.1.0-alpha.5":{"name":"@hublo/sentinel","version":"1.1.0-alpha.5","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.1.0-alpha.5","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"b3e9d72e3f19371d03efb66f20c34ff2201ac9e1","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.1.0-alpha.5.tgz","fileCount":18,"integrity":"sha512-wRLN/w17b1KtLRQEBhKtaq+oe/9y6p4D0ShGfP3BwtKoKI3iqsTXZ1qbM89g4Lym2zJc2rHAghuebRzjOa+Yrg==","signatures":[{"sig":"MEQCICdY05X4ats55q8oqLcsYJcRNKXO59d0mSVNMv5CsCkWAiBi1XlZtjo/bq0MhHSgGdZ9M9T5kgbnrVXboHKbewZTKw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":316340},"type":"module","_from":"file:hublo-sentinel-1.1.0-alpha.5.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/1f219b14ff669c984d6c64831391d727/hublo-sentinel-1.1.0-alpha.5.tgz","_integrity":"sha512-wRLN/w17b1KtLRQEBhKtaq+oe/9y6p4D0ShGfP3BwtKoKI3iqsTXZ1qbM89g4Lym2zJc2rHAghuebRzjOa+Yrg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","@nx/eslint-plugin":"23.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.1.0-alpha.5_1786994901855_0.5820428582640376","host":"s3://npm-registry-packages-npm-production"}},"1.1.0-alpha.6":{"name":"@hublo/sentinel","version":"1.1.0-alpha.6","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.1.0-alpha.6","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"24a7f192fb657c57b9bcd54af4f2dccfd8ef0538","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.1.0-alpha.6.tgz","fileCount":18,"integrity":"sha512-Kf43XBg/POy/UaIjEdGzfsJVk+JECU7LYI8Hc51b4e2y+PIZ5g9QXRF7tXup+ol0TeG7gqK1/dvDG7HJw/B/uw==","signatures":[{"sig":"MEYCIQCz8eQNOdRGirECiSBm0SLFyWhuwJV4ds3nzHG5xSxbpgIhAL8B3wjPBd+aNWHlMvrVRrnKHbHNL4V86LGLUHM7yHVD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":322858},"type":"module","_from":"file:hublo-sentinel-1.1.0-alpha.6.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/467c007e7640de7ee8c4c4f1985a9743/hublo-sentinel-1.1.0-alpha.6.tgz","_integrity":"sha512-Kf43XBg/POy/UaIjEdGzfsJVk+JECU7LYI8Hc51b4e2y+PIZ5g9QXRF7tXup+ol0TeG7gqK1/dvDG7HJw/B/uw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","@nx/eslint-plugin":"23.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.1.0-alpha.6_1787042989894_0.9507404424197652","host":"s3://npm-registry-packages-npm-production"}},"1.1.0-alpha.7":{"name":"@hublo/sentinel","version":"1.1.0-alpha.7","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.1.0-alpha.7","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"2eaf9b627f240386f24e36b255e43f9ffcb293f4","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.1.0-alpha.7.tgz","fileCount":18,"integrity":"sha512-qu5RgXwdPkDOkvoo1dxfXBxotWA6Swv96cdOCymoLrf1mO7QXJ0dwBO53eroTvvyLzErNH5rVzld8I6ucqvFXg==","signatures":[{"sig":"MEYCIQCK2/LY8WyViwR99ZLGOeDqCsR06gE+oeBJTETecase7AIhAM38vSW94cXirNA7suGlAB6KTPiRG/yTa+xTEs3qEkvB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":325912},"type":"module","_from":"file:hublo-sentinel-1.1.0-alpha.7.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/3e3ad1b278b2eef9ffe03c3a76364508/hublo-sentinel-1.1.0-alpha.7.tgz","_integrity":"sha512-qu5RgXwdPkDOkvoo1dxfXBxotWA6Swv96cdOCymoLrf1mO7QXJ0dwBO53eroTvvyLzErNH5rVzld8I6ucqvFXg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","@nx/eslint-plugin":"23.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.1.0-alpha.7_1787056883659_0.28922524984067133","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@hublo/sentinel","version":"1.1.0","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.1.0","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"b100e1805f7557b916ad303f55a1261072cd4ea5","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.1.0.tgz","fileCount":18,"integrity":"sha512-wW1NL1OCsQI19bI6d+/94hjTwi7ASvDgsuoOcxY2RtIwqdb3GUtZrtFEXv9FOaMP5Pmss8dILetiChqTWLKAmQ==","signatures":[{"sig":"MEUCIHXrLwYbGiI6femvfASi0DcSx8n0pu+4zPOa5ikFE4ArAiEAhsBGy15maa/w/B+Shi5ItE+718BkpNaRIznVWfwI7gc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":325904},"type":"module","_from":"file:hublo-sentinel-1.1.0.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/abf03c69f1327458ddc571e69e8d9e3c/hublo-sentinel-1.1.0.tgz","_integrity":"sha512-wW1NL1OCsQI19bI6d+/94hjTwi7ASvDgsuoOcxY2RtIwqdb3GUtZrtFEXv9FOaMP5Pmss8dILetiChqTWLKAmQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","@nx/eslint-plugin":"23.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.1.0_1787729391257_0.14196095640501616","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@hublo/sentinel","version":"1.1.1","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.1.1","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"398634452c06c52e82ebe316109a127937969cb3","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.1.1.tgz","fileCount":18,"integrity":"sha512-KGAPVAJE4kl41nXoGRuidRcDJHMqzzp1wzXOwWyUlYZ7mKtxv7shsdntkLGtQMoygUnv51tmiAB+e5a83Oeb+A==","signatures":[{"sig":"MEYCIQCLGL1am6QyEoSsYPCOSBIcZ39FmTL/xqFHi/b7zQ7wdwIhAIXAHywP2t0xqgF20YHGTJQs4G3ty3PzOMcmj4ASjNWp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":332003},"type":"module","_from":"file:hublo-sentinel-1.1.1.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/80638c0cca59fb71b2aee3bb7c12b10e/hublo-sentinel-1.1.1.tgz","_integrity":"sha512-KGAPVAJE4kl41nXoGRuidRcDJHMqzzp1wzXOwWyUlYZ7mKtxv7shsdntkLGtQMoygUnv51tmiAB+e5a83Oeb+A==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","@nx/eslint-plugin":"23.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.1.1_1787745844177_0.6969720329303881","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@hublo/sentinel","version":"1.1.2","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.1.2","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"2134e98e8c8d4f65f9cf91fbe9329132786964b0","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.1.2.tgz","fileCount":18,"integrity":"sha512-D225pxj+1XD58YF9cBRVS3PLFcA/DwxReB1XzPpZ9cSopxkeW8UYvsu2+oKIRCv4wOrD6w+MMAccPrA1PDMzTQ==","signatures":[{"sig":"MEUCIQCZgrvm0okIgZKfXI8/VQWX+wSNtjQVJdVTv9YCI1DQqwIgdg2JFLGoTyqcGdlpzjjff3rnNOYSMPjhI0WuZ8AfC0A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":332003},"type":"module","_from":"file:hublo-sentinel-1.1.2.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/aacaf42f89abd37ceee93ff20255eca6/hublo-sentinel-1.1.2.tgz","_integrity":"sha512-D225pxj+1XD58YF9cBRVS3PLFcA/DwxReB1XzPpZ9cSopxkeW8UYvsu2+oKIRCv4wOrD6w+MMAccPrA1PDMzTQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","@nx/eslint-plugin":"23.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.1.2_1787746871844_0.4640658427369042","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@hublo/sentinel","version":"1.1.3","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.1.3","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"ebc7072acc1e497e23f9d56172013070450822a3","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.1.3.tgz","fileCount":18,"integrity":"sha512-UWzpqJbaw7YTTYS7mKdyqUBPO8o6Cv5NgfT1xDgbu8wcAxq2tfpLdikuTCHKkjFgqVt3ldOF9RxmHI5IpMIdlA==","signatures":[{"sig":"MEUCIQDqjNdTZuwAzjLd54VmjWSytMvER5FeXWE8iD/khA4DuQIgJ+r9MFa2a7JFvpV36e1IInFSB4XMGPiG+vLK4Bm3n/U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":334428},"type":"module","_from":"file:hublo-sentinel-1.1.3.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/531bdc5fd65053e31ae53e33089a6070/hublo-sentinel-1.1.3.tgz","_integrity":"sha512-UWzpqJbaw7YTTYS7mKdyqUBPO8o6Cv5NgfT1xDgbu8wcAxq2tfpLdikuTCHKkjFgqVt3ldOF9RxmHI5IpMIdlA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","@nx/eslint-plugin":"23.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.1.3_1787760037219_0.7943578101688937","host":"s3://npm-registry-packages-npm-production"}},"1.1.4":{"name":"@hublo/sentinel","version":"1.1.4","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.1.4","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"eb394262e10b0f0823e686ea59d6129bae6d3cc7","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.1.4.tgz","fileCount":18,"integrity":"sha512-B9mr5yCwfEmV+eldWY1jl7bmdiW1ZdoAgXElYKbKMJ9Ar6e1qrN4a8yWPuFzAef1N4W8WQ0+SLLsGDcYwBLRdQ==","signatures":[{"sig":"MEUCIGzc9dfKqW1NDfsF/ZoAAIFBNpYhPTYxs9ts5YyioqjlAiEA51sPIWoD3vudqNy7XFM1g0QkMzV8HcXx8usQECBEneg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":335796},"type":"module","_from":"file:hublo-sentinel-1.1.4.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/808b661ff412e426d6c56bb617d14115/hublo-sentinel-1.1.4.tgz","_integrity":"sha512-B9mr5yCwfEmV+eldWY1jl7bmdiW1ZdoAgXElYKbKMJ9Ar6e1qrN4a8yWPuFzAef1N4W8WQ0+SLLsGDcYwBLRdQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","@nx/eslint-plugin":"23.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.1.4_1787813697415_0.3870726026701161","host":"s3://npm-registry-packages-npm-production"}},"1.1.5":{"name":"@hublo/sentinel","version":"1.1.5","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.1.5","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"d847995364ad8fc063b896f927adab75b454f9c5","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.1.5.tgz","fileCount":18,"integrity":"sha512-32MDHEhmzGSCptXc5XZa9/Ul86nowyKYkThMzkIxA2QnwN5epQletIU57+BPbPUfqp9bt5lDb6e464gbeFaZyA==","signatures":[{"sig":"MEYCIQD6NaqBErg3dhVrMC9ezunOIAlui3RYzqFdU///0/6sggIhAPzYl2SM+ttOWYKWIIgxs6P3COnYoFI2/fUVZWA4k9Bv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":337950},"type":"module","_from":"file:hublo-sentinel-1.1.5.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/635b8a82f0b48ff6ac7266d166f13c63/hublo-sentinel-1.1.5.tgz","_integrity":"sha512-32MDHEhmzGSCptXc5XZa9/Ul86nowyKYkThMzkIxA2QnwN5epQletIU57+BPbPUfqp9bt5lDb6e464gbeFaZyA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","@nx/eslint-plugin":"23.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.1.5_1787827916391_0.2700019614559903","host":"s3://npm-registry-packages-npm-production"}},"1.1.6":{"name":"@hublo/sentinel","version":"1.1.6","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.1.6","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"a24f04862021bfcb57f533272d9f1cf3f4741ad6","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.1.6.tgz","fileCount":18,"integrity":"sha512-tfD5o80BmD/BPq8uzopX1/hJpvYdPrS91m5W+jzx5rvmZEhi9+qHHbxMw2+G50cy9H/sQecCFn6q7J79KNNpOg==","signatures":[{"sig":"MEYCIQCE5oA32O4LrXP3/lq6B4sFqFt5rbJDg/RkknzsO2uLOgIhAJQkPCBZpaIAdy360bMbJLBlC39QjiBF2xId7iFRO/Jr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":345615},"type":"module","_from":"file:hublo-sentinel-1.1.6.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/428842924c785d3946d99e25a1273741/hublo-sentinel-1.1.6.tgz","_integrity":"sha512-tfD5o80BmD/BPq8uzopX1/hJpvYdPrS91m5W+jzx5rvmZEhi9+qHHbxMw2+G50cy9H/sQecCFn6q7J79KNNpOg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","@nx/eslint-plugin":"23.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.1.6_1787908540448_0.8805835055597411","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.0":{"name":"@hublo/sentinel","version":"1.2.0-alpha.0","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.0","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"9566c875d9d2895be4ab9ee87729b76bf5669981","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.0.tgz","fileCount":27,"integrity":"sha512-gN+l8n5V4RD5Af5tcBSzMtpxd0IsMQCBJ1eKTnhaaGBfY4LMJVi26ZPdwHQpj+EQLed4GyqXDndRyUbPjfZ3Tg==","signatures":[{"sig":"MEUCIGmfFQO5PtsEpPDtgovm+Vth7XuIg719jfnyOD7TZKRWAiEAlEhXwgulptbBSz3+HQt8yIyQjUppBViaktehsB59+Q8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":378558},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.0.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/react":{"types":"./dist/roles/build/react-app.d.ts","import":"./dist/roles/build/react-app.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/63302de012b567d57a2936053e5b9c90/hublo-sentinel-1.2.0-alpha.0.tgz","_integrity":"sha512-gN+l8n5V4RD5Af5tcBSzMtpxd0IsMQCBJ1eKTnhaaGBfY4LMJVi26ZPdwHQpj+EQLed4GyqXDndRyUbPjfZ3Tg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.0_1787923246441_0.049306930803277194","host":"s3://npm-registry-packages-npm-production"}},"1.1.7":{"name":"@hublo/sentinel","version":"1.1.7","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.1.7","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"ad2bf57533c4238a4cafbde77fccba2bc9cdf635","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.1.7.tgz","fileCount":18,"integrity":"sha512-zknrqe5pYWZ2gEp8pqNFBpM+f96Cm/MotJRF4oFSvLBl10N4ywFbEFCuHZiXxaV6kyXQbhHy9/KysvOHhRdqfA==","signatures":[{"sig":"MEUCIQCXVOh3gR/CCFWFFAN5g/RPVO/kPuQaLVjuWxFK4MAdJAIgN2sW25/Rygi5JDGfrkH8XJaGK9UoV9ISuKNIdIcK0io=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":346986},"type":"module","_from":"file:hublo-sentinel-1.1.7.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/529d7c3c436225e3ecaa24d8807da6a4/hublo-sentinel-1.1.7.tgz","_integrity":"sha512-zknrqe5pYWZ2gEp8pqNFBpM+f96Cm/MotJRF4oFSvLBl10N4ywFbEFCuHZiXxaV6kyXQbhHy9/KysvOHhRdqfA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","@nx/eslint-plugin":"23.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.1.7_1787928059661_0.641307787019896","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.1":{"name":"@hublo/sentinel","version":"1.2.0-alpha.1","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.1","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"c5ec6c4865a710f364a820b917a13a6d69d97219","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.1.tgz","fileCount":27,"integrity":"sha512-bqXnz0gEUA91Lfw8NKfycHrmnS7IGQftLB16lF/obBTs4rZH1Ec6b3Ao6ynhIWIBZVpqvsRJ7TvwxGMQILGZqw==","signatures":[{"sig":"MEQCIBIdcaI8Lm4ygRiqHgZGX0Rw715WeYFs3aWOFkTAeDg+AiAvAOm/5Ayru6hi1obwUi3gsj49yLxZ7V/PIY2OytbHnA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":390700},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.1.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/react":{"types":"./dist/roles/build/react-app.d.ts","import":"./dist/roles/build/react-app.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/e31aa88fc4a8d875b19655d4c86666a2/hublo-sentinel-1.2.0-alpha.1.tgz","_integrity":"sha512-bqXnz0gEUA91Lfw8NKfycHrmnS7IGQftLB16lF/obBTs4rZH1Ec6b3Ao6ynhIWIBZVpqvsRJ7TvwxGMQILGZqw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.1_1788178141220_0.5481520886615916","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.2":{"name":"@hublo/sentinel","version":"1.2.0-alpha.2","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.2","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"bfe74eae8103d92bfacb201be47226612c75d961","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.2.tgz","fileCount":26,"integrity":"sha512-w8tBJxwdc7LWuk/J3+1lX0CrpHrl+ZRTIYCBYy/RdAI7nFD29mMUC9GQldxdHegbc02PN7Ff3QXHcT5+3xuzsw==","signatures":[{"sig":"MEUCIQD+wEMDIdy97c4yRwXaZ2qTL7OyJn68yDjbeWKUpI7nXwIgMn3zUH0/iMbbPDizjAErznkKXf2JX9TcT0ODhi4x17U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":388552},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.2.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/9d7c281fe03d190159e1c8e39eb99e19/hublo-sentinel-1.2.0-alpha.2.tgz","_integrity":"sha512-w8tBJxwdc7LWuk/J3+1lX0CrpHrl+ZRTIYCBYy/RdAI7nFD29mMUC9GQldxdHegbc02PN7Ff3QXHcT5+3xuzsw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","oxc-parser":"0.147.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.2_1788268788150_0.9236800081458514","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.3":{"name":"@hublo/sentinel","version":"1.2.0-alpha.3","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.3","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"78fcc1614628ba4b149676f853546fa9cc308e47","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.3.tgz","fileCount":26,"integrity":"sha512-7NwGO+sv9P21/ktkRQv4XGq4tB/AmqPoggw2FrDK0ouRyR+Xl7laB3X4zU8sQnjWa8UxPnaTnBRUV7gf0puPSw==","signatures":[{"sig":"MEUCIQCrRbehpLZqABh8u19n1LLPxIkZiDenLOsfnfifV9gL5wIgN0Al0NsPHcshThg1zX4gvl+BvYD7YoofemBTs+JWrWo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":389659},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.3.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/f637db3181ef5562eb7d2b741cd7cb90/hublo-sentinel-1.2.0-alpha.3.tgz","_integrity":"sha512-7NwGO+sv9P21/ktkRQv4XGq4tB/AmqPoggw2FrDK0ouRyR+Xl7laB3X4zU8sQnjWa8UxPnaTnBRUV7gf0puPSw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","oxc-parser":"0.147.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.3_1788274039288_0.16208579256129418","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.4":{"name":"@hublo/sentinel","version":"1.2.0-alpha.4","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.4","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"d6ccabe5b41f68088245f288a2d4d23dab9c0054","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.4.tgz","fileCount":26,"integrity":"sha512-nfSTbbXoBUNKhBqM3DQM6aGMAMWrRrK9pFE2k4RVJSTIJYuQtJu4K9n9DdL/FNzoaOI1+Ul951ay6DO+FtMnUA==","signatures":[{"sig":"MEQCIB8ipL3UtzWq2F+coQoGpxXqt02lvKgdP/ebiWzTKfDRAiA3F0dKMBMIA231m7vkQaO/SUFVpcAWZaciP9ImBC2Hew==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":389783},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.4.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/c6d86038d759d490ac5a5959b5e38b04/hublo-sentinel-1.2.0-alpha.4.tgz","_integrity":"sha512-nfSTbbXoBUNKhBqM3DQM6aGMAMWrRrK9pFE2k4RVJSTIJYuQtJu4K9n9DdL/FNzoaOI1+Ul951ay6DO+FtMnUA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","oxc-parser":"0.147.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.4_1788280410625_0.985516465595458","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.5":{"name":"@hublo/sentinel","version":"1.2.0-alpha.5","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.5","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"c66cc2f70010f425a8c387a9066be70b7fdd1145","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.5.tgz","fileCount":28,"integrity":"sha512-tb18a+t0TAKOpGBQTbmYe6AL5f9NHkmFtxpahDYrjCFres7X0rDL39igdvu1uP8fqX84vQTXx8x/Sr8P0DquQA==","signatures":[{"sig":"MEUCICc4ivenYKwT2uWfAQ6F+Yx+hWaophQYiWJAKkxTxzG3AiEAh2k+UWYZRaQOQROu7+r/kRNLt9f+pyJnftPzfoDOrIk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":402965},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.5.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/e362c7a4903900063860dd79a33a90ed/hublo-sentinel-1.2.0-alpha.5.tgz","_integrity":"sha512-tb18a+t0TAKOpGBQTbmYe6AL5f9NHkmFtxpahDYrjCFres7X0rDL39igdvu1uP8fqX84vQTXx8x/Sr8P0DquQA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.5_1788358876787_0.9371730170732824","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.6":{"name":"@hublo/sentinel","version":"1.2.0-alpha.6","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.6","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"6e54f72464331ac5e9493ab07db0a76fd082ab1d","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.6.tgz","fileCount":28,"integrity":"sha512-+zZtVAFyK6xEk70TgzrFVT9AU30/JVbcNBQ3ZsrAgX9fANnMrcDQFrAU+cySNfPOTevS3XSyxi3Fly2m0EqBSQ==","signatures":[{"sig":"MEUCIQCaJHmy24SDFbqVdRE/A+MbGUfewzNl8tFR6mrbsMYangIgEfCVUdIpnvEUCaaVo2SBbvx/EOu14ehEppypvpB8xuM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":402965},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.6.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/5f3ec30d2ec945f2c9f2481a36fadab3/hublo-sentinel-1.2.0-alpha.6.tgz","_integrity":"sha512-+zZtVAFyK6xEk70TgzrFVT9AU30/JVbcNBQ3ZsrAgX9fANnMrcDQFrAU+cySNfPOTevS3XSyxi3Fly2m0EqBSQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.6_1788359266661_0.9767086305150734","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.7":{"name":"@hublo/sentinel","version":"1.2.0-alpha.7","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.7","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"f2af663fe32e288ee6560cd9c115ecb101920997","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.7.tgz","fileCount":28,"integrity":"sha512-QoWtSAdYhP25Yuc2nmDsAQXmYB8dsPLbCkJj5Y3g3UwV3qEZ0Tv2wEswWE4Toz3cYNhxc5obuXGNR2hXxJ86Tw==","signatures":[{"sig":"MEYCIQCygmgOVLfI2vDTO0hD+7xOlOfdQRd5KyCEP+Yc8VLzigIhAN9ctMMH6dMsV2r/TiE/6wM8Uc9mZI5O22TSEPfJHuem","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":403057},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.7.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/5d2fb4d3796ac1bccea406985c58537b/hublo-sentinel-1.2.0-alpha.7.tgz","_integrity":"sha512-QoWtSAdYhP25Yuc2nmDsAQXmYB8dsPLbCkJj5Y3g3UwV3qEZ0Tv2wEswWE4Toz3cYNhxc5obuXGNR2hXxJ86Tw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.7_1788359423907_0.43252956650597874","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.8":{"name":"@hublo/sentinel","version":"1.2.0-alpha.8","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.8","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"7646e5e81c49e328b3dfaff8646d9b859f52e354","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.8.tgz","fileCount":28,"integrity":"sha512-yIB9ZjPSW73mnbybQtgXoBT0LzMkQGj49Ryis/4sWEusuSUmker2aufqkRBR8EgHw14Dam2lZpUXitJ6N7xNBg==","signatures":[{"sig":"MEUCIQCn5bsSiCKXdX3BpQsndUNWVbIUF2ZNTe8R8pA5JlLOlwIgGFtprkbt24AUvr7sefJ1uSY0/b6I1Acx69F70U5RNiE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":405853},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.8.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/c2b0a153d25138f14491a2f5727fde91/hublo-sentinel-1.2.0-alpha.8.tgz","_integrity":"sha512-yIB9ZjPSW73mnbybQtgXoBT0LzMkQGj49Ryis/4sWEusuSUmker2aufqkRBR8EgHw14Dam2lZpUXitJ6N7xNBg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.8_1788417793248_0.17695170500929325","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.9":{"name":"@hublo/sentinel","version":"1.2.0-alpha.9","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.9","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"af4669b4318975ee34cd25c8538cfb69cfc460ae","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.9.tgz","fileCount":28,"integrity":"sha512-p29+DPDDZBpi5RpGAOpBXtOvlkmFj0EXWjAgquqR3FGGAfE0IFX+E74r0gs+yArFYgOr7kNyiUQdey546NAilA==","signatures":[{"sig":"MEUCIEZI5LMSJDL5jMHt5SFeHa9iVfuoAPzee5pDxF7kB4wqAiEA4nm5Z/0zA0GOMwMMZRldjaR4wUeqHl2h08TGeopSYxI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":412642},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.9.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/2ea58d742fc116782f5746f593a0bc3d/hublo-sentinel-1.2.0-alpha.9.tgz","_integrity":"sha512-p29+DPDDZBpi5RpGAOpBXtOvlkmFj0EXWjAgquqR3FGGAfE0IFX+E74r0gs+yArFYgOr7kNyiUQdey546NAilA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.9_1788429263004_0.20924248806702495","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.10":{"name":"@hublo/sentinel","version":"1.2.0-alpha.10","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.10","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"aab65759357f1740ebe98a87efd9827d1217e22b","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.10.tgz","fileCount":28,"integrity":"sha512-AX8mubqsnQLtreSdBuIIUe9fpdhKSor37eUKDIWnhGdoAWBUUo2oGxMEbmkIh0pHQPkXqUe/h5PFxgKRUxeJEA==","signatures":[{"sig":"MEUCIEFoV03Onn1vH3DKJbWEu0YG2pMjJg4cePPg+zRVd8nZAiEAtlra4dMpvgPnxVgsx91BhDazb0Z7+wt+XWAYHcVBsEk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":414213},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.10.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/346a1bb016c39de29649d9b40cc34c33/hublo-sentinel-1.2.0-alpha.10.tgz","_integrity":"sha512-AX8mubqsnQLtreSdBuIIUe9fpdhKSor37eUKDIWnhGdoAWBUUo2oGxMEbmkIh0pHQPkXqUe/h5PFxgKRUxeJEA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.10_1788433023126_0.46719410121475957","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.11":{"name":"@hublo/sentinel","version":"1.2.0-alpha.11","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.11","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"2b8775f51d4a83f7c59c6b3f93a7a3cd574cb276","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.11.tgz","fileCount":28,"integrity":"sha512-EEynOTEgwxqVp51rU79E+Wtc8SRnCymkxkZznzZgFz75Rptfc9hBWfRsHwuWWb70l1t4aNMlujgW2LmfDTmCnQ==","signatures":[{"sig":"MEQCIHCkAZ2Kpo9rP4x0NMK0IuvMqDnUuO/J43TK7R8dANDcAiAnQQD40j9tKRCJ8jrJn82BUe8SlMDHJpRhfYvL4aGOdw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":414484},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.11.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/29bc76cbfb8b75dc2e5b0788433e6fb9/hublo-sentinel-1.2.0-alpha.11.tgz","_integrity":"sha512-EEynOTEgwxqVp51rU79E+Wtc8SRnCymkxkZznzZgFz75Rptfc9hBWfRsHwuWWb70l1t4aNMlujgW2LmfDTmCnQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.11_1788439583498_0.373126863218731","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.12":{"name":"@hublo/sentinel","version":"1.2.0-alpha.12","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.12","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"0a1320ff20fe4c70a905527ad66771772d917d28","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.12.tgz","fileCount":28,"integrity":"sha512-nc/LFmkB+v8FapElr9FCidcaW81Ew9RCnRU+v/t6BYwymw8ngLDAuyCcH/cDyFz6vk9QrcmkTNfuJpK7hCqQrg==","signatures":[{"sig":"MEUCIBbn9uwZ5kWTqQ61oo1D3v77lT5kpXrV1Md6aSnok+KoAiEA7cdl+CUrDEz6zz9xhnFkmyT6jiCOh39w6Wvapu6IDF4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":414466},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.12.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/be1971dcf78ae77582dab57828ba4132/hublo-sentinel-1.2.0-alpha.12.tgz","_integrity":"sha512-nc/LFmkB+v8FapElr9FCidcaW81Ew9RCnRU+v/t6BYwymw8ngLDAuyCcH/cDyFz6vk9QrcmkTNfuJpK7hCqQrg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.12_1788440585487_0.2829402439121682","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.13":{"name":"@hublo/sentinel","version":"1.2.0-alpha.13","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.13","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"4f16c0772e98e8495dbca814c7402d258aed98af","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.13.tgz","fileCount":28,"integrity":"sha512-8vVVfZIZjUnjgkl/6BQxP0ibQesGQ+hvtreNDol6rrJNpteU7LccUXvnus5P3Nnyo+HfE/2PfI2cYN9AMUDpIg==","signatures":[{"sig":"MEQCIDPXvGNHEZoYCBvpJsqozBmrEUZQXw5CLcFejUhYQsEQAiAuO144Ib+5WzYqXJY39YCKPEZ98wWPX/2XK9AXI3GbWg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIA7WdoclYey09ZNQJHtW43uHEsol9P5qunJrco1QSnS1AiEAh/8vrHeLl1TAHgkbmTaMr5a+Cuy/cK3acQ/UxEPxyi4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":414786},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.13.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/cb749d8737ec537cd4f8dd85cffe84b5/hublo-sentinel-1.2.0-alpha.13.tgz","_integrity":"sha512-8vVVfZIZjUnjgkl/6BQxP0ibQesGQ+hvtreNDol6rrJNpteU7LccUXvnus5P3Nnyo+HfE/2PfI2cYN9AMUDpIg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.13_1788451859881_0.0870919459772137","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.14":{"name":"@hublo/sentinel","version":"1.2.0-alpha.14","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.14","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"77bb0e7778bf6e78826349d4093350c3162079b3","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.14.tgz","fileCount":30,"integrity":"sha512-9hVDD+WYuHz3ht7Ap2pplIGnhs4GpKMRbuVCY44j1Y47XoxviFFDQeKzNniCEooH5eFVDYNcthGsM4wZcv2JNA==","signatures":[{"sig":"MEUCIQCatHEFKJXHMg8SiTku2OtcRKhc/oV2tZqv49AocydKDgIgV4/IbMKsFWob44ufcOINUA6mzJmWpMEMfO84VZkXJwk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCXFjIOb/hACET6JR4sv1LqXoYfgjpuQ1a3M9Xy+smjKwIhAJlH0bcTgStR+0Rrz2PUfnaA0imCn/8iSjGwjkT0EbSd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":416591},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.14.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/045a21150c56fd7ea4a8c8b421da01e0/hublo-sentinel-1.2.0-alpha.14.tgz","_integrity":"sha512-9hVDD+WYuHz3ht7Ap2pplIGnhs4GpKMRbuVCY44j1Y47XoxviFFDQeKzNniCEooH5eFVDYNcthGsM4wZcv2JNA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.14_1788535468338_0.6485456596472208","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.15":{"name":"@hublo/sentinel","version":"1.2.0-alpha.15","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.15","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"380db1503b4005352cf9c4e6371ace219c5a45c8","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.15.tgz","fileCount":30,"integrity":"sha512-IJQfzv5k+ROAPsqNolgF8qYhwNUDIT1i1P/S2EEXD+l2VJsEH9q1esDicVXHtiYNokfIomjP7Aj52Bu4ntapMQ==","signatures":[{"sig":"MEQCICHEarZbF4kmyQC8I1PzZnpbtcGjTT3pAxOnI0GBrsUlAiB3YHs5yDPtJUCldTl820CiNe9u5V1k5l+wJbt9NI2Umg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIDgzEmo4mUQ6oRvrA/v48U/h9ZTMGBUD4v5PXnqAY9iMAiEA526t9RS48dH9Q3hF+ontiQyAHnbwRCqM42hP5/eqe2M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":416591},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.15.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/20acbf3cd8717df55279712e06154c69/hublo-sentinel-1.2.0-alpha.15.tgz","_integrity":"sha512-IJQfzv5k+ROAPsqNolgF8qYhwNUDIT1i1P/S2EEXD+l2VJsEH9q1esDicVXHtiYNokfIomjP7Aj52Bu4ntapMQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.15_1788536793379_0.988907012781294","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.16":{"name":"@hublo/sentinel","version":"1.2.0-alpha.16","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.16","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"a96428193dff16f69e4052bb56108b34c136dc20","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.16.tgz","fileCount":30,"integrity":"sha512-YE1yCAvYo0zvoW8Efz1oOEpwRl/TMQ2m+6C7F2qWZQhKZKV06IfOiSDFUn673IwlGcU6qkozqIbgNEnwUlEdOA==","signatures":[{"sig":"MEYCIQDUdYbUVgIt0HKNge9sUjsZ1XHQ5d2IEjS1HciXZDQ6fQIhANrDUJik0UfZFaykppt+LGrEL9fOIBHYqabgrzE62/0C","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBnVlNWbPd3qucP6If3JX6395OJQXxZQh+PUnUITGlpWAiA5Jqg4hWRSLKiCaLAwJX7TofJeXN9cn/2RRY0kdUWlvQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":415941},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.16.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/ae55f022280bcfcc08a07c8887d6ea8b/hublo-sentinel-1.2.0-alpha.16.tgz","_integrity":"sha512-YE1yCAvYo0zvoW8Efz1oOEpwRl/TMQ2m+6C7F2qWZQhKZKV06IfOiSDFUn673IwlGcU6qkozqIbgNEnwUlEdOA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.16_1788537147194_0.278076952254096","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.17":{"name":"@hublo/sentinel","version":"1.2.0-alpha.17","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.17","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"2547abb80b085f4b6d7ed0c1f0b7037140d9b6c4","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.17.tgz","fileCount":30,"integrity":"sha512-jh48DZBCeh+yFZnXpEeYuUgf6ys/o8rgiutbTbTW5u+0OYyxaeAPj/gD5IhHnkry2IdVRq2qOdUtWxyentm7Nw==","signatures":[{"sig":"MEYCIQCIl/iiNhpm/QzCcwE+hEY77T+RunXexm0EU5acpvH7eQIhAI2QafhA6sISfSocNcGIakEWAkVPQ8IMvHWMnDLNwNos","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIHdqSQkQ6s7KawTbdyij4Lka6fwnqHUzF+6JNECiw5fHAiBw+XcfYzCp44zFOeGWpj5HoqQY0Axp1Fio4CFA3Jle/g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":419717},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.17.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/5b7a444f2e0fc3d4c5bc75c652d9d2d5/hublo-sentinel-1.2.0-alpha.17.tgz","_integrity":"sha512-jh48DZBCeh+yFZnXpEeYuUgf6ys/o8rgiutbTbTW5u+0OYyxaeAPj/gD5IhHnkry2IdVRq2qOdUtWxyentm7Nw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.17_1788704721234_0.37731302630776686","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.18":{"name":"@hublo/sentinel","version":"1.2.0-alpha.18","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.18","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"2082ebec9c94238b0adc59dabb1a499813d9777b","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.18.tgz","fileCount":30,"integrity":"sha512-j7AOQg448z/Q+dVrAO0zgoAIsYOv3S3RviHwAiqhYRAH8IxPxNH0Qj7ZmVN2hbBSiZAC1qXjNviqhT1X89w1XA==","signatures":[{"sig":"MEUCIQD3UBAK8UEHFtEe7ejv6KpOuKkNTn6UXxdak+kFbic3IQIgJXJPqUfT6dESvqApOYVRy5Qhzh2Fi3bpfEXuu41gVDU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGw6GgtBS3x9L/n55sGRIUDWs8gsR/ijpl5CoslkIgxlAiEAh7qyHUVG8ZTdWbo91pgVlg7nKB9GFL+5QK/C+WIbxC4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":419273},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.18.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/c17d8ac718419d09f1d41a156e60e8d2/hublo-sentinel-1.2.0-alpha.18.tgz","_integrity":"sha512-j7AOQg448z/Q+dVrAO0zgoAIsYOv3S3RviHwAiqhYRAH8IxPxNH0Qj7ZmVN2hbBSiZAC1qXjNviqhT1X89w1XA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.18_1788705573064_0.4891679005995062","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.19":{"name":"@hublo/sentinel","version":"1.2.0-alpha.19","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.19","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"8b125144e36e595b41b54f9f370ba1afddbc2367","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.19.tgz","fileCount":30,"integrity":"sha512-d+b5SNQBGQ6nwKOsp4DeqbwitWlWhSyFjwm8ET/YAzQh8uStkprKqI8Z637wGyQAINBF9gupLb6iXsYcg7oGBA==","signatures":[{"sig":"MEYCIQCYnOLeGZgDuIodQ7cmp2zwjTEXjrZSIB4ptGSkcoG2MgIhAK52eC/jPcPD3YuLRLhy/Jz8OHREz/8TS12rS+RFcMTd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGcjctRN+9y86xVRUWn4NTJga42ppcWH9C94k3kXHAosAiEA7DGggp2Oi/onyS+3d/yQCkY4cHI4GRVZddN4J516hd8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":427157},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.19.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/cffb4f677de02c225eb23203763ba48a/hublo-sentinel-1.2.0-alpha.19.tgz","_integrity":"sha512-d+b5SNQBGQ6nwKOsp4DeqbwitWlWhSyFjwm8ET/YAzQh8uStkprKqI8Z637wGyQAINBF9gupLb6iXsYcg7oGBA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.19_1788766149599_0.32993763030565404","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.20":{"name":"@hublo/sentinel","version":"1.2.0-alpha.20","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.20","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"5e3864a15b1243ed549aef1b25f226856a8baf4b","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.20.tgz","fileCount":30,"integrity":"sha512-EsURrIkmjNiKHyhwGYmakXqrCKr0xtPAtGJ+ZJWrHurEwwOZQGnYcg55Rbquk5gdXo5cSsKh+CLlSULxq0/uZw==","signatures":[{"sig":"MEUCIQDyVN+plFgUaZmKVtxkF/7u2TW0qs3H74/4gfK248kIaQIgUQ9JCD1fZRrvDmREal6RM1uUIxhXG1GDPMXptjOxkAI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICyffBSEQr8oPrZ/bgxGgS7JbDQXTJqjLN5GURTBSOwAAiA7W77f7oEa9qttMtCCQTsUY1QmHtjnRellH1JVelYO4g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":427264},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.20.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/49b7be505ff766ee0750a95fefcbc0a0/hublo-sentinel-1.2.0-alpha.20.tgz","_integrity":"sha512-EsURrIkmjNiKHyhwGYmakXqrCKr0xtPAtGJ+ZJWrHurEwwOZQGnYcg55Rbquk5gdXo5cSsKh+CLlSULxq0/uZw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.0.8","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.20_1788769557895_0.5029972217089387","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.21":{"name":"@hublo/sentinel","version":"1.2.0-alpha.21","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.21","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"8f102d8679337f93dfbf19cefaf063404f087032","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.21.tgz","fileCount":30,"integrity":"sha512-UFDKFbP8L1g/zay1Jf5pbtIT7wHF33At7Qir61A234biQcSR+bnwTlPHND9x8pjEO5kJ4J5keYU2BRmvFib3cw==","signatures":[{"sig":"MEUCIEDzO1cBgrCe1plrNfAlU/Lo9FJ66WGmzQ7m7W8eK2HQAiEA5pXDV7E5/ymLJd+R0R0YGck42W6+vaOj/PZr4PZRrYQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCqlITTMKj1BuE+h9Vhko+fK+oQUtGDMCQrNEtvMULfuwIgM1CElNDx/C1Y/cvizzxwlOaz5fhqMFR92spPJjtLF10=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":427264},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.21.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/8654a1e070b6401ff6f8d1ac96c70a50/hublo-sentinel-1.2.0-alpha.21.tgz","_integrity":"sha512-UFDKFbP8L1g/zay1Jf5pbtIT7wHF33At7Qir61A234biQcSR+bnwTlPHND9x8pjEO5kJ4J5keYU2BRmvFib3cw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","vitest":"^2.1.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.21_1788777976957_0.46270407955824955","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.22":{"name":"@hublo/sentinel","version":"1.2.0-alpha.22","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.22","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"81e779d12fd287abdaf0d4c29587f7cfa21d9558","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.22.tgz","fileCount":30,"integrity":"sha512-+XuUMGBCpMozC/U3Q/ivcDGZGABtbFYRxYvvEQaO9vKQ7yxDFUZU3ucJ7WhctXxung7Z2VY/zCL8tH9XsaBNxQ==","signatures":[{"sig":"MEUCIB1fI+HMOOwvKtAGDaBTP5YFAleUrKtNfJ6057ZG+rxmAiEA/pqxPuUWkb2tsRH0e1xMCJAqaZthyv82v1f1qWR/HrQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBYOnesfbtV6wDiOXsZtnZ0qXuKyPrFk3ql/W60cj/tRAiBE5D1pyANsNjNWcSRvAHGXNqO0NmRpSvuLCfKryhuMrw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":431994},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.22.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/cbac08907e045436695673c09bcbfa98/hublo-sentinel-1.2.0-alpha.22.tgz","_integrity":"sha512-+XuUMGBCpMozC/U3Q/ivcDGZGABtbFYRxYvvEQaO9vKQ7yxDFUZU3ucJ7WhctXxung7Z2VY/zCL8tH9XsaBNxQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.22_1788788247620_0.21380215499809507","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.23":{"name":"@hublo/sentinel","version":"1.2.0-alpha.23","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.23","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"62cf1818d94749440dc5a2e99679a62d47d16d85","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.23.tgz","fileCount":30,"integrity":"sha512-KDkdw8EVxRtC+zPP50DYkwXw8qQnFhsP6AYn06rzuengbDkTHd/XDglnnnTqW5kdnEL0ZnOMtXeDzIHEAB2gmg==","signatures":[{"sig":"MEYCIQDq+kA/za8FwN+6T/Wu8MBkBxtjA5W8wdkjX7etsYwYIwIhAIt7plSFubDp3LDj4kVTPkP97vU5H3SMZeGNjmwLGQeV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIHY4OrYHFthksFt3QOg1ntjgw4qqzr5qwhb66HWnFZLDAiEAw42lzMvnlpQ/3JfScB+Oesu/qZyGafh/PMa2vMH+HlA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":431994},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.23.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/811f517158637ddd6e3b49fdeae9f2ce/hublo-sentinel-1.2.0-alpha.23.tgz","_integrity":"sha512-KDkdw8EVxRtC+zPP50DYkwXw8qQnFhsP6AYn06rzuengbDkTHd/XDglnnnTqW5kdnEL0ZnOMtXeDzIHEAB2gmg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.23_1788794414600_0.10304567814431853","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.24":{"name":"@hublo/sentinel","version":"1.2.0-alpha.24","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.24","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"9d66fbf01de30a1fd1287997518030e08d8e4206","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.24.tgz","fileCount":30,"integrity":"sha512-VnCAU56qpqorStehXzd+26gIFcxdkyEak8hXF/TFgmxbnqLbxI5y2aZfwmoRS7St7QLDISeKavFhY/kmgz9XXQ==","signatures":[{"sig":"MEUCIQC2CZ8YfCyk/9jPhqkBgdmleGiVjabHXAfdnIgrcVTw9AIgeqqnP8gR8Qma8FwmPs+r6A94tPx48xc8ypSjK6Th7TI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIEgfH5Lx2SV9DWFxZr8opDWmAX1FmPMr/9e6cfOsADgTAiB3WLI3Xn47X+0j8dzx52/d5HTAftrXxu+3kjD7qlrKyQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":434378},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.24.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/c9e4aa8692c344e7f3ea403a991ddf6c/hublo-sentinel-1.2.0-alpha.24.tgz","_integrity":"sha512-VnCAU56qpqorStehXzd+26gIFcxdkyEak8hXF/TFgmxbnqLbxI5y2aZfwmoRS7St7QLDISeKavFhY/kmgz9XXQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.24_1788794767771_0.3842492316340371","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.25":{"name":"@hublo/sentinel","version":"1.2.0-alpha.25","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.25","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"9a0ae8aa2dc8015d14ab2574b93e3fd04a362aea","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.25.tgz","fileCount":30,"integrity":"sha512-0G226t3JBq2XhSmD2Rix3RRr4Ow7d3bJPQ1qNSNok3J/yyKQQqQ5mCYy+QZFqTEtNR3nb2Tk4jHKX2NR5qLayQ==","signatures":[{"sig":"MEYCIQDQQrcbhx7nmzVw4iEpMDZ7Z9yhy/oGm1qmhEfTTQ4x8QIhAM9UWFmdVkQKFOOV383e3R+qNszJpDGbgwVocuheil0L","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCICf99L9Cf+zOuaKNDA+njTr9D4zIa6xWT3wSwR6j9OPPAiEA6zOJPW3qlw9JI5FMShx9Tvr3u+kkcIxfMGsKEaqxC64=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":434378},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.25.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/287229504f6dbf4dd13135c41e5dbb60/hublo-sentinel-1.2.0-alpha.25.tgz","_integrity":"sha512-0G226t3JBq2XhSmD2Rix3RRr4Ow7d3bJPQ1qNSNok3J/yyKQQqQ5mCYy+QZFqTEtNR3nb2Tk4jHKX2NR5qLayQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.25_1788797194539_0.025287417054557393","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.26":{"name":"@hublo/sentinel","version":"1.2.0-alpha.26","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.26","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"c9da205bab2a38968b1d97b8f3fcc40fb51f0b14","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.26.tgz","fileCount":30,"integrity":"sha512-qlMaqmEbIAKZtMuky1zk3xpgLYG5m+mzXofu0DMhqdr/P014LCkyvANqoSvSpXQ9nSrT2Vm5Puw9K+/h1YvWyQ==","signatures":[{"sig":"MEQCIDHPC6o5tXG04rkkPOhiGSM5hVaBYdMhi7k1tv2VJkXvAiBGysASMSVeYKpstvM3Imdr3idGpCY7Pc3eM6pp1Ng38w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIB+EadG87Ji7MlkHeYJV+v3fXwOudC+1DkuDkQBTN4S9AiAc3ZQ+bd23+iQhPqfX5bT1L2JXgQEOMrPzdo+GWZRlWw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":435980},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.26.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/ad5c07f2c606f385f0dbbac1a4444d95/hublo-sentinel-1.2.0-alpha.26.tgz","_integrity":"sha512-qlMaqmEbIAKZtMuky1zk3xpgLYG5m+mzXofu0DMhqdr/P014LCkyvANqoSvSpXQ9nSrT2Vm5Puw9K+/h1YvWyQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.26_1788798466081_0.7468743795728989","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.27":{"name":"@hublo/sentinel","version":"1.2.0-alpha.27","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.27","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"a07f0a55334707f8cf363234ef724ddf3f5aa810","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.27.tgz","fileCount":30,"integrity":"sha512-Q9PBjbJcfHchmxjBuPSDlnGdZKbRIkoqBH9iZQ71NDYpvCGff1RuSppaZFLnOpzRzwxa4eyhHZwjugrHlUEbdw==","signatures":[{"sig":"MEUCIGdv5A8jwfS9myFPai8bDnSMFAFSZQFmgHRtsKtz9HVXAiEA3QfdWdsuthg4Ytc0nr2szqWc4LiJ/GCrZA1pIqUoKmo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCWNyDoXdluNIxvibI+5CV26jP/Zq8DEbg9iUAQ9wIlGgIgMClYGbwIVYgUnLFPiwawtnVcA77PSWRc6G1Tq1wC6Kg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":439041},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.27.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/446ebe93c2c7b7602cdfa7b4f90763b4/hublo-sentinel-1.2.0-alpha.27.tgz","_integrity":"sha512-Q9PBjbJcfHchmxjBuPSDlnGdZKbRIkoqBH9iZQ71NDYpvCGff1RuSppaZFLnOpzRzwxa4eyhHZwjugrHlUEbdw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.27_1788869069960_0.430707535938176","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.28":{"name":"@hublo/sentinel","version":"1.2.0-alpha.28","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.28","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"431d785f0a33a4616859370772c36224129d4c33","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.28.tgz","fileCount":30,"integrity":"sha512-TcfaXErQuj3xQ2PYgT6Kev5wBA1QJjaQ5L4B//pvwsRcr8MFWe5z5vYroXsYComf1jYjKgNzhbaeA3geKBXTXg==","signatures":[{"sig":"MEUCICAbdXmSnQbtMS0bInqurUGEQGG7+xQajf+j2s/7wF8GAiEA8mOfqlufYes7vBvOOCCghJ+00aZsWJy3qgJqSguoidk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFqsvhmgh8cJ4bvHNUE8dFsPoFmSUQ00N4Yt7P7ZSfVjAiB9tywZNcqUYem0P84ohuCS7OoJXAvUALx0qi1GbLsCfw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":439041},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.28.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/ee7316345ff98baa7e11a97ab1663b65/hublo-sentinel-1.2.0-alpha.28.tgz","_integrity":"sha512-TcfaXErQuj3xQ2PYgT6Kev5wBA1QJjaQ5L4B//pvwsRcr8MFWe5z5vYroXsYComf1jYjKgNzhbaeA3geKBXTXg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.28_1788873470668_0.34067227451488624","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.29":{"name":"@hublo/sentinel","version":"1.2.0-alpha.29","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.29","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"7f4a49b6b4fcf323218028ddc209da70bcb31630","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.29.tgz","fileCount":30,"integrity":"sha512-TVkkAtn3pxtRD9G9+Fo25IyW9vAu7KHOCZutUthBAG5dsuRXBm3PwzmjuMDqBA9p2wRElC/pDAxarf72InCKiQ==","signatures":[{"sig":"MEYCIQDY33Di63l4XWZv6EtSb3+4Oe+Lvy/GjfFB2nq8q3A4AAIhAITd04G/tGciiv1hLY7sTJnGcHmw5uCGXZVJ4Sp1C+6t","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIH5eQWd20XwlGQQ+zLWiJ/Y86LZXW6nvuJqrmXQgUWCvAiEA8xt61G7IzFbjkaJuJW/UJC5/hR6jmlPGKPCA9V/BO7Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":452748},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.29.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/57e8a861c32b25135c670b764f0802b9/hublo-sentinel-1.2.0-alpha.29.tgz","_integrity":"sha512-TVkkAtn3pxtRD9G9+Fo25IyW9vAu7KHOCZutUthBAG5dsuRXBm3PwzmjuMDqBA9p2wRElC/pDAxarf72InCKiQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.29_1789139755686_0.9622183695501201","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.30":{"name":"@hublo/sentinel","version":"1.2.0-alpha.30","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.30","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"9e364e4b481730e634eb47e2c4038f8eae93bbcd","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.30.tgz","fileCount":30,"integrity":"sha512-B8PyPUMAwga6wRz4bqtawFKwQGTj4/6Adcho88iWZrMv0FwwbDdcBpuhfXS/KQu1ZJgdYLv2zo+0QLW5YhmXkw==","signatures":[{"sig":"MEQCIGFTxJ6+FOZ4GYiduOJo+r7JShPiOn8BxwGLrutTOmReAiAcdC1JrdqtcA2BZlcairv9lAADQcoAJeAgDD/ieDg/gQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDkpqY/QCK80iPDGKGzze7SifdJJySR2i7VeKx08ULYaAIhAIL9KsFKbjVqsRAasAo2Lvi9wQMOtyBkrwdadgQkGjso","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":452748},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.30.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/e855e6a8a29f7e5b9f4db6c9eef1bc67/hublo-sentinel-1.2.0-alpha.30.tgz","_integrity":"sha512-B8PyPUMAwga6wRz4bqtawFKwQGTj4/6Adcho88iWZrMv0FwwbDdcBpuhfXS/KQu1ZJgdYLv2zo+0QLW5YhmXkw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.30_1789141146959_0.5477465651170661","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.31":{"name":"@hublo/sentinel","version":"1.2.0-alpha.31","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.31","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"ef07ddb298ce735623a76ba5ad0ad74cb6e3f26c","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.31.tgz","fileCount":30,"integrity":"sha512-K1oJXWD4T+shn5wAmEhi5moBTqD5QACMRFmFaKPSKc4pImtxAqp/73mwhEpnjvjpcjAsCG8rJE3dn9Lg4bABIw==","signatures":[{"sig":"MEQCIA3ezMxKJUQrPwvkxdbjOjGAoirUUrZTO2OTYZjSnPYyAiA5CDr0Ny8/Zj2ubSDk8Rjr8W8Zlquu8BS3X5lEn6YOyA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFaL6Pmd7qprxlEIu53mmw6MRVLZcWMJ7HCmLnv8x4tYAiEAsS2WxS1PdeQxWy6HNqitjecKe/wNXexnebAPCDZErE8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":452880},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.31.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/febb3b6b47d518f38dba9757425d8269/hublo-sentinel-1.2.0-alpha.31.tgz","_integrity":"sha512-K1oJXWD4T+shn5wAmEhi5moBTqD5QACMRFmFaKPSKc4pImtxAqp/73mwhEpnjvjpcjAsCG8rJE3dn9Lg4bABIw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.31_1789141302269_0.508056577690011","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.32":{"name":"@hublo/sentinel","version":"1.2.0-alpha.32","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.32","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"b766011362263a8f6de32bafd0f6c92bb227adba","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.32.tgz","fileCount":30,"integrity":"sha512-eWWi+DVvZQsErjAUtoRxk2V5eih7Mlze44ET4Yyt16skYNi/MsCaUGssZZTNG1lQ5xlw5svcc4tABQ6Ue266yA==","signatures":[{"sig":"MEUCIFIextdZVj1IQsCYwLJfa9ASxPkSASDKeT2gKwxwApymAiEAlr67yFNvjmnxFdeLbDC5925VW+q02Mi+03cI9WgTntc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFey5+FsFLykgH2TnOb4Kqd0ovbps1RixrHQyAC5SDKuAiEA9aYZDifm0zhCgdRT11s467ep3o8uUuSEc5qg4XoXz9g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":452711},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.32.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/3e8481e324259baaafc5731550be1e87/hublo-sentinel-1.2.0-alpha.32.tgz","_integrity":"sha512-eWWi+DVvZQsErjAUtoRxk2V5eih7Mlze44ET4Yyt16skYNi/MsCaUGssZZTNG1lQ5xlw5svcc4tABQ6Ue266yA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.32_1789286971684_0.070764380997419","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.33":{"name":"@hublo/sentinel","version":"1.2.0-alpha.33","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.33","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"198139340a2eaeb2d82a350b34614ef6ee68723a","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.33.tgz","fileCount":30,"integrity":"sha512-aLFWfC6gCmdTcxhkuKAbnFe/7QvearuInT451JEs2qMgbUG4x0IVukTdXh4qCwT795e640NvsnJoXTUWpHWuOg==","signatures":[{"sig":"MEYCIQDcbY/CptQzBXgiEo7iOucL23amkxWEj3ptW824FxBBIQIhAMyW3pOG8ktIPC04U4+4FMsaGHt7Gs8rhc/MM+QVtCLY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQC+bYz+uIGyD8s15WB6MpysYecbpiWpwNbdX570HiZwJgIhAODY0PX3DVB6HJDgZZSpLc0u/B43pYyhWGWhq94QbXQn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":453482},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.33.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/cd3cf906d7bcb679ad8e95e0739b7402/hublo-sentinel-1.2.0-alpha.33.tgz","_integrity":"sha512-aLFWfC6gCmdTcxhkuKAbnFe/7QvearuInT451JEs2qMgbUG4x0IVukTdXh4qCwT795e640NvsnJoXTUWpHWuOg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.33_1789371055350_0.22375614530977228","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.34":{"name":"@hublo/sentinel","version":"1.2.0-alpha.34","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.34","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"6e7e6f2dd249ec53b5c4625903e8705c7bcc320c","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.34.tgz","fileCount":30,"integrity":"sha512-9MxCiKounjdXvtfMt+ofJoMP81cciJi4qrWEBhd/jpqRvvxHtzsFMX9c5ZDqXN9MuH+KvcY86d5jagV6yR9gYg==","signatures":[{"sig":"MEUCIQDQNgB1y+W+x8Q9cI41r38D3dZWkVArl/1guPhM17QjEQIgGrDrsbsM7YSH9jNe0JsR5sytYXdUy/O4/JbnpJ2fGhg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIAaX1F6VsZjm0YrrpMhIWaYDn1fe9PscF2LD2UtjdvLjAiANGyBHMhdzpL+tbpwNBQudby9fMhNuO+p3wlJ/ZKfTjg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":454315},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.34.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/4b71fef4237ca3408e1cb24bbb399d98/hublo-sentinel-1.2.0-alpha.34.tgz","_integrity":"sha512-9MxCiKounjdXvtfMt+ofJoMP81cciJi4qrWEBhd/jpqRvvxHtzsFMX9c5ZDqXN9MuH+KvcY86d5jagV6yR9gYg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.34_1789385263598_0.8049685797341906","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.35":{"name":"@hublo/sentinel","version":"1.2.0-alpha.35","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.35","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"6e397b855ddb87f45fdd44e116c7b84686e7f766","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.35.tgz","fileCount":36,"integrity":"sha512-/2nYz/N+cBhCmxA3LunH38nHIT+qv45FT17bc24HDlXV+OvPxZTZhZVEQ5OhwT5ldBNPA1YNhpIoM1UpjezTQQ==","signatures":[{"sig":"MEYCIQCbQVqQePeXY/GqYbDVpcxwTYNWu/kAXDXiYGIG3kkmZQIhAM/Hbfc0GGFGM5z+1OGILZZR3hAFSDLZl51oIrUR+XJL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIE8TZt6vntlb6sCPKleVzn6cItKw4muINt4FdqhIsluFAiEAin7REJPMU17hXY0xc2zikKM3vc6yYUSH7V01CiDHZG4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":493099},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.35.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/nest":{"types":"./dist/roles/test/setup/nest.d.ts","import":"./dist/roles/test/setup/nest.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/ed96837792faac26641a8aebf294037c/hublo-sentinel-1.2.0-alpha.35.tgz","_integrity":"sha512-/2nYz/N+cBhCmxA3LunH38nHIT+qv45FT17bc24HDlXV+OvPxZTZhZVEQ5OhwT5ldBNPA1YNhpIoM1UpjezTQQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.35_1789469773420_0.1089957609237362","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.36":{"name":"@hublo/sentinel","version":"1.2.0-alpha.36","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.36","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"6e60292f20633688da6aa1ae253567ecc2d1e5d3","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.36.tgz","fileCount":36,"integrity":"sha512-kPYYT94s3Hlox5stRC3Backt7BRzIQw99PPF+v8SbjRHPJDMXMofNRWroxre21bz9bAm9qFRSLjTnUYFzu8nBQ==","signatures":[{"sig":"MEUCIQCiq2HCCiwOmbCoTsWhYF0WieGBhmQAojcND84HdtZQvgIgbtQY7KmbXC4ktDii2Udx7MxDyk9IGhxyoP4p2LE7H8M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCxe7RvQZPqPrL8bcfPPAr1W/14VopWTTnwkZLb38zgUQIgZu1qQvstdGQlZQZF5bZ04QnSD+ARMpe5DFtosLkzarQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":493490},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.36.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/nest":{"types":"./dist/roles/test/setup/nest.d.ts","import":"./dist/roles/test/setup/nest.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/84ec7f9f8b0700944092525916aa50bd/hublo-sentinel-1.2.0-alpha.36.tgz","_integrity":"sha512-kPYYT94s3Hlox5stRC3Backt7BRzIQw99PPF+v8SbjRHPJDMXMofNRWroxre21bz9bAm9qFRSLjTnUYFzu8nBQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.36_1789471231591_0.5630004883543716","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.37":{"name":"@hublo/sentinel","version":"1.2.0-alpha.37","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.37","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"306fc57d8068158009bdeadb106fb21f09e8d0b2","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.37.tgz","fileCount":39,"integrity":"sha512-0NyDiexxxlLIj+rQuls/eN+3kOMsuGFhDxwE5VW67c7VkNPZ3wM14BncS8yptPvYnZj7f92x+85tIyBxk0Ciqg==","signatures":[{"sig":"MEYCIQCoMr+InSe8JQRAEaWhpLoMWWESp0qKE1Nfv0nLkd4QNwIhAIVPcuuCtyKxXS/9naV4YD1M9K50M7S8LpUsmi4y6nQ6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIHhnZsoAxIUFcg/J8ak1DlZe8lO2+k/h2x/fr+9+LMgxAiAQzQFliIAnYnQm+Qb+FFCuzb621/pU43ysSwbvMG0ZTw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":495553},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.37.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/nest":{"types":"./dist/roles/test/setup/nest.d.ts","import":"./dist/roles/test/setup/nest.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/7a0c4345117a131b48ec7e786f132497/hublo-sentinel-1.2.0-alpha.37.tgz","_integrity":"sha512-0NyDiexxxlLIj+rQuls/eN+3kOMsuGFhDxwE5VW67c7VkNPZ3wM14BncS8yptPvYnZj7f92x+85tIyBxk0Ciqg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.37_1789472073123_0.018346854451779082","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.38":{"name":"@hublo/sentinel","version":"1.2.0-alpha.38","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.38","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"95e188e7ba7b5f4a7062295c7c29163d8d3b6388","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.38.tgz","fileCount":39,"integrity":"sha512-rElXzc6rvL5wCNsFcFyAn5PC6yA6lKrB4kqkFZf1qk9TmGUxwY37bnLTClr23KejyO+d0oYz0CSRTm+wICD0Bg==","signatures":[{"sig":"MEUCIDNDMqnPguI2IJa6B3k56mSqMmM95VUE/p27pprUEgQ+AiEAh5QE+XHITHJqE5cFbG3sVbnNEQq09cmwx9Um6u7Vt8o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDzDpLWfkFHoAOuwmpiwdm09LcKDMP8OQ9WBwVsakhRlQIhAJkbjIKSbiRxmTTSo41vyTVwc6pJUBi0fGU1HYxBWocy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":495959},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.38.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/nest":{"types":"./dist/roles/test/setup/nest.d.ts","import":"./dist/roles/test/setup/nest.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/5f9cf56b77e459d3444770005579cc56/hublo-sentinel-1.2.0-alpha.38.tgz","_integrity":"sha512-rElXzc6rvL5wCNsFcFyAn5PC6yA6lKrB4kqkFZf1qk9TmGUxwY37bnLTClr23KejyO+d0oYz0CSRTm+wICD0Bg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.38_1789475465735_0.17583748259540832","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.39":{"name":"@hublo/sentinel","version":"1.2.0-alpha.39","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.39","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"5d2a699bbfc4689326c4a0f12aa6fb66ee0fff8e","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.39.tgz","fileCount":39,"integrity":"sha512-OavyNVnpHe11LO6NeMixtUGvSDCWjyuqtTjBJL1O221BSwPr6/RiG1UY7r3Gonrlu1K+mlYOBPc+nO7L5jk6iQ==","signatures":[{"sig":"MEUCIQC/yNXnPLmW2rDeKxxFXXvcQ/WyJZCP26zMsz7zzZVL5gIgD2cCrLm06t8hE60rQETTMO5Ka4blgNEE709Bog50AwY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDxPBKuCEygsN7b2DK114J/bZ3vS9ON+2O6/qobjL47xgIgUjs00/kCUrBnJnha5DHMY5qVnDJR4RZTet6xy0MSAno=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":496173},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.39.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/nest":{"types":"./dist/roles/test/setup/nest.d.ts","import":"./dist/roles/test/setup/nest.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/d07fad8280d51decc57246da3b08a6b6/hublo-sentinel-1.2.0-alpha.39.tgz","_integrity":"sha512-OavyNVnpHe11LO6NeMixtUGvSDCWjyuqtTjBJL1O221BSwPr6/RiG1UY7r3Gonrlu1K+mlYOBPc+nO7L5jk6iQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.39_1789476039178_0.9569784030212265","host":"s3://npm-registry-packages-npm-production"}},"1.2.0-alpha.40":{"name":"@hublo/sentinel","version":"1.2.0-alpha.40","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0-alpha.40","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"c8532ccf0855e473c9bf67e891037fdf62b6d5b6","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0-alpha.40.tgz","fileCount":39,"integrity":"sha512-4Drz1D30y39OeYmLRsrpBdFYj/WvH7CZGdRH3B5pw2xt8eawUBhZc20tvkQAWMQP2PDJHExbPdENjo4bqO1+yg==","signatures":[{"sig":"MEUCIBdnQDyRCq+cjzylzYEWWtIPH47MBXgBhgLAIR17a8LwAiEAwIeZSsgWxx93I89nXHOoQtxngyGav6VQcSef8FdmLtk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGJiN4dQTTN/UMhon6Gly9MYVLWgK7jdxMrTSwehsYDjAiEA2/t5iSh0QyYmOfqyUb4wyge6lwOKr4ROc3sbU1ArjWQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":496315},"type":"module","_from":"file:hublo-sentinel-1.2.0-alpha.40.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/nest":{"types":"./dist/roles/test/setup/nest.d.ts","import":"./dist/roles/test/setup/nest.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/c31eeab1cd542e54931ce7c7c9ffb6bd/hublo-sentinel-1.2.0-alpha.40.tgz","_integrity":"sha512-4Drz1D30y39OeYmLRsrpBdFYj/WvH7CZGdRH3B5pw2xt8eawUBhZc20tvkQAWMQP2PDJHExbPdENjo4bqO1+yg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0-alpha.40_1789476452193_0.6491409747735637","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@hublo/sentinel","version":"1.2.0","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.2.0","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"e61886ad1389f0d8c367e984c6db7d5091f3b8ab","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.2.0.tgz","fileCount":30,"integrity":"sha512-rxJ8rIRsg+InuekIwzxnXnggXM4lVVl98H0gUBHTeDzXiU5c3ZDbLXuB5NUsrSszb/WPM/EfyE6MHTObp91LZA==","signatures":[{"sig":"MEQCIB/s2tN74hhcObfh0qN/AsPYRhbgkgWiVcvxS/dxxoaGAiBqi/7AIQCnEeY8d3kMagFhAN9R8H+NdADq9vfVmM9Ndw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIH5Zp4ZYhGIWenN7LB9jx8qzODsLibqIT/w+INNsSlteAiAV2naQOQo4DihnjWmV8T5PEMyiSsN1i7Zw6VBFxXFP8g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":440059},"type":"module","_from":"file:hublo-sentinel-1.2.0.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/fdb3a6413953da9363aabd3b9e77c5d3/hublo-sentinel-1.2.0.tgz","_integrity":"sha512-rxJ8rIRsg+InuekIwzxnXnggXM4lVVl98H0gUBHTeDzXiU5c3ZDbLXuB5NUsrSszb/WPM/EfyE6MHTObp91LZA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.2.0_1789487298590_0.4408543028858607","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@hublo/sentinel","version":"1.3.0","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.3.0","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"d88e287f638cb9fe45d25717a4eee0053a27a2a3","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.3.0.tgz","fileCount":30,"integrity":"sha512-/2FvYdLxIVz3JcFbRWmMKB68XGSMQhPwVMwlauOUUpcmUoOPJuwoUmMsLWxLgREO8Txmtu/rWTWDY7/hcb+RVA==","signatures":[{"sig":"MEQCIBzYhGLyC9g12YmH7jwXxJf9gIpVq7rmn9hgt3QTLBrLAiBM9prKHLOzoIBKYXLZiDN0rNSrTQ/PCCc/Uo0dkNNLlg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDF4hfcgVlBkWv5snfWqr4sIxSGdf9sEmoNwvMe8IqoAAIhAPFWBSFU5vZFlreqVZoFKmfPh4rE6R/IU6J/LyapQkml","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":442754},"type":"module","_from":"file:hublo-sentinel-1.3.0.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/bf29215921b74aedfc28872057fe7918/hublo-sentinel-1.3.0.tgz","_integrity":"sha512-/2FvYdLxIVz3JcFbRWmMKB68XGSMQhPwVMwlauOUUpcmUoOPJuwoUmMsLWxLgREO8Txmtu/rWTWDY7/hcb+RVA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitejs/plugin-react":"6.0.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.3.0_1789554985215_0.46816626505713477","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.1":{"name":"@hublo/sentinel","version":"1.4.0-alpha.1","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.1","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"4fac06d36fcd21c09f49d36fb68c0052f2d54ad5","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.1.tgz","fileCount":53,"integrity":"sha512-PVSQ8/b3uW/76vt3UB1JyO6xXkc8WuD49TmsLb37QivYCtj6FdXxFaFlxjevXVK7SyDa0ZtNqhyjGpoGfZR5sg==","signatures":[{"sig":"MEQCIDuwu1dkLH5K+Hux6yDhjWp4BManWoFhX2HRwC398pzkAiAaPPs7fmqfOjv+0ztjb28540FOi/7MqbqYO/WQ/hyWIQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICp4u4gEsBx6A8LwvKb8gg5v10K72TOlwfiPvdZooHS6AiBPmW4swAO//NjfGb7nfDVyY/9gH/QJw8cSIoNgPkaetg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":686419},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.1.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/nest":{"types":"./dist/roles/test/setup/nest.d.ts","import":"./dist/roles/test/setup/nest.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/f8727f3d0d74a7ace5bdd90699e27f2a/hublo-sentinel-1.4.0-alpha.1.tgz","_integrity":"sha512-PVSQ8/b3uW/76vt3UB1JyO6xXkc8WuD49TmsLb37QivYCtj6FdXxFaFlxjevXVK7SyDa0ZtNqhyjGpoGfZR5sg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.1_1790149453902_0.3565698810110036","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.2":{"name":"@hublo/sentinel","version":"1.4.0-alpha.2","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.2","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"138197ee599b797956311e4b5b37ec590b7f3304","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.2.tgz","fileCount":68,"integrity":"sha512-8i1xHZO42++OYLXq+DEyNwyIOEQ8DK1HgG4MyAdDCnbzPHQ06mVEymFiiy0Tjil9l6D89ZE7zAZ8Durdqi4x3A==","signatures":[{"sig":"MEQCIG4R40kH40VqY/Y+GDImlr7cLsv0Ege8jI8AFF/DWrkyAiBVMif/9Nemn+H1cT/aupWKh+LqTF5+/q/fqJGNaPGZmg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCjAK388NgPHxPH3DkZXTCUNr/izQ2R24iaAtJqbuXAtQIgKctpKLLKMVLpp+LTuxb0TaWqdfWrSpN4RH033iXfLpM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":832268},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.2.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/nest":{"types":"./dist/roles/test/setup/nest.d.ts","import":"./dist/roles/test/setup/nest.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/f2cd335b8fd825c17c273c917ebe6e59/hublo-sentinel-1.4.0-alpha.2.tgz","_integrity":"sha512-8i1xHZO42++OYLXq+DEyNwyIOEQ8DK1HgG4MyAdDCnbzPHQ06mVEymFiiy0Tjil9l6D89ZE7zAZ8Durdqi4x3A==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.2_1790180399997_0.693592893259313","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.3":{"name":"@hublo/sentinel","version":"1.4.0-alpha.3","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.3","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"f345323209e2bab1a0cd6472a6bcd0a41dbf0d89","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.3.tgz","fileCount":69,"integrity":"sha512-ZwylRT3G1MeTJh+kMlbKpJ+HOKvH2pTP2Vj63YgtTghvtYaKJA4YwDiExHIwmhb5NrUl/oGuHCUxTD3rMgoPzQ==","signatures":[{"sig":"MEUCIBuyUrqrbQ7YH3SWXqfdKusydxYiO+uYqjkJngvpZVxwAiEAgdNH96wEbhU/6S/cfHTfvoB4SoqinWVgJv5IHJR3MpE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICxncZP6FbVop+qz+dRIz6a/N5k38XM7j0hlE9Ufppi1AiA8v4MgJ0T6aRddFeWnnnkercCGI+IqjswvdeCnzo6BCQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":824937},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.3.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/nest":{"types":"./dist/roles/test/setup/nest.d.ts","import":"./dist/roles/test/setup/nest.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/9984ea7aee2fe6cc73e342d0cfa0967c/hublo-sentinel-1.4.0-alpha.3.tgz","_integrity":"sha512-ZwylRT3G1MeTJh+kMlbKpJ+HOKvH2pTP2Vj63YgtTghvtYaKJA4YwDiExHIwmhb5NrUl/oGuHCUxTD3rMgoPzQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.3_1790183268598_0.3968703204437263","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.4":{"name":"@hublo/sentinel","version":"1.4.0-alpha.4","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.4","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"eed4926683be7185972bc690072c30b2b9361641","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.4.tgz","fileCount":71,"integrity":"sha512-cAByqteNwFy6xIW2mTavKwRIt5ov0o1yp5I69O99hNzMcXPLL4VzHExNkO/TTJYqto8TGN6HED3CtoRyKWBD8A==","signatures":[{"sig":"MEQCIFtuEFnbrcWp81CBrJXhTfdk3ADizYUqZjB5y5qYLaDFAiBrHSKbn1fvum2ALUqLc2g7W7RXorawAtTTpdOIaPRl1A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCgPH37s0QCrYdTiHw6Jvj8pWQ6ri/6wVeonBONr4s31QIgLkEwehC3afbLBESz/IYHFe4FPun3cRHeMwFKj7p4kjs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":833567},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.4.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/f828fe234ef48e5eb13219c39204a3f0/hublo-sentinel-1.4.0-alpha.4.tgz","_integrity":"sha512-cAByqteNwFy6xIW2mTavKwRIt5ov0o1yp5I69O99hNzMcXPLL4VzHExNkO/TTJYqto8TGN6HED3CtoRyKWBD8A==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.4_1790193348884_0.34715025177630254","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.5":{"name":"@hublo/sentinel","version":"1.4.0-alpha.5","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.5","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"feb6b23bee163238056637415a754adb7afb6ba1","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.5.tgz","fileCount":77,"integrity":"sha512-I+rQqS08b4z1bHYLxKoqKl9LHhZp9V8FVZZZk1EfXyVA4nZZc+JjoVZqR540DHLdnd/BWzSlamVC1dOOKMlEcA==","signatures":[{"sig":"MEUCIQDvraExyWZyb1cTk54wxQR3LnMXAyW7lS8ozDIq+ac9gAIgTrSeVOo+Y5e6aHzEUYbkQoesIvm1ioKmr6EppRwx4hc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDe/eLE9Sp/DDT8oXFW+lWmeHayS7Rj3Xc5ALMTdXLCFAIgLQy4U9YEE60Gih9Fm80heaAeHAgEUdvQzpvVGU/MFLg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":962462},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.5.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/a639a466a6c5c55e88e086d912a39e04/hublo-sentinel-1.4.0-alpha.5.tgz","_integrity":"sha512-I+rQqS08b4z1bHYLxKoqKl9LHhZp9V8FVZZZk1EfXyVA4nZZc+JjoVZqR540DHLdnd/BWzSlamVC1dOOKMlEcA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.5_1790196073704_0.8524056508603599","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.6":{"name":"@hublo/sentinel","version":"1.4.0-alpha.6","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.6","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"f5dbeb3378d99c70b36c19b02b59338cd5590b1e","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.6.tgz","fileCount":77,"integrity":"sha512-oPWn3oao1GNOH3dGShckhwLcDdP5R5N4HVqTy9f2DCbvTEEVqkDXwGEyxFnOcxZEbRw9fPPv6E5taOZEPeC/CQ==","signatures":[{"sig":"MEUCIQDjZasKudNbMD2Z+6I7GJWXqlrjognLl3zlarpRmZxf4AIgYNkIQWqbpOjdYCsv8ymvCqcns23zPz9bVSlLxcUEVas=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIC/pzzA9ES2xCc8xdA4qB5NdG/IPaRxaVMOWd5/gSqwsAiEA057L6Tg2NxPzeMQRsQlGDYDQQ7ZIMYJJRUBUAnYJ3L4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":963895},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.6.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/0a777144435788dd3d1b86523ff648fb/hublo-sentinel-1.4.0-alpha.6.tgz","_integrity":"sha512-oPWn3oao1GNOH3dGShckhwLcDdP5R5N4HVqTy9f2DCbvTEEVqkDXwGEyxFnOcxZEbRw9fPPv6E5taOZEPeC/CQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.6_1790227796225_0.9373512848982104","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.7":{"name":"@hublo/sentinel","version":"1.4.0-alpha.7","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.7","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"2805b83109690580f9f47aac61876a7e55a043a0","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.7.tgz","fileCount":77,"integrity":"sha512-cMljxyRYV064YKbHHV5x4qs6jZh5BNz1+3msR97I8F6Jwl/KveBmPIlnGzrWk3SuUL2cA6RtWmdddLM4EqF4/Q==","signatures":[{"sig":"MEYCIQCW4BqIpfk/3egjvvttajik7r6eyaHXURE0GWTTt1/Q3QIhAOREL83EdCYpx882ci4yo31US1O9Q6YBVXOEwNrNErdG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFKgzX3aok/Z8OxPwTxcXnsgKl13/NTRWwLFHCmCf3FdAiB8V3IJolVQh6V1h5GAQA3OyPEfuKx0oU0A9ExdIyqvBw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":965012},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.7.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/4bd0ee255ad2d5c61bb78d029c4f5d3a/hublo-sentinel-1.4.0-alpha.7.tgz","_integrity":"sha512-cMljxyRYV064YKbHHV5x4qs6jZh5BNz1+3msR97I8F6Jwl/KveBmPIlnGzrWk3SuUL2cA6RtWmdddLM4EqF4/Q==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.7_1790229108230_0.3352053374555677","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.8":{"name":"@hublo/sentinel","version":"1.4.0-alpha.8","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.8","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"71a89cfb6e09f789f141d0c3e06b18bcd1eba5be","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.8.tgz","fileCount":77,"integrity":"sha512-nZs59F6G7uULq7cTGz/2tL1ZyXVKp/vYGryuiLrZBZCckggvyj4tIQCv+bSUpatZR65JbNo2PWziHkJOCmO+GA==","signatures":[{"sig":"MEQCIDUj9cePOqODlNiqPeb2gScWwbcWc/UB05wKwJ3KayZEAiBQ9+MlbOYyWrJg57Vw1dcc4cSPSR0kH7sRe7/6b9ligw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCOntLhWwfZ6oXRNfrv+6MqXGXy7kr3WVekonP49uIqMgIhAO7atUw/tMY//7y8XUZNkjxnqv0lpA1B0bfcj88aM3sn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":965664},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.8.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/ad9b99fe8e467aa66b58b223cf70c086/hublo-sentinel-1.4.0-alpha.8.tgz","_integrity":"sha512-nZs59F6G7uULq7cTGz/2tL1ZyXVKp/vYGryuiLrZBZCckggvyj4tIQCv+bSUpatZR65JbNo2PWziHkJOCmO+GA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.8_1790235712596_0.7918688343248974","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.9":{"name":"@hublo/sentinel","version":"1.4.0-alpha.9","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.9","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"df167e0e6440ed3a307b099b715c9b5756a5737d","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.9.tgz","fileCount":80,"integrity":"sha512-cKQEnFqn5CJfHOkTrobeVrgCdUoFoaBJAM0ZClHtnN6EDBf4iF5Ya8fvCliS/aYJOnsSDEVr442YsB8r+39Dng==","signatures":[{"sig":"MEUCIQDw8K3W653GdbDQeGL1SKXZsxzy1ozS1mThrugA8PKLeAIgB6aM5qd63iYdFqn6cVbqWFG9Q34T3kKi5F0xbBNKq94=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIHr+cNWinrBMrp/EK/FFIFkYZ7on1EDxwvxok/ZTlHj0AiEAlAF3YCg4VNZr4I7ZVJXV6mH+E1gqP6LFOkJ2bP5CGmg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":968253},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.9.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/a1393494d96fe58fff3dfd7e26febe32/hublo-sentinel-1.4.0-alpha.9.tgz","_integrity":"sha512-cKQEnFqn5CJfHOkTrobeVrgCdUoFoaBJAM0ZClHtnN6EDBf4iF5Ya8fvCliS/aYJOnsSDEVr442YsB8r+39Dng==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.9_1790239943381_0.41698510248866527","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.10":{"name":"@hublo/sentinel","version":"1.4.0-alpha.10","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.10","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"4c8dfb42b5a2de71acccd022783acd33e1674931","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.10.tgz","fileCount":80,"integrity":"sha512-mrkYCJZbhPG9o34zP3HEY7b8V2fHtgtD+6Xz/5un1b72AVJqa42Dl87iJER6ogjrzx8L+ecgSxex7suOaI0GuQ==","signatures":[{"sig":"MEUCIQDLv8+VTueTMiiDQi4yfouWVlA4bfHSGB7sZqvsZ44p9QIgTZdhrgm0H63h57ey+6d+HFS8DCH0eyMFOT7do/thmTg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIAeY8eKMa7Iu1M33c/dvTEddWVgHPSRKnuubNJWrpB9cAiEA+ZQj3O4h7joJ7dyHlNc5HT7Y+gVE8y++EpN3lvlxsQo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":974548},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.10.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/21ae6738694f69ed963feb80a5c0e3a9/hublo-sentinel-1.4.0-alpha.10.tgz","_integrity":"sha512-mrkYCJZbhPG9o34zP3HEY7b8V2fHtgtD+6Xz/5un1b72AVJqa42Dl87iJER6ogjrzx8L+ecgSxex7suOaI0GuQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.10_1790243398153_0.0678372967863261","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.11":{"name":"@hublo/sentinel","version":"1.4.0-alpha.11","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.11","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"90269bb01a49034732dd938af5386ee6c0b6cdc7","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.11.tgz","fileCount":80,"integrity":"sha512-b+OEGolEosjZMcg+BB25Tf9z3J51BVdWKn6mNKqjObXJXYZQ9srpOxZ2wdc/7EaTjqwHeu7vhqvV/q0SNBlJFQ==","signatures":[{"sig":"MEQCIEfAxzjc9bNLtPB0yvycYuWFwAJ9nTp/FKfqr4ly13wrAiAVDWmcIPNc7vx7oRA0mz3l1TtIo5L2RgHeqU1uzz95yg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCSQAY09t73fg8HGTb3wXV+bf4TOYxTjytWju29/jiLGAIgNFD9fhAoT8jJUmQLytyXprwdKnrQsjHdFUqn3Enq4BM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":976483},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.11.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/8c69782f7c1e4998a44171088cbc70b5/hublo-sentinel-1.4.0-alpha.11.tgz","_integrity":"sha512-b+OEGolEosjZMcg+BB25Tf9z3J51BVdWKn6mNKqjObXJXYZQ9srpOxZ2wdc/7EaTjqwHeu7vhqvV/q0SNBlJFQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.11_1790245735873_0.915490699336408","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.12":{"name":"@hublo/sentinel","version":"1.4.0-alpha.12","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.12","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"74adf2043f25c79b3a10a87f7a10438782cf94a5","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.12.tgz","fileCount":81,"integrity":"sha512-Yf+BTPCD271vegYUGRyw9169mgEjIxl2pz8CwBRQbLcje972nTK0RRBXrM9sIdoLqm2HuBmpyjlXbQknBkBNrQ==","signatures":[{"sig":"MEUCIQCk1JX2eUUZFJ3dgJhqx381NP7WnxsSkW0PgwlNf6sLIgIga179hqdyKqpuB0LK6sU9oyO3axs+LylmPg3N/PmLkLM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIA6sbPTy3uguszC59tW1fpVdKkWe01pKxLLyWAXamkuSAiAlh9ZvlOvf2Oql4cT9HM+MVjDfvdE4WS36sNYQhy6Lng==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":979354},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.12.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/0878697ec4bad96aa34550f872f02c69/hublo-sentinel-1.4.0-alpha.12.tgz","_integrity":"sha512-Yf+BTPCD271vegYUGRyw9169mgEjIxl2pz8CwBRQbLcje972nTK0RRBXrM9sIdoLqm2HuBmpyjlXbQknBkBNrQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.12_1790254105638_0.7973407292444801","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.13":{"name":"@hublo/sentinel","version":"1.4.0-alpha.13","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.13","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"54b4e978af68c97c944f85f273c67f741d438186","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.13.tgz","fileCount":81,"integrity":"sha512-+g9PnvCdmudA/7U0DxMA9i9T3am5TosMxPzkOYPsM8a9/teaE2hWMq6t06x83/ThMLZ5Jtt7BvZ6m8+dC0hiSw==","signatures":[{"sig":"MEUCIQCJmaugGW/Dm9SArzEbK/UNs+goulQT2M7OTv3a2ShvXQIgFrLfP1jdN3IMVYCY51JTZQMfVAgxIenOIp75Hr4SqzU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBWb9MbAShDIwpi15hqaKOGV/MkY4JF5mKm3VFumgb4uAiAqkDvV0Q2rWBi9tkuPJ1ay2E+Tfy9YOijteC++jHDUzA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":979527},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.13.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/0aad83463aea62913dfee7a8f1187742/hublo-sentinel-1.4.0-alpha.13.tgz","_integrity":"sha512-+g9PnvCdmudA/7U0DxMA9i9T3am5TosMxPzkOYPsM8a9/teaE2hWMq6t06x83/ThMLZ5Jtt7BvZ6m8+dC0hiSw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.13_1790255075435_0.7524725000950936","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.14":{"name":"@hublo/sentinel","version":"1.4.0-alpha.14","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.14","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"175e880a180e5984d95a62f578cd1c8567987afa","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.14.tgz","fileCount":81,"integrity":"sha512-WbWg15Zsrmczvsc6jSj31SrT9sJ+ADcXForsmju/yARhvou8Kk7ogaVF3ISTURCoYV9+Ur04bgltDvlS3MW7WA==","signatures":[{"sig":"MEUCIQCQHms2HorQyShnzSf4bItdVkBdg5MEa9B/PUQXcWddkQIgU7zGQ3RiiHimKAExep6RJX2vNlcaegYfSvlo7kinDkg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIAXSharfoKJEnUg3xtdqNXtRc0t33FZO9F2gFc1bYZijAiBNt6R4MZihYEIoh4polKlqcS/PMP3WBlYfEkqEcAeAgA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":980734},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.14.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/c44319a5e086ddd3f7eea67d09fc6506/hublo-sentinel-1.4.0-alpha.14.tgz","_integrity":"sha512-WbWg15Zsrmczvsc6jSj31SrT9sJ+ADcXForsmju/yARhvou8Kk7ogaVF3ISTURCoYV9+Ur04bgltDvlS3MW7WA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.14_1790256146038_0.0660294102472263","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.15":{"name":"@hublo/sentinel","version":"1.4.0-alpha.15","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.15","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"e3cd7e6768f9c062ac5198945b6d30dfdcb9a7a2","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.15.tgz","fileCount":82,"integrity":"sha512-CEeMUpLbDwsHnvye1X7P/aaReed0hyB+/sunIpipAvxpkEnpioTV1yDPMDD7aFPqoHLi2xSyp9LCrUHHoge5+w==","signatures":[{"sig":"MEYCIQC5uKF2GdIql3KbJ75tAlytPk8Kbvg59JXIHUv2XWprbQIhAPVW6P9yngJTc6V9iGiE/gXwZl1xvLyz712vc0W26VYS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFncvCNXj8TcKa0zDzqRFqRxQAYVxc43dIZT5WIKoVJpAiA0IheLtToIHmyki5f8Jcee8XtGjs7pl44pYTuwAK76XA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":983171},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.15.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/58e50866761095f6fc145185495dc805/hublo-sentinel-1.4.0-alpha.15.tgz","_integrity":"sha512-CEeMUpLbDwsHnvye1X7P/aaReed0hyB+/sunIpipAvxpkEnpioTV1yDPMDD7aFPqoHLi2xSyp9LCrUHHoge5+w==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.15_1790258016491_0.0939716613191448","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.16":{"name":"@hublo/sentinel","version":"1.4.0-alpha.16","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.16","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"4d476587edb42091bf01a6282eaaf29c713179c0","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.16.tgz","fileCount":82,"integrity":"sha512-Lg27h1EL3dKVfc+9W1E6kuk6j4K2XemTmRMPendatVDB5k2s56HO6hV4MDYtJQ5tVhAJhsFqdbVBELVsYnHW9Q==","signatures":[{"sig":"MEQCIAkul+7WanWCzmOF8idWB7U0ebsIX8QqWNFJcKC+6AAKAiAC1HHV2PjlyR3iA/sSNyzH1/On5EpJeVcUKuZgdZD3xA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDMS1mAiDu6DVfMCEN6bBVLBSYX+m5ymg3Yia3Jm7Dv2wIhAORXFsw0CIuaGBgFxWhxQG/ug/yRWEFxy6cNu0LAbhEX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":986211},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.16.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/c9a05276ecf26ff8fa7962bdb8be07e3/hublo-sentinel-1.4.0-alpha.16.tgz","_integrity":"sha512-Lg27h1EL3dKVfc+9W1E6kuk6j4K2XemTmRMPendatVDB5k2s56HO6hV4MDYtJQ5tVhAJhsFqdbVBELVsYnHW9Q==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.16_1790259194132_0.733477528043275","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.17":{"name":"@hublo/sentinel","version":"1.4.0-alpha.17","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.17","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"d4c9e973abe8314410eabfbead9e0f5244758b13","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.17.tgz","fileCount":82,"integrity":"sha512-bPKOmSoj/v1nHCvL3m9zxKoJLTue/7jrAsJLW15e0dJjXk9MX17pwnu2BsLJuhOra/Hj1dSfazhQGu6mFzd9uQ==","signatures":[{"sig":"MEUCIQDJa5mBudAbQxXD9AbJcbpRMIMKDS638459K0gGtFobGAIgdIBWVbQfrDolhOceyt4CWoOlAfufPiR3/qnu1dnUY48=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDG0DepSZzZ59khGCs1QvvmDNpolYOh675wTOjNRZVd1gIgJDstEPt4tT3T5A5rOuf4Ex6W+4yFLRY4SVEddOlpBoI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":988513},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.17.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/d67ced5e13339deeb24aebaeb175259d/hublo-sentinel-1.4.0-alpha.17.tgz","_integrity":"sha512-bPKOmSoj/v1nHCvL3m9zxKoJLTue/7jrAsJLW15e0dJjXk9MX17pwnu2BsLJuhOra/Hj1dSfazhQGu6mFzd9uQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.17_1790261112570_0.906002766551858","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.18":{"name":"@hublo/sentinel","version":"1.4.0-alpha.18","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.18","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"a56cf0637968e688a0ff2f36a757baf36ada59fd","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.18.tgz","fileCount":82,"integrity":"sha512-W7y0hqJwK3zMCy/w16LXXOExpdSj8UOyiMT7MPHRqCJ5t9wOR6ePnambnlm2GCKVtSH+H+OvD44R3S7HuqjnfQ==","signatures":[{"sig":"MEUCIGyWTCEsZXR8MMsjXZ/oQEuBIxV8o47NIoqFERLbKPnIAiEAzs9ewaGMQZmxlYHmqLnitBi8tb5Erp317M1QJA3ANYQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCXhlHE6mN0EKdwjgVok2z5grSR50glFKPc27oabxTSSgIgKfHpBdUymhMRrPs0wFB2oOBXmUKfjukmHkhYRqFaoi4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":989048},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.18.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/e74ad27967f1133f6701887cc8fbc4aa/hublo-sentinel-1.4.0-alpha.18.tgz","_integrity":"sha512-W7y0hqJwK3zMCy/w16LXXOExpdSj8UOyiMT7MPHRqCJ5t9wOR6ePnambnlm2GCKVtSH+H+OvD44R3S7HuqjnfQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.18_1790264515156_0.6374914088724444","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.19":{"name":"@hublo/sentinel","version":"1.4.0-alpha.19","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.19","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"aed4d29b568284eeb883a07695459e4eb8e57ada","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.19.tgz","fileCount":82,"integrity":"sha512-QuP9BUBqQJKtAeQSwFh9GiLhU0+q3oGM/IgnVxjlXlyqZMYFMG8acSzY6znuklm8ceUqxrHd87ZMP4d7iKjg6Q==","signatures":[{"sig":"MEQCIHYiykX1tSHZU+bhU3fMre+UmPFH5bqYAKtDLRVRL3XQAiAlj9TMAPJnIv3xgDBUzIUUMX8vkUSwA/AFi5y7eLqPwg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCtO3iqrqm+rfGbXpMeQJZ8tv9niaCYwWevbOTdrOyb7AIgBBFX0qgCl5nmQT0LhVf9bVfPyRJWTYkqhV51+nuMD1Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":990642},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.19.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/d9cad3853fc78a4d9764d3feb7924c3e/hublo-sentinel-1.4.0-alpha.19.tgz","_integrity":"sha512-QuP9BUBqQJKtAeQSwFh9GiLhU0+q3oGM/IgnVxjlXlyqZMYFMG8acSzY6znuklm8ceUqxrHd87ZMP4d7iKjg6Q==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.19_1790265859014_0.27384894170254914","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.20":{"name":"@hublo/sentinel","version":"1.4.0-alpha.20","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.20","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"7d84ad601fdf6c5e2c0591ab295d0497019cb069","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.20.tgz","fileCount":82,"integrity":"sha512-iKJGo+Jii8wVA+rvLIbFGUWX3TiOPflyeE6SwB2Z5ItJM6ZbvagzA/8uQn4SrBA9H34lMQwEknuUKcDDmjtBTQ==","signatures":[{"sig":"MEUCIQCvR1fT29sRNChEm/gINTXK52ONgNOBx2Ax736TdulIDAIgNtcplo4TjNdbloc2Z8wdXoTTcLcm2DGUdR08j++WWYA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDT41dBIzbdmCuiULXUsDdH6GPdhBRHAX518KqDL4W6XAiAhglcFQ9stXznID/J282ENoSlALLI+yhJRhJkxLS4z/A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":991718},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.20.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/50c44298591ef8d564826affba5d8680/hublo-sentinel-1.4.0-alpha.20.tgz","_integrity":"sha512-iKJGo+Jii8wVA+rvLIbFGUWX3TiOPflyeE6SwB2Z5ItJM6ZbvagzA/8uQn4SrBA9H34lMQwEknuUKcDDmjtBTQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.20_1790269213081_0.15423620757167922","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.21":{"name":"@hublo/sentinel","version":"1.4.0-alpha.21","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.21","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"d0e0cecc49846f8ffafdcff207b7ca8042f27669","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.21.tgz","fileCount":82,"integrity":"sha512-eLezdGhCWmsWAX+WJ8HFqA9Rblva88mbY33k6Tg40c24CPLf2fKwA+myXJ4CapCIH8QBjjdrNnsYkVAXLTKIBQ==","signatures":[{"sig":"MEQCIHSlXz66FDdvkbCKIUKDIfwo7x8WYPlfhXf1w7AUuUHGAiATTWplozFr+HoXj4mLQCXMCSy0fuGx6FxUYrdCYHeGZw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIC89bs7sHnHZ+ApC/Q+RqHK3aPBLXi7RynPRK1y5h63DAiEA9a59DqG5ZyQwG8xeDW43+gtlAllJfi+Mn81O0/ErDTc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":992211},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.21.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/ae8548e0195a0349253e878e19ff14db/hublo-sentinel-1.4.0-alpha.21.tgz","_integrity":"sha512-eLezdGhCWmsWAX+WJ8HFqA9Rblva88mbY33k6Tg40c24CPLf2fKwA+myXJ4CapCIH8QBjjdrNnsYkVAXLTKIBQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.21_1790271024312_0.5748800101293521","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.22":{"name":"@hublo/sentinel","version":"1.4.0-alpha.22","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.22","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"ee07bd590854f71592b999f1eab34ef3a4f47bff","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.22.tgz","fileCount":82,"integrity":"sha512-Dg23tNDaH6xwLm+gEQzce1ANwdy6evw5rDc3u1Yh2DsJYOYhhQ1lxgc4fCEpCVsQ2J9U7VNbACtMalAFPCyzsA==","signatures":[{"sig":"MEUCIQCCYaJBZFUI6q2hfkWk/rl7gy0iGxqpN7wWxvdufX8enQIgJv1sop1DmAqhaKtdUQJAXWrlL2eK8m3qPggD9w4Go6o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD7tS7faftO/GADYuXXsKtEIwrX3pgcfmePREEAnn+DQQIhAJkl3g/mSkWwga7mvpeJLY9cXUjSDDjiDXmLdOgBwaW/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":992300},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.22.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/92cd8ba01a4559e34ab5d80181404ab5/hublo-sentinel-1.4.0-alpha.22.tgz","_integrity":"sha512-Dg23tNDaH6xwLm+gEQzce1ANwdy6evw5rDc3u1Yh2DsJYOYhhQ1lxgc4fCEpCVsQ2J9U7VNbACtMalAFPCyzsA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.22_1790274655161_0.8282540567904004","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.23":{"name":"@hublo/sentinel","version":"1.4.0-alpha.23","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.23","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"81beb6c28a217d9bb40602399b5af603a5ed6b7a","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.23.tgz","fileCount":82,"integrity":"sha512-/zotnb3u2m8LDvMNK1gXnyoAJQFliDYjnIfIPRsGIMQoMLc0+h8qUsv0woyc+qhGKBRubDbLAS+AYXhaFVptoA==","signatures":[{"sig":"MEUCIHIqAx0Z10IASE9Ud5454Tlo1Q5NE6WceRXE41W2OwurAiEAx70bydjQS/vOMMDH8kvpHRU1AHVISZATkl/QumYjROE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIEOsS5tdOiPluuDDikuZo1BlpnTcgcBWewnzEJn2x6veAiEAkbdV34sPJTEBFRF2AoTFGBcIZc1At/RIuA1/K366Yi0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":982114},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.23.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/b848f4705e5ead59c352369f9e7a0f90/hublo-sentinel-1.4.0-alpha.23.tgz","_integrity":"sha512-/zotnb3u2m8LDvMNK1gXnyoAJQFliDYjnIfIPRsGIMQoMLc0+h8qUsv0woyc+qhGKBRubDbLAS+AYXhaFVptoA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.23_1790276806075_0.31243506372150054","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.24":{"name":"@hublo/sentinel","version":"1.4.0-alpha.24","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.24","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"7f6a4c1c81fc45fc6dbf8f3812b83c0a12ec8e60","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.24.tgz","fileCount":82,"integrity":"sha512-5+BLj4WS2F9RxuBKdtPh9T7y6+Ld8OIDhyWe3OO4rqF+2wUFHktHD5w7KW86nwTYjjzfU155T7Stcm3gItGTUw==","signatures":[{"sig":"MEUCIQDGCi6H7Ra2Cps/BeHF2oTtPXcHznYlG1O+85FguAAYKQIga3PA/RKAadKQuQehaqtGewezyGFMmb725PF+7uPpYvo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCICEBBwIEFL1kZo5/MOveve2yGvW5Kssq0m+n+BIM23ebAiEApgLPDHE9WdvmoU4eUMxhhYaJmmQvFA441In0csiSxHM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":992493},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.24.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/773615dd2a7733c89e904c0380c82e2e/hublo-sentinel-1.4.0-alpha.24.tgz","_integrity":"sha512-5+BLj4WS2F9RxuBKdtPh9T7y6+Ld8OIDhyWe3OO4rqF+2wUFHktHD5w7KW86nwTYjjzfU155T7Stcm3gItGTUw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.24_1790329876462_0.1570495738215596","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.25":{"name":"@hublo/sentinel","version":"1.4.0-alpha.25","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.25","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"12e956bb304871a2929f800f43fbec1489df9c09","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.25.tgz","fileCount":82,"integrity":"sha512-HE72Yw/EYxnxciUwGb3uEoLg9YUn5GAuQvD97dJGjkcWf415amkD7Zygz1zoQlksAo0pj9DjBCF2rjrI9KicLA==","signatures":[{"sig":"MEQCIFNG63kn/CPCVBQ2JRFiUajP3JHDvMRtbJRxQt+9f3uBAiARsNDMzX1j2oTi9l9y2Zqlanx4XdhI0SmxmzbdpyEJRA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGakKcQH7BrSqkIe9KY2/fclRx/wpPL3X1MK0EMhwyYzAiEA8V2E9alp/X78QpqL4rEu8tN9TzHjnOv7mMdmO8tBTwA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":995920},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.25.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/535dd88a045a08fdf9e91f091be517db/hublo-sentinel-1.4.0-alpha.25.tgz","_integrity":"sha512-HE72Yw/EYxnxciUwGb3uEoLg9YUn5GAuQvD97dJGjkcWf415amkD7Zygz1zoQlksAo0pj9DjBCF2rjrI9KicLA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.25_1790345356213_0.239323643035674","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.26":{"name":"@hublo/sentinel","version":"1.4.0-alpha.26","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.26","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"1c6ac245710d794ff4cab7e03ff9873f08bd2cf6","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.26.tgz","fileCount":82,"integrity":"sha512-XVQ7cjJeBvNHsYiNCt3AU6znWbu0psvYIZC8GMR70HdCUDq3XgC1CQBWDvRXNpNifadobgC/UKNNOk5BIaPXPA==","signatures":[{"sig":"MEUCIQCN57FHQBfph9rIOe25iz0+2qmRLVzga2dSYcaQUeZsCgIgVxtXvhcGbO6DVzeVmpTbvRayA22wk9wzxRvFKhi7Spg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQC/qHKWl1SFDZSRGmvbqpKzF34yoYlHfmoY1vxvO6AQpgIhALAseFZsEJ0cWy0WDTN0RGjDmLlFOHTV1xIIn2iOr98w","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":995920},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.26.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/2873aa25f4cca2d7cd1a6b90062a4240/hublo-sentinel-1.4.0-alpha.26.tgz","_integrity":"sha512-XVQ7cjJeBvNHsYiNCt3AU6znWbu0psvYIZC8GMR70HdCUDq3XgC1CQBWDvRXNpNifadobgC/UKNNOk5BIaPXPA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.26_1790346424584_0.14463443241810214","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.27":{"name":"@hublo/sentinel","version":"1.4.0-alpha.27","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.27","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"46ce224ec76fba65fa956fefdf877641c4d90722","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.27.tgz","fileCount":82,"integrity":"sha512-ze16fFRLZZM584i/HIBPiZo6Z29sOflPBpxvgGX/LJuB5gvW4EFpRdWIA3Rp9V9J8gHIv1wCbF9q7vGnqYw2VA==","signatures":[{"sig":"MEUCIGiiM9gwjri9aajfS7RkKuGsXEDyCCIhLaqiWgvue8ndAiEAmvPAizlHQ1IYRLacQ0TDh/qDroSFOakyuYkB/RsoEWk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCJBLBNXtTeqI/XNZMJnH4HntS1ZWuS86AXePHnRwZ1fgIhAKPrYPJ/gv0WRMQgw413Fu1aEp3rKxaaYqSDxeOPe/vE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":997276},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.27.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/13858fe4e2ebb569fb5a10e2d3a5fb2d/hublo-sentinel-1.4.0-alpha.27.tgz","_integrity":"sha512-ze16fFRLZZM584i/HIBPiZo6Z29sOflPBpxvgGX/LJuB5gvW4EFpRdWIA3Rp9V9J8gHIv1wCbF9q7vGnqYw2VA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.27_1790346632397_0.7875867398199357","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.28":{"name":"@hublo/sentinel","version":"1.4.0-alpha.28","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.28","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"79afd4fef747488848b81ceb81761c0696181406","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.28.tgz","fileCount":84,"integrity":"sha512-IcwRZoK1y0oo6Iecij55RJaftOYv5CUcJLZafCW+452VKtUvBmnKvxqLIepFILZakn83JErooKlUhAW37QPxWw==","signatures":[{"sig":"MEQCIBnU6Wlyhjc2/DWTQ94duVsjdA1GkuYzWHHU4kh+FzWJAiBzTApvwm/iYrwWQT4y9/UDGDl5J1FvCUmq/rg6QML2uw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDrbnjiki+5aAAZK6I30lxYNXGUX3/74txoJOFeREtWOQIhAO0JVaaQgofdhkLexJC6nsgEN7z5+44p1EWmFbEBYEJn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1021774},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.28.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/9d1631c41efc6df9dd75ba94f769fc5c/hublo-sentinel-1.4.0-alpha.28.tgz","_integrity":"sha512-IcwRZoK1y0oo6Iecij55RJaftOYv5CUcJLZafCW+452VKtUvBmnKvxqLIepFILZakn83JErooKlUhAW37QPxWw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.28_1790361138981_0.8597032648407092","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.29":{"name":"@hublo/sentinel","version":"1.4.0-alpha.29","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.29","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"50cc60b24c8af9ed593780c45216abd56dc00408","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.29.tgz","fileCount":84,"integrity":"sha512-GfmTO33ldW56b6s/IkJBnExsktNRP7Y3rNEinXBHMn+MyXpcBKm0bR48AaeEwkfTwVI/eCNIGLkjflf5q7cWfA==","signatures":[{"sig":"MEYCIQDOS1MrlYXaQLQXkaH/QGRMFlQ72Vsh9Ygra3hCvwrdsAIhAKqX4ihXU2p4TrPY4O4BEx7nibIt/HT/5kw82YYuydGW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIBhaWaKOaSgeaWJn+U5Fie1qLtsXZ2lh7kCheFiJd5VHAiEA9E9Ei0s8omLTSOyIgK+ApgDmi1SvZIyVK1aRXYYz+pc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1022074},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.29.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/0ee65f276e143a59c006e2fd794fe904/hublo-sentinel-1.4.0-alpha.29.tgz","_integrity":"sha512-GfmTO33ldW56b6s/IkJBnExsktNRP7Y3rNEinXBHMn+MyXpcBKm0bR48AaeEwkfTwVI/eCNIGLkjflf5q7cWfA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.29_1790362928194_0.6496177300048576","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.30":{"name":"@hublo/sentinel","version":"1.4.0-alpha.30","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.30","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"2ab00943fc07c6c3a680a29e4f9c3d8975bc4eac","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.30.tgz","fileCount":90,"integrity":"sha512-Ys+xw0jRWNsSRFXe3488THoBrU6X7+qQWqQ9D+zP1Rq7rrK0qBvt3L+8auPgE/xWf4kab4TJCWF3jaoqrGb5+A==","signatures":[{"sig":"MEYCIQD3Z8u075LCXCylP9aih2hPfV39hu8qSv5JU/19+ZuwsgIhAJaQlghYD0fPu4yRTAHQPKuxpN//Ty7FefD2UEJsfhNJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICnR28koYveClrjjZYixzFpUo1g9rwOSAYsl5eq7CpkVAiAbR4X7E53XJvPzq23OFvhUkImwJYZJqARh8MV2KZSngA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1056086},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.30.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/ca892fd3fe408205bbf27d26865f1e1e/hublo-sentinel-1.4.0-alpha.30.tgz","_integrity":"sha512-Ys+xw0jRWNsSRFXe3488THoBrU6X7+qQWqQ9D+zP1Rq7rrK0qBvt3L+8auPgE/xWf4kab4TJCWF3jaoqrGb5+A==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.30_1790408462522_0.853872390291921","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.31":{"name":"@hublo/sentinel","version":"1.4.0-alpha.31","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.31","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"c30af2a6939449324d5a0cd4ba80ddebb25a2b1a","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.31.tgz","fileCount":92,"integrity":"sha512-3VHrHiIzYngmPSmJ92dylEfUaCpnzwWzh+DKgzCuT7AhsnwYzxLOiXv8vZFPFyfvWrPbA73FkYj2Pz7xUk8p6Q==","signatures":[{"sig":"MEYCIQDF2ZBwXZ+w+iZPnyj80j4OAB4HWP/rsXm+0hUALWmHDgIhANDFEqKHhGo6ykqrY8rduhVosZq2H5yayeXeMOuuCchr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIGbetYnY98kjG5ek2JPlqvxxaLCBtHThl4V3CUuGFpAbAiAjkpQWN1BzzpEtVIXDQYms4Skuw/8ihI/p5rpiFmEs9w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1068143},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.31.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/44f82c5b800ca21afeb98eb4f90806a5/hublo-sentinel-1.4.0-alpha.31.tgz","_integrity":"sha512-3VHrHiIzYngmPSmJ92dylEfUaCpnzwWzh+DKgzCuT7AhsnwYzxLOiXv8vZFPFyfvWrPbA73FkYj2Pz7xUk8p6Q==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.31_1790414332925_0.576374058069753","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.32":{"name":"@hublo/sentinel","version":"1.4.0-alpha.32","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.32","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"a51f71e55c1dedb2151685ab208d65b1e9d543c1","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.32.tgz","fileCount":92,"integrity":"sha512-CS9kI5FS7SgdR43y5hnjM5AxeopaCHip+2fJybrGDSRxqVDAWqTwm0mM2XazbbmCQZn32t63nXwHvkctsg/D6g==","signatures":[{"sig":"MEUCIQCU9Vk4tCh9ERQ8OTGB09hYJKEYli2HFvxRfT34GZe82AIgVfq/It4sQRcOvHuIYoos965gNOc1cF/o12rgLP/ECBQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDvT3aZ8DirISJgOphMkmYn5BYC9bem91pkp239bDzJbAIgDAgKNNZ39AFczj/1Nj63GjRrQFVhcG8+/fUZvtvxIB4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1070529},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.32.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/03b6d9ded101fb483237aecfcf8b4bbc/hublo-sentinel-1.4.0-alpha.32.tgz","_integrity":"sha512-CS9kI5FS7SgdR43y5hnjM5AxeopaCHip+2fJybrGDSRxqVDAWqTwm0mM2XazbbmCQZn32t63nXwHvkctsg/D6g==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.32_1790415867417_0.3350942440362801","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.33":{"name":"@hublo/sentinel","version":"1.4.0-alpha.33","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.33","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"9c8cfa0138d4fa88ba6f3c598485512d19abe4d5","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.33.tgz","fileCount":92,"integrity":"sha512-5v8FPUYSrNWEuMesW/U1tJDq53de7sHOobdfQUX9ZgJ3EdAvcKarBjy47jM/MnFfYNKCx6qDLbiP05CQyQ9pTg==","signatures":[{"sig":"MEUCIQD9Mgcc0y5Y3RDfJc0XH6ZJnGRlwmUSg0MZ5Je4qIf38AIgEqnPHm+GC3AkhvLBBw5yB97nzTM8DOYGyb4OoqSfQvY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCICA/o6IN+GlnBe4PbcPTIi7t2gt4OYXrUwa82riIS/C2AiEAgMsnh8vq6AGri3YmL+be0KTAtW/iaCVzzE2WawAlo8s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1079588},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.33.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/d971dc65c882c7f4ca2bd91ae2bca23d/hublo-sentinel-1.4.0-alpha.33.tgz","_integrity":"sha512-5v8FPUYSrNWEuMesW/U1tJDq53de7sHOobdfQUX9ZgJ3EdAvcKarBjy47jM/MnFfYNKCx6qDLbiP05CQyQ9pTg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.33_1790422501746_0.8352645169049215","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.34":{"name":"@hublo/sentinel","version":"1.4.0-alpha.34","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.34","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"e9049bd8a492eb36b87ac84e5ce986cef82c6d7c","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.34.tgz","fileCount":94,"integrity":"sha512-pI0w/CTaYnrEvNMlnGEJUUGib+MQWnmAo6KWB789YO0QDRl/sml8lNDeV4UaI/mFI5we12Mgbh06k8DwYhx8qg==","signatures":[{"sig":"MEYCIQDrjzAP5BDZ3u8mUQFHV/zQJ1+LlwLB9DVr8d7Q1XjWQQIhAMATsKFRUUjcyvMqof64KBWgNDRw6J5FVbmluK8Veaw1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCNGPoawxpPrzsF+zr9a2x7V3c3i3YGz8wrxDAm2quFTAIgdX1/6aBB0CBliNk19D+zLHKlgvENC8FJOoPNVr/10mQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1084676},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.34.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/09ce3b48b815a44bf541ad372f41a38a/hublo-sentinel-1.4.0-alpha.34.tgz","_integrity":"sha512-pI0w/CTaYnrEvNMlnGEJUUGib+MQWnmAo6KWB789YO0QDRl/sml8lNDeV4UaI/mFI5we12Mgbh06k8DwYhx8qg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.34_1790453389126_0.6769519242915365","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.35":{"name":"@hublo/sentinel","version":"1.4.0-alpha.35","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.35","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"16e6c3412f6ef13bcdeb700ef361445595d0f3e3","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.35.tgz","fileCount":106,"integrity":"sha512-ncWQbofBdIBJ9hCLkQnu3MjUbl9bvP72J+Xjgm0iKGSf3c4mTlmvVzAUjl0+3u4oYeHwQtIQg0C1y3wrmT1Q7g==","signatures":[{"sig":"MEUCIQDPoadITe9yQgugxgw96FCUa6a1Zpe4k3RQfibTlkzyZAIgCqa2ZUrFNL7qiSleVjqRVuGuFcr2nmhs6n7dpgc7NuU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGIU9ru/q3kWMWBCQDez8XXuoERGZPi2kvhFhDNUtrKYAiEA78uYHP9IDRVQ0FLtCBkqvmn58x2QJ5b4rnuVNuZvCio=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1122709},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.35.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/e88073406564f9adceadee9a9ba55231/hublo-sentinel-1.4.0-alpha.35.tgz","_integrity":"sha512-ncWQbofBdIBJ9hCLkQnu3MjUbl9bvP72J+Xjgm0iKGSf3c4mTlmvVzAUjl0+3u4oYeHwQtIQg0C1y3wrmT1Q7g==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.35_1790497857902_0.8561653007509396","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.36":{"name":"@hublo/sentinel","version":"1.4.0-alpha.36","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.36","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"dc194c4fba9ca9bcddd46a5e87f29b445fef4e66","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.36.tgz","fileCount":106,"integrity":"sha512-wDTUDrfmIXmFyt+QUJlG29pt9zAyfTcSL+tsg/Wsg85X+6Olmpq462i5EKv/2Vgx2Xdl+o6PCEI6nS89ix3KYg==","signatures":[{"sig":"MEQCIQDxTYj65Q0Fachi0rdrFqT0ZeyGTeHFaZaCz4QYzdqzewIfDWInWConWDI7BKRhVK+UGR14KlPeFCSewqBBk7lyig==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFJ3UXZh92R7NtnsrZptiSdBX1122LYyc7qcTNnovzqpAiA40P/X0LjpRhOrvnB5GQzsfMKQaAtcoI7XyOL30TeNiQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1125946},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.36.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/a2a72b4c60e1be342aa976c03c14bdb5/hublo-sentinel-1.4.0-alpha.36.tgz","_integrity":"sha512-wDTUDrfmIXmFyt+QUJlG29pt9zAyfTcSL+tsg/Wsg85X+6Olmpq462i5EKv/2Vgx2Xdl+o6PCEI6nS89ix3KYg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.36_1790499385945_0.6452013592732342","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.37":{"name":"@hublo/sentinel","version":"1.4.0-alpha.37","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.37","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"0ca0b8b021c3af8fce6e9279d3c312d3719d2cd5","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.37.tgz","fileCount":106,"integrity":"sha512-ebENfg7WhFNosv26Dv6qfcb2pQsu3/CLkF7ETgnzXkHsY0DlORvvVFszxs09DiU8H3NN3Sc2mPzG3158l23Dsg==","signatures":[{"sig":"MEUCIE/uJdYq5n/Not9zDu/2LzhH2fWA7qtnlSpzDzCHFh8ZAiEAp0GcZK2CGUCxAmjr4qP18z/KfhUyd3mku+go25pVAoI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIH1qIYW6e1ruFipMZR4AHJVRD5ow3WmbVHv9eJEwCUN4AiEAlPpMGywckL+pyBMcyAxE3zDBAXZucqvYWQagJnIQaN8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1136280},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.37.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/143dd2c57f4be4c7e33bb24441806177/hublo-sentinel-1.4.0-alpha.37.tgz","_integrity":"sha512-ebENfg7WhFNosv26Dv6qfcb2pQsu3/CLkF7ETgnzXkHsY0DlORvvVFszxs09DiU8H3NN3Sc2mPzG3158l23Dsg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.37_1790513228689_0.5960869484239086","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.38":{"name":"@hublo/sentinel","version":"1.4.0-alpha.38","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.38","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"affa8165d955b7850424af7c126d1a51d2aa301e","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.38.tgz","fileCount":106,"integrity":"sha512-ByJUwPpzX0Idd8nSj6VyRY3/JWOSOXwsJvTW2L08H1/gq4+IoHxFGLAyMj/yCQCOLSpxQdwZqHns5FBV5t0Q7g==","signatures":[{"sig":"MEUCIQDHWmgmUWRBFwJmvB/nGcuh8bjCOTsVuY9RZRdJvw4NTAIgZUB65lrD6vE35yvgdTnyARcTZv9SBXKMupP07UCT5j8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIDOBQ46w2I90PAB58xKJZPPdi2IknDQSOYwv+hgpv/n0AiEA+GEXACvYAdX9FrwKA1tgIDCSAVsmwOrGVp90m2dj72k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1136460},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.38.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/d5d709e91284bc29d2e8f12ded92347e/hublo-sentinel-1.4.0-alpha.38.tgz","_integrity":"sha512-ByJUwPpzX0Idd8nSj6VyRY3/JWOSOXwsJvTW2L08H1/gq4+IoHxFGLAyMj/yCQCOLSpxQdwZqHns5FBV5t0Q7g==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.38_1790516252933_0.5436829028175192","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.39":{"name":"@hublo/sentinel","version":"1.4.0-alpha.39","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.39","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"dac2efd6253b479763ba72d41a476715d048ea58","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.39.tgz","fileCount":106,"integrity":"sha512-Ahg5UWG210UCQ+A2rObx0GnjTHf7Jc/uCTwnVdBnV4a5w4VwnpX5HtKhdvncxlgvUivr2Tnv1eert0ufMm+1Gg==","signatures":[{"sig":"MEUCIE8AimFmfdz+xFA0caT0UsOIHKIWtxdC0aMHjAfSoJpxAiEAruMP12pUJiOnVEAcdhP2iSMQcbiedfMy2Qc3CdI00BA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDdEcQqeDQH8k4Fukwb+kSVangTP6eYJYi8JsBK9RHFGwIhAKRD9gmVicj9aiR4DBSMRW6wXBZsD46AspR/dXmJSoKL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1136690},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.39.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/1991a11fd5c703efdc0844fe3af4e38d/hublo-sentinel-1.4.0-alpha.39.tgz","_integrity":"sha512-Ahg5UWG210UCQ+A2rObx0GnjTHf7Jc/uCTwnVdBnV4a5w4VwnpX5HtKhdvncxlgvUivr2Tnv1eert0ufMm+1Gg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.39_1790518744420_0.7688861441778418","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.40":{"name":"@hublo/sentinel","version":"1.4.0-alpha.40","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.40","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"0e64d4b8e04bbeeddb84ab37552efcaeb57ad46a","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.40.tgz","fileCount":106,"integrity":"sha512-gAwQ+KVJINa+Im9E1zh+8/WVPyPbGfyg5OEWv6faenxjCF0/y9fgtr8tHWdBEjBflzgnf1VQHktwpCH/41FXwA==","signatures":[{"sig":"MEUCIHXXohBa0HKc9AQ5eWNfN/TrPDqUlNkKpOzWx5mWJFfxAiEAzzIHVXiZeaObrl7nTWgkBmYYLjmoIhBaY6NMXO+K4Fc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCWj+U8Dw8Vr1vMmYOURO2fKSUSv9Kdvg2m7HX3IAP2VgIhAJ1vm0nn3NCHBZJ9/begdoZeEJRNBLwYstVXsBEXoeC4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1146405},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.40.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/da4bcc15bfe80b40acd2129446a8b1c8/hublo-sentinel-1.4.0-alpha.40.tgz","_integrity":"sha512-gAwQ+KVJINa+Im9E1zh+8/WVPyPbGfyg5OEWv6faenxjCF0/y9fgtr8tHWdBEjBflzgnf1VQHktwpCH/41FXwA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.40_1790525612103_0.9548961819022044","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.41":{"name":"@hublo/sentinel","version":"1.4.0-alpha.41","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.41","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"70fd86ff7e98b300ce49c638d4fe8e9145c1c2ea","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.41.tgz","fileCount":106,"integrity":"sha512-0URdjOHcNInDocwrydSuPnYh/VZcDi9gk/3QYjxkm5wW7BIIrhmdhtTKCQ+y73SxY+EE7oBIPcj2TJ7Kwbegjw==","signatures":[{"sig":"MEUCIADzDfhHdQWtlZGMJUyeGZXpzfG7PP4q3fvun7iwVVuQAiEAtcsHMenpqLvFO71lRdMGn//LJ3B9fBFnbble+cY32H8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDJijOuh0ahcDIkb5XtnvwYnk0O5Y7btEwlHd+5qLEC0wIgUWlViadcQN4vlDtn310Heiu+zxGx8GiCW4XZ84ecL1s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1147296},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.41.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/bd8a5ae3a7c54bb69271518162ac8f16/hublo-sentinel-1.4.0-alpha.41.tgz","_integrity":"sha512-0URdjOHcNInDocwrydSuPnYh/VZcDi9gk/3QYjxkm5wW7BIIrhmdhtTKCQ+y73SxY+EE7oBIPcj2TJ7Kwbegjw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.41_1790527013353_0.48127568350908567","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.42":{"name":"@hublo/sentinel","version":"1.4.0-alpha.42","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.42","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"8afeeab6a002751900e111591745cee03e13f530","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.42.tgz","fileCount":106,"integrity":"sha512-xwy+HsEsxGXE2mQbJA2JkR4r/pPqJxNRiM+4x+PF7YWqkxjTdcaHoZDh1k7oO8NIyw7R/2sgIUKdpSvCkzZWtA==","signatures":[{"sig":"MEUCIERAb1uGsPYOr1kLYmFFrDNBe3AheqOBLnuYaNBezXLjAiEAvOA5X4k9fqhzynPA+xa+04OKZzyLFYbNfYimgF1wQwU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBltanCdX4z/BMScjCm3tqsmYZtXsMXa4erbYswfzDB0AiAjoCkFdyjESUGVSHVNrHjDkciDq+8jW1QRU3x2nNr6oQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1149252},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.42.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/4aa487cc016ec324bfb8058c65d9f1da/hublo-sentinel-1.4.0-alpha.42.tgz","_integrity":"sha512-xwy+HsEsxGXE2mQbJA2JkR4r/pPqJxNRiM+4x+PF7YWqkxjTdcaHoZDh1k7oO8NIyw7R/2sgIUKdpSvCkzZWtA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.42_1790527587338_0.06796963105160891","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.43":{"name":"@hublo/sentinel","version":"1.4.0-alpha.43","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.43","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"ae98bf86fcccddb3db148389a780aa7f741615b0","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.43.tgz","fileCount":106,"integrity":"sha512-4aGZ/IcmfjRPosEqc8gCbYNKRyV6Khj+S7wI79BKzTa/j1kWJU4c9wn4uvQedVP4P1gOLnDYBTvHP5iVT953FQ==","signatures":[{"sig":"MEUCIFae9VufpznJTU+dxKKalCSg3p2Pq6ezV7qVG4dDmY78AiEAxi2FDhCPBMipvAquH3Hhe+8aBnqzQuxbeoKT/vIXmIU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCfxtOZvOcbQ06UynYud0kT6i3YkgGB+I7zRhDu4b/17gIhAJowhm3gHUlRsNRRb6T3it+uN9Zo+KhwMlPFCQKAFGRA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1158873},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.43.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/7351e06ad6b16a043b86829486640ea8/hublo-sentinel-1.4.0-alpha.43.tgz","_integrity":"sha512-4aGZ/IcmfjRPosEqc8gCbYNKRyV6Khj+S7wI79BKzTa/j1kWJU4c9wn4uvQedVP4P1gOLnDYBTvHP5iVT953FQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.43_1790536805317_0.24672206227178584","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.44":{"name":"@hublo/sentinel","version":"1.4.0-alpha.44","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.44","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"6d7a659319a54cf6b6ae97bafd49cc8288df532a","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.44.tgz","fileCount":106,"integrity":"sha512-uaAGuGj6IsMzI2narmFJyspfyehteBnF1mzgczPGaogQvNsT3y4krlDYwSuQRiQ3vNoJOqIt1wVN15SY45dmqQ==","signatures":[{"sig":"MEUCIQDCvW85YoCH8UEiMeGfrLKRx9o8EPbnso5HPEfCeHKhpwIgMkr0/kR0OCxB70cDEjoug9PzgvD9bSk1QtxG7BLJThg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIEzqIJYbdopc4yEOCXGWAt+fcX7r/+J8HwGyHWG9lTlLAiEA2dXPsqxNVcOdfrvfS+q56Nsca84nI07tdacWMKTAhQs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1159196},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.44.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/258cf479fca9d51921ab4dbab4a90f86/hublo-sentinel-1.4.0-alpha.44.tgz","_integrity":"sha512-uaAGuGj6IsMzI2narmFJyspfyehteBnF1mzgczPGaogQvNsT3y4krlDYwSuQRiQ3vNoJOqIt1wVN15SY45dmqQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.44_1790539873272_0.3640308411917459","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.45":{"name":"@hublo/sentinel","version":"1.4.0-alpha.45","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.45","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"c1849167aab3b4f02581c2a6273bf7078c200fe9","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.45.tgz","fileCount":106,"integrity":"sha512-tcZOuP1fwfGbldem6GVPjIS5NKIQ4QaF/uU+pO+9P8Wea+uPBcSWUdOjCw/1JWvvzre1DVUWiL/uOK8KcWqaxg==","signatures":[{"sig":"MEYCIQD2xdsErizPcKN0Zi5CEiVJrnntl8Rkkcf2/pn2x5g8LwIhAMgTNu3AWjQv8Dp50sZfj9wUb5XZWT7u+b0VtrNFO/Gg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDwnrz+Z3nHtHnGxJwq99/fu5RZYiYU2oQnwByWWZoYRQIgNQf1UVJDGvxOcJv0LJJAvcywjSPutSaEPuNvuF4bT2M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1166138},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.45.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/f69e81fba90dea15ab1cb8585232d2fd/hublo-sentinel-1.4.0-alpha.45.tgz","_integrity":"sha512-tcZOuP1fwfGbldem6GVPjIS5NKIQ4QaF/uU+pO+9P8Wea+uPBcSWUdOjCw/1JWvvzre1DVUWiL/uOK8KcWqaxg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.45_1790546396157_0.7873735905026837","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.46":{"name":"@hublo/sentinel","version":"1.4.0-alpha.46","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.46","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"dd3a4dab5fd3acbd4d9da591d8a0a771d0878cb7","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.46.tgz","fileCount":106,"integrity":"sha512-A6Z1d/WBVDLyBBvP+oyCq17wN7QCIrQGcEHB15Hr3Ut+fsDfckl1a5lIOXiuCvoVNBT04LWuTNoeYCKyGDnxYg==","signatures":[{"sig":"MEYCIQCYZ0euBvSimMGaA1R3nzZFZ9aFveV/iBJ87OD3S+6+wgIhANBcxpkNiec1NJNUjD2hJ2pK7+sJQ6ykefB4vd3sk2BI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCx6qElv8dYM7OmtdNIxfO8lAdQ+gZlVeZ9QlldK/f/jwIgcffTVDo0hcNRz94ZODH48bUI8D2onA+OjxAYowpbFmQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1166400},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.46.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/869532e2a6dc53347b42cd12227bda08/hublo-sentinel-1.4.0-alpha.46.tgz","_integrity":"sha512-A6Z1d/WBVDLyBBvP+oyCq17wN7QCIrQGcEHB15Hr3Ut+fsDfckl1a5lIOXiuCvoVNBT04LWuTNoeYCKyGDnxYg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.46_1790554983319_0.7405283855179376","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.47":{"name":"@hublo/sentinel","version":"1.4.0-alpha.47","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.47","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"08c4682a2bcc089fde79de1df50c8d4a25154771","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.47.tgz","fileCount":106,"integrity":"sha512-zidOIrJHku7b/tanTDFxNeJRxhg5nTyUHkRB9eMaIhGS+dCtq48A4aop4HHNR4Rkm4J+61Pm7ZzGuWgvbmgNTg==","signatures":[{"sig":"MEQCIAWtWH3DTWXe1S/zL3JNP8J3IgIhHaJdEkSXf18FGRNyAiAZZPyLH8tpPze38gsse7NeU4Dzhu/Zk/XMjjbVOgor5g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD2syPHkC5afAXVrkUnuBwuhHQ+cNHE7ofHKW6LafjiTAIhAPG8F3ProDJty2J3QA1LAHrrpxCHS8l00ZGNt4PR0h1V","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1167069},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.47.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/c331b0b6b1b3e9b80db22f50d73e4214/hublo-sentinel-1.4.0-alpha.47.tgz","_integrity":"sha512-zidOIrJHku7b/tanTDFxNeJRxhg5nTyUHkRB9eMaIhGS+dCtq48A4aop4HHNR4Rkm4J+61Pm7ZzGuWgvbmgNTg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","tinyglobby":"0.2.17","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.47_1790557023755_0.9998961126107662","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.48":{"name":"@hublo/sentinel","version":"1.4.0-alpha.48","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.48","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"5dca805e095d04b0a3f855b76fbe90d8b54a77e1","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.48.tgz","fileCount":106,"integrity":"sha512-41HcXwHRLVvNlt6rs/b53JwTpMhbVvkwKNc/Nm3x42TB+FEO90HBOU5aAy5R50x1aqeL7FBGOvYszDyxLuG/lg==","signatures":[{"sig":"MEQCIAjo+3/hSV/X0sF4ki2FdF6jDIfv8Bs6Bh9fBMy1q/+4AiAIQMawfz4wlwMtV36tAdzgqcQyZSNCS+zhWUlz/WoGYA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIGQkl9gqDRL+sN0eOou7oK0hZ3S6LyHPmyID0qxLGrfXAiABGx1qbKJGmIFohC7AXVgWQmd6GfOxDGAo3YXphu96Gw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1167364},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.48.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/f2d613b5dc50ecf82e0e6d7c364443bf/hublo-sentinel-1.4.0-alpha.48.tgz","_integrity":"sha512-41HcXwHRLVvNlt6rs/b53JwTpMhbVvkwKNc/Nm3x42TB+FEO90HBOU5aAy5R50x1aqeL7FBGOvYszDyxLuG/lg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","tinyglobby":"0.2.17","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.48_1790557154531_0.8200054061156823","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.49":{"name":"@hublo/sentinel","version":"1.4.0-alpha.49","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.49","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"4ee9704be3ebb8cd7946dcdac083995dc7f7a73f","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.49.tgz","fileCount":106,"integrity":"sha512-GaycW3yeUsyJVUIl6/UMa+brtYimSIdAUMzEi6mkT6gOuUAHWdAmQgANCU6ZcoosILJIkRwY/BF/QEutGawiBA==","signatures":[{"sig":"MEUCICT6Ee4MJKuvYILllCaa5K0XDOeLAPbMmZ2pDfzGhOvWAiEAuawCYbUrQ81mWuZo8KjAFwmrzlWi7PnEBc/n51YxIPM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDZDpQ93NmfeWuhxqYsZhXJrqRqYsscbDnYMiDnbCgRQwIgVuXwv94RaMYCwt/Q0aMgP5lkgt/FRSzXIZoJcT9+Vic=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1186607},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.49.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/8ad678f3dc06a12566aed939a1f261d4/hublo-sentinel-1.4.0-alpha.49.tgz","_integrity":"sha512-GaycW3yeUsyJVUIl6/UMa+brtYimSIdAUMzEi6mkT6gOuUAHWdAmQgANCU6ZcoosILJIkRwY/BF/QEutGawiBA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","tinyglobby":"0.2.17","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.49_1790566469216_0.7923754054076382","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.50":{"name":"@hublo/sentinel","version":"1.4.0-alpha.50","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.50","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"f154fc93ffae1cb7e16e2b1d6dd0bef97d29610c","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.50.tgz","fileCount":106,"integrity":"sha512-O10v85byk6Crnf5QdztGjHMRboBDdtsgGvYoV+1nT5EdpGSJNR2DE34oXGwXveXwx+CSIo5ZquWIYZvUJ9zlEw==","signatures":[{"sig":"MEUCIQCRiOE+KUYKEJY0bjLHU5qBMM1omkV9d+02GLN0yCsQLwIgIdyOXnXW9pbnq4oLVqwgOpYl44mcok1RJBt7S8snkns=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD7ELG52N1fRf6FtpwVs270szZqlvwKHy9JtJArgby6ngIhAJrOWDp4xD7SO9fKZHpW4CXFxWINSdZp4JqNrENk3nRy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1186623},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.50.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/f6c67de23880eaa468ee8f431513d68a/hublo-sentinel-1.4.0-alpha.50.tgz","_integrity":"sha512-O10v85byk6Crnf5QdztGjHMRboBDdtsgGvYoV+1nT5EdpGSJNR2DE34oXGwXveXwx+CSIo5ZquWIYZvUJ9zlEw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","tinyglobby":"0.2.17","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.50_1790571642745_0.27129140530043805","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.51":{"name":"@hublo/sentinel","version":"1.4.0-alpha.51","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.51","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"8cf46a7813a73f2986a51070bca787e8e11d26fe","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.51.tgz","fileCount":106,"integrity":"sha512-fPgnE5cNd41w4AZBepdY0mEaDKN+SLtzpXMTjMi1z2QoZRqqLgLsUbkbHZ16BIiQkREZ+vWo+H+SaSKQ+Mhvlw==","signatures":[{"sig":"MEQCIFGW3uONT2l8f2N7nhK/haTav/g1CU4AjHPeC1WuEpg9AiAtZwrNceCD+C/L7oPW8BusdvPMo0JKNNhTTsFEbws2wA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDXLM0j2Qoo1ANFeAK9Yu41SBA2ehAj0/0JZraPOQxPcQIgNn50KLxq162Jx4O6oi+i7bLVcW6mg3ZOVr/jlY033FY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1187521},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.51.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/631ca32c119436d0c7dfb2182121d1b9/hublo-sentinel-1.4.0-alpha.51.tgz","_integrity":"sha512-fPgnE5cNd41w4AZBepdY0mEaDKN+SLtzpXMTjMi1z2QoZRqqLgLsUbkbHZ16BIiQkREZ+vWo+H+SaSKQ+Mhvlw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","tinyglobby":"0.2.17","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.51_1790574969683_0.39504120406610554","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.52":{"name":"@hublo/sentinel","version":"1.4.0-alpha.52","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.52","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"fb539da571c601e2a0e4767117f42fcd296eca3d","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.52.tgz","fileCount":106,"integrity":"sha512-F0C0+Z/NlOHnlMSUSIS+aEe0zI79mmQS8jALzh4puwtftRtKUitlS3Psn0fvveCOv9ezqJw4pZRFKaMJGEGLHw==","signatures":[{"sig":"MEUCIQDKQvgaElT7QDyVBDkxJ+Nf73QrG47O4Sgv4WZPaIIwoQIgQ/2NGOV/XjYfWEKMy7Zf+10LfTAFCr5OjrBFb7OMNME=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIALBdwxmMbUjP9PwnMuj3h2SNgXwsnkhRqR7qsEiVDOnAiA3aFwynDncI/LQVJb6XEv0O5smDC0EprTI1YOnC8rEcg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1187530},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.52.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/cb9c9d87a0959c1720e7e2b50b1fdef6/hublo-sentinel-1.4.0-alpha.52.tgz","_integrity":"sha512-F0C0+Z/NlOHnlMSUSIS+aEe0zI79mmQS8jALzh4puwtftRtKUitlS3Psn0fvveCOv9ezqJw4pZRFKaMJGEGLHw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","tinyglobby":"0.2.17","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.52_1790579188129_0.845656688906417","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.53":{"name":"@hublo/sentinel","version":"1.4.0-alpha.53","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.53","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"361bc697a68d0010b0b1f4749dffc47be127618d","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.53.tgz","fileCount":106,"integrity":"sha512-kSLnWQZHAT4w7bPlTPvKWWCQQMxye7BjqbZo9Qlp8q+gpRA/0f9c/71H3IQlBTuxrVkZIwqAoo1BR66Ut8dKUA==","signatures":[{"sig":"MEUCIQDzVR1ir7xz+ejTVURHCRTY3UcMwubNTJ7KADywYgctlAIgY1T4DHzVMpDlZYPSQ0FbLsDZD4Z5DaLUrQ2YOxyLCpQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDSF0r7jrMf8fQ6n7ug0czQ3T9qCVhGjc8gaKJIOXqPsgIhALTjgkn6f+1dJU2MHigJjRlhcs+/cz5sxqcHSQ+qW7BB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1187644},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.53.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/6058bb03a32f98386b9c359f5f177ce5/hublo-sentinel-1.4.0-alpha.53.tgz","_integrity":"sha512-kSLnWQZHAT4w7bPlTPvKWWCQQMxye7BjqbZo9Qlp8q+gpRA/0f9c/71H3IQlBTuxrVkZIwqAoo1BR66Ut8dKUA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","tinyglobby":"0.2.17","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.53_1790610687627_0.15204459504219314","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.54":{"name":"@hublo/sentinel","version":"1.4.0-alpha.54","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.54","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"8a856d23640c097e60b0259f1c642c711c59cec4","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.54.tgz","fileCount":106,"integrity":"sha512-cELtqla2R6OJaP5p1GPafF4YtbkmihUMpPE2TNsKYmdCo6l8/vjpSqyyDUWDHbgvrvYUjbL5leEIriW6/HgkUw==","signatures":[{"sig":"MEUCIQCPOiFDg+Rt7P55TOYSJ4SfXOGDwY/xZF8zIYTWC16FPQIgYFcYZ/R7WCYvz4be0587Jqt7Hv2inebrGRYnZrWqMyc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFeUKm0cqvn0UzxAXJ3ePx7VKXHGE9UBlij1JoYTvMCfAiEAlhi1NWgFi3i/RtG9Ty4MfWCbJeQEWQlU9Ai+M63DJdU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1187223},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.54.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/e320264aa8b9661cd87670cb11d301f0/hublo-sentinel-1.4.0-alpha.54.tgz","_integrity":"sha512-cELtqla2R6OJaP5p1GPafF4YtbkmihUMpPE2TNsKYmdCo6l8/vjpSqyyDUWDHbgvrvYUjbL5leEIriW6/HgkUw==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","tinyglobby":"0.2.17","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.54_1790614561664_0.2728967650790237","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.55":{"name":"@hublo/sentinel","version":"1.4.0-alpha.55","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.55","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"1892bb2d9d9b8262a689ad9098a8070537497f8b","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.55.tgz","fileCount":106,"integrity":"sha512-eG8octo+jmlVstXtWNIBZpIGhJhW8LZiOBiYtbgLOIFiiRNaXaFX3mLtbSYabHPsE75yUGs4XbpqepmZr0v6Cg==","signatures":[{"sig":"MEYCIQDg5i2VCYZDqqU9Rta8MAyWp1xQhjmFLGn1CB8rScZHkAIhAOm+o/iyG56mBYtwxS/KWCsIs6DR7F9sFgT6uttqki4V","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCgAbCUpaqzvGt1/X+Ac2Cxc5GXJmt5hklB9ie/4rsvLAIhAJUbWO/XumIQKx6XsMSq4VjOYHHYlb9k0Kt1s7gaI+n6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1188406},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.55.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/89817cdd6e899b1ca91bcfb013835a6a/hublo-sentinel-1.4.0-alpha.55.tgz","_integrity":"sha512-eG8octo+jmlVstXtWNIBZpIGhJhW8LZiOBiYtbgLOIFiiRNaXaFX3mLtbSYabHPsE75yUGs4XbpqepmZr0v6Cg==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","tinyglobby":"0.2.17","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.55_1790621861041_0.5024840688401468","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.56":{"name":"@hublo/sentinel","version":"1.4.0-alpha.56","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.56","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"739324201fa6949cdbff41c7b9433fed9b7e6076","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.56.tgz","fileCount":106,"integrity":"sha512-GHItNMNiqLbrF5lFGOMSfUGwGMQ57Egr3MnRDyns8PkybNfYflKydg4+xh7A78XkFjDQf05FytCVFnsSNDijuA==","signatures":[{"sig":"MEQCIA+vxULU64ee/H+LRkUSvVmJn8yII6Cn3QbRCDVGwjOFAiAlzMLNL6ApWwTx4pWtOfp74mGBzafx9+3FLM0KzP3jFg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCGVky7nX2H+wz+ERGcalwCKT5xpyzpOsQ5Fcm6pJ2SUwIhAOOiAq8WjPfk/bByABJ4nj8IIhHRDj/t5nytHWNPf7mK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1188446},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.56.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/769583f2dcd0359865e774218009e9e4/hublo-sentinel-1.4.0-alpha.56.tgz","_integrity":"sha512-GHItNMNiqLbrF5lFGOMSfUGwGMQ57Egr3MnRDyns8PkybNfYflKydg4+xh7A78XkFjDQf05FytCVFnsSNDijuA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","tinyglobby":"0.2.17","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.56_1790628845280_0.9477861944385941","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.57":{"name":"@hublo/sentinel","version":"1.4.0-alpha.57","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.57","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"83f569c8f8e816a3726058ef09ebc4d0f4cd9b58","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.57.tgz","fileCount":106,"integrity":"sha512-Cr48bmcUi3VEU6wj/4jGL3sUKx5XGqTeI7mkA/hU+i7Evlwb7lwr4LOxjwzXRP2EqjxbvUNgqvrzaubsd0U+cA==","signatures":[{"sig":"MEUCIQCQCuK0L+aY7rSNr9xRAxQSOaG2dj0efJMWmnvJvTYQLwIgXJrY/Y8bNVf1x7WuAz9KYth+7EB3RJYr6uwqsu+bJDE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD1oFb18ZyROG3FYpXFpjCoxUO4X8xTxEeIeDpdED42MAIhANt/NghS5hj+aC9+Ivop6Th5YVVT3CrWUra0opsITFV3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1188776},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.57.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/3f761693ff44e0e3cc81172104c1f036/hublo-sentinel-1.4.0-alpha.57.tgz","_integrity":"sha512-Cr48bmcUi3VEU6wj/4jGL3sUKx5XGqTeI7mkA/hU+i7Evlwb7lwr4LOxjwzXRP2EqjxbvUNgqvrzaubsd0U+cA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","tinyglobby":"0.2.17","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.57_1790642204685_0.5858705743768746","host":"s3://npm-registry-packages-npm-production"}},"1.4.0-alpha.58":{"name":"@hublo/sentinel","version":"1.4.0-alpha.58","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0-alpha.58","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"2ba6c7e685d73315575dc492e06522d55087582b","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0-alpha.58.tgz","fileCount":106,"integrity":"sha512-zxw+JE/RLYS44j6/ZtoaX2kdYS5TWLPr+UPFJUPIruBbAGbJS3HMkXAt2PUOscP60+pb09XxaOXuAGPoqCng+Q==","signatures":[{"sig":"MEQCIB87nXLsG5vhCKtVdoB/JippbYtnDBUh77JpXAy2UGK5AiB5xKbN1NQGSrLW76F8a3qyIui5HTAFD+JsqgTjNcMjbQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDGpxjh4GXBsloCdeuuQ3Yg+wwLxNs0SWmfUMd4JDA/cgIhAM63tonO4ucaZr2ei1Ed64EnSLiHKZegIL7Pa6LjGlA4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1189423},"type":"module","_from":"file:hublo-sentinel-1.4.0-alpha.58.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/dfcd14d0b7d98916d3a6a47999194ee4/hublo-sentinel-1.4.0-alpha.58.tgz","_integrity":"sha512-zxw+JE/RLYS44j6/ZtoaX2kdYS5TWLPr+UPFJUPIruBbAGbJS3HMkXAt2PUOscP60+pb09XxaOXuAGPoqCng+Q==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","tinyglobby":"0.2.17","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0-alpha.58_1790652128703_0.514304461359886","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@hublo/sentinel","version":"1.4.0","author":{"name":"Hublo"},"license":"MIT","_id":"@hublo/sentinel@1.4.0","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"homepage":"https://github.com/hublo/sentinel#readme","bugs":{"url":"https://github.com/hublo/sentinel/issues"},"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"bin":{"sentinel":"dist/bin/sentinel.js"},"dist":{"shasum":"5b2928904a38f74cde3f47c5e9a31ea7db9bd26b","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.0.tgz","fileCount":106,"integrity":"sha512-Cmt3CNFb8k+SkNaX/72lKWNMxVnc3vARsjnfADg0HFRx5RdYtmQAmWFLSIOukHWTfTah3qqKJb2hIK9iLNtziQ==","signatures":[{"sig":"MEQCIHFMIMAQcMpa5q5bjYOQoMCPYmztKjGqkBwmabIRQixEAiA61Q3Np43+ZwRryAOFrq8FMzpptIvwU0SvShP7eMlxKg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIBKcDQpH5MuzA6wrIm7AIiPATzRj6jXyBE8aeXqRG+ZyAiEAnl9K/TMVsYH6gf36/VQNi4Fojlx+OcuRh527kKsKMZY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1189414},"type":"module","_from":"file:hublo-sentinel-1.4.0.tgz","engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"_resolved":"/tmp/01f1bdcfd6b7c664ca6204253debcd2d/hublo-sentinel-1.4.0.tgz","_integrity":"sha512-Cmt3CNFb8k+SkNaX/72lKWNMxVnc3vARsjnfADg0HFRx5RdYtmQAmWFLSIOukHWTfTah3qqKJb2hIK9iLNtziQ==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","tinyglobby":"0.2.17","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sentinel_1.4.0_1790666488382_0.9884454194919918","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"nx":{"targets":{"format":{"cache":true,"inputs":["default","{projectRoot}/.oxfmtrc.json"]},"format:fix":{"cache":false}}},"_id":"@hublo/sentinel@1.4.1","bin":{"sentinel":"dist/bin/sentinel.js"},"bugs":{"url":"https://github.com/hublo/sentinel/issues"},"dist":{"shasum":"2f1098cf3e25548ecda99375a27640da170395cd","tarball":"https://registry.npmjs.org/@hublo/sentinel/-/sentinel-1.4.1.tgz","fileCount":106,"integrity":"sha512-/YHRHJCzJ4ARc+Ibg+2yMtAiJdS1RrOemRafGoeEG2TmoOLUTbpjWlGWXW8/mzpPc6JSqAZZg8SjgzmJFdU1JA==","signatures":[{"sig":"MEUCIEYYZbh7II3R51Vk6opZGyTeSjaNO6wBTwoSMURi8M3AAiEA71pykgUBcR8ZW6TrCljiI69ONMTEBp/0aRVyTJe/t8E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIEuKpG+zJC8uDXxDf6BKLL10DMerZKONjGn4EG/26WmzAiA57MsB3ce5hC1P97DhiEzcczxt9ebKhUnwo+igI9lx/g=="}],"unpackedSize":1189634},"name":"@hublo/sentinel","type":"module","_from":"file:hublo-sentinel-1.4.1.tgz","author":{"name":"Hublo"},"engines":{"node":">=20.12.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./test/msw":{"types":"./dist/roles/test/setup/msw-server.d.ts","import":"./dist/roles/test/setup/msw-server.js"},"./test/nest":{"types":"./dist/roles/test/nest/toolchain.d.ts","import":"./dist/roles/test/nest/toolchain.js"},"./build/nest":{"types":"./dist/roles/build/nest/toolchain.d.ts","import":"./dist/roles/build/nest/toolchain.js"},"./test/react":{"types":"./dist/roles/test/react/toolchain.d.ts","import":"./dist/roles/test/react/toolchain.js"},"./build/react":{"types":"./dist/roles/build/toolchain.d.ts","import":"./dist/roles/build/toolchain.js"},"./tsconfig/nest":{"default":"./dist/tsconfig/nest.json"},"./tsconfig/node":{"default":"./dist/tsconfig/node.json"},"./test/setup/w3c":{"types":"./dist/roles/test/setup/w3c.d.ts","import":"./dist/roles/test/setup/w3c.js"},"./test/tools/msw":{"types":"./dist/roles/test/tools/msw.d.ts","import":"./dist/roles/test/tools/msw.js"},"./tsconfig/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/a11y":{"types":"./dist/roles/test/setup/a11y.d.ts","import":"./dist/roles/test/setup/a11y.js"},"./typescript/nest":{"default":"./dist/tsconfig/nest.json"},"./typescript/node":{"default":"./dist/tsconfig/node.json"},"./typescript/react":{"default":"./dist/tsconfig/react.json"},"./test/setup/workspace":{"types":"./dist/roles/test/setup/workspace-entry.d.ts","import":"./dist/roles/test/setup/workspace-entry.js"},"./test/setup/jest-parity":{"types":"./dist/roles/test/setup/jest-parity.d.ts","import":"./dist/roles/test/setup/jest-parity.js"},"./test/setup/file-boundary":{"types":"./dist/roles/test/setup/file-boundary.d.ts","import":"./dist/roles/test/setup/file-boundary.js"},"./test/setup/msw-lifecycle":{"types":"./dist/roles/test/setup/msw-lifecycle.d.ts","import":"./dist/roles/test/setup/msw-lifecycle.js"},"./test/tools/mock-extended":{"types":"./dist/roles/test/setup/mock-extended.d.ts","import":"./dist/roles/test/setup/mock-extended.js"},"./test/setup/file-boundary-close":{"types":"./dist/roles/test/setup/file-boundary-close.d.ts","import":"./dist/roles/test/setup/file-boundary-close.js"}},"license":"MIT","scripts":{"cli":"node --import tsx bin/sentinel.ts","dev":"tsup --watch","lint":"node dist/bin/sentinel.js --run --lint && node dist/bin/sentinel.js --run --format","test":"vitest run","bench":"node scripts/bench.mjs","build":"tsup && tsx scripts/build-presets.ts","format":"node dist/bin/sentinel.js --run --format","lint:fix":"node dist/bin/sentinel.js --run --lint --fix && node dist/bin/sentinel.js --run --format --fix","test:e2e":"vitest run tests/e2e","typecheck":"tsc --noEmit","format:fix":"node dist/bin/sentinel.js --run --format --fix","test:watch":"vitest","docs:traces":"pnpm build && bash scripts/gen-traces.sh"},"version":"1.4.1","_npmUser":{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"},"homepage":"https://github.com/hublo/sentinel#readme","_resolved":"/tmp/28cc55ffb5d0f8ed253a4db114ea1aac/hublo-sentinel-1.4.1.tgz","_integrity":"sha512-/YHRHJCzJ4ARc+Ibg+2yMtAiJdS1RrOemRafGoeEG2TmoOLUTbpjWlGWXW8/mzpPc6JSqAZZg8SjgzmJFdU1JA==","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"_npmVersion":"10.8.2","description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","directories":{},"maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"_nodeVersion":"20.20.2","dependencies":{"msw":"1.3.3","vite":"8.2.2","jsdom":"^24.1.3","nitro":"3.0.260415-beta","oxfmt":"0.63.0","oxlint":"1.77.0","vitest":"4.1.4","axe-core":"^4.13.0","commander":"^13.0.0","oxc-parser":"0.147.0","tinyglobby":"0.2.17","typescript":"5.9.3","dotenv-flow":"4.1.0","jsonc-parser":"^3.3.1","html-validate":"^11.16.0","oxlint-tsgolint":"7.0.2001","vite-plugin-svgr":"5.2.0","@nx/eslint-plugin":"23.0.1","@tailwindcss/vite":"4.1.18","@vitest/coverage-v8":"4.1.4","@vitejs/plugin-react":"6.0.1","vitest-mock-extended":"5.1.1","eslint-plugin-jest-dom":"5.5.0","eslint-plugin-storybook":"10.3.5","eslint-plugin-react-refresh":"0.4.19","eslint-plugin-no-barrel-files":"1.2.1","eslint-plugin-styled-components-a11y":"2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"nx":"^23.1.0","tsx":"^4.19.0","tsup":"^8.3.0","typescript":"^5.9.0","@types/node":"^22.0.0","@hublo/sentinel":"link:."},"peerDependencies":{"nx":">= 21","@nx/js":">= 21"},"peerDependenciesMeta":{"nx":{"optional":true},"@nx/js":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sentinel_1.4.1_1790676267957_0.7077649161837414"}}},"time":{"created":"2026-07-31T08:29:17.758Z","modified":"2026-09-29T10:04:28.287Z","0.1.0-alpha.0":"2026-07-31T08:29:17.970Z","0.1.0-alpha.1":"2026-07-31T08:50:21.416Z","0.1.0-alpha.2":"2026-07-31T09:35:05.900Z","0.1.0-alpha.3":"2026-07-31T10:58:59.949Z","0.1.0-alpha.4":"2026-07-31T11:57:27.499Z","0.1.0-alpha.5":"2026-07-31T13:00:56.208Z","0.1.0-alpha.6":"2026-07-31T14:44:36.906Z","0.1.0-alpha.7":"2026-07-31T15:05:04.129Z","0.1.0-alpha.8":"2026-07-31T15:53:59.459Z","0.1.0-alpha.9":"2026-08-04T10:57:12.435Z","0.1.0-alpha.10":"2026-08-04T13:45:05.738Z","0.1.0-alpha.11":"2026-08-04T16:04:47.789Z","0.1.0-alpha.12":"2026-08-04T17:34:51.012Z","1.0.0":"2026-08-05T09:38:09.804Z","1.0.1":"2026-08-05T10:26:52.890Z","1.0.2":"2026-08-05T12:18:36.734Z","1.1.0-alpha.1":"2026-08-11T09:32:42.747Z","1.1.0-alpha.2":"2026-08-11T15:19:42.820Z","1.1.0-alpha.3":"2026-08-12T08:11:37.006Z","1.0.3":"2026-08-12T13:42:19.518Z","1.1.0-alpha.4":"2026-08-14T14:40:50.332Z","1.1.0-alpha.5":"2026-08-17T19:28:22.184Z","1.1.0-alpha.6":"2026-08-18T08:49:50.100Z","1.1.0-alpha.7":"2026-08-18T12:41:23.781Z","1.1.0":"2026-08-26T07:29:51.410Z","1.1.1":"2026-08-26T12:04:04.323Z","1.1.2":"2026-08-26T12:21:11.985Z","1.1.3":"2026-08-26T16:00:37.367Z","1.1.4":"2026-08-27T06:54:57.552Z","1.1.5":"2026-08-27T10:51:56.595Z","1.1.6":"2026-08-28T09:15:40.590Z","1.2.0-alpha.0":"2026-08-28T13:20:46.606Z","1.1.7":"2026-08-28T14:40:59.796Z","1.2.0-alpha.1":"2026-08-31T12:09:01.438Z","1.2.0-alpha.2":"2026-09-01T13:19:48.305Z","1.2.0-alpha.3":"2026-09-01T14:47:19.453Z","1.2.0-alpha.4":"2026-09-01T16:33:30.859Z","1.2.0-alpha.5":"2026-09-02T14:21:16.946Z","1.2.0-alpha.6":"2026-09-02T14:27:46.810Z","1.2.0-alpha.7":"2026-09-02T14:30:24.046Z","1.2.0-alpha.8":"2026-09-03T06:43:13.402Z","1.2.0-alpha.9":"2026-09-03T09:54:23.147Z","1.2.0-alpha.10":"2026-09-03T10:57:03.265Z","1.2.0-alpha.11":"2026-09-03T12:46:23.645Z","1.2.0-alpha.12":"2026-09-03T13:03:05.628Z","1.2.0-alpha.13":"2026-09-03T16:10:59.985Z","1.2.0-alpha.14":"2026-09-04T15:24:28.434Z","1.2.0-alpha.15":"2026-09-04T15:46:33.490Z","1.2.0-alpha.16":"2026-09-04T15:52:27.321Z","1.2.0-alpha.17":"2026-09-06T14:25:21.342Z","1.2.0-alpha.18":"2026-09-06T14:39:33.155Z","1.2.0-alpha.19":"2026-09-07T07:29:09.733Z","1.2.0-alpha.20":"2026-09-07T08:25:57.982Z","1.2.0-alpha.21":"2026-09-07T10:46:17.056Z","1.2.0-alpha.22":"2026-09-07T13:37:27.736Z","1.2.0-alpha.23":"2026-09-07T15:20:14.712Z","1.2.0-alpha.24":"2026-09-07T15:26:07.864Z","1.2.0-alpha.25":"2026-09-07T16:06:34.658Z","1.2.0-alpha.26":"2026-09-07T16:27:46.171Z","1.2.0-alpha.27":"2026-09-08T12:04:30.056Z","1.2.0-alpha.28":"2026-09-08T13:17:50.769Z","1.2.0-alpha.29":"2026-09-11T15:15:55.793Z","1.2.0-alpha.30":"2026-09-11T15:39:07.049Z","1.2.0-alpha.31":"2026-09-11T15:41:42.380Z","1.2.0-alpha.32":"2026-09-13T08:09:31.801Z","1.2.0-alpha.33":"2026-09-14T07:30:55.478Z","1.2.0-alpha.34":"2026-09-14T11:27:43.696Z","1.2.0-alpha.35":"2026-09-15T10:56:13.521Z","1.2.0-alpha.36":"2026-09-15T11:20:31.676Z","1.2.0-alpha.37":"2026-09-15T11:34:33.248Z","1.2.0-alpha.38":"2026-09-15T12:31:05.830Z","1.2.0-alpha.39":"2026-09-15T12:40:39.299Z","1.2.0-alpha.40":"2026-09-15T12:47:32.292Z","1.2.0":"2026-09-15T15:48:18.682Z","1.3.0":"2026-09-16T10:36:25.384Z","1.4.0-alpha.1":"2026-09-23T07:44:13.986Z","1.4.0-alpha.2":"2026-09-23T16:20:00.105Z","1.4.0-alpha.3":"2026-09-23T17:07:48.685Z","1.4.0-alpha.4":"2026-09-23T19:55:48.966Z","1.4.0-alpha.5":"2026-09-23T20:41:13.804Z","1.4.0-alpha.6":"2026-09-24T05:29:56.312Z","1.4.0-alpha.7":"2026-09-24T05:51:48.332Z","1.4.0-alpha.8":"2026-09-24T07:41:52.675Z","1.4.0-alpha.9":"2026-09-24T08:52:23.467Z","1.4.0-alpha.10":"2026-09-24T09:49:58.254Z","1.4.0-alpha.11":"2026-09-24T10:28:56.003Z","1.4.0-alpha.12":"2026-09-24T12:48:25.762Z","1.4.0-alpha.13":"2026-09-24T13:04:35.578Z","1.4.0-alpha.14":"2026-09-24T13:22:26.171Z","1.4.0-alpha.15":"2026-09-24T13:53:36.576Z","1.4.0-alpha.16":"2026-09-24T14:13:14.220Z","1.4.0-alpha.17":"2026-09-24T14:45:12.684Z","1.4.0-alpha.18":"2026-09-24T15:41:55.391Z","1.4.0-alpha.19":"2026-09-24T16:04:19.107Z","1.4.0-alpha.20":"2026-09-24T17:00:13.171Z","1.4.0-alpha.21":"2026-09-24T17:30:24.408Z","1.4.0-alpha.22":"2026-09-24T18:30:55.265Z","1.4.0-alpha.23":"2026-09-24T19:06:46.172Z","1.4.0-alpha.24":"2026-09-25T09:51:16.576Z","1.4.0-alpha.25":"2026-09-25T14:09:16.320Z","1.4.0-alpha.26":"2026-09-25T14:27:04.671Z","1.4.0-alpha.27":"2026-09-25T14:30:32.491Z","1.4.0-alpha.28":"2026-09-25T18:32:19.069Z","1.4.0-alpha.29":"2026-09-25T19:02:08.640Z","1.4.0-alpha.30":"2026-09-26T07:41:02.732Z","1.4.0-alpha.31":"2026-09-26T09:18:53.017Z","1.4.0-alpha.32":"2026-09-26T09:44:27.505Z","1.4.0-alpha.33":"2026-09-26T11:35:01.961Z","1.4.0-alpha.34":"2026-09-26T20:09:49.220Z","1.4.0-alpha.35":"2026-09-27T08:30:58.041Z","1.4.0-alpha.36":"2026-09-27T08:56:26.050Z","1.4.0-alpha.37":"2026-09-27T12:47:08.792Z","1.4.0-alpha.38":"2026-09-27T13:37:33.040Z","1.4.0-alpha.39":"2026-09-27T14:19:04.536Z","1.4.0-alpha.40":"2026-09-27T16:13:32.268Z","1.4.0-alpha.41":"2026-09-27T16:36:53.449Z","1.4.0-alpha.42":"2026-09-27T16:46:27.443Z","1.4.0-alpha.43":"2026-09-27T19:20:05.413Z","1.4.0-alpha.44":"2026-09-27T20:11:13.366Z","1.4.0-alpha.45":"2026-09-27T21:59:56.278Z","1.4.0-alpha.46":"2026-09-28T00:23:03.417Z","1.4.0-alpha.47":"2026-09-28T00:57:03.856Z","1.4.0-alpha.48":"2026-09-28T00:59:14.653Z","1.4.0-alpha.49":"2026-09-28T03:34:29.433Z","1.4.0-alpha.50":"2026-09-28T05:00:42.934Z","1.4.0-alpha.51":"2026-09-28T05:56:09.800Z","1.4.0-alpha.52":"2026-09-28T07:06:28.230Z","1.4.0-alpha.53":"2026-09-28T15:51:27.715Z","1.4.0-alpha.54":"2026-09-28T16:56:01.856Z","1.4.0-alpha.55":"2026-09-28T18:57:41.204Z","1.4.0-alpha.56":"2026-09-28T20:54:05.386Z","1.4.0-alpha.57":"2026-09-29T00:36:44.795Z","1.4.0-alpha.58":"2026-09-29T03:22:08.812Z","1.4.0":"2026-09-29T07:21:28.540Z","1.4.1":"2026-09-29T10:04:28.046Z"},"bugs":{"url":"https://github.com/hublo/sentinel/issues"},"author":{"name":"Hublo"},"license":"MIT","homepage":"https://github.com/hublo/sentinel#readme","repository":{"url":"git+https://github.com/hublo/sentinel.git","type":"git"},"description":"One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks.","maintainers":[{"name":"tirke","email":"tschersach@gmail.com"},{"name":"valentincommenge-hublo","email":"valentin.commenge@hublo.com"},{"name":"logangougethublo","email":"logan.gouget@hublo.com"},{"name":"ahmadkanj","email":"ahmad@hublo.com"},{"name":"prollandhublo","email":"pierre.rolland@hublo.com"},{"name":"thomas_bro_hublo","email":"thomas.brouillet@hublo.com"},{"name":"adil-hublo","email":"adil.ouaali@hublo.com"},{"name":"erictromashublo","email":"eric.tromas-ext@hublo.com"},{"name":"helabenkhalfallah","email":"helabenkhalfallah@hotmail.fr"}],"readme":"# @hublo/sentinel\n\n> One CLI that guards code health across Hublo repos: shared lint/typescript/build/test presets, static & dynamic analysis, and architecture checks, behind a single command.\n\n`sentinel` is a standalone, semver-versioned package (published to a registry, consumed by a repo as a normal dependency) that unifies a repo's tooling, config, and quality checks into one place, so projects stop copying config files everywhere and stop carrying a pile of duplicated tooling dependencies.\n\n> Status: **the foundation, TypeScript, lint, format, build, dev and test are shipped** (`@hublo/sentinel` on npm). The rest of this README is the design reference for the tools still to come, added one at a time on top of this foundation.\n\n---\n\n## Why\n\nA large monorepo accumulates:\n\n- **Config sprawl** — the Hublo monorepo has ~116 eslint configs, ~528 tsconfig files, per-project vite/vitest configs. Almost all just re-extend a shared base, but the base drifts and every change means touching many files.\n- **Centralized, all-or-nothing dependencies** — ~165 devDependencies at the root, ~93% of projects declare none of their own. Bumping a tool is a \"big bang\": all projects, at once, untested in isolation.\n\n`sentinel` fixes both: **one versioned source of truth** for tooling + config, adopted **per module** so you can migrate gradually and bump the whole toolchain atomically.\n\n## What it gives you\n\n**The shift:** instead of today's **big-bang** (change every project and every tool at once, untested in isolation), evolution is **app-scoped and versioned**, evolving a project is a **version bump**, a new/swapped tool is just a **new runner**, and a new stack a **new preset**. No repo-wide edits.\n\n- **One source of truth for config** — every project just `extends @hublo/sentinel/...`; the actual rules live in one versioned place. Change a rule once, everyone gets it on the next version bump.\n- **One source of truth for tooling dependencies** — a project depends on `@hublo/sentinel`, not on a scattered pile of eslint / vitest / plugin devDeps. Bump one version and the whole toolchain moves, atomically, tested in isolation first.\n- **`--init` sets a module up** — the one command generates the stubs the first time (**adopt**), regenerates them after a change like a runner swap (**refresh**), and applies the workspace prep the module needs. Run it module by module to roll out gradually. (`--migrate`, for changing an already-initialized setup, is a reserved future verb.)\n- **`--validate` proves the move did not change anything** — a verb of its own, because what separates it from `--init` is what SURVIVES the run: `--init` and `--migrate` write state that REMAINS, `--validate` may instrument the module it is proving provided nothing it writes stays. Run before a migration it records what the module does today; run after, it compares and refuses a run that lost a test or invented one. It composes with every type, and answers \"not available yet\" for the ones without a proof rather than calling a valid command wrong.\n- **Move one module at a time** — installed per module, so you adopt at your pace; a module can adopt sentinel while its neighbour keeps the old setup. No big-bang.\n- **Swap tools without touching projects** — change eslint → biome (or benchmark them) in one place; `--init` regenerates the stubs.\n- **No silent drift** — the guard keeps every project's config converged on the source of truth.\n\n### Before → after\n\n|                    | Before                                                        | After                                                             |\n| ------------------ | ------------------------------------------------------------- | ----------------------------------------------------------------- |\n| **Config**         | ~116 eslint + ~528 tsconfig files with real, drifting content | thin stubs that `extends` a versioned preset; rules in one place  |\n| **Tooling deps**   | ~165 devDeps at the root, shared by all                       | one `@hublo/sentinel` per module; the toolchain rides its version |\n| **Upgrade a tool** | big-bang: every project at once, untested in isolation        | bump one version, tested in sentinel first, atomic                |\n| **Swap a tool**    | edit config in every project                                  | swap an adapter + `--init`; zero project churn                    |\n| **A rule change**  | edit many configs, hope they stay consistent                  | change once; the drift guard enforces it                          |\n| **Migration**      | all-or-nothing                                                | module by module, at your pace                                    |\n\n## How you use it\n\nsentinel writes **standard config files** into a project (each just `extends` a sentinel preset) and runs the checks. Your editor and the tools read those **normal files natively**, they never call sentinel at runtime, so nothing is coupled to it or brittle.\n\n> **Shipped today:** the **TypeScript**, **lint**, **format**, **build**, **dev** and **test**\n> tools. `--test` migrates a module from jest to Vitest and proves the migration by comparing the\n> full NAMES of the tests before and after; see [the test cheat sheet](docs/test-adoption.md).\n\n**Step 1 — put a module on sentinel** (once per module, by a dev; the files are committed). Run from the app dir; `--init` does it all, nothing is hand-edited:\n\n```bash\nsentinel --init --preset <react|nest|node|svelte>   # every role sentinel ships\npnpm install   # fetch what --init declared, then commit\n```\n\nWith no target named, `--init` adopts every role, in the order that makes the result correct:\nthe linter's autofix runs, then the formatter runs **last** and formats everything every role\nwrote. Naming one target (`--init --lint`) adopts just that role and leaves the rest alone.\n\n`--init` writes the config stubs, the `typecheck`/`lint`/... scripts, and pins the `@hublo/sentinel` devDependency into the module (no manual `pnpm add`); it scaffolds a `package.json` for a `project.json`-only module. It also applies, once, the workspace prep that module needs at the root, only when the root's own config shows it is needed (e.g. an i18next singleton override when the repo runs a second TypeScript, a release-age allow-list when the repo uses that pnpm gate). See the [adoption cheat sheet](docs/typescript-adoption.md) for the full list.\n\nThose files are tiny, they just point at a sentinel preset. What gets committed:\n\n```jsonc\n// .oxlintrc.json — generated. Adoption REPLACES eslint rather than sitting beside it, so\n// the module's eslint config is DELETED and this is the only linter config it keeps.\n// The RULES live in the preset, so a preset change arrives by reinstalling. `ignorePatterns`\n// cannot: it does not cross an `extends` boundary, so it is written here, which is what\n// makes the file correct for your editor and for `oxlint -c` on its own.\n{\n  \"extends\": [\"./node_modules/@hublo/sentinel/oxlint/react.json\"],\n  \"ignorePatterns\": [\"**/dist/**\", \"**/node_modules/**\", \"...\"],\n}\n```\n\n```jsonc\n// .oxfmtrc.json — generated, and the one config that is NOT a stub: oxfmt has no `extends`\n// and ignores the key silently, so the preset's values are written in. Anything the module\n// deliberately formats differently is declared in `$sentinel.local` and survives a re-init.\n{\n  \"$sentinel\": { \"preset\": \"base\", \"version\": \"1.1.0\", \"local\": [] },\n  \"printWidth\": 80,\n  \"semi\": false,\n  \"singleQuote\": true,\n  \"sortImports\": { \"groups\": [\"builtin\", \"external\", \"internal\", [\"parent\", \"index\"], \"sibling\"] },\n}\n```\n\n```jsonc\n// tsconfig.json — COMPOSES the repo base with the sentinel preset (see \"Composition\n// & precedence\"); only project-specific paths/include stay local\n{\n  \"extends\": [\"../../tsconfig.base.json\", \"@hublo/sentinel/tsconfig/react\"],\n  \"compilerOptions\": { \"baseUrl\": \".\", \"paths\": { \"@/*\": [\"./src/*\"] } },\n  \"include\": [\"src\"],\n}\n```\n\n> A module can extend the preset alone (`\"extends\": \"@hublo/sentinel/tsconfig/react\"`) when there is no repo base. Compose with the base when the repo owns structure (a monorepo `paths` map) the preset should not, see \"Composition & precedence\".\n\nAnd the app's `package.json` scripts route every check through the one CLI (run from the app dir, sentinel scopes to it):\n\n```jsonc\n// package.json\n{\n  \"scripts\": {\n    // `lint` checks BOTH, the way `prettier --check . && eslint .` used to. In the :fix\n    // pair the formatter runs last: the linter's autofix rewrites code.\n    \"lint\": \"sentinel --run --lint && sentinel --run --format\",\n    \"lint:fix\": \"sentinel --run --lint --fix && sentinel --run --format --fix\",\n    \"format\": \"sentinel --run --format\",\n    \"format:fix\": \"sentinel --run --format --fix\",\n    \"typecheck\": \"sentinel --run --typescript\",\n    \"test\": \"sentinel --run --test\",\n  },\n}\n```\n\n**Step 2 — from then on you rarely touch sentinel.** The committed config files do the work:\n\n- your **editor** reads them → live lint / type / format, exactly as before;\n- **CI** runs the checks: `sentinel --run --lint` from the module dir (or `nx run my-app:lint`, or even `eslint` directly, the generated config is self-sufficient);\n- the rules always come from the sentinel version the stubs point at.\n\n**Step 3 — evolve the toolchain, in one central place:**\n\n- a **rule change** → bump the `@hublo/sentinel` version; the stubs already point at it, so there is **nothing to regenerate**;\n- a **structural change** (new tool, new preset, runner swap) → run `sentinel --init` once to refresh the stubs (sentinel tells you when this is needed).\n\n**Step 4 — stay converged:** a drift guard in CI flags any module whose config quietly diverged from the shared source.\n\nThe per-tool knowledge (eslint → `eslint.config.js`, tsc → `tsconfig`, …) lives **inside sentinel as an adapter**, swappable centrally, but never a runtime dependency of the project.\n\n## Requirements & installing\n\n**Registry: public npm**, under `@hublo`. We started on **GitHub Packages (private)** and moved off it: it authenticates every consumer, including a one-off run, which is incompatible with the zero-setup adoption above. Public npm needs no consumer auth, so a module adopts sentinel without any `.npmrc` or token. Releases go out through the repo's `publish` workflow, never from a laptop; a prerelease is published under its prerelease dist-tag (`alpha`) and a stable one under `latest`.\n\n**Node.** sentinel needs **Node >= 20.12** (its coloured output uses `util.styleText`, added in 20.12). It fails fast with a clear message on an older runtime rather than crashing. If a project runs on an older Node (e.g. a legacy app on Node 10), run sentinel with a modern Node via `fnm`/`nvm`; you do not need to change the project's own Node.\n\n**Try it without installing.** A one-off run needs no auth and touches nothing:\n\n```bash\nnpx --yes @hublo/sentinel@<exact-version> --inspect --typescript --module <name>\n```\n\n**Why `npx` and not `pnpm dlx`, in a pnpm monorepo.** Because `pnpm dlx` no longer works for this,\nand no flag fixes it. pnpm's `strictDepBuilds` defaults to **true**, so adding a package whose build\nscripts have not been approved is a FATAL error rather than the warning it was through pnpm 10\n([settings/build](https://pnpm.io/settings/build)). sentinel pulls `esbuild` and `nx`, so the\ninstall aborts _before sentinel runs at all_: exit 1, nothing on stdout.\n\nThe usual remedy, `allowBuilds` in `pnpm-workspace.yaml`, cannot reach it either: `dlx` runs in a\nthrowaway project outside the workspace, so the workspace's approvals do not apply. `--allow-build`,\n`--config.dangerouslyAllowAllBuilds` and `--config.strictDepBuilds=false` were each measured and\neach still exits 1.\n\n`npx` fetches the same published package and runs no dependency build scripts, which is what a\nthrowaway run wants. Once a module has adopted, nothing is fetched any more: the scripts call the\n`sentinel` binary from the module's own `devDependencies`.\n\n**Installing a pre-release (`minimumReleaseAge`).** The monorepo enforces a 3-day `minimumReleaseAge` supply-chain gate (a freshly published version cannot be installed until it has aged 3 days). A brand-new `alpha` therefore cannot be added yet, so while testing pre-releases you either exclude the package (`pnpm-workspace.yaml` → `minimumReleaseAgeExclude`) or install with `--config.minimumReleaseAge=0`. This is a deliberate protection, not a bug: **always pin the exact version** (`@hublo/sentinel@0.1.0-alpha.9`) rather than `@latest`, so a run is reproducible and the gate stays meaningful.\n\n## Docs & cheat sheets\n\n- [`docs/performance.md`](docs/performance.md) — the measured baseline (`pnpm bench`), so a regression is something you can see rather than argue about, and what is deliberately left unoptimised.\n- [`docs/using-sentinel.md`](docs/using-sentinel.md) — every verb for every role, scoping a run to some files, what a fully adopted module looks like, and how versions move between modules.\n- [`docs/lint-adoption.md`](docs/lint-adoption.md) — migrating a module from ESLint to Oxlint: the two steps, what `--init` writes and removes, the two react tiers, and the failures worth recognising.\n- [`docs/format-adoption.md`](docs/format-adoption.md) — migrating a module from Prettier to oxfmt: why this config is materialized rather than a stub, how a module keeps its own formatting, and what did not survive the move.\n- [`docs/build-adoption.md`](docs/build-adoption.md) — moving a React app's Vite toolchain into sentinel: adoption changes the config's IMPORTS and nothing else, what sentinel owns versus what stays the app's, and why reading nothing is what makes losing nothing a guarantee.\n- [`docs/typescript-adoption.md`](docs/typescript-adoption.md) — the adoption cheat sheet: the two adoption steps, the command model (verb x type x location), options, reading a report, and troubleshooting.\n- [`docs/test-adoption.md`](docs/test-adoption.md) — migrating a module from jest to Vitest: the two steps, what the migration rewrites and what it refuses BY NAME, how the baseline gate proves nothing was lost, and the failures worth recognising.\n- [`docs/typescript-traces.md`](docs/typescript-traces.md) — a **generated, versioned** reference of live command + output traces (every verb, option, config result and edge case) against the mock monorepo. Regenerate after CLI changes with `pnpm docs:traces`.\n\n## Architecture: `target → runner → preset`\n\nEvery check is described by three layers:\n\n| Layer                | Flag                        | What it is                                  | Examples                                                                                                                                                     |\n| -------------------- | --------------------------- | ------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| **target** (role)    | `--lint`, `--typescript`, … | the _kind_ of check, stable                 | `lint` `format` `typescript` `build` `dev` `test` `static-analysis` `runtime-analysis`                                                                       |\n| **runner** (adapter) | `--runner=<tool>`           | the _tool_ behind the target, swappable     | lint: `eslint`/`biome`/`oxlint` · types: `tsc`/`tsgo` · build: `vite` · test: `vitest`                                                                       |\n| **preset** (preset)  | detected / `--preset`       | the _variant_ per stack (strict by default) | `react` `nest` `node` `svelte` (svelte: lint + format; no tsconfig preset yet, so the TypeScript role stands aside on those modules and the other two adopt) |\n\nA run is `target × runner × preset`, e.g. `sentinel --run --lint --runner=eslint` from the `host-admin` dir.\n\n- `--runner` is an **optional override on a central default**. `sentinel --lint` uses the configured default runner, so swapping a tool globally is a one-place change; `--runner=biome` overrides for a single run (great for benchmarking eslint vs biome vs oxlint, and for gradual migration).\n- The **preset is detected** from the module's dependencies (deterministic: a framework dep → its preset, else `node`), and **`--preset` overrides it**. Detection can be wrong where deps are hoisted at the repo root (it returns `node`), so pass `--preset` for `--init` (that is where the preset is chosen). `--run`/`--report` don't depend on it, they run the tool on the committed config.\n\n### Adapters & the engine (ports & adapters)\n\n`sentinel` is a small **ports & adapters** design, which is what keeps tool logic out of the core:\n\n- the **engine** (core) is tool-agnostic: it parses the CLI, resolves an adapter, and owns **all IO and repo structure**, finding the project root, reading, merging and writing files;\n- an **adapter** is the boundary to one tool (eslint, tsc, vitest, …). It carries the tool knowledge (how to run it, what its config means) and implements one contract (types in `src/core/types.ts`, optional base in `src/core/base-adapter.ts`);\n- a **context** is a plain data object the engine passes to an adapter for a run (`app`, `cwd`, optional `preset`, `ci`, `fix`). It is data only, it never carries a filesystem capability.\n\n`sentinel` does not reimplement tools. The contract:\n\n- **`appliesTo(preset)`** — which presets this adapter handles (resolution filters on it, so a React-only adapter is never picked for Nest)\n- **`plan(preset)`** — PURE: returns a declarative `UpdatePlan` of file operations (used by `--init`). The adapter never touches the disk; the engine applies the plan.\n- **`run(ctx)`** — invoke the tool's bin against the project (used by `--run`)\n- **`inspect(preset)`** — the adapter's resolved base config (used by `--inspect`)\n- **`report(ctx)`** — metrics (used by `--report`)\n\n**`--init` is a declarative plan, not file-writing inside the adapter.** The adapter describes intent as operations; the engine executes them:\n\n- `write { path, contents }` — a file the adapter fully owns (the thin stub)\n- `merge-json { path, value }` — pin the keys sentinel owns while **preserving** a project's own (this is how a tsconfig's `paths`/`include` survive)\n- `ensure-lines { path, lines }` — idempotently add lines (e.g. an import into an existing test setup)\n\nSo the tool-_meaning_ lives in the adapter and the read/merge/write _mechanics_ live in the engine, which keeps adapters pure and decoupled from where files live.\n\n**Adding a new tool = writing one adapter** plus one line in the bootstrap (`src/adapters.ts`). The CLI (verbs × targets) never changes: swap a tool = swap an adapter (one place); benchmark = run two adapters on the same target.\n\n## Schema\n\n**How a command flows** (the CLI stays generic; only adapters are tool-specific):\n\n```mermaid\nflowchart LR\n  CLI[\"sentinel --verb --target<br/>[--runner]\"] --> D[dispatch]\n  D --> R[\"registry.resolve<br/>(target, preset, runner)\"]\n  R --> A[\"adapter<br/>eslint / tsc / vitest / ...\"]\n  A -->|\"--run\"| Run[\"tool binary on the project\"]\n  A -->|\"--init\"| Upd[\"declarative plan → engine writes\"]\n  A -->|\"--inspect\"| Ins[\"resolved config\"]\n  A -->|\"--report\"| Rep[\"metrics\"]\n```\n\n**How config lives** (one source of truth in sentinel; thin generated stubs keep the editor and nx working):\n\n```mermaid\nflowchart TB\n  S[\"@hublo/sentinel<br/>rules = one source of truth\"]\n  S -->|\"--init generates\"| Stub[\"thin stub per module<br/>(extends sentinel)\"]\n  Stub --> IDE[\"editor: live lint / type / format\"]\n  Stub --> NX[\"nx: target inference\"]\n  S -->|\"--run injects config\"| CI[\"CLI / CI: run tool on target\"]\n  Guard[\"drift guard + allowlist\"] -. \"validates the stub stays thin\" .-> Stub\n```\n\n## How config lives (the model)\n\nThe rules live in `sentinel`. Each module keeps a **thin, generated stub** per tool, a few lines that `extends`/re-export the sentinel preset:\n\n- **Rules in sentinel** — one source of truth, versioned.\n- **Thin stubs per module** — the stub is what keeps the **editor working** (VS Code discovers config by file, real-time lint/type/format stay live) and what **nx** uses to infer targets. Stubs are **generated by `sentinel --init`**, never hand-written; swapping a runner regenerates them.\n- **Drift guard** — sentinel validates that each stub is _only_ the sanctioned `extends`, with nothing added or overridden. Unsanctioned drift is flagged in CI; a genuine exception must be **declared in an allowlist** (visible, reviewed), never silent.\n- **Per-module install** — `@hublo/sentinel` is added per module, so adoption is **gradual** (migrate lot by lot; a module can adopt sentinel while its neighbour still uses the old config). Root configs are removed only once the **last** module has migrated.\n- **Runner binaries** (`eslint`, `typescript`, `vite`, `vitest`, …) are **resolved from the adopting module** at run time (sentinel looks for the tool in the module, then falls back to `PATH`), so the editor and nx keep using the exact binary the project already installs. sentinel does **not** declare them as dependencies today, so it does not pin their versions: the module still owns its own `typescript`. Having sentinel dictate those versions (as peer dependencies, so the whole toolchain rides the sentinel version) is the intended end state, and it lands with the tool tickets that actually bundle a runner.\n\n## What a preset does not enforce\n\nA preset that silently enforces less than the config it replaced is worse than no preset, so\nevery rule that is not enforced carries a reason and is listed by `sentinel --inspect --lint`:\n\n| State          | Meaning                                                              | Can it be switched on?          |\n| -------------- | -------------------------------------------------------------------- | ------------------------------- |\n| **deferred**   | scheduled for a later migration wave                                 | yes, on schedule                |\n| **disabled**   | a decision: it argues with the architecture, or only false-positives | yes, by revisiting the decision |\n| **downgraded** | it runs and reports, it just cannot fail the build                   | yes, once the debt is paid      |\n\nA small number of rules sit outside those three states, because the preset cannot carry them at\nany severity. They are documented here rather than reported by `--inspect`: oxlint validates\nrule and plugin names when it **parses** a config, so naming one would make the config fail to\nparse and the module would lint nothing at all. They are still recorded as data in the preset,\nso the tests can count every rule a module enforces and fail on anything unaccounted for.\n\n### Rules the presets do not carry (nest, react)\n\n| Rule                         | Why                                                                                                                                                                                                       |\n| ---------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `typescript/member-ordering` | oxlint has no native rule, and the preset deliberately does not host `@typescript-eslint/eslint-plugin`: a plugin costs a dependency, a load step and a pass over every file, which is not worth one rule |\n| `no-invalid-this`            | no oxlint equivalent, and hosting does not help (the rule crashes on every file under oxlint's plugin API). Its coverage moves to TypeScript's `noImplicitThis`                                           |\n| `no-octal`                   | no oxlint equivalent                                                                                                                                                                                      |\n| ~15 stylistic rules          | formatting, which the formatter owns. They move to **oxfmt**, deliberately the last step of the migration, so nothing enforces them in between                                                            |\n\nThe formatting group is the only one that will ever shrink; the rest are settled losses.\n\n`no-return-await` is **not** in that table, despite having no oxlint rule of that name. It is\ndeprecated in ESLint core and oxlint ships the typescript-eslint successor, so the presets carry\n`typescript/return-await` with the `never` option, which is what the old rule meant. It is held\nat `warn`: both modules set the old rule to error, but it was never actually reporting (the nx\nlint target expanded to 2 files of 2888), and running it over every file finds 9 real violations\non bff-admin and 5 on host-admin. Fix those and it can be raised.\n\n### Rules with no oxlint equivalent (svelte)\n\nOxlint parses a `.svelte` file's `<script>` block and **not its template**. Measured on oxlint\n1.77 with a component carrying a violation in each half: the `<script>` violation is reported,\nand `{@html}`, `{@debug}` and duplicate style properties in the template produce nothing.\nAdding a svelte plugin does not fix this, because the missing piece is the **parser**, not the\nrule implementations.\n\nSo sixteen rules the two svelte modules enforce today have **no oxlint equivalent**. Fourteen\nread the template:\n\n`svelte/comment-directive` · `svelte/no-at-debug-tags` · **`svelte/no-at-html-tags`** ·\n`svelte/no-dupe-else-if-blocks` · `svelte/no-dupe-style-properties` ·\n`svelte/no-dynamic-slot-name` · `svelte/no-inner-declarations` ·\n`svelte/no-not-function-handler` · `svelte/no-object-in-text-mustaches` ·\n`svelte/no-shorthand-style-property-overrides` · `svelte/no-unknown-style-directive-property` ·\n`svelte/no-unused-svelte-ignore` · `svelte/system` · `svelte/valid-compile`\n\nand two core rules oxlint does not implement: `no-dupe-args` (TypeScript rejects duplicate\nparameter names anyway) and `no-octal`.\n\n**The one worth knowing about is `svelte/no-at-html-tags`**, an XSS guard that fires on the\nmodules today. Adopting the svelte lint preset gives that check up.\n\nThese rules are **absent from the generated config rather than set to `off`**, and that is\nforced, not stylistic. Oxlint rejects an unknown rule or plugin when it _parses_ a config, even\nwhen the value is `off`:\n\n```console\n$ oxlint -c '{\"rules\": {\"svelte/no-at-html-tags\": \"off\"}}'\nFailed to parse oxlint configuration file.\n  x Plugin 'svelte' not found\n```\n\nListing them as disabled would not weaken the config, it would stop the config from parsing and\nthe module would lint nothing at all. They are recorded as data in the preset (`uncovered`), so\nthe preset tests can count every rule the modules enforce and fail on anything unaccounted for,\nand they are documented here for the developers who own those modules.\n\n## Composition & precedence\n\nA repo often has a base config that is **structural**, not just tooling, e.g. a\nmonorepo `tsconfig.base.json` carrying the workspace `paths` map. sentinel does **not**\nreplace it; it **composes** with it, so the structure survives and sentinel owns the\nstandards:\n\n```jsonc\n\"extends\": [\"../../tsconfig.base.json\", \"@hublo/sentinel/tsconfig/react\"]\n```\n\n**Precedence — sentinel wins.** With array `extends` (TS 5.0), entries merge in order\nand the **last one wins**; the module's own `compilerOptions` win over both. So it is\nalways **base → sentinel → module-local**. sentinel is listed **last on purpose**:\nit is a **reference** (a source of truth), not a suggestion the base can silently\nveto. For any option sentinel declares, sentinel's value is the effective one.\n\nFor a module composing the base, the resolved config (`tsc --showConfig`) looks like:\n\n| Option                        | Effective value      | Owner                                      |\n| ----------------------------- | -------------------- | ------------------------------------------ |\n| `strict`, `jsx`, decorators   | preset's             | **sentinel** (quality + framework)         |\n| `module` / `moduleResolution` | `esnext` / `bundler` | **sentinel**                               |\n| `target` / `lib` / `paths`    | the repo's           | **base** (environment; sentinel won't set) |\n| `noImplicitAny`               | **off** (phase 1)    | **base**, the preset defers it (see below) |\n\n- **sentinel owns quality + framework semantics** (`strict`, `jsx`, decorators, module\n  system). The base can never quietly undo those, which is what makes sentinel a\n  reliable reference.\n- **the base owns the environment** (`paths`, `target`, `lib`, project references).\n  sentinel does **not** set these, `extends` REPLACES arrays rather than merging, so\n  overriding `lib`/`target` would drop the repo's DOM libs or flip class-field emit.\n\n**Least astonishment / phased strictness.** So a reference doesn't turn every rule on\nthe instant a module adopts it, sentinel **phases** the rules that would surface new\nerrors (`noImplicitAny`, `noUnusedLocals`, `noUnusedParameters`). They are kept\n**commented** in the preset (visible, never silently dropped) and announced by a\nruntime **warning**. `strict` stays on (so a standalone consumer still gets\n`noImplicitAny`), but a repo base that relaxes `noImplicitAny` keeps it off until that\nrelaxation is removed. First adoption is therefore a **non-breaking lateral move**;\nthe rules are enabled **centrally** in a later wave.\n\n**Removing the base is two decoupled moves, and neither loses quality:**\n\n1. **Compose** (`extends: [base, preset]`). Quality flips to sentinel **immediately**,\n   because it wins. The base's own tooling options are still present but now **dead\n   config** (overridden).\n2. **Slim the base later** to structure only (`paths` + references). This moves nothing\n   quality-wise, sentinel already won in step 1, so it is safe. The base is never fully\n   removed while it still owns `paths`.\n\n**The discipline this demands:** sentinel must **explicitly declare every quality\noption it means to own.** An option sentinel forgets to set falls through to the base,\na silent gap in the reference. (Be deliberate with array/replace options like `types`:\nsetting them **overrides** the base's rather than merging, so only own them when you\nmean to.)\n\n## CLI\n\nA command **composes** three axes: **verb + type + location**.\n\n```\nsentinel <verb> [type] [options]\n\nVERBS      --run       execute the target's tool (--json for metrics + diagnostics)\n           --inspect   the resolved configuration, what is deferred, adoption + drift\n           --init      generate/apply the config stubs (writes; one module only)\n           --report    deprecated → --run --json\n           --status    deprecated → --inspect\n\nTYPES      --lint  --format  --typescript  --build  --dev  --test\n           --static-analysis  --runtime-analysis  --arch\n           (omit a type → every type that TERMINATES; --dev never sweeps)\n           --dev answers --run and --init only: a server is started, not read,\n           so --inspect/--report/--status refuse it and point at --build\n\nLOCATION   in a MODULE dir      → that module (do NOT pass --module)\n           at the workspace ROOT → --module <name> (one) · --ci (affected) · else all\n\nOPTIONS    --module <name>    from the root: scope to one module\n           --preset <name>   override the detected stack preset (react, nest, ...)\n           --runner <tool>    override the default runner\n           --ci               from the root: affected only; non-zero exit on failure\n           --fix              auto-fix where applicable\n           --dry-run          preview a --init without writing\n           --json             machine-readable output (report / inspect / status / --dry-run)\n           -- <tool options>  --run only: pass the rest to the tool itself (one type)\n\nEXAMPLES   sentinel --run --typescript                        # in a module → that module\n           sentinel --run --typescript -- --noImplicitAny     # ask tsc a question of your own\n           sentinel --run --typescript --module bff-admin     # from root  → one module\n           sentinel --run --json                              # from root  → all types, machine output\n           sentinel --inspect --typescript                    # from root  → adoption coverage\n           sentinel --inspect --ci                            # from root  → fail CI on drift\n           sentinel --init --typescript --preset react     # write stubs for the current module\n```\n\n`--run`/`--inspect`/`--report`/`--status` share one context rule (developer from a\nmodule, or from the root for a name / affected / all); `--init` writes, so it targets\none module only (adopting every module at once is refused, adopt gradually).\n\n### Asking the tool your own question (`--`)\n\nEverything after `--` goes to the tool, not to sentinel. It applies to `--run` only, and\nneeds exactly one type named, since one tool's options are not another's:\n\n```bash\nsentinel --run --typescript -- --noImplicitAny    # what would this deferred rule cost?\nsentinel --run --lint -- --deny-warnings          # what would zero warnings take?\n```\n\nThis exists because a preset **defers** rules to keep first adoption non-breaking, and\n`--inspect` can only say that a rule is deferred. \"Deferred\" is honest, and it is not the\nanswer anyone wants: the question is how much debt is behind it. Rather than sentinel\nmodelling that question one flag at a time, the tool's own options are forwarded, so\nanything the tool can already answer is one command away.\n\nTwo things to know:\n\n- **A modified run always says so**, on stderr and in the `--json` envelope (`toolArgs`).\n  These options can weaken a check as easily as strengthen it, and `--run` is what CI\n  calls, so a green result must never be mistakable for a clean standard check.\n- **For TypeScript it changes how tsc is invoked**, because build mode refuses compiler\n  options (`error TS5094`). Sentinel switches to project mode and checks each project the\n  solution `references`, since the solution itself holds no files. Emit is forced off, so a\n  question about the code never writes build output.\n\n**`--status` — adoption + conformity.** A cheap, workspace-wide read (no tool run, no\npreset guessing): for each module it reads the committed `tsconfig` `extends` chain and\nreports whether it is **adopted** (extends a sentinel preset), which preset, and whether\nit is **conformant** (drift-free, a re-`update` would change nothing), plus a coverage\nfooter. This is the **drift guard** as a command, `--status --ci` exits non-zero when an\nadopted module has drifted.\n\n```\n  ✓ host-admin (react) typescript — adopted (react) conformant\n  ✗ some-bff   (nest)  typescript — adopted (nest) drift: strict, target\n  · legacy-app (node)  typescript — not adopted\n  coverage: 12/40 adopted · 11/12 conformant · 1 drifted\n```\n\n## Repository layout\n\n```\nbin/sentinel.ts              # CLI entry (parse verb × target × runner; never lists tools)\nsrc/\n  adapters.ts                # bootstrap: the one place adapters are wired in\n  core/\n    types.ts                 # the adapter contract, pure types (Adapter, FileOperation, UpdatePlan)\n    base-adapter.ts          # optional convenience base class for adapters\n    domain.ts                # vocabulary + derived types (verbs, targets, presets)\n    settings.ts              # tunables (workspace-root marker, ...)\n    registry.ts              # register + preset-aware resolve\n    dispatch.ts              # verb → adapter method\n    apply-plan.ts            # the engine's filesystem port (applies --init operations)\n  roles/<config-role>/       # lint, format, typescript, build, test\n    adapters/<runner>/       # one adapter per tool (implements the contract)\n    presets/<stack>/        # config presets per stack (react, nest, svelte, ...)\n  roles/{static-analysis,runtime-analysis}/   # analysis roles\n    configs/                 # fixed configs (internal, not exported)\n    runners/                 # one runner per sub-tool (duplication, complexity, ...)\n  shared/                    # reusable utils (package-json, deep-merge, text)\ntests/                       # unit tests + tests/e2e (runs the built dist binary)\n.github/workflows/           # ci.yml (PR checks) + publish.yml (manual, version-input publish)\n```\n\nPresets reach consumers two different ways, decided by the tool rather than by us:\n\n- **tsconfig, as subpath exports**: `@hublo/sentinel/tsconfig/react` · `.../tsconfig/nest` ·\n  `.../tsconfig/node`. tsc resolves `extends` through the `exports` map.\n- **oxlint, as physical paths at the package root**: `oxlint/react.json`, `oxlint/nest.json`,\n  `oxlint/node.json`, `oxlint/svelte.json`, referenced as\n  `./node_modules/@hublo/sentinel/oxlint/<preset>.json`. Oxlint resolves every `extends`\n  entry as a PATH and never as a package specifier, so it never consults `exports` and the\n  physical layout IS the contract. The same is true of `jsPlugins`, which is why the local\n  Hublo plugin ships beside them in `plugins/`.\n\nPresets for the remaining tools land with their own ticket.\n\n## FAQ\n\n**Is every tool call proxied through sentinel?**\nNo, and it's not a runtime proxy. sentinel manages the **widespread, config-driven tools** (eslint, tsc, vitest, …); something like **nx doesn't need it** at all, it's the task runner, it just runs the scripts. And for the tools it does manage, the config files are **standard**, so they and your editor run **natively**, `sentinel --run` is a convenience dispatcher and you can run `eslint .` directly.\n\n**What does running eslint look like after sentinel?**\nExactly like before. `eslint` reads `eslint.config.js`, which imports a sentinel preset. `sentinel --run --lint`, `nx run app:lint`, and `eslint .` all run the same eslint with the same rules.\n\n**Who decides which tool `--lint` runs?**\nThe target's default runner, configured in sentinel (e.g. `lint → eslint`). Override per run with `--runner=biome`. So `--lint` is the _what_; the runner is the _how_, swappable in one place.\n\n**Can two different lint tools coexist in the repo?**\nYes. Per app (app A defaults to eslint, app B to biome), or even in the same app: `sentinel --run --lint --runner=oxlint` (fast) alongside `--runner=eslint` (full). The registry holds every runner for a target; the default is just the common case.\n\n**What about tools that can't `extends` / compose config?**\nMost tools expose `extends` or a plugin mechanism to compose config, so the stub just points at the sentinel preset. For the rare tool that doesn't, sentinel exposes the config **directly**, it generates the full config from its preset (still one source, drift-checked).\n\n**What does an nx `project.json` look like?**\nnx is a **task runner**: it just runs the target's script, so the command belongs in `package.json` and nx infers a target from it (verified: it does this even when the module also has a `project.json`). Adoption therefore REMOVES the role's target from `project.json`, leaving every other one alone, and writes only what nx alone needs (cache inputs) into the `nx` block of `package.json`. Each role a module adopts decouples one more thing from nx and shrinks that file. nx keeps the graph, affected set, and cache; sentinel provides the config + execution.\n\n## Roadmap\n\nThis scaffold is the foundation; each tool is added one at a time on top of it:\n\n1. **Foundation** — repo, exports, CLI skeleton, adapter contract, CI + the single dispatch `publish` workflow. **✅ shipped**\n2. **TypeScript** (`--typescript`) — runner `tsc` (later `tsgo`): presets react/nest/node, `--run`/`--inspect`/`--report`/`--init`, the composable grid, phased (non-breaking) strictness. **✅ shipped in `0.1.0-alpha.x`**\n3. **Lint** (`--lint`) — benchmark `eslint` vs `biome` vs `oxlint`.\n4. **Build** (`--build`) — `vite`.\n5. **Test** (`--test`) — `vitest`, migration from jest proven module by module against a name-level baseline. **✅ shipped in `1.4.0-alpha.x`**; a11y / w3c setups still to come.\n6. **Static analysis** (`--static-analysis`) — cycles, complexity, duplication, centrality.\n7. **Runtime analysis** (`--runtime-analysis`) — bundle, Lighthouse, web vitals.\n8. **Unified CI workflow + `--report --all` dashboard.**\n\n## Open decisions & risks being validated\n\n- **Performance:** prefer adopting Rust-native tools (`oxlint`/`biome`, `tsgo`) over hand-written Rust+WASM; reserve custom WASM for a _measured_ hot path only.\n- **Validation spike (before wide rollout):** wire one real module to sentinel and confirm on real pnpm layout that (1) the editor keeps live lint/type/format, (2) runner binaries + plugins resolve per module, (3) nx target inference survives a runner swap, (4) old-config and sentinel modules coexist during migration.\n\n## Contributing\n\nSee [CONTRIBUTING.md](./CONTRIBUTING.md) for how to add a tool adapter, from design to test.\n\n## License\n\n[MIT](./LICENSE) © Hublo\n","readmeFilename":"README.md"}