Skip to content

fix: preserve native provider state during legacy sync - #93

Merged
roodboi merged 1 commit into
mainfrom
codex/preserve-provider-local-config
Oct 7, 2026
Merged

roodboi merged 1 commit into
mainfrom
codex/preserve-provider-local-config

Conversation

@roodboi

@roodboi roodboi commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

Legacy sync could replace local provider settings while repairing old managed state: repair moved existing files aside before checking their ownership. An empty MCP-map exception also discarded unrelated native keys, and missing ownership metadata allowed deletion of provider-added agent and rule files. A native symlink with matching old bytes could redirect a config update into another file.

Repair now enrolls only absent surfaces, so existing native config and plugin directories stay unowned through sync and unmanage. Rendered sync preserves targets without source/ownership evidence and rejects symlinks, hardlinks, and non-regular targets. The empty-MCP exception accepts only the exact generated object with no additional keys.

Temporary-home regressions reproduce the old failures and cover native keys, provider plugin updates, current/missing/stale receipts, unchanged dry-run trees, a positive empty-MCP case, links, unowned agent/rule files, and autosync once. Exact-head CI passed on Linux, macOS, and Windows. Lint, types, build, compiled verifier, and package dry run passed. The local full suite finished with 1,097 passes and two previously observed audit failures; the timeout passed on rerun, and the unchanged Codex cold-start fixture failure remains documented. The actual published 2.32.1 binary fails preservation of all five native fixture files; the patched compiled binary preserves all five byte-for-byte.

Broad legacy sync retains its opt-in gate and concurrent-writer limitations. Initial manage/adoption are separate broader operations; no actual provider homes or machine sync scripts were modified.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 7, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
🔒 Security Review ✅ Completed 2026-10-07T16:28:12.371674Z a2daa87 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@roodboi
roodboi merged commit 1df84bb into main Oct 7, 2026
4 checks passed
@roodboi
roodboi deleted the codex/preserve-provider-local-config branch October 7, 2026 16:29
github-actions Bot pushed a commit that referenced this pull request Oct 7, 2026
## [2.32.2](v2.32.1...v2.32.2) (2026-10-07)

### Bug Fixes

* preserve native provider state during legacy sync ([#93](#93)) ([1df84bb](1df84bb))
@github-actions

github-actions Bot commented Oct 7, 2026

Copy link
Copy Markdown

🎉 This PR is included in version 2.32.2 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant