$ cat openai/week/2026-08-24.log
the week in review · Aug 24 – Aug 30, 2026
Codex streamlines planning, SDKs harden auth and cancellation
OpenAI's codex and SDKs shipped a week of UX simplification and security hardening, removing the Plan mode nudge, adding X.509 workload identity, and closing callback and credential gaps.
Two identical PRs [1][2] removed the Plan mode composer nudge from codex, eliminating a recurring UI prompt that nagged users to enter Plan mode. The change follows the weekly trend of paring back UX friction; the same codebase also distinguished Guardian review threads from subagents [3], so UI and lifecycle handling no longer conflate them, and enforced subagent ownership across app-server inputs [4], preventing cross-tenant data leaks. Long sessions gain resilience: codex now preserves content metadata when truncating messages [5], and supports Vim search motions in the terminal UI, with root service tier inheritance for subagents and MCP tool result hooks arriving in the same period.
On the server side, openai-node hardened several paths. Invalid Bedrock bearer credentials are now redacted before error output [6], and delayed and additional tool callbacks stop firing after cancellation [7], which used to leak callbacks into post-cancellation executions. The SDK also landed pinned X.509 workload token exchange [8] with attested transport capabilities [9] integrated into clients [10], bringing enterprise-grade mTLS auth to Node workloads. The same PR train added project residency configuration and cost quantity units to openai-python [11].
openai-python 3.6.0 shipped, with a fix for encoding Realtime call offers and session configuration [12] and a test protecting large HTTP payload compatibility [13]. The fix ensures Realtime API calls serialize correctly, a breaking change for any code that relied on the old encoding.
Across the codex repo, several config and credential protections landed: honoring response budgets when reading skill resources [14], hardening project config during credential brokering [15], honoring disabled managed network configuration [16], adding thread ownership metadata for managed worktrees [17], and sanitizing credentials from Git remote metadata [18].
References
- [1] Remove the Plan mode composer nudge (#40200) openai/codex
- [2] Remove the Plan mode composer nudge ↗ openai/codex
- [3] Distinguish Guardian review threads from subagents ↗ openai/codex
- [4] Enforce subagent ownership across app-server inputs (#40464) openai/codex
- [5] Preserve content metadata when truncating messages (#40264) openai/codex
- [6] fix(security): redact invalid Bedrock bearer credentials (#2419) ↗ openai/openai-node
- [7] fix(security): stop delayed and additional tool callbacks after cancellation (#2430) ↗ openai/openai-node
- [8] feat(auth): add pinned X.509 workload token exchange (#2470) ↗ openai/openai-node
- [9] feat(auth): attest cross-module X.509 transport capabilities (#2471) ↗ openai/openai-node
- [10] feat(auth): integrate attested X.509 workload identity into clients (#2472) ↗ openai/openai-node
- [11] feat(api): add project residency configuration and cost quantity units ↗ openai/openai-python
- [12] fix(api): encode Realtime call offers and session configuration ↗ openai/openai-python
- [13] test: protect large HTTP payload compatibility (#3721) ↗ openai/openai-python
- [14] Honor response budgets when reading skill resources ↗ openai/codex
- [15] Harden project config when credential brokering is active ↗ openai/codex
- [16] Honor disabled managed network configuration ↗ openai/codex
- [17] Add thread ownership metadata for managed worktrees ↗ openai/codex
- [18] Sanitize credentials from Git remote metadata ↗ openai/codex
$ ls openai/week/ # the briefings behind this review