{"_id":"@bernierllc/publish-orchestrator","_rev":"12-89e4e0a483183f6db94618899e3b5f11","name":"@bernierllc/publish-orchestrator","dist-tags":{"latest":"0.9.1"},"versions":{"0.1.0":{"name":"@bernierllc/publish-orchestrator","version":"0.1.0","keywords":["publish","orchestrator","monorepo","npm","changeset","workflow"],"author":{"name":"Bernier LLC"},"license":"Bernier LLC","_id":"@bernierllc/publish-orchestrator@0.1.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"cfdff2fce11f0ef1fe8080258c99ed2189dceda2","tarball":"https://registry.npmjs.org/@bernierllc/publish-orchestrator/-/publish-orchestrator-0.1.0.tgz","fileCount":15,"integrity":"sha512-BbXSYwvUfpOjpLTULQyU1+6EQGBLB0QB9gKGW1pyI+p8gqADL5w24FuaJMiYP/cE/MxBrhiBVPE13yx2AeXuIQ==","signatures":[{"sig":"MEYCIQC57hfHT+GBjXfGtYaKYXpK+VbE+OYz8q0xq+gjUiKLUwIhALsQHmP0wo0QPQWWuVvHwLlL3MKnN6BN8k5h6ozLapLO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73046},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"d686967963e9c5c5950736014fef478c32bf3e87","private":false,"scripts":{"test":"jest","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"mkbernier","email":"mkbernier@gmail.com"},"repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/publish-orchestrator"},"_npmVersion":"11.4.2","description":"Orchestrate publishing workflows for monorepo packages","directories":{},"_nodeVersion":"24.4.1","dependencies":{"chalk":"^5.4.1","execa":"^9.6.0","commander":"^14.0.0","@bernierllc/package-analyzer":"^0.1.0","@bernierllc/changeset-manager":"^0.1.0","@bernierllc/package-validator":"^0.1.1","@bernierllc/workspace-manager":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.19","@types/uuid":"^9.0.8"},"_npmOperationalInternal":{"tmp":"tmp/publish-orchestrator_0.1.0_1755556753827_0.34815820270269926","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@bernierllc/publish-orchestrator","version":"0.3.0","keywords":["publish","orchestrator","monorepo","npm","changeset","workflow"],"author":{"name":"Bernier LLC"},"license":"Bernier LLC","_id":"@bernierllc/publish-orchestrator@0.3.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"80257b02c3eba3b96c2718e9b828bc2bd65f7edc","tarball":"https://registry.npmjs.org/@bernierllc/publish-orchestrator/-/publish-orchestrator-0.3.0.tgz","fileCount":15,"integrity":"sha512-zvq1zvbpIc+t0yj/91E2xVSBFXdH2+4rAyzprEQWvxHhYlUdFWtaz9OxAsZP16npLvlxwzGJniwQblUrkxBpeg==","signatures":[{"sig":"MEQCIEvRFt3xqu8ZN0lpTCnMovsfgt5KGMbhsb+Pswx+irmRAiA4+eyCPMi8Ny3E34/l87LeNpii7KzL+ozvXb67COdMJw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73539},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"af7e74b3715d56d3a193e1bb6743b337c2b0df6d","private":false,"scripts":{"test":"jest","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:05bbda43-2f1b-435e-bb01-312b2fb3bcc7"}},"repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/publish-orchestrator"},"_npmVersion":"lerna/9.0.3/node@v20.19.6+x64 (linux)","description":"Orchestrate publishing workflows for monorepo packages","directories":{},"_nodeVersion":"20.19.6","dependencies":{"chalk":"^5.4.1","execa":"^9.6.0","commander":"^14.0.0","@bernierllc/package-analyzer":"0.3.0","@bernierllc/changeset-manager":"0.3.0","@bernierllc/package-validator":"0.3.0","@bernierllc/workspace-manager":"0.3.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.19","@types/uuid":"^9.0.8"},"_npmOperationalInternal":{"tmp":"tmp/publish-orchestrator_0.3.0_1767642415199_0.02883856443242916","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@bernierllc/publish-orchestrator","version":"0.3.1","keywords":["publish","orchestrator","monorepo","npm","changeset","workflow"],"author":{"name":"Bernier LLC"},"license":"Bernier LLC","_id":"@bernierllc/publish-orchestrator@0.3.1","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"48e0cf488addd02ff09b3b3a7d13ec1bd48958ba","tarball":"https://registry.npmjs.org/@bernierllc/publish-orchestrator/-/publish-orchestrator-0.3.1.tgz","fileCount":15,"integrity":"sha512-Xhr6/p8nDS3xqtxOX0iD07gj6nvUO5sXpJVkzkH9Fhl1ZDuz8dNvT6mCQ51kXeUiKOKuex2AhmVo+jIi4o/DEQ==","signatures":[{"sig":"MEUCIAc4cUpbNoHn/YSUumb3vnXUILNTZ6utBkPW13ffYSuXAiEA4dxAV9HAHTc+ZfyXpZEbHmgzSQwlBqOmZ2yobctMcng=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73481},"main":"dist/index.js","_from":"file:bernierllc-publish-orchestrator-0.3.1.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"private":false,"scripts":{"test":"jest","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:05bbda43-2f1b-435e-bb01-312b2fb3bcc7"}},"_resolved":"/tmp/274cc671fb1dad59cf7a3f589ef8862f/bernierllc-publish-orchestrator-0.3.1.tgz","_integrity":"sha512-Xhr6/p8nDS3xqtxOX0iD07gj6nvUO5sXpJVkzkH9Fhl1ZDuz8dNvT6mCQ51kXeUiKOKuex2AhmVo+jIi4o/DEQ==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/publish-orchestrator"},"_npmVersion":"11.11.0","description":"Orchestrate publishing workflows for monorepo packages","directories":{},"_nodeVersion":"20.20.0","dependencies":{"chalk":"^5.4.1","execa":"^9.6.0","commander":"^14.0.0","@bernierllc/package-analyzer":"0.3.1","@bernierllc/changeset-manager":"0.3.1","@bernierllc/package-validator":"0.3.1","@bernierllc/workspace-manager":"0.3.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.19","@types/uuid":"^9.0.8"},"_npmOperationalInternal":{"tmp":"tmp/publish-orchestrator_0.3.1_1773078243333_0.4403109798870546","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@bernierllc/publish-orchestrator","version":"0.3.2","keywords":["publish","orchestrator","monorepo","npm","changeset","workflow"],"author":{"name":"Bernier LLC"},"license":"Bernier LLC","_id":"@bernierllc/publish-orchestrator@0.3.2","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"472d937a6fac7ded702ba9f1717e88a5d8613c8d","tarball":"https://registry.npmjs.org/@bernierllc/publish-orchestrator/-/publish-orchestrator-0.3.2.tgz","fileCount":15,"integrity":"sha512-AculfvoNIczPFtFYLjuizaSRzwlbN2SEft3yjCzi2P2p0NjJ+t54f6L7X7J53Gtqsi6tooYlVsK3CSjP/432Bg==","signatures":[{"sig":"MEMCHzppd1ED7ZJtXe5PcN/INUTyB6z4q/MEt4/orh4RkeUCIAnDR5rVerezdOKCm+X7iUqKPqxdyyM0J+utPKP9XcA5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73481},"main":"dist/index.js","_from":"file:bernierllc-publish-orchestrator-0.3.2.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"private":false,"scripts":{"test":"jest","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:05bbda43-2f1b-435e-bb01-312b2fb3bcc7"}},"_resolved":"/home/runner/work/tools/tools/packages/service/publish-orchestrator/bernierllc-publish-orchestrator-0.3.2.tgz","_integrity":"sha512-AculfvoNIczPFtFYLjuizaSRzwlbN2SEft3yjCzi2P2p0NjJ+t54f6L7X7J53Gtqsi6tooYlVsK3CSjP/432Bg==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/publish-orchestrator"},"_npmVersion":"11.11.0","description":"Orchestrate publishing workflows for monorepo packages","directories":{},"_nodeVersion":"20.20.0","dependencies":{"chalk":"^5.4.1","execa":"^9.6.0","commander":"^14.0.0","@bernierllc/package-analyzer":"0.3.2","@bernierllc/changeset-manager":"0.3.2","@bernierllc/package-validator":"0.3.2","@bernierllc/workspace-manager":"0.3.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.19","@types/uuid":"^9.0.8"},"_npmOperationalInternal":{"tmp":"tmp/publish-orchestrator_0.3.2_1773163633927_0.5696829634374794","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@bernierllc/publish-orchestrator","version":"0.4.0","keywords":["publish","orchestrator","monorepo","npm","changeset","workflow"],"author":{"name":"Bernier LLC"},"license":"Bernier LLC","_id":"@bernierllc/publish-orchestrator@0.4.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"c8367c30c6a0e45265014af6a20935093384ab5e","tarball":"https://registry.npmjs.org/@bernierllc/publish-orchestrator/-/publish-orchestrator-0.4.0.tgz","fileCount":15,"integrity":"sha512-dpe9cCM8D2qYxw0h0BSQUYaj/JNbj2RaAMX53bhOw8dmulSdHQXCikQo84ULmGuQ5crszMMwsAs59X7Pema5Tw==","signatures":[{"sig":"MEUCIA7dt84h1EaWMMeSerEYC+5ELhAmATAcAqpQkJ8FLB9IAiEAu9VDmkdDOWO0QY7Bf9vyfXPjlTGJ0aGHrhEYJA70Spo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73481},"main":"dist/index.js","_from":"file:bernierllc-publish-orchestrator-0.4.0.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"private":false,"scripts":{"test":"jest","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:05bbda43-2f1b-435e-bb01-312b2fb3bcc7"}},"_resolved":"/home/runner/work/tools/tools/packages/service/publish-orchestrator/bernierllc-publish-orchestrator-0.4.0.tgz","_integrity":"sha512-dpe9cCM8D2qYxw0h0BSQUYaj/JNbj2RaAMX53bhOw8dmulSdHQXCikQo84ULmGuQ5crszMMwsAs59X7Pema5Tw==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/publish-orchestrator"},"_npmVersion":"11.14.1","description":"Orchestrate publishing workflows for monorepo packages","directories":{},"_nodeVersion":"20.20.2","dependencies":{"chalk":"^5.4.1","execa":"^9.6.0","commander":"^14.0.0","@bernierllc/package-analyzer":"0.3.2","@bernierllc/changeset-manager":"0.5.0","@bernierllc/package-validator":"0.3.2","@bernierllc/workspace-manager":"0.3.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.19","@types/uuid":"^9.0.8"},"_npmOperationalInternal":{"tmp":"tmp/publish-orchestrator_0.4.0_1779234110647_0.4508447617774083","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@bernierllc/publish-orchestrator","version":"0.5.0","keywords":["publish","orchestrator","monorepo","npm","changeset","workflow"],"author":{"name":"Bernier LLC"},"license":"Bernier LLC","_id":"@bernierllc/publish-orchestrator@0.5.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"86e1ba179da6a6d531dc68c200f945f6097ebd86","tarball":"https://registry.npmjs.org/@bernierllc/publish-orchestrator/-/publish-orchestrator-0.5.0.tgz","fileCount":15,"integrity":"sha512-ezZmJKHtXpE5xwCGQHXyszz26LFMghJ0qazSKiQg8MDrS4twCX58JOSaVMeEa55CxGugmpjflV/XljKnYM12TA==","signatures":[{"sig":"MEUCIQDNTI8UhFv83kt0R2zGrYWAOzznUt1NlpPq8GkDhvdBLgIgEpUe5EFtZC5OaSejZqpdqZqJ0YqrNDIq+f6TTx/kMSw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73481},"main":"dist/index.js","_from":"file:bernierllc-publish-orchestrator-0.5.0.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"private":false,"scripts":{"test":"jest","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:05bbda43-2f1b-435e-bb01-312b2fb3bcc7"}},"_resolved":"/home/runner/work/tools/tools/packages/service/publish-orchestrator/bernierllc-publish-orchestrator-0.5.0.tgz","_integrity":"sha512-ezZmJKHtXpE5xwCGQHXyszz26LFMghJ0qazSKiQg8MDrS4twCX58JOSaVMeEa55CxGugmpjflV/XljKnYM12TA==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/publish-orchestrator"},"_npmVersion":"11.14.1","description":"Orchestrate publishing workflows for monorepo packages","directories":{},"_nodeVersion":"20.20.2","dependencies":{"chalk":"^5.4.1","execa":"^9.6.0","commander":"^14.0.0","@bernierllc/package-analyzer":"0.4.0","@bernierllc/changeset-manager":"0.6.0","@bernierllc/package-validator":"0.4.0","@bernierllc/workspace-manager":"0.4.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.19","@types/uuid":"^9.0.8"},"_npmOperationalInternal":{"tmp":"tmp/publish-orchestrator_0.5.0_1779241808817_0.7773606251799365","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"@bernierllc/publish-orchestrator","version":"0.5.1","keywords":["publish","orchestrator","monorepo","npm","changeset","workflow"],"author":{"name":"Bernier LLC"},"license":"Bernier LLC","_id":"@bernierllc/publish-orchestrator@0.5.1","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"4de7549f30104488efdee7cc48e6a9eaf8e4af79","tarball":"https://registry.npmjs.org/@bernierllc/publish-orchestrator/-/publish-orchestrator-0.5.1.tgz","fileCount":15,"integrity":"sha512-Ps9EpoXMmVi1P7IPTQVXaaAYDv+3/ullUVQ+UG9p7xLdTRcPXJC86f3A+3jWGa5DtanQlVvXRRQeR733SbClPw==","signatures":[{"sig":"MEUCIBXsmu6t+dLxyNvi/4XfDa0w+xG7khXugECHs2Nh/oh7AiEAoka63srpoCsfvU+Lv5B0ljBewguGzWLdSFwedV30DA4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73481},"main":"dist/index.js","_from":"file:bernierllc-publish-orchestrator-0.5.1.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"private":false,"scripts":{"test":"jest","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:05bbda43-2f1b-435e-bb01-312b2fb3bcc7"}},"_resolved":"/home/runner/work/tools/tools/packages/service/publish-orchestrator/bernierllc-publish-orchestrator-0.5.1.tgz","_integrity":"sha512-Ps9EpoXMmVi1P7IPTQVXaaAYDv+3/ullUVQ+UG9p7xLdTRcPXJC86f3A+3jWGa5DtanQlVvXRRQeR733SbClPw==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/publish-orchestrator"},"_npmVersion":"11.14.1","description":"Orchestrate publishing workflows for monorepo packages","directories":{},"_nodeVersion":"20.20.2","dependencies":{"chalk":"^5.4.1","execa":"^9.6.0","commander":"^14.0.0","@bernierllc/package-analyzer":"0.5.0","@bernierllc/changeset-manager":"0.6.0","@bernierllc/package-validator":"0.5.0","@bernierllc/workspace-manager":"0.6.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.19","@types/uuid":"^9.0.8"},"_npmOperationalInternal":{"tmp":"tmp/publish-orchestrator_0.5.1_1779243531135_0.8972801089574325","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@bernierllc/publish-orchestrator","version":"0.7.0","keywords":["publish","orchestrator","monorepo","npm","changeset","workflow"],"author":{"name":"Bernier LLC"},"license":"Bernier LLC","_id":"@bernierllc/publish-orchestrator@0.7.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"5b6e0b9f12457fa3e16fc30952f0b0cb52a9c921","tarball":"https://registry.npmjs.org/@bernierllc/publish-orchestrator/-/publish-orchestrator-0.7.0.tgz","fileCount":19,"integrity":"sha512-lTCgDqoBXZBxEyY1Hg2TmxcMNhKqnv0jSyN8kScfUHTnNEnuRfsyz34k/jo1gu2Ui/0K/5/waqDwqkRH3zKomA==","signatures":[{"sig":"MEUCIHE3cRL1/uYmQ1eTku4WZkQQEx6GMo8qj5ear0psCuhwAiEAx19GADB6OV477rPPPSmHkcj7Z7CD2urhatFq5qSJfOc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76644},"main":"dist/index.js","_from":"file:bernierllc-publish-orchestrator-0.7.0.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"private":false,"scripts":{"test":"jest","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:05bbda43-2f1b-435e-bb01-312b2fb3bcc7"}},"_resolved":"/home/runner/work/tools/tools/packages/service/publish-orchestrator/bernierllc-publish-orchestrator-0.7.0.tgz","_integrity":"sha512-lTCgDqoBXZBxEyY1Hg2TmxcMNhKqnv0jSyN8kScfUHTnNEnuRfsyz34k/jo1gu2Ui/0K/5/waqDwqkRH3zKomA==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/publish-orchestrator"},"_npmVersion":"11.14.1","description":"Orchestrate publishing workflows for monorepo packages","directories":{},"_nodeVersion":"20.20.2","dependencies":{"chalk":"^5.4.1","execa":"^9.6.0","commander":"^14.0.0","@bernierllc/package-analyzer":"0.5.0","@bernierllc/changeset-manager":"0.6.0","@bernierllc/package-validator":"0.5.0","@bernierllc/workspace-manager":"0.6.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.19","@types/uuid":"^9.0.8"},"_npmOperationalInternal":{"tmp":"tmp/publish-orchestrator_0.7.0_1779247302203_0.9498652712972193","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@bernierllc/publish-orchestrator","version":"0.8.0","keywords":["publish","orchestrator","monorepo","npm","changeset","workflow"],"author":{"name":"Bernier LLC"},"license":"Bernier LLC","_id":"@bernierllc/publish-orchestrator@0.8.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"4f86fa6860c047b8db2c78b6b19dd8c3a161e102","tarball":"https://registry.npmjs.org/@bernierllc/publish-orchestrator/-/publish-orchestrator-0.8.0.tgz","fileCount":19,"integrity":"sha512-jqxWw4VPVkLmr+tPKwRPMaDqRh03KynFYBQpKp9B6pVMwMHbXoiCSdHB0uVGPkZq2nbidgTeymOlFpD6zAAGqw==","signatures":[{"sig":"MEUCIDCZs9B2T8TPAsDG2Z9yWFq8CZ/mULpGQhTwnvX77zUmAiEAjOq4RxYCLw1Dd+ODqTUGGUIDI9l+GLPjVIBi8yMDGik=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76644},"main":"dist/index.js","_from":"file:bernierllc-publish-orchestrator-0.8.0.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"private":false,"scripts":{"test":"jest","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:05bbda43-2f1b-435e-bb01-312b2fb3bcc7"}},"_resolved":"/home/runner/work/tools/tools/packages/service/publish-orchestrator/bernierllc-publish-orchestrator-0.8.0.tgz","_integrity":"sha512-jqxWw4VPVkLmr+tPKwRPMaDqRh03KynFYBQpKp9B6pVMwMHbXoiCSdHB0uVGPkZq2nbidgTeymOlFpD6zAAGqw==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/publish-orchestrator"},"_npmVersion":"11.14.1","description":"Orchestrate publishing workflows for monorepo packages","directories":{},"_nodeVersion":"20.20.2","dependencies":{"chalk":"^5.4.1","execa":"^9.6.0","commander":"^14.0.0","@bernierllc/package-analyzer":"0.6.0","@bernierllc/changeset-manager":"0.7.0","@bernierllc/package-validator":"0.6.0","@bernierllc/workspace-manager":"0.7.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.19","@types/uuid":"^9.0.8"},"_npmOperationalInternal":{"tmp":"tmp/publish-orchestrator_0.8.0_1779250558685_0.9432031959279816","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@bernierllc/publish-orchestrator","version":"0.9.0","keywords":["publish","orchestrator","monorepo","npm","changeset","workflow"],"author":{"name":"Bernier LLC"},"license":"Bernier LLC","_id":"@bernierllc/publish-orchestrator@0.9.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"8115668c15ad18ac572c5d6c3ad48a3105d006e6","tarball":"https://registry.npmjs.org/@bernierllc/publish-orchestrator/-/publish-orchestrator-0.9.0.tgz","fileCount":19,"integrity":"sha512-I/4LwT3AxyJ92ig7/7ID0a0ZiO/RL6DyjLOMOAgc/g7DJh+2AMlHT0s+nGUFr8+5oAnZNeS6T9rSghGnzu1eHQ==","signatures":[{"sig":"MEQCIEkGTVJ64SOeFKmHXeu/Eima0BSqim1vKfGED25Ko1uSAiAhzGpix5WgE9m1aDb45/RA9eRgMf5zVa359q3GwicYWg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76615},"main":"dist/index.js","_from":"file:bernierllc-publish-orchestrator-0.9.0.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"private":false,"scripts":{"test":"jest","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:05bbda43-2f1b-435e-bb01-312b2fb3bcc7"}},"_resolved":"/home/runner/work/tools/tools/packages/service/publish-orchestrator/bernierllc-publish-orchestrator-0.9.0.tgz","_integrity":"sha512-I/4LwT3AxyJ92ig7/7ID0a0ZiO/RL6DyjLOMOAgc/g7DJh+2AMlHT0s+nGUFr8+5oAnZNeS6T9rSghGnzu1eHQ==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/publish-orchestrator"},"_npmVersion":"11.15.0","description":"Orchestrate publishing workflows for monorepo packages","directories":{},"_nodeVersion":"20.20.2","dependencies":{"chalk":"^5.4.1","execa":"^9.6.0","commander":"^14.0.0","@bernierllc/package-analyzer":"0.6.0","@bernierllc/changeset-manager":"0.8.0","@bernierllc/package-validator":"0.6.0","@bernierllc/workspace-manager":"0.7.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.19"},"_npmOperationalInternal":{"tmp":"tmp/publish-orchestrator_0.9.0_1779840839731_0.5269032895438976","host":"s3://npm-registry-packages-npm-production"}},"0.9.1":{"_id":"@bernierllc/publish-orchestrator@0.9.1","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"469cf135ce15072678ef76e52ae8df2312bbc888","tarball":"https://registry.npmjs.org/@bernierllc/publish-orchestrator/-/publish-orchestrator-0.9.1.tgz","fileCount":19,"integrity":"sha512-mhUpQUeDn3BnmgUGWfPTo/CU5Uf+KZz+E/BnbtyWzvs77r4hAUauRLQ5gl4QuImEl1FZ1TtTYSjnd6BU9C0DJw==","signatures":[{"sig":"MEYCIQCkWj5SGSd/Fu/OgezctbxcVHg0fdOOIN3vUJYJG1IbogIhAMumaSN+K+coCSgxRBaMLeh+6jQv6l7WUIoBtN1YWFwI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFM+RGdYWlxLYY9sI0ZybKgTzGqLRw9qKSPQPkI+pRIFAiBnwTl013gUNjpcekJUe3tdRAe+qbBETIOcRE2viClSiA=="}],"unpackedSize":76619},"main":"dist/index.js","name":"@bernierllc/publish-orchestrator","_from":"file:bernierllc-publish-orchestrator-0.9.1.tgz","types":"dist/index.d.ts","author":{"name":"Bernier LLC"},"engines":{"node":">=18.0.0"},"license":"Bernier LLC","private":false,"scripts":{"test":"jest","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","test:watch":"jest --watch","test:coverage":"jest --coverage"},"version":"0.9.1","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"05bbda43-2f1b-435e-bb01-312b2fb3bcc7"}},"homepage":"https://github.com/bernierllc/tools#readme","keywords":["publish","orchestrator","monorepo","npm","changeset","workflow"],"_resolved":"/home/runner/work/tools/tools/packages/service/publish-orchestrator/bernierllc-publish-orchestrator-0.9.1.tgz","_integrity":"sha512-mhUpQUeDn3BnmgUGWfPTo/CU5Uf+KZz+E/BnbtyWzvs77r4hAUauRLQ5gl4QuImEl1FZ1TtTYSjnd6BU9C0DJw==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/publish-orchestrator"},"_npmVersion":"12.2.0","description":"Orchestrate publishing workflows for monorepo packages","directories":{},"maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"_nodeVersion":"24.21.0","dependencies":{"chalk":"^5.4.1","execa":"^9.6.0","commander":"^14.0.0","@bernierllc/package-analyzer":"^0.6.0","@bernierllc/changeset-manager":"^0.8.0","@bernierllc/package-validator":"^0.6.0","@bernierllc/workspace-manager":"^0.7.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.19"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/publish-orchestrator_0.9.1_1790884446883_0.5719803875826464"}}},"time":{"created":"2025-08-18T22:39:13.344Z","modified":"2026-10-01T19:54:07.159Z","0.1.0":"2025-08-18T22:39:14.018Z","0.3.0":"2026-01-05T19:46:55.333Z","0.3.1":"2026-03-09T17:44:03.488Z","0.3.2":"2026-03-10T17:27:14.066Z","0.4.0":"2026-05-19T23:41:50.777Z","0.5.0":"2026-05-20T01:50:08.963Z","0.5.1":"2026-05-20T02:18:51.317Z","0.7.0":"2026-05-20T03:21:42.399Z","0.8.0":"2026-05-20T04:15:58.819Z","0.9.0":"2026-05-27T00:13:59.868Z","0.9.1":"2026-10-01T19:54:06.975Z"},"bugs":{"url":"https://github.com/bernierllc/tools/issues"},"author":{"name":"Bernier LLC"},"license":"Bernier LLC","homepage":"https://github.com/bernierllc/tools#readme","keywords":["publish","orchestrator","monorepo","npm","changeset","workflow"],"repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/publish-orchestrator"},"description":"Orchestrate publishing workflows for monorepo packages","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"readme":"# @bernierllc/publish-orchestrator\n\nA service package that orchestrates complete publishing workflows for monorepo packages using core packages for package analysis, validation, changeset management, and workspace management.\n\n## Features\n\n- **Complete Workflow Orchestration**: Coordinates the entire publishing process from workspace analysis to package publication\n- **Multiple Publishing Modes**: Supports interactive, non-interactive, batch, and automatic publishing modes\n- **Smart Package Selection**: Multiple strategies for selecting packages to publish (manual, recent, modified, all, category-based)\n- **Concurrent Publishing**: Configurable concurrency control for publishing multiple packages\n- **Workflow State Management**: Track and manage publishing workflows with unique IDs\n- **Error Recovery**: Comprehensive error handling with rollback capabilities\n- **Dry Run Support**: Test publishing workflows without actually publishing\n- **Real-time Progress Tracking**: Monitor workflow execution with detailed step results\n\n## Installation\n\n```bash\nnpm install @bernierllc/publish-orchestrator\n```\n\n## Quick Start\n\n```typescript\nimport { PublishOrchestrator, PublishMode, SelectionStrategy } from '@bernierllc/publish-orchestrator';\n\n// Create orchestrator instance\nconst orchestrator = new PublishOrchestrator({\n  workspacePath: '/path/to/workspace',\n  maxConcurrentPublishes: 3\n});\n\n// Analyze what can be published\nconst analysis = await orchestrator.analyzeWorkflow({\n  mode: PublishMode.INTERACTIVE,\n  selectionStrategy: SelectionStrategy.RECENT\n});\n\nconsole.log(`Can publish: ${analysis.canPublish}`);\nconsole.log(`Packages to publish: ${analysis.packagesToPublish.length}`);\nconsole.log(`Recommendations: ${analysis.recommendations.join(', ')}`);\n\n// Execute publishing workflow\nconst result = await orchestrator.executeWorkflow({\n  mode: PublishMode.NON_INTERACTIVE,\n  selectionStrategy: SelectionStrategy.MANUAL,\n  packages: ['@myorg/package-1', '@myorg/package-2'],\n  versionBump: 'patch',\n  message: 'Bug fixes and improvements'\n});\n\nconsole.log(`Success: ${result.success}`);\nconsole.log(`Published: ${result.publishedPackages.join(', ')}`);\nconsole.log(`Duration: ${result.duration}ms`);\n```\n\n## API Reference\n\n### PublishOrchestrator\n\nThe main orchestrator class that coordinates publishing workflows.\n\n#### Constructor\n\n```typescript\nnew PublishOrchestrator(options?: PublishOrchestratorOptions)\n```\n\n**Options:**\n- `workspacePath?: string` - Path to the workspace root (default: `process.cwd()`)\n- `configPath?: string` - Path to configuration file\n- `logLevel?: 'debug' | 'info' | 'warn' | 'error'` - Logging level (default: `'info'`)\n- `maxConcurrentPublishes?: number` - Maximum concurrent package publishes (default: `3`)\n- `timeoutMs?: number` - Workflow timeout in milliseconds (default: `300000`)\n- `retryAttempts?: number` - Number of retry attempts (default: `3`)\n- `retryDelayMs?: number` - Delay between retries in milliseconds (default: `1000`)\n\n#### Methods\n\n##### analyzeWorkflow(config)\n\nAnalyze a publishing workflow to determine what can be published.\n\n```typescript\nasync analyzeWorkflow(config: PublishWorkflowConfig): Promise<WorkflowAnalysis>\n```\n\n**Returns:**\n- `canPublish: boolean` - Whether any packages can be published\n- `packagesToPublish: PackageInfo[]` - Packages ready for publishing\n- `packagesToSkip: PackageInfo[]` - Packages that should be skipped\n- `validationIssues: ValidationResult[]` - Validation problems found\n- `workspaceIssues: string[]` - Workspace configuration issues\n- `recommendations: string[]` - Recommendations for the workflow\n- `estimatedDuration: number` - Estimated workflow duration in milliseconds\n\n##### executeWorkflow(config)\n\nExecute a complete publishing workflow.\n\n```typescript\nasync executeWorkflow(config: PublishWorkflowConfig): Promise<PublishWorkflowResult>\n```\n\n**Returns:**\n- `success: boolean` - Whether the workflow completed successfully\n- `workflowId: string` - Unique workflow identifier\n- `publishedPackages: string[]` - Successfully published package names\n- `failedPackages: string[]` - Failed package names\n- `skippedPackages: string[]` - Skipped package names\n- `changesets: ChangesetInfo[]` - Created changesets\n- `duration: number` - Total workflow duration in milliseconds\n- `errors: Error[]` - Errors encountered during execution\n- `warnings: string[]` - Warnings generated during execution\n\n##### validateWorkflow(config)\n\nValidate a publishing workflow configuration.\n\n```typescript\nasync validateWorkflow(config: PublishWorkflowConfig): Promise<ValidationResult[]>\n```\n\n##### rollbackWorkflow(workflowId)\n\nGenerate rollback information for a failed workflow.\n\n```typescript\nasync rollbackWorkflow(workflowId: string): Promise<RollbackInfo>\n```\n\n##### getWorkflowStatus(workflowId)\n\nGet the current status of a workflow.\n\n```typescript\nasync getWorkflowStatus(workflowId: string): Promise<PublishWorkflowState | null>\n```\n\n##### cancelWorkflow(workflowId)\n\nCancel a running workflow.\n\n```typescript\nasync cancelWorkflow(workflowId: string): Promise<boolean>\n```\n\n### Configuration Types\n\n#### PublishWorkflowConfig\n\n```typescript\ninterface PublishWorkflowConfig {\n  mode: PublishMode;\n  selectionStrategy: SelectionStrategy;\n  packages?: string[];\n  categories?: string[];\n  versionBump?: 'major' | 'minor' | 'patch';\n  message?: string;\n  dryRun?: boolean;\n  force?: boolean;\n  skipValidation?: boolean;\n  skipTests?: boolean;\n  interactive?: boolean;\n}\n```\n\n#### PublishMode\n\n```typescript\nenum PublishMode {\n  INTERACTIVE = 'interactive',\n  NON_INTERACTIVE = 'non_interactive',\n  BATCH = 'batch',\n  AUTO = 'auto'\n}\n```\n\n#### SelectionStrategy\n\n```typescript\nenum SelectionStrategy {\n  MANUAL = 'manual',\n  RECENT = 'recent',\n  MODIFIED = 'modified',\n  ALL = 'all',\n  CATEGORY = 'category'\n}\n```\n\n## Publishing Modes\n\n### Interactive Mode\n\nUser-guided publishing with prompts and confirmations.\n\n```typescript\nconst config = {\n  mode: PublishMode.INTERACTIVE,\n  selectionStrategy: SelectionStrategy.ALL\n};\n```\n\n### Non-Interactive Mode\n\nAutomated publishing without user prompts.\n\n```typescript\nconst config = {\n  mode: PublishMode.NON_INTERACTIVE,\n  selectionStrategy: SelectionStrategy.MANUAL,\n  packages: ['@myorg/package-1'],\n  versionBump: 'patch',\n  message: 'Automated release'\n};\n```\n\n### Batch Mode\n\nPublish multiple packages in a single workflow.\n\n```typescript\nconst config = {\n  mode: PublishMode.BATCH,\n  selectionStrategy: SelectionStrategy.CATEGORY,\n  categories: ['core', 'service'],\n  versionBump: 'minor'\n};\n```\n\n### Auto Mode\n\nFully automated publishing based on changes.\n\n```typescript\nconst config = {\n  mode: PublishMode.AUTO,\n  selectionStrategy: SelectionStrategy.MODIFIED\n};\n```\n\n## Package Selection Strategies\n\n### Manual Selection\n\nSpecify exact packages to publish.\n\n```typescript\nconst config = {\n  selectionStrategy: SelectionStrategy.MANUAL,\n  packages: ['@myorg/package-1', '@myorg/package-2']\n};\n```\n\n### Recent Selection\n\nPublish recently modified packages.\n\n```typescript\nconst config = {\n  selectionStrategy: SelectionStrategy.RECENT\n};\n```\n\n### Modified Selection\n\nPublish packages with uncommitted changes.\n\n```typescript\nconst config = {\n  selectionStrategy: SelectionStrategy.MODIFIED\n};\n```\n\n### All Selection\n\nPublish all packages in the workspace.\n\n```typescript\nconst config = {\n  selectionStrategy: SelectionStrategy.ALL\n};\n```\n\n### Category Selection\n\nPublish packages by category.\n\n```typescript\nconst config = {\n  selectionStrategy: SelectionStrategy.CATEGORY,\n  categories: ['core', 'service', 'ui']\n};\n```\n\n## Workflow Steps\n\nThe orchestrator executes the following steps in sequence:\n\n1. **Analyze Workspace** - Detect and validate workspace configuration\n2. **Validate Packages** - Check package structure and configuration\n3. **Select Packages** - Choose packages based on selection strategy\n4. **Create Changesets** - Generate changesets for selected packages\n5. **Validate Changesets** - Verify changeset format and content\n6. **Publish Packages** - Execute actual publishing via changeset CLI\n7. **Verify Publish** - Confirm successful publication\n8. **Cleanup** - Remove temporary files and resources\n\n## Error Handling\n\nThe orchestrator provides comprehensive error handling:\n\n- **Step-level errors** are captured and logged\n- **Workflow failures** trigger automatic rollback procedures\n- **Partial failures** allow for selective package publishing\n- **Retry mechanisms** handle transient failures\n- **Detailed error reporting** includes context and recommendations\n\n## Examples\n\n### Basic Publishing\n\n```typescript\nimport { PublishOrchestrator, PublishMode, SelectionStrategy } from '@bernierllc/publish-orchestrator';\n\nconst orchestrator = new PublishOrchestrator();\n\n// Simple publish of all packages\nconst result = await orchestrator.executeWorkflow({\n  mode: PublishMode.NON_INTERACTIVE,\n  selectionStrategy: SelectionStrategy.ALL,\n  versionBump: 'patch'\n});\n\nif (result.success) {\n  console.log(`Published ${result.publishedPackages.length} packages`);\n} else {\n  console.error('Publishing failed:', result.errors);\n}\n```\n\n### Dry Run Testing\n\n```typescript\n// Test publishing workflow without actually publishing\nconst analysis = await orchestrator.analyzeWorkflow({\n  mode: PublishMode.INTERACTIVE,\n  selectionStrategy: SelectionStrategy.RECENT\n});\n\nif (analysis.canPublish) {\n  const result = await orchestrator.executeWorkflow({\n    mode: PublishMode.NON_INTERACTIVE,\n    selectionStrategy: SelectionStrategy.RECENT,\n    dryRun: true,\n    versionBump: 'minor'\n  });\n  \n  console.log('Dry run completed:', result);\n}\n```\n\n### Workflow Monitoring\n\n```typescript\n// Start a workflow and monitor its progress\nconst workflowPromise = orchestrator.executeWorkflow({\n  mode: PublishMode.BATCH,\n  selectionStrategy: SelectionStrategy.CATEGORY,\n  categories: ['core']\n});\n\n// Monitor workflow status\nconst checkStatus = async () => {\n  const status = await orchestrator.getWorkflowStatus(workflowId);\n  if (status) {\n    console.log(`Workflow ${status.status}: ${status.stepResults.length} steps completed`);\n  }\n};\n\n// Check status every 5 seconds\nconst interval = setInterval(checkStatus, 5000);\n\n// Wait for completion\nconst result = await workflowPromise;\nclearInterval(interval);\n\nconsole.log('Workflow completed:', result);\n```\n\n### Error Recovery\n\n```typescript\ntry {\n  const result = await orchestrator.executeWorkflow(config);\n  if (!result.success) {\n    // Generate rollback information\n    const rollbackInfo = await orchestrator.rollbackWorkflow(result.workflowId);\n    \n    console.log('Rollback commands:');\n    rollbackInfo.gitCommands.forEach(cmd => console.log(`  ${cmd}`));\n    \n    console.log('Manual steps:');\n    rollbackInfo.manualSteps.forEach(step => console.log(`  - ${step}`));\n  }\n} catch (error) {\n  console.error('Workflow execution failed:', error);\n}\n```\n\n## Integration with Core Packages\n\nThe publish orchestrator integrates with the following core packages:\n\n- **@bernierllc/package-analyzer** - Package discovery and analysis\n- **@bernierllc/package-validator** - Package structure validation\n- **@bernierllc/changeset-manager** - Changeset creation and management\n- **@bernierllc/workspace-manager** - Workspace detection and configuration\n\n## Testing\n\n```bash\n# Run tests\nnpm test\n\n# Run tests with coverage\nnpm run test:coverage\n\n# Run tests in watch mode\nnpm run test:watch\n```\n\n## Contributing\n\n1. Fork the repository\n2. Create a feature branch\n3. Make your changes\n4. Add tests for new functionality\n5. Ensure all tests pass\n6. Submit a pull request\n\n## License\n\nThis package is licensed under the same terms as the parent project. See the LICENSE file for details. ","readmeFilename":"README.md"}