Repository navigation
test(ratchet): require src/main/provider-process now that it has landed - #25710
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configuration
📒 Files selected for processing (2)
Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 1 remain after this review. 📝 WalkthroughWalkthroughThe runtime ratchet now requires Priority: ⬇️ Low Merge Risk: ⚪ Minimal · up to The ratchet now requires provider-process while keeping acp optional, and the tests cover those behaviors. No material merge risk remains. 🚥 Pre-merge checks | ✅ 3 | ❌ 1 | ❓ 1❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (3 passed)
Full details: Description checkExplanation The description covers the change, reason, testing, visual proof, and checklist. It says there is no linked issue, but the template requires one for outside contributors and exempts maintainers. The author’s status is not provided.
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
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 |
There was a problem hiding this comment.
✅ No new issues found.
Reviewed changes
provider-processlane made required —STRUCTURED_CHAT_LANESdrops themayBeAbsent: trueflag fromsrc/main/provider-process, so a rename/removal now throws instead of silently checking nothing;src/main/acpkeeps the allowance.- Test fixture and comments updated — the required-lanes fixture gains
provider-process-teardown.ts, the lane-count assertion moves 5 → 6, and the stale comments now name onlyacp/as optional.
Verified src/main/provider-process/ exists at head with no electron imports, and the full test file (17 tests, including the real-tree baseline run) passes locally. The fails loudly when src/main/provider-process goes missing case is genuinely load-bearing: it drives the new lane through the toThrow path, so it would still be green before this PR only because the lane wasn't required yet.
deepseek-v4.1-flash (free via Pullfrog for OSS) | 𝕏
…provider-process-required

ELI5
Main's test suite has one failing test since #24989 landed. The check that keeps Electron out of structured-chat code was told that
src/main/provider-process/might not exist yet, and its own test fails once the folder does exist, on purpose, so that someone flips the setting. #24989 added the folder, so this flips it.What Changed
config/scripts/check-runtime-electron-ratchet.mjs:src/main/provider-processis now a required lane. If it is ever renamed or removed, the check fails loudly instead of quietly checking nothing there.src/main/acpstays optional until it lands.config/scripts/check-runtime-electron-ratchet.test.mjs: the required-lanes fixture now includes a provider-process file (so the count is 6), and the comments now name onlyacp/as optional.There is no change for users. The folder's files were already being scanned; only the "may be missing" allowance is gone, so the recorded baseline doesn't change.
Why
#24988 (the check) and #24989 (the folder) were reviewed separately and merged back to back. The test
lets only directories that have not landed yet be absentexists to make the PR that adds a folder also make it required, but that PR merged after the check, so neither PR's CI could see the conflict. It now fails test shard 5/5 on main and on every PR that merges main.Linked Issue
None. This fixes main after #24988 and #24989.
Visual Proof
N/A: test and CI-script change only.
Testing
./node_modules/.bin/vitest run --config config/vitest.config.ts config/scripts/check-runtime-electron-ratchet.test.mjs: the previously failing test passes, along with the lane and fixture tests. Locally, the two tests that build the real tree fail only because this machine's installed packages are older than main (stream-jsonis missing); CI installs fresh packages. oxlint and oxfmt are clean on both files.Review
Agent skill upstream boundary
docs/reference/agent-skill-sharing-upstream-boundary.mdand copies or mechanically translates no upstream skill-installer source, tests, fixtures, registry entries, path tables, comments, or documentation.Notes
Cross-platform: the paths go through
path.join, as before. No effect on SSH, mobile or the runtime.Checklist
N/Awith reasonpnpm lint,pnpm typecheck,pnpm test, andpnpm buildpass (or CI will cover; local preferred)