{"_id":"@macky_aletse/blueprint-core","_rev":"30-13c02baff9ba5b5e5600d94aeceffd55","name":"@macky_aletse/blueprint-core","dist-tags":{"latest":"0.3.7"},"versions":{"0.1.1":{"name":"@macky_aletse/blueprint-core","version":"0.1.1","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.1.1","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"3af4b0795af6a841947027143644876c0c22a0e0","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.1.1.tgz","fileCount":557,"integrity":"sha512-2XyeRnxnvBDLQFR2s0p/eHG88gqKW0g6x/VpeCEyJpGVVWdiJ5xRMl2vGgeoiopoKnsTf51S3akZ4jcXsDI9JA==","signatures":[{"sig":"MEUCICkwJake/gNYgREWmKIFlRA90iKttEnWDsvNxk1vR8klAiEAqNro87H8SzopZYPWI4UGiUB34HaOcZPED6NxoAySSu8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1933460},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"0a91e850b9fc864ebb1ce578bee72960f76a8491","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.1.1_1787721768773_0.953937047845226","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@macky_aletse/blueprint-core","version":"0.1.2","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.1.2","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"43fe9bd6b66f175c933a8c0c53ccc9f600c1357b","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.1.2.tgz","fileCount":557,"integrity":"sha512-2eucRKMiXDD4EVQehX6UQrRU0NcH+AWMTGGDv8aieBsPP4vvC5C+wwEG8XmLpQn59ODwBNvFDR/ErNSQQld63Q==","signatures":[{"sig":"MEQCIHhQxflRPhlk4jYvL/o7OZfXQ8c7r9sf3sRuBIwi6QNJAiBOTZF6ZFI2Xj4/WjwvBAHwVd2Ih9dYtES+1DWLkVq4jw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1935357},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"24e6b3da2601b859082335818d1f0fa0daefcf31","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0","@macky_aletse/blueprint-core":"^0.1.1"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.1.2_1787723504487_0.5208815938485858","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@macky_aletse/blueprint-core","version":"0.1.3","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.1.3","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"807d139bcaa71724cf698e4d0a34a5852ed62260","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.1.3.tgz","fileCount":725,"integrity":"sha512-WGSPTwztADuPay03mkxhMBtcn8Th6sXYrqLsYCMf3efYE8bbIzqZpLBzx5lBs6sc0A0k5VVPw9er7Se3fTAAHg==","signatures":[{"sig":"MEQCICWIPLSJiejgAt3svccgNXpD1zTimBlhGDQ3CJnw1m4LAiBTtwpxi46w6sE8f8Y0wZ1gwOGim2zFDBathkCbb2qfxw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2697892},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"a523292ee6500fed8969a9510979a869cb0fe1f8","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.1.3_1787808911031_0.8762600290145968","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@macky_aletse/blueprint-core","version":"0.1.4","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.1.4","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"59470aee35d48b86aad7447fdd6f3ff3344ceebb","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.1.4.tgz","fileCount":725,"integrity":"sha512-DDa6K8/7Qk6sKw+vGRaeOJb0/CznlDCPZk/IU50ewYMQIRouKhI+PnQV/VGOeSZtut2V0l9xR30V33uuxSMxrw==","signatures":[{"sig":"MEYCIQC6hbLxfYUPQjdfXS/zalOvWQEjyV6VsY+7tDc71NwOIgIhAMp6O2UB8NQtMIUrv7QrKWtMgLgybSGm+CMOrNzdFNYI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2715411},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"34884dd7b58974b17a00592b2e348dda1a4321b5","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.1.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.1.4_1787811710514_0.5060123081347596","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@macky_aletse/blueprint-core","version":"0.1.5","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.1.5","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"147099df0f6c60a27bb3746bd0b0da26f5a5a4b0","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.1.5.tgz","fileCount":725,"integrity":"sha512-SmgrxjSRCJjJrFvUMNOjx6nbuaqQn1GhLqbzRGgYfhVWoN8cD4EsgkybUE9z52glevZYs10DK7wq1AJT2+Kfyg==","signatures":[{"sig":"MEYCIQCFuKGK/YC+w8yCvSgsE0HNQgRdV2orGcwUSpkjaGN07QIhAKmsCwKYb+RIWzDWiKYLyd91L8KA5RcaPH9/JVaqXPKC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2718117},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"b546defb5b7a69038df8f7c8ae675b230b9bfb6d","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.1.5_1787813128114_0.4189075081309994","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@macky_aletse/blueprint-core","version":"0.1.6","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.1.6","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"c073cdf89d8d10d29d1c2688d5df35b8be1db2ec","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.1.6.tgz","fileCount":725,"integrity":"sha512-kL90B7a66Gz53gOIINgtTlsMgWmx41DstmMa6RTZlycyXPuf3xsxGXztuL/uU6KO8bldF9sdEe9g/Vrd9xHtSg==","signatures":[{"sig":"MEUCIQCfBJf3U6b5deL9JygqQI62BK2F/Q76mZwmmWZ1r2yUBgIgZT+Vrj0tpo2acHvIZev71o5m3mTY76cL67U25p5TX4s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2723518},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"b546defb5b7a69038df8f7c8ae675b230b9bfb6d","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.1.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.1.6_1787813741247_0.46897323309034933","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@macky_aletse/blueprint-core","version":"0.1.7","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.1.7","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"b69af22edf80fc1321f057108c8462fe153d9928","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.1.7.tgz","fileCount":725,"integrity":"sha512-yYapnZFl4E2ANhUtd99YZum1Yq5KpVt1QuswIdj+TMkCx+jm7Y4iwGquK9rAudyJ04F/p4/stzxvq0jJoU/ZUQ==","signatures":[{"sig":"MEUCIQDiQqwXnsE5O/3Smg9yfeChj2IwQpUo/4dPZXIVnzSVcwIgfJEHtKny1nkAVgzne7IMNwdLhEc9Noa5X0w+xNVVqRk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2726405},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"b546defb5b7a69038df8f7c8ae675b230b9bfb6d","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.1.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.1.7_1787814279001_0.34798544172776325","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@macky_aletse/blueprint-core","version":"0.1.8","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.1.8","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"054944dbd9c42b5af4f5f1526a6e71be9f7f568d","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.1.8.tgz","fileCount":725,"integrity":"sha512-7L5fOSaW/Zf+/ELjX0t0voX0qSP9qQICjP/hte+QRL9VjL4xxrMKDyge148C4Vr6jnZ2xAJyVMvVumjtemPzJQ==","signatures":[{"sig":"MEYCIQDowhyItLjS1Jqbs3kRT2Nnk7hWVGS5qfKnf/uBdTCrXwIhAPTBrJu8xtJExMaLfCw9JSuhSCKpdb2msDpbgJnz8wo4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2729473},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"b163c36cc8a225eb04c63e04e14d8f60a27bd425","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.1.8_1787815299276_0.08360219168922334","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@macky_aletse/blueprint-core","version":"0.1.9","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.1.9","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"9ec14a0302130cc0b22066ebfb358edebae0d3cc","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.1.9.tgz","fileCount":725,"integrity":"sha512-hiNnLMBRbZ2YFj1lMoYvVYz4vsRvC9R4dMpjW6MJIso9olZXcQH+37Zt1k2pO0gEv5p135LP8cjy+3+O693GJw==","signatures":[{"sig":"MEUCIFWY6ydms2vUW/lFl+fwQpVw0UhG+1IkRRepRoA70NHnAiEA6qOiHAGmzhetHVxA5DXWaCOw7kGpDblgugPbWG5ezno=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2731944},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"b163c36cc8a225eb04c63e04e14d8f60a27bd425","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.1.8"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.1.9_1787816293814_0.8257490924399509","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@macky_aletse/blueprint-core","version":"0.2.0","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.2.0","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"f10be2678587c19ab09ec29c68da83cf66033235","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.2.0.tgz","fileCount":725,"integrity":"sha512-+4WS+1mrZum+DdzEnYx0q5BJoL9HNRQPmwNqXdV2QvehOGVmOonw7tgAYlRn5EWamiHi5SnzoqU3PTlDSEn4OA==","signatures":[{"sig":"MEUCIQDP+fQEYi+0OcT0xfnUVlW0pNVu4MA9MSiaTHYf9Vv8cQIgIsGb8CxHnACO58fNGPlrUVaOIZ25k8jVxGdDK8pJ8UQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2734530},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"b163c36cc8a225eb04c63e04e14d8f60a27bd425","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.1.9"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.2.0_1787816953260_0.11064937273831377","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@macky_aletse/blueprint-core","version":"0.2.1","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.2.1","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"b11bd54e42355a72922ca08d4556e5cc69abe2e3","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.2.1.tgz","fileCount":725,"integrity":"sha512-zrzEB9tYRdmLLVn5UHNir50Az7Wru3IV4pNNu5GdP/0J4JrOrq5tSxi6VIelofvRYWtUxx5Kf1eQgPZkwSVw1A==","signatures":[{"sig":"MEQCICyYr1O1y89dM9Zs4mlw1i5Ylj2V0M1ZpaaIzIIbVr4PAiAxzx6TXNBXurdbTDC1WcMnBkrl40TrxQgj5iMleHvubQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2734484},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"b163c36cc8a225eb04c63e04e14d8f60a27bd425","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.2.1_1787817660301_0.3974534593082575","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@macky_aletse/blueprint-core","version":"0.2.2","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.2.2","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"003597ed7e47fe0d70589aadbd59f86b8082bb60","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.2.2.tgz","fileCount":725,"integrity":"sha512-qp36V++QW63t6AlT10hLvUIIX8S1xPDnKwHowZFrV4awBXe68LJOJavU2Izdljs3+xPRE1Ti4TXGIGUM1ofuBA==","signatures":[{"sig":"MEYCIQCo7ShmCF2OL2oyD+h8cv5IIuchzoPPM4llA75v2NAqlgIhANgWhliy3Njs9PNF6LIIR79rXZ58cAnd+cvAPtiAXc9e","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2736743},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"b163c36cc8a225eb04c63e04e14d8f60a27bd425","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.2.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.2.2_1787818271310_0.7629194108923307","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"@macky_aletse/blueprint-core","version":"0.2.4","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.2.4","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"4dac51878033b125b305367eae9aba14df7eced3","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.2.4.tgz","fileCount":725,"integrity":"sha512-9PEml77ju07QUBunlsp7LY51ibfAphZu0DkTiuU3l5pVzR7UpvwPSb+D8h3vnyl1GDaceYLOWyjJu8BE9e1SrQ==","signatures":[{"sig":"MEUCIFcTBVFkDQqkjo6SSdGHMcfuFjXi9GSbAM3vJyCvOunqAiEA6nq6R5enKXfUYjBkvC/15xRbZAETNbF1pCUBNWKWbks=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2741546},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"b163c36cc8a225eb04c63e04e14d8f60a27bd425","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.2.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.2.4_1787821173951_0.2669399987384993","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"@macky_aletse/blueprint-core","version":"0.2.5","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.2.5","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"2485866ac6ad6cf9feda7594373f930177c9e4d6","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.2.5.tgz","fileCount":725,"integrity":"sha512-9BC/TENuiEpi+LJbhvp7zUedoyOT2gNmeYozxhBzam/wbd3rUcRvSvb97TWpVYIFrnIMX3GkFbeeto36X9F+lQ==","signatures":[{"sig":"MEUCIHTM7kDeephuqtqLYdI/ErhVVFnN3bstRDIlD30/ZbHWAiEA3dwGJ0QLGkCl5ggkf8czUCVWGnD6TlzduokqHrH54bQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2750137},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"b163c36cc8a225eb04c63e04e14d8f60a27bd425","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.2.5_1787823194130_0.2809599081389593","host":"s3://npm-registry-packages-npm-production"}},"0.2.6":{"name":"@macky_aletse/blueprint-core","version":"0.2.6","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.2.6","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"dbd65634c618530a97070018918af0b6c36f8307","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.2.6.tgz","fileCount":725,"integrity":"sha512-neaYBPChnvSmZzG8jXXtJSZkyDyg839nRiLjDaiDnCjmZY8ERI1e/wNCwuq8Ce6mxYkYHUlhO4a4AxvoodrFQg==","signatures":[{"sig":"MEQCIAhw2UqADEtqwNWYiAVfb/GvP1kr+VulnQzDTsd17QiMAiAfTT467LHNj5FH9W1s29pe63OTuHeJoD2of4nVnUTTgQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2752319},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"b163c36cc8a225eb04c63e04e14d8f60a27bd425","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.2.6_1787824481650_0.48342099050928766","host":"s3://npm-registry-packages-npm-production"}},"0.2.7":{"name":"@macky_aletse/blueprint-core","version":"0.2.7","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.2.7","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"6322c484bfe10a0c9ff62c0cd5e1d697ef209f35","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.2.7.tgz","fileCount":725,"integrity":"sha512-4JX0l2Gde2SvR/Id9oYHdNcfJDpMSI+nNxmjxenGVl6vnTPuU++ihAC+Rjf3FUQAhH7mJJuzWoOOh6wNiYKhgg==","signatures":[{"sig":"MEQCIDYzWqnwZXXYniWBx1CGFfGFtt5lTo46VTifBICCjwr9AiAuPtITH+7/WgbCs0JDflgQuDI2JU9D3IqKqjiLBdSlcQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2753777},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"b163c36cc8a225eb04c63e04e14d8f60a27bd425","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.2.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.2.7_1787825324070_0.31024011991617817","host":"s3://npm-registry-packages-npm-production"}},"0.2.8":{"name":"@macky_aletse/blueprint-core","version":"0.2.8","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.2.8","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"d7cd1cf041c721e7cd5176de2d8d0c1650b24cc3","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.2.8.tgz","fileCount":725,"integrity":"sha512-aL18tUscXPrvZlGBmMpp6JAjfYjQg12bdVnzivuY8DusaFxetFRG4t17+gBT9s2xJibgR0+IDwodwYgHMEi8LA==","signatures":[{"sig":"MEYCIQDVcRoN3BC/Xi+TpJ+OJzBPgpX2zrc2LtcojX8uZUh2iwIhAJBqyqXtr3tOB/PLc42RFFTQQ3MwwX7SKaTZrUIDSuhV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2787786},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"c0b6988c3e7c39675604e65f9a23d44f3a3b6494","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.2.8_1787844801412_0.5997449462317974","host":"s3://npm-registry-packages-npm-production"}},"0.2.9":{"name":"@macky_aletse/blueprint-core","version":"0.2.9","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.2.9","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"21dbea315f4f3b75b50426a8a61bdc9aaf0a3dc5","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.2.9.tgz","fileCount":725,"integrity":"sha512-GjsphVkUZdyPSjUThapmdNtJWM8xRO2wSvIH9tDnVyK3EpimHsrkKb/VdKPmHPIHrTIhDNjFL34Fis/oXwdtig==","signatures":[{"sig":"MEUCIQDBNaUqTAo5CSRB4zkjDNpmdPWN1xbiaC4pXukQDdKYPgIgInhCNSmn/7xLF20kvi+zndwhgf0qayWKmDGAuS1GO6c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2792304},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"c0b6988c3e7c39675604e65f9a23d44f3a3b6494","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.2.8"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.2.9_1787846884512_0.777336032252453","host":"s3://npm-registry-packages-npm-production"}},"0.2.10":{"name":"@macky_aletse/blueprint-core","version":"0.2.10","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.2.10","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"12481949b308e22782bc7daaddf68a5921652a17","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.2.10.tgz","fileCount":725,"integrity":"sha512-QMT8ru4La5bDX9CYm7EFO/L9eNFdWjPXO6DhFh1YDo6yAaM34+WW7F1nlmrFp3yTVrJVGPha40s9tuBVZc5r7w==","signatures":[{"sig":"MEUCIGiPydTMg0GJ6tw2f4YCYa5/VBL/hofaOYRTErfCY1W/AiEA89QsvE7gboEHsUQSAtvHSY+H+Q0iVpVQeGiK65D4Hes=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2800525},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"c0b6988c3e7c39675604e65f9a23d44f3a3b6494","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.2.9"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.2.10_1787848049055_0.7400250099556474","host":"s3://npm-registry-packages-npm-production"}},"0.2.11":{"name":"@macky_aletse/blueprint-core","version":"0.2.11","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.2.11","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"578a5a24833be9cb96deb582f3d1b0133840b19a","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.2.11.tgz","fileCount":725,"integrity":"sha512-OuYWNXX3V996XJOwP8mQwZA2nEEB6d9V+wtHel50Vw88BA+e4ie71jyY8I7nXZShbCf6UyVFR14cJDnQTXIJCA==","signatures":[{"sig":"MEYCIQC05BNNrLD0OWBH87ADHOhU7UWZNqYrMqUnBmKf9LO2UQIhAPdRYuYQIaA7wiQ0lTg3JKbYk+r8s6R6yK/TF3Jq27uG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2801513},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"c0b6988c3e7c39675604e65f9a23d44f3a3b6494","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.2.10"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.2.11_1787876181847_0.5920186350266285","host":"s3://npm-registry-packages-npm-production"}},"0.2.12":{"name":"@macky_aletse/blueprint-core","version":"0.2.12","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.2.12","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"2db2d31daabaa2c2979879bbe66e396ca11b8f83","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.2.12.tgz","fileCount":725,"integrity":"sha512-B2KxSJ/PqfQwOz5aS7EOCOkJhZfgaUoLI1SLrKJCntXUXK8yIWRnAl2ffqSYQkvtbIA055D4yae1piTTmKpOfA==","signatures":[{"sig":"MEUCIFrQjYlQgo6rUGBdkxSMvDWRHLRrds4FxD/GqfU94IbHAiEA96BRhxol1W6VSyLwVLlplw2jLau8aBCsJfgwHc5xui8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2805621},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"c0b6988c3e7c39675604e65f9a23d44f3a3b6494","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.2.12_1787877025457_0.7099552451729743","host":"s3://npm-registry-packages-npm-production"}},"0.2.13":{"name":"@macky_aletse/blueprint-core","version":"0.2.13","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.2.13","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"c98232f3ca97121d0bf2cc21437e72892b549707","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.2.13.tgz","fileCount":725,"integrity":"sha512-eIjQVLWqwLSpQI3wZ6mvoQ/XHtgismybwaQStdpWyzPDZWAREATcGyJGA+x6NJ9aVAW2RsZNVA3gEOU/1uAMRw==","signatures":[{"sig":"MEQCIA1m4VKpFmefDBp9mq5TBsipZhUwKhKy2x3I2rxcJ73XAiAkCvFokiYw5FzbdCAZsev8WsfmsXqlWYXCGjp5OJJKeQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2809893},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"c0b6988c3e7c39675604e65f9a23d44f3a3b6494","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.2.12"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.2.13_1787877995433_0.7990900647401944","host":"s3://npm-registry-packages-npm-production"}},"0.2.14":{"name":"@macky_aletse/blueprint-core","version":"0.2.14","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.2.14","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"647b42524bd72ec434cbd106c307d43613806905","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.2.14.tgz","fileCount":725,"integrity":"sha512-zKMBcR/hzzdNClv59qpPWtC/E8SLsMScOiXLrAF9IMXh0vUPwwgpUEcqYeiCm/PX7UyNReGjJLD3RsWjaEHBmQ==","signatures":[{"sig":"MEQCIDOp/NiWBPzBN1mejr8xLyVj6R9wxwibyJXsRU2ESJA4AiBU48pmWhsv0rOvPp3UDG8YfKl8TjvyucRm3iXNbZeASA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2810758},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"c0b6988c3e7c39675604e65f9a23d44f3a3b6494","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.2.13"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.2.14_1787879154635_0.7665327646090008","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@macky_aletse/blueprint-core","version":"0.3.1","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.3.1","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"e175f18cf3fddc886d10ff8075eeab632d46417a","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.3.1.tgz","fileCount":812,"integrity":"sha512-+HdcJD8RSmo78vCJ0+x5Qbq/Dxh4YXYGzNqjWqX+vgq5llJ9e5vIMEm8yfjwRQX/RrZVqr9avdx7MGCFO9S3aQ==","signatures":[{"sig":"MEYCIQCgUZCeHeVp4zsoM6Bs0rT5GJniXoR1bVbRFLkOXqhsuQIhAIsQVXNI6r0Rpqa1LUjJJN2O9qC9SE0srTJ31Gm+sEWo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3418558},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"64f3f48b620007f55aeed37d478a2305c77fca8e","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.2.14"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.3.1_1788232156383_0.5394938847607136","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@macky_aletse/blueprint-core","version":"0.3.2","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.3.2","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"af5733d0621437053fe393e8a49a7f9d4b7a4e68","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.3.2.tgz","fileCount":812,"integrity":"sha512-lJ2MtZDAKS/pwKUon55ydCFOdO9RdrGPIPfOOUl7ZrjYSZdi1pBmpPd3+Fzxl8xNMp7io7Hu87GLfH+60u5T7Q==","signatures":[{"sig":"MEUCIQD6ygAabNiy4Vl7og4AesHKaGO7OfO4A7ICJnFB/JytCAIgDyCCIAutxYfLcv74IWXJgowc4FCEy+VDZD06LQYlLRA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3418558},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"57fb90af607d7b1e52b81b0ce6fb39b202b5c89b","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.2.14"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.3.2_1788237594119_0.6929125186597362","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@macky_aletse/blueprint-core","version":"0.3.3","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.3.3","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"1e480bd042cf1a78c7c285b0e52c8d7534e789f2","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.3.3.tgz","fileCount":812,"integrity":"sha512-DdnpeMTRnY1c0p5b7555mJ9q7F2tQxaBlOOSoop3DLy45uFuLfd0IMfhxFmFV75o2jdsoqEl2aRS2/D+D3+2tw==","signatures":[{"sig":"MEUCIBa8Fh5xNBKYinQNKu2RTb0OsHb2QrJglwpCcT682mATAiEAvR18zt8h/i7IR9v+d2V37HWPSCY5Qx2BDDYkl7tVWZA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3419900},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"f90d526e0940e7b4efa9e3e982ecd256876648f9","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.2.14"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.3.3_1788239199435_0.6029949258799712","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"@macky_aletse/blueprint-core","version":"0.3.4","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.3.4","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"145552fc8d309f272b22223136a72ad89ac445fd","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.3.4.tgz","fileCount":812,"integrity":"sha512-sveuK09hd3K5iftEA813YNY6VOMq1LUw1rWB1wyZ7ov0uV83iikicA4qAnukEu4cCQ7e6IYRR1SGjn4oIj24nA==","signatures":[{"sig":"MEYCIQCEzY3XycoQIF+4vqEZaq3Yohedcs3eBQqFim/SXl/PVwIhAJKFwvw5LuJzwNAmu6RvK+QdZf1NBpH4H0HuDuCrsmUc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3420454},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"c74e1b0be9a1c42ad4542f4afe0f1a8bdb8a2eb7","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.2.14"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.3.4_1788240623267_0.7398224405289806","host":"s3://npm-registry-packages-npm-production"}},"0.3.5":{"name":"@macky_aletse/blueprint-core","version":"0.3.5","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.3.5","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"d54f1523af31d64dcbe19182ef158074afc47e0d","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.3.5.tgz","fileCount":812,"integrity":"sha512-uPvlpIdYV76LMN+KRnQjpaClR3L1lsNvTuTYjn1F67XCtYoOc59xVCy+uNRtQaeivoVSt4kqu2IzmoAWlOzEkg==","signatures":[{"sig":"MEUCIGDv2xsyQ5yGJWnvJLEf8P2JmHk0AoKoB1Ym4wScWqHLAiEA7P85ZSpBf8tJZk/LPGXqrxJ7Wu5qCMtMw6JrbDyH1uo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3423124},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"94b3f327ea1116b480b26610fba7817ff8bf3ad6","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.2.14"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.3.5_1788242315204_0.6031075317961991","host":"s3://npm-registry-packages-npm-production"}},"0.3.6":{"name":"@macky_aletse/blueprint-core","version":"0.3.6","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"author":{"name":"Mark Estella"},"license":"MIT","_id":"@macky_aletse/blueprint-core@0.3.6","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"bin":{"blueprint-core":"dist/cli/entry.js"},"dist":{"shasum":"65374288e427fcd73c57acf715b6b4e5b54d8b48","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.3.6.tgz","fileCount":812,"integrity":"sha512-a9I1ybmrx6sHU64eq+n0bkE0d+ZEVlWC+IBTTQ4YOwpNTwCdiUQtdLokk9EiYh5ru4MyUmDW68CJ6+3rv4OJOw==","signatures":[{"sig":"MEQCIGNKKLNSkh4bqOThkSUHhPk5oV6Jp4qbUm77zPtzSHV/AiB69T15iq5Crjq7eKTyc84d3geYF2J6UC1rvoICWMRR0w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3422660},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"658220a1def96b3f46d315a605bffa7e0a3fd8a1","scripts":{"lint":"eslint . --max-warnings 0","test":"vitest run","build":"tsc -p tsconfig.build.json","start":"node dist/cli/entry.js","prepack":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"repository":{"url":"git+https://github.com/markestella/blueprint-core.git","type":"git"},"_npmVersion":"10.9.3","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","directories":{},"_nodeVersion":"22.19.0","dependencies":{"js-yaml":"^4.1.0","@macky_aletse/blueprint-core":"^0.2.14"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.17.0","vitest":"^4.1.11","typescript":"^5.7.0","@types/node":"^22.10.0","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.18.0"},"_npmOperationalInternal":{"tmp":"tmp/blueprint-core_0.3.6_1788243439246_0.9986188370923308","host":"s3://npm-registry-packages-npm-production"}},"0.3.7":{"name":"@macky_aletse/blueprint-core","version":"0.3.7","description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","type":"module","license":"MIT","author":{"name":"Mark Estella"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/markestella/blueprint-core.git"},"homepage":"https://github.com/markestella/blueprint-core#readme","bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"engines":{"node":">=20"},"bin":{"blueprint-core":"dist/cli/entry.js"},"main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"build":"tsc -p tsconfig.build.json","typecheck":"tsc --noEmit","test":"vitest run","test:watch":"vitest","test:release":"npm run build && node scripts/release-smoke.mjs","lint":"eslint . --max-warnings 0","start":"node dist/cli/entry.js","prepack":"npm run build","prepublishOnly":"npm test && npm run lint && npm run typecheck && npm run test:release"},"dependencies":{"@macky_aletse/blueprint-core":"^0.2.14","js-yaml":"^4.1.0"},"devDependencies":{"@types/js-yaml":"^4.0.9","@types/node":"^22.10.0","eslint":"^9.17.0","typescript":"^5.7.0","typescript-eslint":"^8.18.0","vitest":"^4.1.11"},"_id":"@macky_aletse/blueprint-core@0.3.7","gitHead":"752c98dcb11b3392666c9bf999122dc34c5d05a7","_nodeVersion":"22.19.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-V2cPCQ+0LcbzdH495wF/FcgtvP8UJnBmkyoQFyOqJG05FDj5MQK7q5IPLjNmZi7QvspP1K7lKmrURkNC+t4R3w==","shasum":"4ecfaff9f4d792b2c1f555b4a1f54d6a9d02f01e","tarball":"https://registry.npmjs.org/@macky_aletse/blueprint-core/-/blueprint-core-0.3.7.tgz","fileCount":812,"unpackedSize":3423863,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCEd36wcKuiIbrz0D4vzRe5f22V9fEHqPKqVW1I/o7Z6gIhAIVCodp98dF15+qwIkdMMY5WHivXvllb8UsHAhxIYDaw"}]},"_npmUser":{"name":"macky_aletse","email":"mark.estella09@gmail.com"},"directories":{},"maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/blueprint-core_0.3.7_1788247719377_0.669295429149557"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-26T05:22:48.587Z","modified":"2026-09-01T07:28:39.721Z","0.1.1":"2026-08-26T05:22:48.940Z","0.1.2":"2026-08-26T05:51:44.612Z","0.1.3":"2026-08-27T05:35:11.237Z","0.1.4":"2026-08-27T06:21:50.734Z","0.1.5":"2026-08-27T06:45:28.339Z","0.1.6":"2026-08-27T06:55:41.408Z","0.1.7":"2026-08-27T07:04:39.246Z","0.1.8":"2026-08-27T07:21:39.499Z","0.1.9":"2026-08-27T07:38:14.039Z","0.2.0":"2026-08-27T07:49:13.438Z","0.2.1":"2026-08-27T08:01:00.459Z","0.2.2":"2026-08-27T08:11:11.523Z","0.2.4":"2026-08-27T08:59:34.133Z","0.2.5":"2026-08-27T09:33:14.347Z","0.2.6":"2026-08-27T09:54:41.846Z","0.2.7":"2026-08-27T10:08:44.291Z","0.2.8":"2026-08-27T15:33:21.651Z","0.2.9":"2026-08-27T16:08:04.748Z","0.2.10":"2026-08-27T16:27:29.189Z","0.2.11":"2026-08-28T00:16:22.056Z","0.2.12":"2026-08-28T00:30:25.640Z","0.2.13":"2026-08-28T00:46:35.666Z","0.2.14":"2026-08-28T01:05:54.812Z","0.3.1":"2026-09-01T03:09:16.552Z","0.3.2":"2026-09-01T04:39:54.254Z","0.3.3":"2026-09-01T05:06:39.593Z","0.3.4":"2026-09-01T05:30:23.464Z","0.3.5":"2026-09-01T05:58:35.417Z","0.3.6":"2026-09-01T06:17:19.439Z","0.3.7":"2026-09-01T07:28:39.564Z"},"bugs":{"url":"https://github.com/markestella/blueprint-core/issues"},"author":{"name":"Mark Estella"},"license":"MIT","homepage":"https://github.com/markestella/blueprint-core#readme","keywords":["ai-assisted-development","blueprint","cli","software-engineering","traceability","qa"],"repository":{"type":"git","url":"git+https://github.com/markestella/blueprint-core.git"},"description":"CLI that bootstraps repositories for structured, AI-assisted development and QA — never vibe coding.","maintainers":[{"name":"macky_aletse","email":"mark.estella09@gmail.com"}],"readme":"# Blueprint Core\n\nBlueprint Core is a local-first CLI that turns product evidence and guided answers into an AI-generated, traceable implementation blueprint.\n\nIt is for developers, QA engineers, and technical leads who need approved architecture, complete specifications, detailed tests, sprint tasks, and small copyable implementation prompts instead of unconstrained “vibe coding.” It does not implement application code itself.\n\nThe legacy `init`/`retrofit` engine remains available for compatibility. The ultimate workflow begins with `setup`, continues with `generate`, and requires review/approval before ClickUp synchronization.\n\n## What it does\n\nBlueprint Core validates canonical source documents, connects to OpenAI, Anthropic, an OpenCode custom endpoint, or another OpenAI-compatible provider, applies bundled engineering standards, and generates:\n\n- a versioned local blueprint store and knowledge lockfile;\n- an `AGENTS.md` operating contract;\n- a copied, pinned project knowledge pack;\n- approved requirements, final architecture and decisions, complete specifications, detailed QA tests, and a spec tracker;\n- dependency-ordered sprint tasks with token-efficient prompts, operational skills, evidence requirements, and ClickUp export;\n- an implementation-readiness coverage manifest proving every feature section reaches requirements, specs, tasks, and tests;\n- a typed trace graph connecting the blueprint, profile, decisions, knowledge, gates, skills, tasks, and test scenarios;\n- fingerprints used to report later drift.\n\nIt does not execute sprint tasks, edit application code, claim planned tests were executed, or synchronize ClickUp without an explicit approval and confirmation.\n\n## How it works\n\n### The ultimate workflow: `setup` → `generate` → `review` → `approve`\n\nThis is the primary, AI-driven workflow described throughout this README. Every decision point below is real, taken directly from `src/workflow/generate.ts`'s own 7-phase pipeline — nothing here is aspirational.\n\n```mermaid\nflowchart TD\n    P0[\"providers / templates / frontend-designs / backend-patterns (optional, before setup)\"] --> S[\"setup: project, sources, provider + model, role-specific questions, ClickUp\"]\n    S --> G12[\"generate 1-2/7: load config, preflight required documents, connect to provider\"]\n    G12 -->|\"missing required doc, or provider is none\"| G12X[\"Refuse with an actionable message\"]\n    G12 --> G3[\"3/7 evidence analysis\"]\n    G3 --> G4[\"4/7 architecture review\"]\n    G4 --> CB{\"Blocking unresolved item?\"}\n    CB -->|\"interactive terminal\"| CB1[\"Ask live, apply the answer to the source doc, re-review\"] --> G4\n    CB -->|\"non-interactive\"| CB2[\"Fail fast with an actionable message\"]\n    CB -->|\"none\"| G5[\"5/7 delivery generation: requirements, specs, tasks, sprints, tests\"]\n    G5 --> G6[\"6/7 validate traceability + bounded semantic-repair loop\"]\n    G6 --> RP{\"feature-list / architecture is ai-recommend?\"}\n    RP -->|\"interactive\"| RP1[\"Section-by-section proposal review\"]\n    RP -->|\"non-interactive\"| RP2[\"Accept the AI's proposal as-is\"]\n    RP --> AT{\"Automation requested, tech stack ai-recommend?\"}\n    AT -->|\"yes\"| AT1[\"Automation tech-stack review\"]\n    AT --> FD{\"Architecture has a client/frontend obligation?\"}\n    FD -->|\"yes\"| FD1[\"Frontend design review\"]\n    FD --> BD{\"Architecture has a backend-module obligation?\"}\n    BD -->|\"yes\"| BD1[\"Backend architecture-style review\"]\n    BD --> SK[\"Thread any chosen design(s) into matching task skills\"]\n    SK --> G7[\"7/7 write every file atomically; record workflow-result.json status\"]\n    G7 --> RV[\"review\"]\n    RV --> AP[\"approve --approver name\"]\n    AP --> RPT[\"report\"]\n    RPT --> SY[\"sync clickup\"]\n    G7 -.->|\"revision-requested\"| REVISE[\"revise\"] -.-> G12\n    G12 -.->|\"any time, once required docs exist\"| EST[\"estimate\"]\n```\n\nA few things worth knowing about this diagram:\n\n- Every review step (architecture clarification, feature-list/architecture proposal, automation tech-stack, frontend design, backend architecture style) only happens in a real interactive terminal (never with `--json`, never without a TTY) and is bounded to a small number of rounds — none of them can loop forever, and none of them ever hard-block a non-interactive/CI run.\n- The automation, frontend-design, and backend-design reviews are each conditional on something the *architecture itself* actually contains (an automation request, a client obligation, a backend-module obligation) — a project's `role` (developer/qa/combined) doesn't decide whether they fire.\n- `revise` doesn't restart the pipeline from scratch: it records feedback in `.blueprint/workflow-result.json`, which the *next* `generate` run reads and folds into its architecture-review and delivery-generation requests.\n- Phase-level and repair-level caching (see [Repair caching](#repair-caching) below) mean re-running `generate` with nothing actually changed reuses completed work instead of re-asking the AI.\n\nFor a clickable product and architecture tour, open [the interactive walkthrough](docs/blueprint-core/product-walkthrough.html).\n\n### The legacy deterministic engine (`init`/`retrofit`)\n\nA separate, non-AI scaffolding engine remains available for compatibility. It shares no code path with the ultimate workflow above.\n\n```mermaid\nflowchart TD\n    U[User runs init or retrofit] --> D[Discover repository files and classify repository]\n    D --> P[Load or infer a project profile]\n    P --> K[Load and validate bundled knowledge base and registries]\n    K --> S[Score and select applicable knowledge]\n    S --> Q{Selection decisions?}\n    Q -->|default| A[Resolve with first option]\n    Q -->|--decisions prompt| H[Prompt through the prompter port]\n    A --> G[Deterministic generation pipeline]\n    H --> G\n    G --> V[Build gates, artifacts, trace graph, and fingerprints]\n    V --> R{Write enabled?}\n    R -->|init / retrofit --write| W[Atomically write generated files, then state and history]\n    R -->|dry run| X[Print proposed report only]\n    W --> L[check / status / doctor]\n    L --> M[modify profile or update knowledge pins]\n    M --> G\n```\n\nHuman control happens through explicit command choice, profile authoring, dry-run review, and optional terminal decision prompts. `--decisions prompt` records valid terminal choices as human resolutions and aborts safely when no valid interactive answer is available.\n\n## Requirements and installation\n\n- Node.js 20 or newer\n- npm (the repository lockfile uses npm lockfile version 3)\n- An OpenAI, Anthropic, or custom-compatible API credential is required for AI generation; credentials are read from environment variables and never stored\n\nRun without a global install:\n\n```sh\nnpx @macky_aletse/blueprint-core --help\n```\n\nOr install it in a project:\n\n```sh\nnpm install --save-dev @macky_aletse/blueprint-core\nnpx blueprint-core --version\n```\n\nThe package is named `@macky_aletse/blueprint-core`; its executable is `blueprint-core`.\n\n## Quick start\n\n`blueprint-core help --role developer` or `blueprint-core help --role qa` prints a live, always-current version of the walkthroughs below, grouped by when you'd actually run each command.\n\n### If you're a developer\n\n1. `blueprint-core providers` — see what credential each AI provider needs and where to get it, before running setup.\n2. `blueprint-core setup` — choose role `developer` (or `combined`), a provider, and whether `docs/feature-list.md`/`docs/proposed-architecture.md` already exist or should be AI-recommended.\n3. If you don't have starting documents yet, `blueprint-core templates feature-list` and `blueprint-core templates proposed-architecture` copy a Development-focused starting shape into `docs/` — they refuse to overwrite an existing file unless you pass `--force`.\n4. Optional: `blueprint-core frontend-designs` and `blueprint-core backend-patterns` browse the standard design/architecture catalogs `generate` will offer you — a time-saver if you already want to see the options.\n5. `blueprint-core generate --dry-run` then `blueprint-core generate`. In a real interactive terminal (not `--json`, not CI), a blocking architecture question or an AI-recommended feature-list/architecture proposal is reviewed live, right there — you answer, edit, or ask the AI to revise a section before anything is written; running non-interactively keeps the original fail-fast/one-shot behavior instead. When the architecture has a frontend and/or backend surface, `generate` also asks about your frontend design and backend architecture style, always giving you an explicit recommendation either way (see [Frontend and backend design steps](#frontend-and-backend-design-steps)).\n6. `blueprint-core estimate` — once `docs/feature-list.md` and `docs/proposed-architecture.md` (or `docs/architecture/README.md` after a `generate`) exist, get a per-requirement/task hours range plus a rolled-up total, with your own team size and risk assumptions folded in interactively.\n7. `blueprint-core review`, then `blueprint-core approve all --approver \"<your name>\"`.\n8. `blueprint-core report` to confirm implementation-readiness, then `blueprint-core sync clickup --dry-run` / `--confirm` if you use ClickUp.\n\nWorking against an existing, unmanaged repository instead of a clean slate? Run `blueprint-core retrofit . --write` first — it now analyzes real repository content (not just filenames) and additionally writes `docs/deployment-guide.md`, `docs/setup-guide.md`, `docs/architecture/assessment.md` (a coherence assessment with stated reasoning, not just a label), a seeded `docs/change-history/CHG-001.md`, and `docs/specs/retrofit-discovery.md` — a discovered starting point for real specs, additive to the generic `docs/specs/README.md`.\n\n### If you're QA\n\n1. `blueprint-core providers` — see what credential each AI provider needs and where to get it, before running setup.\n2. `blueprint-core setup` — choose role `qa` (or `combined`). If this is an automation project, setup asks which platform(s) it targets (web, mobile, desktop, or API/backend) and whether `docs/proposed-automation-architecture.md` already exists or should be AI-recommended; either way you're also asked whether you have `docs/test-plan.md` and whether to generate detailed positive/negative test cases.\n3. If you don't have starting documents yet, `blueprint-core templates feature-list --qa` and `blueprint-core templates proposed-architecture --qa` copy a QA-focused starting shape — the feature-list variant is framed around describing the app's *current* behavior (what already exists to test), not a wishlist of new work.\n4. Optional: `blueprint-core frontend-designs` and `blueprint-core backend-patterns` browse the standard design/architecture catalogs `generate` will offer you, so you know what to expect for `combined`-role projects that build a UI or a backend.\n5. `blueprint-core generate --dry-run` then `blueprint-core generate`. `generate` refuses to run with an actionable message if `detailedTestCases` or `automationProject` is enabled but its required QA document is neither present nor configured as AI-recommended — it never silently proceeds with an empty QA source. When an automation tech stack is AI-recommended, it's presented for your explicit approval or a requested alternative — distinct from, and before, the general workflow approval — and recorded as its own decision in `docs/requirements/decisions.json`. On a `combined`-role project with its own frontend/backend surface, `generate` separately asks about frontend design and backend architecture style too (see [Frontend and backend design steps](#frontend-and-backend-design-steps)).\n6. `blueprint-core estimate` — once `docs/feature-list.md` and `docs/test-plan.md` (or `docs/testing/test-cases.json` after a `generate`) exist, get a QA-scoped hours range as a baseline you can add buffer to. For `combined` role, `estimate` runs both developer and QA scopes separately, plus a combined total.\n7. `blueprint-core review`, then `blueprint-core approve all --approver \"<your name>\"`.\n8. `blueprint-core report` to confirm QA coverage and implementation-readiness.\n\nTesting an existing, unmanaged application? `blueprint-core retrofit . --write` produces the same deployment/setup/architecture-assessment documents described in the developer walkthrough above — useful context for understanding what's actually deployed before writing QA scope against it.\n\nCreate or enter the project repository. If inputs already exist, use these exact names:\n\n```sh\ndocs/feature-list.md\ndocs/proposed-architecture.md\n```\n\nRun setup and generation:\n\n```sh\nnpx @macky_aletse/blueprint-core setup\nexport OPENAI_API_KEY=\"...\" # or the environment variable selected in setup\nnpx @macky_aletse/blueprint-core generate --dry-run\nnpx @macky_aletse/blueprint-core generate\nnpx @macky_aletse/blueprint-core review\nnpx @macky_aletse/blueprint-core approve all --approver \"<your name>\"\nnpx @macky_aletse/blueprint-core report\n```\n\nGeneration now fails before writing product artifacts when a feature-list\nsection is lost, a requirement lacks a spec/task/test, detailed QA lacks a\npositive and failure-path test, a task contains an unresolved tool choice, or\nits skills, knowledge paths, and validation commands are not executable. The\nevidence is written to `docs/coverage/implementation-readiness.json` after a\nsuccessful generation. An older generated project without that manifest is\nreported as not ready and must be regenerated.\n\nThe detailed-output contract also requires onboarding-grade architecture and\nsetup sections, implementation-ready specification sections, explicit sprint\nobjectives and exit criteria, small independently executable tasks, complete\narchitecture-decision context and consequences, and directly executable QA\nrecords containing module, scenario, data, pre/postconditions, priority,\nrequirement/spec traceability, and applied QA knowledge references.\n\nGeneration prints progress for evidence analysis, architecture review, delivery\ngeneration, validation, and file planning/writes. Each AI request allows 300\nseconds by default. Slow local or custom endpoints can override it, for example:\n\n```sh\nblueprint-core generate --dry-run --timeout-seconds 600\n```\n\nStreaming output is summarized as periodic received-character counters; large\nstructured JSON is not dumped into the terminal. Responses are stored under\n`.blueprint/generation-responses/<input-digest>/`. Generation checkpoints in\n`.blueprint/workflow-run.json` are persisted even during `--dry-run`, so an\nidentical retry reuses completed evidence, architecture, and delivery phases.\nDry-run never writes the planned product documents, but it does write this\noperational cache to avoid repeated AI token cost.\n\n### Repair caching\n\nBeyond the phase-level checkpoint above, every raw AI response for a phase\n(evidence, architecture, delivery) is saved under\n`.blueprint/generation-responses/<input-digest>/<phase>.json`, keyed by the\nsame input digest (a hash of the workflow config, sources, and revision\nfeedback). When a response fails schema validation after the AI's own repair\nretries, the raw invalid response is saved separately as\n`<phase>-invalid.json` (for example `architecture-invalid.json` or\n`delivery-invalid.json`) instead of being discarded.\n\nThe next `generate` run with an unchanged input digest first tries to recover\nthat cached invalid response through Blueprint Core's own deterministic\nnormalization — the same vocabulary/shape fixes applied to any AI output —\nbefore spending another AI request on it. If normalization succeeds, progress\nreports it explicitly (for example \"Recovered the cached architecture response\nafter compatible JSON normalization; no new AI request was needed.\") and no\nnew request is sent. This exists so a transient, deterministically-fixable\nvalidation failure never costs a second round of AI tokens just to try again.\nNothing here is cached across a *changed* input digest — any real change to\nsources, config, or revision feedback invalidates it and a fresh request is\nmade.\n\nFor ClickUp export-only, use `docs/tasks/clickup-import.json`. For configured direct synchronization:\n\n```sh\nblueprint-core sync clickup --dry-run\nblueprint-core sync clickup --confirm\n```\n\nAlways review the dry-run first. Direct sync never performs remote deletes.\n\n## Choose the right workflow\n\nUse `setup` and `generate` for the AI product. Use `init` or `retrofit` only for the legacy deterministic profile engine.\n\n```sh\n# Full product questionnaire and provider connection test\nblueprint-core setup\n\n# AI analysis and generation\nblueprint-core generate --dry-run\nblueprint-core generate\nblueprint-core review\nblueprint-core approve all --approver \"<your name>\"\nblueprint-core report\n\n# Existing repository: inspect, review JSON, then explicitly adopt\nblueprint-core retrofit . --json\nblueprint-core retrofit . --write\nblueprint-core check\n```\n\nSetup authenticates before model selection. It fetches the models available to\nthe connected account and asks you to choose from that result. OpenCode custom\nendpoints use `baseURL` and the API-key reference from `opencode.json`, while\nfetching selectable model IDs from the endpoint. Setup stores the chosen model and\nenvironment-variable references in `.blueprint/workflow-config.json`; it never\nstores the secret. OpenCode `{env:VARIABLE_NAME}` API-key references are resolved\nfrom the environment. If connection or discovery fails, setup stops and keeps a\nmode-`0600` `.blueprint/setup-draft.json` containing only non-secret progress;\nthe next `setup` run asks whether to resume it or begin again.\n\n## Status meanings\n\n`generate` writes `.blueprint/workflow-result.json` on every successful run. Its `status` field is exactly one of three values:\n\n| Status | Meaning |\n| --- | --- |\n| `review-required` | The default after a fresh or materially changed generation. No approval currently covers this exact source/delivery combination; run `review` then `approve` before treating it as implementation-ready. |\n| `approved` | Either `approve all` was run against this exact combination, or a regeneration reproduced source and delivery content byte-identical to the last approved run, so the prior approval still covers it — no re-review was needed. |\n| `revision-requested` | `revise <entity> --message <text>` was run. The feedback is recorded for the next `generate` to apply; regenerate before approving. |\n\nThis is a different field from `.blueprint/workflow-run.json`'s own `status` (`running`, `failed`, `completed`, or `aborted` via `abort`), which tracks the generation *process* itself — whether a run is mid-flight, failed at a specific phase, finished, or was aborted — not whether the resulting product has been reviewed. `review` reports the workflow-result status above, plus whether sources or generated delivery have changed since the last recorded approval.\n\n## Frontend and backend design steps\n\nWhen the reviewed architecture has a frontend/client surface, `generate` asks \"Do you have a frontend design in mind?\" before finalizing anything. When it has a backend surface, it separately asks \"Do you have a backend architecture style in mind?\" Each of these is its own conversational step — a project can trigger either, both, or neither, depending on what its own architecture actually needs.\n\n- **If you say yes**, describe it in free text; the AI analyzes your description against a small registry of established options (see `frontend-designs`/`backend-patterns` below) and tells you plainly whether to keep what you described or switch to a specific listed alternative, with its reasoning.\n- **If you say no**, `generate` presents that same registry and still makes one specific, opinionated pick with reasoning — never a bare list for you to choose from unassisted, and never \"it depends.\"\n- Either way, you can approve the recommendation, ask for an alternative (a bounded number of rounds, after which only approve/reject remain), or reject it outright — the same review shape `generate` already uses for an AI-recommended automation tech stack.\n- **In a non-interactive run** (`--json`, or no TTY), neither step ever blocks generation: the AI picks its own recommended default automatically, and that choice is still recorded — just without a named human approver.\n\n### How to check what was chosen\n\n- The frontend design ends up in `docs/architecture/frontend-design-system.md`; the backend architecture style ends up in `docs/architecture/backend-architecture-style.md`. Each file states what was chosen, why, and (for a registry pick) its fonts/color tokens/scale or its operational-cost/testability/dependency trade-offs.\n- Each choice is also recorded as its own named decision in `docs/requirements/decisions.json` — look for the entries with `id` `ADR-FRONTEND-DESIGN` and `ADR-BACKEND-ARCHITECTURE-STYLE`. Neither is folded into the general workflow approval; approving `all` via `approve` does not itself constitute approving these.\n- To confirm a specific generated task actually picked up the design, open its prompt at `docs/tasks/sprints/SPRINT-*/TASK-*.md` and check the `Load skills:` line: a frontend-facing task (UI/client work) lists `apply-frontend-design`; a backend-facing task (controller/domain/persistence/API work) lists `apply-backend-design` — alongside the skills every task already loads, never replacing them. A task with neither kind of surface, or a project where the corresponding design was never recorded, never gets one of these listed.\n\n## Command reference\n\nAll directory positionals default to the current directory. `--dir <value>` is an equivalent explicit form. All commands support `--help`; report commands support `--json` where shown.\n\n| Command | Purpose | Interactive | Modifies repository | Success/failure notes |\n| --- | --- | ---: | ---: | --- |\n| `init [dir] [flags]` | Generate a blueprint for a new, empty, or compatible unmanaged repository. | No in the shipped CLI | Yes, unless `--dry-run` | Refuses initialized or incompatible repositories. |\n| `setup [flags]` | Configure project, canonical sources, role/QA/automation platform, provider, history/specs, and ClickUp. | Yes | Writes workflow configuration | Tests provider connectivity; never stores secrets. |\n| `providers [--json]` | List every supported AI provider, its credential, where to get it, and what setup will ask. | No | No | Sourced from the same provider definitions setup uses; nothing to configure. |\n| `templates <feature-list|proposed-architecture> [dir] [--qa] [--force]` | Copy a starting template into `docs/`. | No | Yes | Refuses to overwrite an existing file unless `--force`. |\n| `frontend-designs [--json]` | List every standard frontend design system generate can recommend. | No | No | Sourced from the same registry the conversational design step uses; nothing to configure. |\n| `backend-patterns [--json]` | List every standard backend architecture pattern generate can recommend. | No | No | Sourced from the same registry the conversational design step uses; nothing to configure. |\n| `generate [dir] [--dry-run] [--json]` | Analyze evidence and generate the ultimate blueprint. | Only in a live terminal (never with `--json`) | Yes unless dry-run | Requires configured provider credential; output requires review. |\n| `review [dir]` | List generated artifacts and approval state. | No | No | Requires a generated workflow. |\n| `revise <entity> --message <text>` | Record human revision feedback for regeneration. | No | Workflow state | Feedback is supplied on the next generation run. |\n| `approve <entity|all> --approver <name> [dir]` | Approve reviewed output. | No | Workflow state | `approve all` unlocks readiness and ClickUp sync. |\n| `abort [dir]` | Abort the current ultimate-workflow run. | No | Workflow-run state | Preserves completed checkpoints; resume with `generate --resume`. |\n| `estimate [dir] [--json]` | Conversational hours/days effort estimate. | Only in a live terminal (never with `--json`) | No | Refuses to run until its role's required canonical documents exist. |\n| `report [dir] [--json]` | Evaluate ultimate-product readiness. | No | No | Fails on missing inputs, artifacts, QA coverage, or approval. |\n| `sync clickup [dir] [--dry-run|--confirm]` | Preview/export or idempotently create/update ClickUp tasks. | No | Mapping file and optional remote tasks | Never deletes remote tasks; apply requires approval and `--confirm`. |\n| `retrofit [dir] [flags]` | Profile an existing unmanaged repository and preview adoption. | No in the shipped CLI | Only with `--write` | Refuses empty and already initialized repositories. |\n| `modify --profile <file> [flags]` | Re-select and regenerate from a replacement profile. | No in the shipped CLI | Yes, unless `--dry-run` or no material change | Requires an initialized repository. |\n| `update [dir] [--dry-run] [--json]` | Re-select against the bundled KB while preserving profile and decisions. | No | Yes unless dry-run or no material change | Requires an initialized repository. |\n| `check [dir] [--json]` | Validate core payloads, trace closure, pins, and file fingerprints. | No | No | Returns exit 6 for validation, drift, or trace failure. |\n| `status [dir] [--json]` | Summarize lifecycle, profile, selection, gates, tasks, trace, and drift. | No | No | Requires an initialized repository. |\n| `doctor [dir] [--json]` | Check the configured KB, history JSONL, and trace. | No | No | Returns exit 1 when its aggregate report is unhealthy. |\n| `analytics [dir] [action] [--json]` | Control and inspect project-local telemetry records. | No | `on`/`off` write consent | Consent defaults to off. |\n\n### `init`\n\n```sh\nblueprint-core init [dir] [--profile <file>] [--name <value>]\n  [--type <value>] [--exposure <value>] [--criticality <value>]\n  [--auto-approve]\n  [--decisions <auto|prompt>] [--dry-run] [--json]\n  [--answers <file>] [--resume <session-id>] [--non-interactive]\n  [--provider <id>] [--model <id>] [--api-key-ref <ref>] [--base-url <url>]\n```\n\nWithout `--profile`, it infers limited hints from repository filenames and fills remaining fields with defaults. `--type` accepts `web-application`, `api-service`, `mobile-application`, `backend-service`, `desktop-application`, `data-pipeline`, `cli`, `library`, or `infrastructure`. Exposure is `internal`, `private`, or `public`; criticality is `low`, `medium`, `high`, or `critical`.\n\nWith `--decisions prompt`, each pending selection decision is presented in an interactive terminal. Invalid input or EOF aborts safely with exit 2; non-interactive automation should use `--decisions auto`.\n\n`--answers <file>` (a YAML/JSON file of `repo_shape`/`role`/`agent_target`/`mode` answers) or `--resume <session-id>` (continuing a previously aborted interactive session) run a short guided interview before `init` itself proceeds — useful for CI or for resuming a session you stepped away from. `--non-interactive` fails instead of prompting if any answer is still missing.\n\n### `setup`\n\n```sh\nblueprint-core setup\n```\n\nSetup requires exact canonical names when existing documents are declared. A\nnear-match such as `docs/features-list.md` produces a rename suggestion and is\nnever renamed automatically. API keys are masked and never copied into the\nworkflow configuration. Progress before provider connection is cached in\n`.blueprint/setup-draft.json`; after an error, the next `setup` asks whether to\nresume it or discard it and start again. Successful setup removes the draft.\n\nThis is the interview for the AI generation workflow (`generate`/`review`/`approve`/`report`) specifically — it always writes `.blueprint/workflow-config.json`. If you're bootstrapping the separate, non-AI blueprint-scaffolding pipeline instead, use `init --answers`/`init --resume` (see above), not `setup`.\n\nIf role is `qa` or `combined` and you answer yes to \"Is this an automation project?\", setup also asks which platform(s) it targets — web, mobile, desktop, or API/backend, any combination — before asking whether `docs/proposed-automation-architecture.md` already exists.\n\n### `providers`\n\n```sh\nblueprint-core providers\nblueprint-core providers --json\n```\n\nLists every provider `setup` can connect to (`openai`, `anthropic`, `opencode`, `custom`, `none`), each with its default credential environment variable, where to obtain that credential, provider-specific setup steps, and the exact questions `setup` will ask for it, in order — read directly from the same provider registry `setup` itself uses, so it can't describe a provider setup no longer actually offers.\n\n### `templates`\n\n```sh\nblueprint-core templates feature-list [dir] [--qa] [--force]\nblueprint-core templates proposed-architecture [dir] [--qa] [--force]\n```\n\nCopies a committed starting template to `docs/feature-list.md` or `docs/proposed-architecture.md`. Every template opens with a note that section headings must be kept exactly as written — only the content beneath each heading should change; `proposed-architecture` templates use every heading `generate` itself expects. Without `--qa` you get a Development-focused shape; with `--qa`, a QA-focused shape (for `feature-list`, framed around describing the app's current behavior rather than new work). Refuses to overwrite an existing target file unless `--force` is passed.\n\n### `frontend-designs`\n\n```sh\nblueprint-core frontend-designs\nblueprint-core frontend-designs --json\n```\n\nLists every standard frontend design system `generate`'s conversational design step can recommend — Material Design 3, Apple Human Interface Guidelines, Microsoft Fluent 2, IBM Carbon, Ant Design, Atlassian Design System, Salesforce Lightning Design System, and a Tailwind + Radix/shadcn-style utility approach — each with its font pairing, color-token approach, spacing/typography scale, and UI-structural conventions. Read directly from the same registry the conversational step uses, so it can't describe an option `generate` no longer actually offers. Browse it as a time-saver before ever running `generate`, or just let `generate` ask and recommend one for you.\n\n### `backend-patterns`\n\n```sh\nblueprint-core backend-patterns\nblueprint-core backend-patterns --json\n```\n\nLists every standard backend architecture pattern `generate`'s conversational style step can recommend — Layered (N-tier), Clean/Onion Architecture, Hexagonal (Ports and Adapters), Modular Monolith, Microservices, Event-Driven, and CQRS — each with its real trade-offs: operational cost, testability, and how swappable its external dependencies are. Same single-registry sourcing as `frontend-designs`.\n\n### `estimate`\n\n```sh\nblueprint-core estimate [dir] [--json]\n```\n\nRefuses to run until its role's required documents exist, naming exactly what's missing: a developer estimate needs `docs/feature-list.md` plus `docs/proposed-architecture.md` (or `docs/architecture/README.md` once `generate` has run); a QA estimate needs `docs/feature-list.md` plus `docs/test-plan.md` (or `docs/testing/test-cases.json` once `generate` has run). In a live terminal it asks a few optional questions — team size, focused hours per person per day, known unknowns, and a risk-buffer percent (default 20%) — then produces a per-requirement/task hours range plus a rolled-up total, always a range with stated assumptions, never a single number. For `combined` role it estimates developer and QA scope separately and adds a combined total. `--json` skips the questions and uses the default assumptions.\n\n### `retrofit`\n\n```sh\nblueprint-core retrofit [dir] [--profile <file>] [profile overrides]\n  [--auto-approve] [--decisions <auto|prompt>] [--write] [--json]\n```\n\nThe default is read-only. It reports detected and inferred facts, unknown fields, seed assumptions, selections, and the exact paths it would create. Pass `--write` only after reviewing that output.\n\nBeyond the legacy scaffold, `--write` also analyzes real repository content — package manifest dependencies, entry points, CI workflow steps, Dockerfile contents, existing docs — never just filenames, and writes five additional documents: `docs/deployment-guide.md` (how this specific project is actually built and deployed), `docs/setup-guide.md` (onboarding for a new contributor), `docs/architecture/assessment.md` (a narrative of the architecture actually in use, a coherence verdict with stated reasoning, and concrete risks actually found — never a fabricated claim; every inferred, not directly observed, claim is labeled with a confidence level), a seeded `docs/change-history/CHG-001.md`, and `docs/specs/retrofit-discovery.md` (a discovered starting point for real specs, additive to the generic `docs/specs/README.md` and never replacing it).\n\n### `modify`\n\n```sh\nblueprint-core modify --profile ./new-profile.yaml [--dir <dir>]\n  [--auto-approve] [--decisions <auto|prompt>] [--dry-run] [--json]\n```\n\nThe profile file is the complete replacement profile, not a partial patch. Blueprint Core compares it with stored state, previews knowledge and file impact, then rewrites the generated set when a material profile or pin change exists. A change record is appended to `.blueprint/history.jsonl`. User-owned regions in a generated `AGENTS.md` are preserved only when the profile enables AI assistance and region mode is active.\n\n### `update`\n\n```sh\nblueprint-core update [dir] [--dry-run] [--json]\n```\n\nThis reloads the currently bundled knowledge base and re-runs selection using the stored profile and decisions. It does not change those inputs. Changed generated files and pins are written, followed by a history entry and state manifest.\n\n### `check`, `status`, and `doctor`\n\n```sh\nblueprint-core check [dir] [--json]\nblueprint-core status [dir] [--json]\nblueprint-core doctor [dir] [--json]\n```\n\n`check` is the publication-quality validation surface: it reports modified, missing, and orphaned files under managed roots and validates trace closure. `status` is a summary, not an enforcement gate. `doctor` also works outside initialized projects; in that case it reports that no trace exists.\n\n### `analytics`\n\n```sh\nblueprint-core analytics . status\nblueprint-core analytics . on anonymous\nblueprint-core analytics . on detailed\nblueprint-core analytics . report --json\nblueprint-core analytics . off\n```\n\n`--level anonymous` or `--level detailed` can be used instead of the third positional. The implementation stores the same content-free command-run fields for both enabled levels.\n\n## Generated repository structure\n\nThe number of copied knowledge and task files depends on the selected profile.\n\n```text\nmy-project/\n├── .blueprint/\n│   ├── workflow-config.json    # provider/token references, never secrets\n│   ├── workflow-result.json    # review/approval and generation evidence\n│   └── clickup-map.json        # only after direct synchronization\n├── .agents/skills/\n│   ├── analyze-sources/SKILL.md\n│   ├── apply-knowledge/SKILL.md\n│   ├── maintain-specs/SKILL.md\n│   ├── maintain-change-history/SKILL.md\n│   ├── implement-task/SKILL.md\n│   ├── test-task/SKILL.md\n│   ├── review-evidence/SKILL.md\n│   └── sync-clickup/SKILL.md\n├── docs/\n│   ├── feature-list.md\n│   ├── proposed-architecture.md\n│   ├── project-setup-guide.md\n│   ├── architecture/README.md\n│   ├── requirements/\n│   ├── specs/\n│   ├── testing/test-cases.json\n│   ├── tasks/clickup-import.json\n│   ├── tasks/sprints/SPRINT-*/TASK-*.md\n│   └── change-history/\n└── ...legacy deterministic artifacts only when init/retrofit is used\n```\n\nEvery sprint task contains a copyable prompt with source/spec references, operational skills, applicable standards, allowed scope, non-goals, dependencies, measurable acceptance criteria, validation, evidence, and intervention triggers. Planned tests are not represented as executed evidence.\n\n## Knowledge, generation, and traceability\n\nThe package bundles Markdown engineering guidance with strict frontmatter plus YAML registries. Selection is deterministic: project characteristics are matched, scored, conflict-checked, and classified as applicable, potentially applicable, or not applicable. Selected document versions and copy modes are pinned in `.blueprint/lockfile.json`, and selected content is copied into `docs/knowledge/`.\n\nThe trace graph in `.blueprint/trace.json` relates the blueprint and profile to decisions, selected knowledge, quality gates, skills, tasks, and test scenarios. It does not currently model application code, executed test evidence, standalone requirements, or full specification entities. `check` verifies link closure against entities reconstructed from the trace file; it does not validate every generated YAML file against the domain schemas.\n\n## AI behavior\n\nThe public setup and generation path supports OpenAI, Anthropic, OpenCode\ncustom endpoints, and other OpenAI-compatible endpoints. Setup probes the\nauthenticated connection, discovers models, and only then asks which model to\nuse. Generation uses structured output and validates required documents, task\nidentity/dependencies, acceptance criteria, validation commands, and unresolved\nblockers before writing.\n\nRaw secrets are never written to configuration, logs, prompts, generated documents, or ClickUp payloads. Automated tests inject recorded providers; the packed release smoke uses a local recorded provider through the real HTTP adapter.\n\n## Product boundaries and release status\n\nThe ultimate workflow is registered in the public executable. The deterministic profile engine remains a compatibility surface and has separate integrity semantics.\n\nConsequently:\n\n- `report` evaluates generated-product readiness; `check` continues to prove legacy managed-file integrity and drift;\n- approval means a human reviewed generated planning artifacts, not that application code is correct;\n- ClickUp apply requires approved output plus a separate `--confirm` action;\n- publication requires the exact packed artifact to pass the recorded-provider ultimate workflow.\n\n## Programmatic API\n\nThe package root exports the engine functions plus collision-safe namespaces for the later domain APIs:\n\n```ts\nimport {\n  runInit,\n  runCheck,\n  requirements,\n  specs,\n  tasks,\n  testing,\n  gates,\n} from \"@macky_aletse/blueprint-core\";\n\nconst requirementStore = requirements.createRequirementStore();\nconst specStore = specs.createStore();\nconst taskStore = tasks.createStore();\n```\n\nOnly the package root and `./package.json` are public export paths. Deep imports into `dist/` are unsupported.\n\n## Configuration and environment\n\nThe CLI looks for `.blueprint-core.json` in the invocation directory. `BLUEPRINT_CORE_CONFIG` selects another JSON file, and `BLUEPRINT_CORE_LOG_LEVEL` overrides the log level. A malformed or explicitly missing config fails before command execution.\n\nThe supported configuration fields are `knowledgeBase.path`, `log.level`, and `defaults.dryRun`. Unknown fields fail validation instead of being silently ignored.\n\nExample:\n\n```json\n{\n  \"knowledgeBase\": { \"path\": \"/absolute/path/to/a-compatible-knowledge-base\" },\n  \"log\": { \"level\": \"warn\" },\n  \"defaults\": { \"dryRun\": true }\n}\n```\n\nOmit the file to use the bundled knowledge base and normal write behavior. The configured knowledge path is used by `init`, `retrofit`, `modify`, `update`, and `doctor`.\n\n## Dry-run and write safety\n\n- `init --dry-run` executes discovery, validation, selection, decisions, and generation without writing.\n- `modify --dry-run` reports the replacement profile’s impact without writing.\n- `update --dry-run` reports pin and byte diffs without writing.\n- `retrofit` is read-only unless `--write` is present.\n- Generated files are written atomically per file; `.blueprint/state.json` is written last.\n\nWrites, stale owned-file removal, history, fingerprints, and final state share a rollback boundary. If a write fails, Blueprint Core restores the previous managed files. Files no longer present in the new owned manifest are removed; user files outside that manifest are never targeted.\n\n## Analytics and privacy\n\nAnalytics are off by default and entirely project-local. Enabling analytics writes command name, exit code, duration, tool version, timestamp, consent level, and a truncated SHA-256 project reference to `.blueprint/analytics.jsonl`. The code contains no network sender. Commands continue if capture fails.\n\n`.blueprint/ai-usage.jsonl` is included in reporting, but the public CLI path does not currently write AI usage records because it does not invoke a live provider.\n\n## Exit codes\n\n| Code | Meaning |\n| ---: | --- |\n| 0 | Success |\n| 1 | Unexpected/internal failure, or an unhealthy `doctor` report |\n| 2 | Invalid command, flag, or user input |\n| 3 | AI provider failure (reserved by the error model) |\n| 4 | Required project/file not found |\n| 5 | Validation failure |\n| 6 | Drift, invalid blueprint payload, or broken trace closure reported by `check` |\n\nRunning with no command prints help to stderr and exits 2. An unknown command or option also exits 2.\n\n## Troubleshooting\n\n- **“Already initialized”** — use `status`, `check`, `modify`, or `update`; do not run `init` again.\n- **“retrofit targets an existing unmanaged repository”** — use `init` for an empty directory and lifecycle commands for an initialized one.\n- **Exit 6 from `check`** — inspect its modified/missing/orphan entries. The command never auto-fixes drift.\n- **Config file could not be parsed** — `.blueprint-core.json` must be strict JSON, not YAML.\n\n## Development\n\n```sh\nnpm ci\nnpm test\nnpm run lint\nnpm run typecheck\nnpm run build\nnode dist/cli/entry.js --help\nnpm pack --dry-run\nnpm run test:release\nnpm publish --access public --dry-run\n```\n\n`npm publish` automatically runs `prepublishOnly`: the full tests, lint, typecheck, build, and `test:release`. The release smoke creates the real tarball, installs it in a clean consumer, imports the public API, runs greenfield generation and integrity checking, then verifies retrofit preview/adoption without modifying user source. Build output is ESM under `dist/`; runtime dependencies are limited to `js-yaml` and Node built-ins.\n\nThe package uses the authenticated maintainer's personal npm scope, `@macky_aletse`:\n\n```sh\nnpm whoami\nnpm publish --access public --dry-run\nnpm publish --access public\nnpm view @macky_aletse/blueprint-core version\n```\n\n## License\n\n[MIT](LICENSE)\n","readmeFilename":"README.md"}