{"_id":"@alistigo/list-features","_rev":"12-cbc8f28bd7328979feed83017a06ef09","name":"@alistigo/list-features","dist-tags":{"latest":"0.5.0"},"versions":{"0.2.11":{"name":"@alistigo/list-features","version":"0.2.11","keywords":["alistigo","gherkin","bdd","behavior","specifications"],"author":{"name":"Mikael Labrut","email":"contact@alistigo.com"},"license":"MIT","_id":"@alistigo/list-features@0.2.11","maintainers":[{"name":"mikael.labrut","email":"npm@alistigo.com"}],"homepage":"https://github.com/alistigo/holos/tree/main/packages/list-features#readme","bugs":{"url":"https://github.com/alistigo/holos/issues"},"dist":{"shasum":"c17c4f936e6cf43a5b22a78d1a125229b5cef6eb","tarball":"https://registry.npmjs.org/@alistigo/list-features/-/list-features-0.2.11.tgz","fileCount":20,"integrity":"sha512-kP1rVG2Tdp6c0W6DBl3UT2EVgxIphSAf8sMT2t6UDl0ojaQziSeNfl/NvNpKtB/FqXuyvg9pH1IOuDKF2WWILg==","signatures":[{"sig":"MEUCIQCuA4DPliufZgkcKCKyOxKmOZKj6I4VEXsZg3JkoCWLxQIgPATSNgyTuXjQ2eafu0cq4/6zBxRJHiyvzqVsiBHW8pM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28497},"main":"./dist/index.js","type":"module","_from":"file:alistigo-list-features-0.2.11.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tags":{"types":"./dist/tags.d.ts","import":"./dist/tags.js"}},"private":false,"_npmUser":{"name":"mikael.labrut","email":"npm@alistigo.com"},"_resolved":"/tmp/4604c17e0a1a0146b751e91a6ba4bce4/alistigo-list-features-0.2.11.tgz","_integrity":"sha512-kP1rVG2Tdp6c0W6DBl3UT2EVgxIphSAf8sMT2t6UDl0ojaQziSeNfl/NvNpKtB/FqXuyvg9pH1IOuDKF2WWILg==","repository":{"url":"git+https://github.com/alistigo/holos.git","type":"git","directory":"packages/list-features"},"_npmVersion":"11.16.0","description":"Gherkin behavior specifications for Alistigo AI. Source of truth for what the app should do; the runner reads these files to assert conformance.","directories":{},"_nodeVersion":"24.18.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gherklin":"^1.0.0","prettier":"^3.3.0","prettier-plugin-gherkin":"^3.1.2"},"_npmOperationalInternal":{"tmp":"tmp/list-features_0.2.11_1785318495027_0.4184424529193258","host":"s3://npm-registry-packages-npm-production"}},"0.2.12":{"name":"@alistigo/list-features","version":"0.2.12","keywords":["alistigo","gherkin","bdd","behavior","specifications"],"author":{"name":"Mikael Labrut","email":"contact@alistigo.com"},"license":"MIT","_id":"@alistigo/list-features@0.2.12","maintainers":[{"name":"mikael.labrut","email":"npm@alistigo.com"}],"homepage":"https://github.com/alistigo/holos/tree/main/packages/list-features#readme","bugs":{"url":"https://github.com/alistigo/holos/issues"},"dist":{"shasum":"7375f2f688547e8afb784aa1cc59653731c908b4","tarball":"https://registry.npmjs.org/@alistigo/list-features/-/list-features-0.2.12.tgz","fileCount":20,"integrity":"sha512-c++ezQZvsuF1I2hrnanog8j0PwRL8qtmXMJhkFuD0ABxcT93ZeZ7Zdlt3Fa1VDGea57wX6NNtjFmbp04Ga8PPg==","signatures":[{"sig":"MEUCIA7RWzEr7uqI8ZOjWZhQE7OFSiRJTFH5m/oubwRSCbElAiEA+0S2fpRT88CDmrXAwCohRxnTj5YHmocx4Dk21MuFaAw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28497},"main":"./dist/index.js","type":"module","_from":"file:alistigo-list-features-0.2.12.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tags":{"types":"./dist/tags.d.ts","import":"./dist/tags.js"}},"private":false,"_npmUser":{"name":"mikael.labrut","email":"npm@alistigo.com"},"_resolved":"/tmp/78665891faf9295ae2ceeb114847d5f7/alistigo-list-features-0.2.12.tgz","_integrity":"sha512-c++ezQZvsuF1I2hrnanog8j0PwRL8qtmXMJhkFuD0ABxcT93ZeZ7Zdlt3Fa1VDGea57wX6NNtjFmbp04Ga8PPg==","repository":{"url":"git+https://github.com/alistigo/holos.git","type":"git","directory":"packages/list-features"},"_npmVersion":"11.16.0","description":"Gherkin behavior specifications for Alistigo AI. Source of truth for what the app should do; the runner reads these files to assert conformance.","directories":{},"_nodeVersion":"24.18.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gherklin":"^1.0.0","prettier":"^3.3.0","prettier-plugin-gherkin":"^3.1.2"},"_npmOperationalInternal":{"tmp":"tmp/list-features_0.2.12_1785427801234_0.27971053626932507","host":"s3://npm-registry-packages-npm-production"}},"0.2.13":{"name":"@alistigo/list-features","version":"0.2.13","keywords":["alistigo","gherkin","bdd","behavior","specifications"],"author":{"name":"Mikael Labrut","email":"contact@alistigo.com"},"license":"MIT","_id":"@alistigo/list-features@0.2.13","maintainers":[{"name":"mikael.labrut","email":"npm@alistigo.com"}],"homepage":"https://github.com/alistigo/holos/tree/main/packages/list-features#readme","bugs":{"url":"https://github.com/alistigo/holos/issues"},"dist":{"shasum":"1fe7ac7689cfdd123d77e19495c12d52313db92f","tarball":"https://registry.npmjs.org/@alistigo/list-features/-/list-features-0.2.13.tgz","fileCount":20,"integrity":"sha512-bktkwaljnzMNY2jtU37XpqjzgAyBenC8PlrJSGyDpucQuESvILq9Q9J7T77HP+tE+MapQz9rg13Jef+UcP8NyQ==","signatures":[{"sig":"MEYCIQCEH/TvVdUanpfgFvsRZRR7tCgZSqX2z1dgyGkBpNvStwIhAKd3pBG4cuKM3//kGcFxvc0tkIhFzZGtapyfJ1iNpd8b","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28497},"main":"./dist/index.js","type":"module","_from":"file:alistigo-list-features-0.2.13.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tags":{"types":"./dist/tags.d.ts","import":"./dist/tags.js"}},"private":false,"_npmUser":{"name":"mikael.labrut","email":"npm@alistigo.com"},"_resolved":"/tmp/cf90248cb39c27ddcd13e4e4eb3201b3/alistigo-list-features-0.2.13.tgz","_integrity":"sha512-bktkwaljnzMNY2jtU37XpqjzgAyBenC8PlrJSGyDpucQuESvILq9Q9J7T77HP+tE+MapQz9rg13Jef+UcP8NyQ==","repository":{"url":"git+https://github.com/alistigo/holos.git","type":"git","directory":"packages/list-features"},"_npmVersion":"11.16.0","description":"Gherkin behavior specifications for Alistigo AI. Source of truth for what the app should do; the runner reads these files to assert conformance.","directories":{},"_nodeVersion":"24.18.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gherklin":"^1.0.0","prettier":"^3.3.0","prettier-plugin-gherkin":"^3.1.2"},"_npmOperationalInternal":{"tmp":"tmp/list-features_0.2.13_1785850682911_0.16183221749433674","host":"s3://npm-registry-packages-npm-production"}},"0.2.14":{"name":"@alistigo/list-features","version":"0.2.14","keywords":["alistigo","gherkin","bdd","behavior","specifications"],"author":{"name":"Mikael Labrut","email":"contact@alistigo.com"},"license":"MIT","_id":"@alistigo/list-features@0.2.14","maintainers":[{"name":"mikael.labrut","email":"npm@alistigo.com"}],"homepage":"https://github.com/alistigo/holos/tree/main/packages/list-features#readme","bugs":{"url":"https://github.com/alistigo/holos/issues"},"dist":{"shasum":"13eeb2d98fef154461799d6ca85c4ed32f27bc8e","tarball":"https://registry.npmjs.org/@alistigo/list-features/-/list-features-0.2.14.tgz","fileCount":20,"integrity":"sha512-25U6H5BUXzwi0PY5SSHLii4KnY+yCwpc5lTN6SmuutV0fb31O2IX85Luo77tHDL/BFU/wChXYNWhEfAEkHtyPA==","signatures":[{"sig":"MEUCIQDvPWRV4AzR5DYptAkQKavhPacMJKSrF3vdoMl+PdzLGgIgS7C3uDIbbXodLKJS98xd3JHfFfRcfDRtTDrTtkumHEo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28497},"main":"./dist/index.js","type":"module","_from":"file:alistigo-list-features-0.2.14.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tags":{"types":"./dist/tags.d.ts","import":"./dist/tags.js"}},"private":false,"_npmUser":{"name":"mikael.labrut","email":"npm@alistigo.com"},"_resolved":"/tmp/f3ca426a26f47863d302072bc425cd9f/alistigo-list-features-0.2.14.tgz","_integrity":"sha512-25U6H5BUXzwi0PY5SSHLii4KnY+yCwpc5lTN6SmuutV0fb31O2IX85Luo77tHDL/BFU/wChXYNWhEfAEkHtyPA==","repository":{"url":"git+https://github.com/alistigo/holos.git","type":"git","directory":"packages/list-features"},"_npmVersion":"11.16.0","description":"Gherkin behavior specifications for Alistigo AI. Source of truth for what the app should do; the runner reads these files to assert conformance.","directories":{},"_nodeVersion":"24.18.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gherklin":"^1.0.0","prettier":"^3.3.0","prettier-plugin-gherkin":"^3.1.2"},"_npmOperationalInternal":{"tmp":"tmp/list-features_0.2.14_1785872325062_0.6641183977488572","host":"s3://npm-registry-packages-npm-production"}},"0.2.15":{"name":"@alistigo/list-features","version":"0.2.15","keywords":["alistigo","gherkin","bdd","behavior","specifications"],"author":{"name":"Mikael Labrut","email":"contact@alistigo.com"},"license":"MIT","_id":"@alistigo/list-features@0.2.15","maintainers":[{"name":"mikael.labrut","email":"npm@alistigo.com"}],"homepage":"https://github.com/alistigo/holos/tree/main/packages/list-features#readme","bugs":{"url":"https://github.com/alistigo/holos/issues"},"dist":{"shasum":"f1d14af0735b980dba83f68aff08ad0bc014ac53","tarball":"https://registry.npmjs.org/@alistigo/list-features/-/list-features-0.2.15.tgz","fileCount":20,"integrity":"sha512-rV3VkqEFocqwVkCLRfNErS95ntAvpscz7MDmrW2ZldsxkJ0AEchAn+7pu5iW8MJnVGKU7a18055Zd4854WmM+Q==","signatures":[{"sig":"MEYCIQCFFKIbpAfA/4XjnO7Z+tzhABqyadFCPHpD4wxGN81QmwIhAPmvUgo0O43PGtmymYkjj8i86OdFw+LGqzoZN9s3FJje","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28497},"main":"./dist/index.js","type":"module","_from":"file:alistigo-list-features-0.2.15.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tags":{"types":"./dist/tags.d.ts","import":"./dist/tags.js"}},"private":false,"_npmUser":{"name":"mikael.labrut","email":"npm@alistigo.com"},"_resolved":"/tmp/6dd460128c8c9ef4065db34a72cf9ad6/alistigo-list-features-0.2.15.tgz","_integrity":"sha512-rV3VkqEFocqwVkCLRfNErS95ntAvpscz7MDmrW2ZldsxkJ0AEchAn+7pu5iW8MJnVGKU7a18055Zd4854WmM+Q==","repository":{"url":"git+https://github.com/alistigo/holos.git","type":"git","directory":"packages/list-features"},"_npmVersion":"11.16.0","description":"Gherkin behavior specifications for Alistigo AI. Source of truth for what the app should do; the runner reads these files to assert conformance.","directories":{},"_nodeVersion":"24.18.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gherklin":"^1.0.0","prettier":"^3.3.0","prettier-plugin-gherkin":"^3.1.2"},"_npmOperationalInternal":{"tmp":"tmp/list-features_0.2.15_1785948666690_0.07275045894715126","host":"s3://npm-registry-packages-npm-production"}},"0.2.16":{"name":"@alistigo/list-features","version":"0.2.16","keywords":["alistigo","gherkin","bdd","behavior","specifications"],"author":{"name":"Mikael Labrut","email":"contact@alistigo.com"},"license":"MIT","_id":"@alistigo/list-features@0.2.16","maintainers":[{"name":"mikael.labrut","email":"npm@alistigo.com"}],"homepage":"https://github.com/alistigo/holos/tree/main/packages/list-features#readme","bugs":{"url":"https://github.com/alistigo/holos/issues"},"dist":{"shasum":"419bb1633cd124edd524e3f04046357397481a55","tarball":"https://registry.npmjs.org/@alistigo/list-features/-/list-features-0.2.16.tgz","fileCount":20,"integrity":"sha512-DZcG+VUODtz/GlRPYbczIrMzNO5Ij34/EWQqQ6Cgp9rjn23ZwlYDq2kRN7rUXs4d/Sgde+YymKo2q2vK46XKnw==","signatures":[{"sig":"MEUCIC5h//yculSziYMTlC7d4ly5VzRiYZjDiCGPRNiCy8CAAiEAhvQJl8+NjVas2EM8vT3RLn/HB/WEYbmtwkxLknsqnmY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28497},"main":"./dist/index.js","type":"module","_from":"file:alistigo-list-features-0.2.16.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tags":{"types":"./dist/tags.d.ts","import":"./dist/tags.js"}},"private":false,"_npmUser":{"name":"mikael.labrut","email":"npm@alistigo.com"},"_resolved":"/tmp/d8e61111a053232dd0de85b12e24ba08/alistigo-list-features-0.2.16.tgz","_integrity":"sha512-DZcG+VUODtz/GlRPYbczIrMzNO5Ij34/EWQqQ6Cgp9rjn23ZwlYDq2kRN7rUXs4d/Sgde+YymKo2q2vK46XKnw==","repository":{"url":"git+https://github.com/alistigo/holos.git","type":"git","directory":"packages/list-features"},"_npmVersion":"11.16.0","description":"Gherkin behavior specifications for Alistigo AI. Source of truth for what the app should do; the runner reads these files to assert conformance.","directories":{},"_nodeVersion":"24.18.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gherklin":"^1.0.0","prettier":"^3.3.0","prettier-plugin-gherkin":"^3.1.2"},"_npmOperationalInternal":{"tmp":"tmp/list-features_0.2.16_1786090479641_0.4873291484995568","host":"s3://npm-registry-packages-npm-production"}},"0.2.17":{"name":"@alistigo/list-features","version":"0.2.17","keywords":["alistigo","gherkin","bdd","behavior","specifications"],"author":{"name":"Mikael Labrut","email":"contact@alistigo.com"},"license":"MIT","_id":"@alistigo/list-features@0.2.17","maintainers":[{"name":"mikael.labrut","email":"npm@alistigo.com"}],"homepage":"https://github.com/alistigo/holos/tree/main/packages/list-features#readme","bugs":{"url":"https://github.com/alistigo/holos/issues"},"dist":{"shasum":"7bc0346549456fea18a322d1851fca426b325618","tarball":"https://registry.npmjs.org/@alistigo/list-features/-/list-features-0.2.17.tgz","fileCount":20,"integrity":"sha512-VmNwS5lojXQN+brjs54vPlngXSqOTxLu7dsiydLVMWdZDxNmjfw6UrfP5CM4v50Cmy3uPycuEaoXzgLp2+vGuw==","signatures":[{"sig":"MEUCIQC9GynbtEr0MkDcxZRvR9GfUDovbKFs9dONc+/TWQr3XAIgcrPKTCJdBpMCciXMFSHy3kPC5yXz4kFndAj3UEivpWk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28497},"main":"./dist/index.js","type":"module","_from":"file:alistigo-list-features-0.2.17.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tags":{"types":"./dist/tags.d.ts","import":"./dist/tags.js"}},"private":false,"_npmUser":{"name":"mikael.labrut","email":"npm@alistigo.com"},"_resolved":"/tmp/2453da9590cc1da32f6a71191d48a2ba/alistigo-list-features-0.2.17.tgz","_integrity":"sha512-VmNwS5lojXQN+brjs54vPlngXSqOTxLu7dsiydLVMWdZDxNmjfw6UrfP5CM4v50Cmy3uPycuEaoXzgLp2+vGuw==","repository":{"url":"git+https://github.com/alistigo/holos.git","type":"git","directory":"packages/list-features"},"_npmVersion":"11.16.0","description":"Gherkin behavior specifications for Alistigo AI. Source of truth for what the app should do; the runner reads these files to assert conformance.","directories":{},"_nodeVersion":"24.18.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gherklin":"^1.0.0","prettier":"^3.3.0","prettier-plugin-gherkin":"^3.1.2"},"_npmOperationalInternal":{"tmp":"tmp/list-features_0.2.17_1786111143762_0.3632244185696363","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@alistigo/list-features","version":"0.3.0","keywords":["alistigo","gherkin","bdd","behavior","specifications"],"author":{"name":"Mikael Labrut","email":"contact@alistigo.com"},"license":"MIT","_id":"@alistigo/list-features@0.3.0","maintainers":[{"name":"mikael.labrut","email":"npm@alistigo.com"}],"homepage":"https://github.com/alistigo/holos/tree/main/packages/list-features#readme","bugs":{"url":"https://github.com/alistigo/holos/issues"},"dist":{"shasum":"047d51dfbd2aea4c8c670efb1dfc4844cded55c2","tarball":"https://registry.npmjs.org/@alistigo/list-features/-/list-features-0.3.0.tgz","fileCount":20,"integrity":"sha512-oQ80wfi8wKaBeagAOAtPDc5qTeqX3ngf6o4Ed/584Xxfsz6gvzrLoi0F2f+qA4L77vCtZiewnDK5sgD99I//tQ==","signatures":[{"sig":"MEUCIQDKBz1UrlpkxieUZbGZN6txWme+y0anUlCsi7Kn7bgP4QIgEyqDEdjYZe4KqmGHJR7AEeRPz8KdqkBy40OgQ9MpuPc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28495},"main":"./dist/index.js","type":"module","_from":"file:alistigo-list-features-0.3.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tags":{"types":"./dist/tags.d.ts","import":"./dist/tags.js"}},"private":false,"_npmUser":{"name":"mikael.labrut","email":"npm@alistigo.com"},"_resolved":"/tmp/5fa9e85af1e9460e66003e38f504483e/alistigo-list-features-0.3.0.tgz","_integrity":"sha512-oQ80wfi8wKaBeagAOAtPDc5qTeqX3ngf6o4Ed/584Xxfsz6gvzrLoi0F2f+qA4L77vCtZiewnDK5sgD99I//tQ==","repository":{"url":"git+https://github.com/alistigo/holos.git","type":"git","directory":"packages/list-features"},"_npmVersion":"11.16.0","description":"Gherkin behavior specifications for Alistigo AI. Source of truth for what the app should do; the runner reads these files to assert conformance.","directories":{},"_nodeVersion":"24.18.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gherklin":"^1.0.0","prettier":"^3.3.0","prettier-plugin-gherkin":"^3.1.2"},"_npmOperationalInternal":{"tmp":"tmp/list-features_0.3.0_1786902476085_0.8851330701663991","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@alistigo/list-features","version":"0.4.0","keywords":["alistigo","gherkin","bdd","behavior","specifications"],"author":{"name":"Mikael Labrut","email":"contact@alistigo.com"},"license":"MIT","_id":"@alistigo/list-features@0.4.0","maintainers":[{"name":"mikael.labrut","email":"npm@alistigo.com"}],"homepage":"https://github.com/alistigo/holos/tree/main/packages/list-features#readme","bugs":{"url":"https://github.com/alistigo/holos/issues"},"dist":{"shasum":"3bcbc8db5b1950717ced2baa435bb4dc946a6bc5","tarball":"https://registry.npmjs.org/@alistigo/list-features/-/list-features-0.4.0.tgz","fileCount":23,"integrity":"sha512-BbrKFZeTBvUDDVolcEuBEkC4wopfc15mHmEgDyTp4OLD2pKcL7FYWVoDV/w+eAYCP0SUPWlrkJ6DzNihAVb/yw==","signatures":[{"sig":"MEQCIA7WHNv4OnhP4Dd6c1PVfiT7Yy0A0BvlzkO+HlfffYRFAiBj7Y3D8l0xlK+ploUXdElWhDRyFQ5Ywzq7cNHZClV2TA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCb/ayo2MUVWTzvxo0j88w8gePtwPnzV/TKeJXoMLVTyAIgTJy330sws/agA55WeZBVlVkU2Wp/b8cB10cSaVy5Klk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":30488},"main":"./dist/index.js","type":"module","_from":"file:alistigo-list-features-0.4.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tags":{"types":"./dist/tags.d.ts","import":"./dist/tags.js"}},"private":false,"_npmUser":{"name":"mikael.labrut","email":"npm@alistigo.com"},"_resolved":"/tmp/b15f012382a6c410d1f52fc41eecff83/alistigo-list-features-0.4.0.tgz","_integrity":"sha512-BbrKFZeTBvUDDVolcEuBEkC4wopfc15mHmEgDyTp4OLD2pKcL7FYWVoDV/w+eAYCP0SUPWlrkJ6DzNihAVb/yw==","repository":{"url":"git+https://github.com/alistigo/holos.git","type":"git","directory":"packages/list-features"},"_npmVersion":"11.16.0","description":"Gherkin behavior specifications for Alistigo AI. Source of truth for what the app should do; the runner reads these files to assert conformance.","directories":{},"_nodeVersion":"24.18.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gherklin":"^1.0.0","prettier":"^3.3.0","prettier-plugin-gherkin":"^3.1.2"},"_npmOperationalInternal":{"tmp":"tmp/list-features_0.4.0_1787331017594_0.29275893151802324","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@alistigo/list-features","version":"0.4.1","keywords":["alistigo","gherkin","bdd","behavior","specifications"],"author":{"name":"Mikael Labrut","email":"contact@alistigo.com"},"license":"MIT","_id":"@alistigo/list-features@0.4.1","maintainers":[{"name":"mikael.labrut","email":"npm@alistigo.com"}],"homepage":"https://github.com/alistigo/holos/tree/main/packages/list-features#readme","bugs":{"url":"https://github.com/alistigo/holos/issues"},"dist":{"shasum":"e23527892972359c4d0baa91dbf934701d845f27","tarball":"https://registry.npmjs.org/@alistigo/list-features/-/list-features-0.4.1.tgz","fileCount":24,"integrity":"sha512-0EKwTuIfiD7dhQgR1Mck0+h/pEba3ry+tAff+opUesUhxwoGbZDBq4Wjl5WYui0y5Pomwimy/PtItTIsB+XnFw==","signatures":[{"sig":"MEUCIDKhPaggGOWZpw707e2CS14jg2g6iPJ755SYqwcQHfM/AiEAxlL5kSAforEQVk6c/XqxKHSzkO4WHQKImhQvGrSVD1M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIGuZ/3cmqgr4d57yGVB4InIQj/dmBXQiGAgfMpfU14H8AiAeUr6ZMzLbJBm3ke2ULgOb/onBUGCeY+20jqqb/AMjLA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31778},"main":"./dist/index.js","type":"module","_from":"file:alistigo-list-features-0.4.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tags":{"types":"./dist/tags.d.ts","import":"./dist/tags.js"}},"private":false,"_npmUser":{"name":"mikael.labrut","email":"npm@alistigo.com"},"_resolved":"/tmp/85a93d3797955d3256752422c4a48e18/alistigo-list-features-0.4.1.tgz","_integrity":"sha512-0EKwTuIfiD7dhQgR1Mck0+h/pEba3ry+tAff+opUesUhxwoGbZDBq4Wjl5WYui0y5Pomwimy/PtItTIsB+XnFw==","repository":{"url":"git+https://github.com/alistigo/holos.git","type":"git","directory":"packages/list-features"},"_npmVersion":"11.16.0","description":"Gherkin behavior specifications for Alistigo AI. Source of truth for what the app should do; the runner reads these files to assert conformance.","directories":{},"_nodeVersion":"24.18.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gherklin":"^1.0.0","prettier":"^3.3.0","prettier-plugin-gherkin":"^3.1.2"},"_npmOperationalInternal":{"tmp":"tmp/list-features_0.4.1_1788428438893_0.6162301872141014","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"@alistigo/list-features","version":"0.4.2","keywords":["alistigo","gherkin","bdd","behavior","specifications"],"author":{"name":"Mikael Labrut","email":"contact@alistigo.com"},"license":"MIT","_id":"@alistigo/list-features@0.4.2","maintainers":[{"name":"mikael.labrut","email":"npm@alistigo.com"}],"homepage":"https://github.com/alistigo/holos/tree/main/packages/list-features#readme","bugs":{"url":"https://github.com/alistigo/holos/issues"},"dist":{"shasum":"3beb693f147bb620e4363dda890d922414a23cd7","tarball":"https://registry.npmjs.org/@alistigo/list-features/-/list-features-0.4.2.tgz","fileCount":24,"integrity":"sha512-yTdYvzc6kXSCDegwF7Kqko5yXP96CPzZxOyl4OwdVWe2wDFtzjhG1qcIm+C7HtQ3nUcoGrBX3/rVqETbNQojGQ==","signatures":[{"sig":"MEUCIQDkrgcJuYK16jSDuCDWEgSO1IszQIrYt8l9SJgJ9IwsjQIgVTTAchmg09B0qPCsUSwHw8yCSGRD5xAcpw/xToX4DUk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCuBVPGTEFzeBdPG/tq0hKmLY+BO8lJbnzuhS5BBqlipAIgNUkzDrefkq4z9r6raTZ2TtT1bDz5dLqXi/r9cYR0U8Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31778},"main":"./dist/index.js","type":"module","_from":"file:alistigo-list-features-0.4.2.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tags":{"types":"./dist/tags.d.ts","import":"./dist/tags.js"}},"private":false,"_npmUser":{"name":"mikael.labrut","email":"npm@alistigo.com"},"_resolved":"/tmp/6fdeb931b14efcd06c7c393ffe15f26e/alistigo-list-features-0.4.2.tgz","_integrity":"sha512-yTdYvzc6kXSCDegwF7Kqko5yXP96CPzZxOyl4OwdVWe2wDFtzjhG1qcIm+C7HtQ3nUcoGrBX3/rVqETbNQojGQ==","repository":{"url":"git+https://github.com/alistigo/holos.git","type":"git","directory":"packages/list-features"},"_npmVersion":"11.16.0","description":"Gherkin behavior specifications for Alistigo AI. Source of truth for what the app should do; the runner reads these files to assert conformance.","directories":{},"_nodeVersion":"24.18.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gherklin":"^1.0.0","prettier":"^3.3.0","prettier-plugin-gherkin":"^3.1.2"},"_npmOperationalInternal":{"tmp":"tmp/list-features_0.4.2_1789389148802_0.8976593512581976","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"_id":"@alistigo/list-features@0.5.0","bugs":{"url":"https://github.com/alistigo/holos/issues"},"dist":{"shasum":"b58591bef2dbf98224eb5ca7965c534af2bcdb0b","tarball":"https://registry.npmjs.org/@alistigo/list-features/-/list-features-0.5.0.tgz","fileCount":24,"integrity":"sha512-M4thAKXavVlx9dr7uTT4DHRBHvt01v2hkkTdVexwwvMDI+y3QXVe7t6J8hPf3f6xS+Y3HB00/iNhQPLKtJGztw==","signatures":[{"sig":"MEQCIED9qwDDPMc2To1JR5eniMHuu+yxJj8C31uZ/P7paHnIAiAodBI+yU3Tj/NPR9LfndQrdFajr/krCJ19qYvWePa4gw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCb1WS9d8DMADYy6q91PEz8BTIWMak5u2nhVUeC6OD8jwIhALbfBZ+jKk/Yc1on7Aax6ARJSiw/VIob7ZZPIoYJCppQ"}],"unpackedSize":31778},"main":"./dist/index.js","name":"@alistigo/list-features","type":"module","_from":"file:alistigo-list-features-0.5.0.tgz","types":"./dist/index.d.ts","author":{"name":"Mikael Labrut","email":"contact@alistigo.com"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tags":{"types":"./dist/tags.d.ts","import":"./dist/tags.js"}},"license":"MIT","private":false,"version":"0.5.0","_npmUser":{"name":"mikael.labrut","email":"npm@alistigo.com"},"homepage":"https://github.com/alistigo/holos/tree/main/packages/list-features#readme","keywords":["alistigo","gherkin","bdd","behavior","specifications"],"_resolved":"/tmp/7082e9f825ef16275df936942b78295d/alistigo-list-features-0.5.0.tgz","_integrity":"sha512-M4thAKXavVlx9dr7uTT4DHRBHvt01v2hkkTdVexwwvMDI+y3QXVe7t6J8hPf3f6xS+Y3HB00/iNhQPLKtJGztw==","repository":{"url":"git+https://github.com/alistigo/holos.git","type":"git","directory":"packages/list-features"},"_npmVersion":"11.16.0","description":"Gherkin behavior specifications for Alistigo AI. Source of truth for what the app should do; the runner reads these files to assert conformance.","directories":{},"maintainers":[{"name":"mikael.labrut","email":"npm@alistigo.com"}],"_nodeVersion":"24.18.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"gherklin":"^1.0.0","prettier":"^3.3.0","prettier-plugin-gherkin":"^3.1.2"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/list-features_0.5.0_1789474759285_0.8293856134359625"}}},"time":{"created":"2026-07-29T09:48:14.823Z","modified":"2026-09-15T12:19:19.571Z","0.2.11":"2026-07-29T09:48:15.171Z","0.2.12":"2026-07-30T16:10:01.379Z","0.2.13":"2026-08-04T13:38:03.076Z","0.2.14":"2026-08-04T19:38:45.202Z","0.2.15":"2026-08-05T16:51:06.885Z","0.2.16":"2026-08-07T08:14:39.777Z","0.2.17":"2026-08-07T13:59:03.896Z","0.3.0":"2026-08-16T17:47:56.231Z","0.4.0":"2026-08-21T16:50:17.709Z","0.4.1":"2026-09-03T09:40:38.996Z","0.4.2":"2026-09-14T12:32:28.906Z","0.5.0":"2026-09-15T12:19:19.380Z"},"bugs":{"url":"https://github.com/alistigo/holos/issues"},"author":{"name":"Mikael Labrut","email":"contact@alistigo.com"},"license":"MIT","homepage":"https://github.com/alistigo/holos/tree/main/packages/list-features#readme","keywords":["alistigo","gherkin","bdd","behavior","specifications"],"repository":{"url":"git+https://github.com/alistigo/holos.git","type":"git","directory":"packages/list-features"},"description":"Gherkin behavior specifications for Alistigo AI. Source of truth for what the app should do; the runner reads these files to assert conformance.","maintainers":[{"name":"mikael.labrut","email":"npm@alistigo.com"}],"readme":"# @alistigo/features\n\n[![npm version](https://img.shields.io/npm/v/@alistigo/features.svg?style=flat)](https://www.npmjs.com/package/@alistigo/features)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![TypeScript](https://img.shields.io/badge/TypeScript-strict-blue?logo=typescript)](https://www.typescriptlang.org/)\n[![CI](https://github.com/alistigo/holos/actions/workflows/ci.yml/badge.svg)](https://github.com/alistigo/holos/actions/workflows/ci.yml)\n\nBehavior specifications for Alistigo AI, written in [Gherkin](https://cucumber.io/docs/gherkin/reference/).\n\nThese `.feature` files are the **source of truth for what the app should do**. The runner ([`@alistigo/features-runner-playwright`](../../cli/alistigo-features-runner-playwright/)) reads them and asserts the app conforms. We follow TDD — features are written and reviewed *before* the code that satisfies them.\n\nThe package follows the universal conventions of the [`gherkin-features` skill](../../.agents/skills/gherkin-features/SKILL.md). The skill is the source of truth for the structure (organization, tooling, tag categories, glossary sections); this package fills in the Alistigo-specific contents.\n\n## What lives here\n\n```\npackages/alistigo-features/\n├── features/                 # the .feature files (the actual specs)\n│   └── core/                 # one folder per FEATURE GROUP (mirrors @core tag)\n├── src/\n│   ├── index.ts              # exports FEATURES_DIR + tag types\n│   └── tags.ts               # the typed tag taxonomy (Milestone / Group / Capability / …)\n├── tools/\n│   └── validate.ts           # structural validator (taxonomy + parse + folder/group parity)\n├── docs/\n│   ├── organization.md       # how features are organized\n│   ├── style-guide.md        # how to write a feature\n│   ├── tags.md               # the tag taxonomy with descriptions\n│   └── glossary.md           # ubiquitous language: Entities / Actors / Actions\n├── .prettierrc.json          # Prettier (with prettier-plugin-gherkin)\n├── gherklin.config.ts        # Gherkin lint rules\n├── biome.json                # Biome config (extends root, ignores .feature)\n├── package.json\n└── project.json              # Nx targets\n```\n\n## Tooling\n\n| Tool | What it does | When it runs |\n|------|--------------|--------------|\n| [Prettier](https://prettier.io/) + [`prettier-plugin-gherkin`](https://www.npmjs.com/package/prettier-plugin-gherkin) | Formats `.feature` files (indentation, alignment, tag placement) | `pnpm format` / on save |\n| [Gherklin](https://github.com/cjmarkham/Gherklin) | Lints `.feature` files (structural rules, naming, duplicates, tag presence) | `pnpm nx qa:lint` |\n| `tools/validate.ts` (custom) | Parses every feature with `@cucumber/gherkin` and checks the **tag taxonomy** is respected | `pnpm validate` |\n| [Biome](https://biomejs.dev/) | Lints/formats TS/JS in this package only (ignores `features/`) | repo standard |\n\nWhy this combination:\n- **Biome doesn't speak Gherkin** — Prettier + the gherkin plugin is the most-maintained option in 2026.\n- **Gherklin > older `gherkin-lint`** — modern TS/ESM, extensible, actively maintained.\n- The custom validator is a tiny TypeScript script that catches what the linter can't: tags that exist in files but aren't in the typed taxonomy. This keeps `src/tags.ts` and the actual `.feature` files in sync.\n\n## Conventions, in three places\n\n| If you want to know… | Read this |\n|----------------------|-----------|\n| **How features and folders are organized** | [docs/organization.md](docs/organization.md) |\n| **How to write a good Gherkin scenario** | [docs/style-guide.md](docs/style-guide.md) |\n| **What tags exist and what they mean** | [docs/tags.md](docs/tags.md) |\n| **What domain words mean (ubiquitous language)** | [docs/glossary.md](docs/glossary.md) |\n\nThe tag taxonomy is also typed in [`src/tags.ts`](src/tags.ts). When you add or rename a tag, update *both* files — the validator enforces it.\n\n## Common Commands\n\n```sh\npnpm format         # format all .feature files with Prettier\npnpm format:check   # check formatting without writing\npnpm nx qa:lint           # Biome (TS) + Gherklin (.feature)\npnpm nx qa:lint:gherkin   # Gherklin only\npnpm validate       # parse every .feature and check the tag taxonomy\npnpm typecheck      # TypeScript check on src/ and tools/\n```\n\nOr via Nx from the repo root:\n\n```sh\nnx run alistigo-features:lint\nnx run alistigo-features:format\nnx run alistigo-features:validate\n```\n\n## Programmatic access\n\n```ts\nimport { FEATURES_DIR, MILESTONE_TAGS, isKnownTag } from \"@alistigo/features\";\n\n// FEATURES_DIR is an absolute path — pass it to a runner.\nconsole.log(FEATURES_DIR);\n\n// MILESTONE_TAGS, CAPABILITY_TAGS, TEST_TYPE_TAGS, SUITE_TAGS, ACTOR_TAGS exported.\nconsole.log(MILESTONE_TAGS);  // ['@m1', '@m2', '@m3', '@m4', '@v1']\n\n// Validate a tag at runtime.\nisKnownTag(\"@m1\");  // true\nisKnownTag(\"@made-up\");  // false\n```\n\n## Contributing a feature\n\nSee [docs/organization.md](docs/organization.md) and [docs/style-guide.md](docs/style-guide.md). In short:\n\n1. Pick the group folder (`features/core/`, or a plugin folder once those land).\n2. Name the file after the **capability** it covers, kebab-case (`add-element.feature`, `display-list.feature`).\n3. Tag the `Feature:` with exactly one milestone tag (`@m1` …), exactly one group tag matching the folder (`@core`), and one or more capability tags (`@capability:element` …).\n4. Use only words from [docs/glossary.md](docs/glossary.md) in step text.\n5. Write declarative scenarios (business language, not UI selectors).\n6. Run `pnpm format && pnpm nx qa:lint && pnpm validate` before committing.\n","readmeFilename":"README.md"}