feat: add managed credential export and purge #45

Merged
wmc merged 1 commit from codex/account-key-export-purge into main 2026-06-23 11:24:43 +00:00
Owner

Summary

  • add warning-gated managed credential export to owner-only plaintext JSON
  • add destructive purge for app-managed data, Keychain secrets, managed Codex files, shell integration, and selected launch env export
  • harden provenance and rollback: preserve user-changed auth/config, abort malformed managed blocks, snapshot live Keychain values before delete
  • update README and TODO with the new behavior and next backlog item

Verification

  • DEVELOPER_DIR=/Applications/Xcode-beta.app/Contents/Developer xcodebuild test -project CodexModelSwitcher.xcodeproj -scheme CodexModelSwitcher -destination platform=macOS -derivedDataPath /tmp/CodexModelSwitcher-DerivedData-appstore CODE_SIGNING_ALLOWED=NO -only-testing:CodexModelSwitcherTests/AppStoreTests
  • DEVELOPER_DIR=/Applications/Xcode-beta.app/Contents/Developer xcodebuild test -project CodexModelSwitcher.xcodeproj -scheme CodexModelSwitcher -destination platform=macOS -derivedDataPath /tmp/CodexModelSwitcher-DerivedData-writer CODE_SIGNING_ALLOWED=NO -only-testing:CodexModelSwitcherTests/CodexConfigWriterTests
  • DEVELOPER_DIR=/Applications/Xcode-beta.app/Contents/Developer scripts/verify.sh
  • git diff --check
  • DEVELOPER_DIR=/Applications/Xcode-beta.app/Contents/Developer xcrun swift-format lint --strict --recursive --parallel CodexModelSwitcher CodexModelSwitcherTests
## Summary - add warning-gated managed credential export to owner-only plaintext JSON - add destructive purge for app-managed data, Keychain secrets, managed Codex files, shell integration, and selected launch env export - harden provenance and rollback: preserve user-changed auth/config, abort malformed managed blocks, snapshot live Keychain values before delete - update README and TODO with the new behavior and next backlog item ## Verification - DEVELOPER_DIR=/Applications/Xcode-beta.app/Contents/Developer xcodebuild test -project CodexModelSwitcher.xcodeproj -scheme CodexModelSwitcher -destination platform=macOS -derivedDataPath /tmp/CodexModelSwitcher-DerivedData-appstore CODE_SIGNING_ALLOWED=NO -only-testing:CodexModelSwitcherTests/AppStoreTests - DEVELOPER_DIR=/Applications/Xcode-beta.app/Contents/Developer xcodebuild test -project CodexModelSwitcher.xcodeproj -scheme CodexModelSwitcher -destination platform=macOS -derivedDataPath /tmp/CodexModelSwitcher-DerivedData-writer CODE_SIGNING_ALLOWED=NO -only-testing:CodexModelSwitcherTests/CodexConfigWriterTests - DEVELOPER_DIR=/Applications/Xcode-beta.app/Contents/Developer scripts/verify.sh - git diff --check - DEVELOPER_DIR=/Applications/Xcode-beta.app/Contents/Developer xcrun swift-format lint --strict --recursive --parallel CodexModelSwitcher CodexModelSwitcherTests
wmc merged commit 3c95257ef2 into main 2026-06-23 11:24:43 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
wmc/CodexModelSwitcher!45
No description provided.