fix: stabilize Windows MCP packaging and logger tests#73
fix: stabilize Windows MCP packaging and logger tests#73Sun-sunshine06 wants to merge 2 commits intoOpenCoworkAI:mainfrom
Conversation
hqhq1025
left a comment
There was a problem hiding this comment.
⚠️ Request Changes — Critical merge conflict with current main
The MCP staging approach is sound and correctly solves the Windows EBUSY issue.
🚨 Blocking: decryptWithFallback authTag parameter
This PR modifies credentials-store.ts's decryptWithFallback signature, but it appears to be based on an older version of the file. The current main branch has authTag?: string as a third parameter (line ~212). If this PR merges as-is, the authTag parameter would be silently dropped, causing all GCM-encrypted credentials to fail decryption (ERR_CRYPTO_INVALID_TAG).
Action needed: Rebase onto current main and reconcile the decryptWithFallback signature.
Other findings
- Medium:
replaceDirectoryWithRetriessilently returns on ambiguous rename failure (source disappears mid-operation). Consider asserting the destination contains expected files before returning. - Low: Dead code in
removePathWithRetriesandcopyFileWithRetries— unreachablelastErrorthrow after the loop - Medium: Logger test stabilization replaces stream
finishevent with polling, which is less reliable - Low: Variable shadowing
logFilePathin the newgetLogContent
|
Hi @Sun-sunshine06, thanks for tackling the Windows EBUSY packaging issue! I've cherry-picked the MCP staging mechanism from this PR into main (commit 39b825c): Adopted:
Fixes applied on top:
Not adopted (with reasons):
Your authorship is preserved via |
Cherry-pick the MCP bundling staging mechanism from Sun-sunshine06's PR #73 to solve the Windows EBUSY issue during packaging: - Stage dist-mcp output to .bundle-resources/mcp before electron-builder runs - Add retry helpers for file operations (EBUSY/EPERM/ENOTEMPTY) - Update electron-builder.yml to read from staged directory - Export bundleMCPServers/stageBundledServers for testability - Add regression tests for staging and builder config Fixes applied on top of PR: - Remove unreachable dead code in retry loops - Add destination verification after rename in replaceDirectoryWithRetries
Summary
Validation