Conversation
…kers The pi installer copies wiki-worker, skillify-worker, autopull-worker, skillopt-worker and notifications-worker from harnesses/pi/bundle, guarded by existsSync, but that directory was never in package.json files: every published release installed the pi extension with no workers and no error. Found while verifying the published 0.7.159 against a stale pi install: the pre-rename skilify-worker.js was not pruned because nothing shipped.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (2)
Included review availability: Your plan provides up to 4 included reviews per hour; 3 remain after this review. 📝 WalkthroughWalkthroughChangesPackage Payload Coverage
Priority: ⬇️ Low Estimated code review effort: 2 (Simple) | ~10 minutes Change: Bug fix Merge Risk: ⚪ Minimal · up to The required Pi workers are included in published packages, with coverage preventing this omission from recurring. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Coverage ReportNo Generated for commit c710ef5. |
Problem
src/cli/install-pi.tsinstalls the pi workers (wiki, skillify, autopull, skillopt, notifications) fromharnesses/pi/bundle, guarded byexistsSync. That directory has never been inpackage.jsonfiles, so every published release installed the pi extension with no workers and no error. Found while verifying the published 0.7.159 against a copy of a stale pi install:skilify-worker.js(pre-#116 name) was not pruned because the package shipped nothing to sync from.Fix
Add
harnesses/pi/bundletofiles. New testtests/cli/package-files.test.tsextracts everyjoin(pkgRoot(), ...)payload path from the installers and asserts each is covered byfiles; it fails on main (× harnesses/pi/bundle is shipped) and passes here.Verification
npm run build && npm pack, tarball installed into a temp dir, then its CLI run over an isolated HOME seeded with the stale pi dir (real HOME untouched):npx tsc --noEmitclean;tests/cli/package-files.test.ts13/13.Summary by CodeRabbit
New Features
Tests