$ the-wire · showcase
Incremental exec tool catalogs, with metrics to match
By RepoJournal · Filed · About OpenAI · Composed from the cited sources · methodology
Codex now ships partial exec tool catalog updates instead of re-declaring everything, and instruments the deltas so the cost is measurable.
Add support for incremental code mode tool definitions (#60157) openai/codex
Codex renders stable entries for nested tool definitions and namespace instructions alongside the full `functions.exec` description, emitting complete replacements for added or changed entries and explicit notices for removed ones while the exec declaration itself stays unchanged. Entry hashes survive periods when exec is unavailable, after which the full catalog is restored and removed entries...
Add metrics for incremental exec catalog updates (#60177) openai/codex
Two new counters make the incremental path observable: `codex.tools.exec_entry_updates` counts entry deltas tagged `added`, `schema_changed`, or `removed` (replacements count as schema changes; full catalog declarations do not), and `codex.tools.exec_update_bytes` records rendered UTF-8 batch sizes including hints and framing but excluding full declarations and removal notices.
Allow asynchronous model request budget checks openai/codex
`ModelRequestContributor::budget_exhausted` now returns an `ExtensionFuture` that is awaited before both HTTP and WebSocket generation; WebSocket warmup still skips budget checks. If the account changes during the post-connect check, the request setup is rebuilt and the socket reconnects before the request goes out.
Fetch account security reminders through app-server (#60082) openai/codex
A new `account/securitySetup/read` call returns an optional notice carrying account and user IDs, with generated protocol schemas and bindings, but only for a matching saved ChatGPT login; ineligible, unavailable, or timed-out cases return `notice: null`.
Attach typed punctuation to completed skill mentions (#60180) openai/codex
Skill completion's trailing space is dropped when the next typed character is closing punctuation, so `$rustdoc ,` becomes `$rustdoc,`, across both skill mention pickers including full-width punctuation and `》`, with skill bindings and existing draft state preserved.