fix(sdk): retry Windows Get-Acl path-not-found races - #731
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
@codex review |
|
Codex Review: Didn't find any major issues. Bravo. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
|
Hosted CI for The two local full-suite runs in the PR description still each have 2018 passed, 69 skipped, and 4 failed. The four release-retitling fixture failures remain unexplained; the hosted pass does not establish their causes or turn those local runs into passes. No workflow for this PR was rerun by this task. |
Summary
Windows PowerShell can report a disappearing credential-home temporary file as
GetAcl_PathNotFound_Exception,Microsoft.PowerShell.Commands.GetAclCommand. The existing snapshot retry handles a different missing-file error, so this variant can abort parallel credential imports.Changes
Testing
Native Windows checks used Node 24.19.0, Bun 1.3.14, Python 3.12.13, and the existing 30-second per-test timeout.
2924365917).pnpm run types(model generation check, MCP typecheck, SDK typecheck),pnpm run format,pnpm run build:plugin,pnpm run build, andpnpm run check:plugin-source.pnpm run test --seed 12345pnpm run test(printed seed1192751191)Both full runs failed the four existing release-automation manual-retitle cases (
feat,docs,fix, andchore). Their causes remain unestablished; no additional release-case diagnostic or replay was run. These are not full-suite passes. All eight native ACL replay cases and the original parallel-import test passed in both runs.The new cases replay native PowerShell error records deterministically; they do not reproduce the original filesystem timing.
Risk and rollout
The change is Windows-only. Missing homes and ancestors, permission failures, unexpected errors, unsafe entries, and incomplete snapshots remain fatal. Each retry still requires a complete, safe snapshot within the existing three-attempt limit. The existing missing-path continuation is unchanged; no ACL policy or public CLI setting changes.
Public disclosure review