Release date: 2026-03-13
Channel: latest
- Preserved distinct business accounts that share a workspace
accountIdso no-email login, refresh, and restore paths stop overwriting sibling seats. - Aligned guarded identity matching across runtime login, CLI recovery, storage normalization, import preview/apply, and entitlement tracking.
- Hardened rollback and regression coverage for concurrent persistence, flagged-account recovery, malformed-token rows, and shared-workspace edge cases.
npm i -g @openai/codex
npm i -g codex-multi-authcodex auth login
codex auth list
codex auth status
codex auth check
codex auth forecast --liveRelease gate commands:
npm run clean:repo:checknpm run audit:cinpm run lintnpm test -- test/documentation.test.tsnpm test -- test/accounts.test.ts test/oc-chatgpt-import-adapter.test.ts test/index.test.ts test/storage.test.ts test/codex-manager-cli.test.ts test/entitlement-cache.test.ts
Broad validation result:
repo-hygiene check passednpm run audit:cipassed at the configured high-severity threshold; the remaininghonoadvisory stayed below that gatenpm run lintpassed19/19documentation integrity tests passed after promoting the new stable release notes6/6targeted shared-account regression suites passed (405/405tests)
Known baseline blockers observed during release validation:
npm run typecheckfails on bothorigin/mainand this release branch because the workspace cannot currently resolve@codex-ai/plugin/tooland already carries unrelated TypeScript errors outside#90npm run buildremains blocked by the same pre-existing typecheck baseline
#90fix: preserve business accounts that share a workspace accountId
- PR
#90carries the guarded account-identity matching fixes and regression coverage that preserve shared-workspace business accounts across login, import, flagged recovery, storage normalization, and entitlement tracking. - The release bump in this branch promotes
0.1.9in package metadata and refreshes the stable release-note links in the root docs surfaces.
- Bare
accountIdfallback now only applies when the no-email case is unambiguous. - Entitlement cache identity now prefers the fresh email resolved from the latest token material and avoids refresh-token-derived keys.
- CLI and runtime persistence paths now share the same guarded account matching behavior for shared-workspace business accounts.