joshavant
a71ac33928
fix(codex): reject interrupted finalization turns
2026-07-22 06:04:27 -05:00
joshavant
6eea20ce18
fix(agents): finalize settled tool turns safely
2026-07-22 06:04:27 -05:00
joshavant
60f49dcc04
fix(agents): isolate settled-turn finalization
2026-07-22 06:04:27 -05:00
Peter Steinberger
6f29fc88e9
refactor(sessions): migrate pure readers to read-only session accessors ( #112568 )
...
* refactor(sessions): migrate pure readers to read-only session accessors
* test(sessions): teach mocks and declarations the read-only accessors
* test(sessions): align remaining harnesses with read-only accessors
2026-07-22 01:16:35 -07:00
Peter Steinberger
c24a215fe4
fix: prevent announce restart recovery cascades ( #112534 )
...
* fix(agents): stop announce restart recovery cascades
Reconcile interrupted completion handoffs from existing run and transcript provenance, and keep their CLI, embedded, and Codex execution tool-free.\n\nCo-authored-by: Moeed Ahmed <moeedahmed@users.noreply.github.com >
* chore: preserve prior-art credit
Co-authored-by: Moeed Ahmed <moeedahmed@users.noreply.github.com >
* fix(agents): prefer explicit restart recovery runs
* fix(agents): revalidate announce recovery ownership
* test(agents): consolidate announce recovery cases
* fix(agents): preserve silent announce fallback
---------
Co-authored-by: Moeed Ahmed <moeedahmed@users.noreply.github.com >
2026-07-22 00:05:18 -07:00
Jason (Json)
735a6acd56
fix(codex): label unnamed sessions from previews ( #112497 )
2026-07-21 22:53:05 -06:00
Peter Steinberger
edecdbd05e
refactor(config): config-surface reduction tranche 3 — product consolidations (review request) ( #111527 )
...
* refactor(config): consolidate media model lists
* refactor(config): unify memory configuration
* refactor(config): consolidate TTS ownership
* refactor(config): move typing policy to agents
* refactor(config): retire product-level config surfaces
* refactor(config): share scoped tool policy type
* chore(config): refresh generated baselines
* fix(config): honor agent typing overrides
* fix(config): migrate sibling config consumers
* refactor(infra): keep base64url decoder private
* fix(config): strip invalid legacy TTS values
* chore(config): refresh rebased baseline hash
* fix(doctor): route legacy messages.tts.realtime voice to talk during tts move
* refactor(config): polish final layout names
* refactor(config): freeze retired tuning defaults
* feat(config): add fast mode default symmetry
* refactor(config): key agent entries by id
* docs(config): update final layout reference
* test(config): cover final layout migrations
* chore(config): refresh final layout baselines
* fix(config): align final layout runtime readers
* fix(config): align remaining readers
* fix(config): stabilize final layout migrations
* fix(config): finalize config projection proof
* fix(config): address final layout review
* docs(release): preserve historical config names
* fix(config): complete keyed agent migration
* fix(config): close final migration gaps
* fix(config): finish full-branch review
* fix(config): complete runtime secret detection
* fix(config): close final review findings
* fix(config): finish canonical docs and heartbeat migration
* fix(config): integrate latest main after rebase
* refactor(env): isolate test-only controls
* refactor(env): isolate build and development controls
* refactor(env): collapse process identity indirection
* refactor(env): remove duplicate config and temp aliases
* docs(env): define the operator-facing allowlist
* ci(env): ratchet production variable count
* fix(env): remove stale provider helper import
* fix(env): make ratchet sorting explicit
* test(env): keep test seam in dead-code audit
* test(env): cover ratchet growth and boundary; document surface budgets
* docs(config): document tier-eval consolidations
* docs(config): clarify speech preference ownership
* test(memory): align retired tuning fixtures
* refactor(memory): freeze engine heuristics
* refactor(config): apply tier-eval tranche
* refactor(tts): move persona shaping to providers
* refactor(compaction): move prompt policy to providers
* test(config): align hookified prompt fixtures
* chore(deadcode): classify test-only exports
* chore(github): remove unused spawn helper
* chore(deadcode): classify queue diagnostics
* chore(deadcode): remove unused lane snapshot export
* chore(plugin-sdk): ratchet consolidated surface
* fix(config): integrate latest main after rebase
2026-07-21 20:28:43 -07:00
Jason (Json)
c4911a2c77
improve(ui): simplify coding agent session headers ( #112354 )
...
* improve: simplify coding session catalog headers
* improve: simplify coding session catalog headers
2026-07-21 15:27:49 -06:00
pash-openai
b0341b8693
Allow Codex plugin discovery enough startup time ( #112418 )
2026-07-21 14:22:23 -07:00
Andy Ye
5f05c54e87
fix(approvals): handle stale plugin waits ( #88203 )
...
* fix(approvals): handle stale plugin waits
Recognize the gateway stale-id message through the shared classifier and map stale exec, Codex app-server, and native PermissionRequest waits to their existing fail-closed or defer contracts without swallowing aborts.
Closes #88111
Co-authored-by: Andy Ye <35905412+TurboTheTurtle@users.noreply.github.com >
* style(approvals): type stale wait catch values
Satisfy the catch-callback unknown lint without changing approval behavior.
Co-authored-by: Andy Ye <35905412+TurboTheTurtle@users.noreply.github.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-21 01:56:38 -07:00
mikasa
7a73531321
fix(codex): stream sandbox file copies ( #101511 )
...
* fix(codex): cap sandbox file copy reads
Co-Authored-By: Claude <noreply@anthropic.com >
* test(codex): use PathUri in oversized copy proof
* fix(codex): stream sandbox file copies
Co-authored-by: mikasa0818 <0668001030@xydigit.com >
---------
Co-authored-by: Claude <noreply@anthropic.com >
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-20 23:03:04 -07:00
Josh Avant
33720886c8
fix(agents): keep sender-scoped tools in delegated runs ( #110345 )
...
* fix(agents): preserve requester policy across delegation
* fix(agents): keep policy types internal
* test(codex): cover delegated policy forwarding
* fix(agents): harden delegated policy contract
* fix(agents): preserve split-owner completion policy
* fix: version delegated requester snapshots
* fix: refresh delegated policy protocol artifacts
2026-07-20 19:42:06 -05:00
Peter Steinberger
fd081d6521
fix(ui): keep Codex commentary visible after runs ( #111648 )
...
* fix(ui): keep Codex commentary visible
* fix(codex): preserve commentary transcript ordering
* fix(ui): preserve commentary retention opt-out
2026-07-20 02:10:56 -07:00
Peter Steinberger
7d4dccf959
improve(swarm): close out wait, phase, and worker follow-ups ( #111605 )
...
* fix(codex): support full swarm wait budgets
* feat(ui): bucket swarm dots by phase
* docs(swarm): document flat worker patterns
* fix(codex): configured per-tool timeout still wins over swarm wait default
* fix(codex): outer swarm-wait watchdog outlives the 600s budget (cap + grace)
* fix(ui): order swarm phase buckets by observation rank
* fix(ui): repair rank-order widget test — proper lit render container, untangle sibling assertions
* fix(ui): implicit swarm phase assignment only on child creation events
* test(ui): split swarm activity integration coverage
2026-07-19 20:11:54 -07:00
Peter Steinberger
c7e7ac2728
refactor: remove expired plugin compatibility surfaces ( #111451 )
...
* docs(secrets): remove retired web credential paths
* refactor(web): remove retired provider compatibility paths
* refactor(providers): delete retired compatibility routes
* refactor(secrets): remove retired credential aliases
* refactor(plugin-sdk): delete retired compatibility surfaces
* docs(plugin-sdk): remove retired migration guidance
* chore(plugin-sdk): refresh rebased surface budgets
* chore(plugin-sdk): refresh API removal baseline
* refactor(compat): migrate retired internal callers
* chore(plugin-sdk): refresh current-main baselines
* test(config): migrate plugin-owned secret assertions
* test(gateway): narrow plugin secret refs
* fix(plugin-sdk): preserve private boundary type identity
* chore(compat): remove stale sweep references
* chore(lint): lower max-lines budget
* refactor(secrets): remove unused web helper
* build(plugin-sdk): drop removed compat entries
* chore(plugin-sdk): refresh rebased API baseline
* chore(plugin-sdk): use Linux API baseline hash
* fix(plugin-sdk): preserve private bundled build entries
* fix(plugin-sdk): package private runtime facades
* fix(plugins): preserve external credential contracts
2026-07-19 11:04:48 -07:00
Peter Steinberger
4c55a4fc28
feat(plugins): expose requester context to tool hooks ( #111190 )
...
* feat(plugins): expose requester context to tool hooks
* chore(plugin-sdk): restore generated API baseline
* chore: drop release-owned changelog entry
* docs: refresh documentation map
2026-07-19 10:31:58 -07:00
Peter Steinberger
783a5d21cf
refactor(config): purge numeric tuning knobs behind built-in defaults ( #111382 )
2026-07-19 07:35:45 -07:00
Peter Steinberger
3b84a55d99
refactor(protocol): pre-publish cheat-window cleanup and vintage tracking ( #111041 )
...
* fix(codex): drain dynamic-tool handlers before side-thread cleanup
* refactor(protocol): rename question ids to questionId and flatten answer maps
* refactor(protocol): slim worker stack and unify session-catalog shapes
* refactor(protocol): delete dead public surface and polish packaging
* feat(protocol): track release-train vintage on gateway methods and schemas
* fix(apps): align question surfaces merged from main with reshaped protocol
* test(health): shape secret fixtures to scanner-safe token names
* test(health): use scanner-safe token fixtures
* fix(apps): align question surfaces merged from main with reshaped protocol
* fix(ci): prove reshaped protocol in shallow checks
* fix(ui): align sidebar question fixtures with protocol
* fix(apps): read flat Swift question answers
* fix(apps): align question surfaces merged from main with reshaped protocol
* fix(apps): refresh native question inventory
* fix(apps): align macOS snapshot fixtures with protocol
* fix(ui): align narration question fixture with protocol
2026-07-19 04:07:15 -07:00
xingzhou
e2ca148d4b
fix(codex): preserve JSONL framing across WebSocket writes ( #110384 )
...
* fix(codex): preserve UTF-8 websocket frames
* test(codex): satisfy websocket transport lint
* fix(codex): preserve websocket JSONL framing
2026-07-19 17:07:03 +08:00
Peter Steinberger
ea54060223
feat(codex): fork upstream-linked sessions at a message via thread/fork ( #111149 )
...
* feat(codex): fork upstream-linked sessions at a message via thread/fork
* fix(gateway): fail closed for rewind and branch switch on upstream-linked sessions
* fix(codex): fail closed on first-message forks, image-only prompts, and orphan archival
* fix(codex): baseline retained history and reject paginated threads on upstream fork
* fix(codex): validate the full fork prefix and fail closed across crash windows
* fix(codex): treat all non-text inputs as unverifiable in fork drift checks
* fix(codex): support first-message forks as empty-history upstream cuts
* fix(codex): reject source-id reuse and unverifiable hidden inputs in fork boundaries
* refactor(codex): materialize upstream forks from verified thread read-back
* fix(codex): satisfy strict type lanes and knip for upstream fork
2026-07-19 00:11:10 -07:00
Peter Steinberger
208036afdc
fix(codex): session permissions persist across resumed turns ( #111136 )
...
* test: harden Codex compaction command oracle
* test: accept omitted Codex command exit code
* fix(codex): apply stored session permissions
* test: harden Codex gateway stress evidence
* test: accept successful Codex command retries
* test: classify Codex evidence as live helper
2026-07-18 19:56:42 -07:00
Peter Steinberger
968f9ad0f3
test(codex): split event projector suites ( #111097 )
2026-07-18 18:17:25 -07:00
Kris Wu
e5b2ca3c6b
feat(config): add compaction.thinkingLevel to override thinking level during compaction ( #98074 )
...
* feat(config): add compaction.thinkingLevel to override thinking during compaction
* fix: make compaction.thinkingLevel override inherited session thinking
* fix: warn on compaction.thinkingLevel ignored by Codex native runtime
* feat(config): add compaction thinking override
Co-authored-by: wu.duozhen@xydigit.com <wu.duozhen@xydigit.com >
* test(agents): remove duplicate compaction harness
Co-authored-by: wu.duozhen@xydigit.com <wu.duozhen@xydigit.com >
* test(plugin-sdk): account for thinking level export
Co-authored-by: wu.duozhen@xydigit.com <wu.duozhen@xydigit.com >
* chore: keep release note in PR metadata
* chore: reconcile plugin SDK surface budgets
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-18 17:18:28 -07:00
Peter Steinberger
f3f6eb2321
fix(codex): stop fallback for superseded sessions ( #110980 )
2026-07-18 23:02:03 +01:00
Peter Steinberger
b6f905b410
test(codex): repair app-server extension shard fixtures ( #110951 )
2026-07-18 21:29:36 +01:00
Omar Shahine
bbad877aed
fix: deliver Codex-generated images on message-tool routes ( #110893 )
...
* fix: deliver Codex-generated images on message-tool routes
* test(codex): cover native image delivery path
Document trusted harness artifact provenance and cover the runner-to-dispatch bridge.\n\nRelease note: Codex-generated images now reach message-tool-only routes while normal source suppression remains intact.\n\nCo-authored-by: Omar Shahine <10343873+omarshahine@users.noreply.github.com >
---------
Co-authored-by: Omar Shahine <10343873+omarshahine@users.noreply.github.com >
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-18 20:45:57 +01:00
Peter Steinberger
04a9552a1f
chore(codex): update app-server to 0.144.6 [AI] ( #110821 )
...
* build(codex): bump app-server to 0.144.6
* build(codex): align ACP runtime to 0.144.6
* test(codex): harden live image probe
* test(codex): accept alphanumeric image tokens
* test(codex): stabilize image probe glyphs
* test(gateway): disable cron probe delivery
* test(codex): enlarge live image token
* test(codex): tie compaction proof to native output
* test(codex): accept wrapped native stress commands
* test(codex): stabilize compaction acknowledgements
* docs(changelog): note Codex 0.144.6 update
* docs(changelog): defer Codex note to release
2026-07-18 19:19:17 +00:00
Peter Steinberger
f14947d256
fix(codex): persist automatic compaction history ( #110587 )
...
* fix(codex): persist automatic compaction counts
* test(codex): stress compaction and restart recovery
* test(codex): bind compaction waves to fresh counts
* chore: keep Codex release note in PR
2026-07-18 10:37:25 +01:00
Peter Steinberger
d7de67ae02
feat: ask_user follow-ups — harness convergence, channel finalization + reactions, native cards, docked web panel ( #110372 )
...
* feat(ask-user): follow-up harness slice
* feat(ask-user): follow-up channels slice
* feat(ask-user): follow-up native slice
* feat(ui): dock question panel above composer with stepper and compact stream summaries
* docs: refresh follow-up integration maps
* test(ui): align terminal summary proof
* fix(infra): echo declared option answers in terminal status when free-text is allowed
* fix(infra): keep reaction answering when display labels are formatter-adjusted
* fix(agents): settle plain-text claims only after question registration commits
* fix(agents,apps): commit-ordered claim persistence, claim-aware prompt delivery, non-blocking question refresh
* fix(harness,infra): reaction-appropriate question copy, caller presentations honored
* fix(native,infra,agents): local-expiry eviction, value-addressed reactions, reserve-before-request
* fix(infra,android): dual-mode question resolver for compact callbacks; reset terminal retention on replayed pending
* fix(harness,discord): claim-aware prompt delivery in run helper; escape finalization labels
* fix(macos): merge transient-content visibility with question cards after main sync
* fix: repair ask user follow-up CI
* test: update limited bootstrap scope expectation
* fix: retain shared question card API
* chore: refresh native i18n inventory
2026-07-18 03:32:39 -04:00
Peter Steinberger
3997a996d4
fix(codex): bound app-server resume history ( #110396 )
...
* fix(codex): harden app-server resume protocol
* chore(codex): defer release note to release process
* fix(codex): align bounded resume checks
2026-07-18 06:25:17 +01:00
Peter Steinberger
3659c85e53
fix(codex): distinguish available usage after limit errors ( #110381 )
2026-07-18 04:42:08 +01:00
Peter Steinberger
28c2f4c075
fix(codex): retire shared app-server client only when unclaimed ( #110227 )
2026-07-18 04:33:13 +01:00
Peter Steinberger
60ed910639
fix(diagnostics): own run activity listener lifecycle ( #110312 )
2026-07-18 03:29:06 +01:00
Peter Steinberger
d8f2645c2c
refactor(memory-wiki): move compiled cache to plugin state ( #110167 )
...
* feat(plugin-sdk): prepare memory prompts asynchronously
* refactor(memory-wiki): move compiled cache to plugin state
* fix(plugin-sdk): export memory prompt preparer type
* refactor(plugin-sdk): keep prompt preparer type private
* test(memory-wiki): isolate compiled cache state
* chore(memory-wiki): satisfy changed gates
* fix(memory): preserve prepared prompts across context engines
* docs(plugin-sdk): refresh API baseline
* fix(memory): revalidate prepared prompt ownership
* fix(codex): propagate sandboxed memory context
* test(memory-wiki): seed durable vault identity
* refactor(memory-wiki): keep cache lifecycle internal
* fix(memory-wiki): harden compiled cache publication
* style(memory-wiki): format cache lifecycle changes
* test(memory-wiki): support extension test lib target
* style(memory-wiki): remove redundant catch
* refactor(memory-wiki): keep vault generation helper private
2026-07-18 03:05:03 +01:00
Dallin Romney
14caaf3d4c
fix: make live harness planning QA fail closed ( #109282 )
...
* test(qa): prove live harness planning signals
* test(qa): satisfy scenario static checks
* test(qa): scope planning evidence per attempt
* test(qa): derive planning scenarios from coverage
2026-07-17 16:45:57 -07:00
Dallin Romney
a9dc393f7e
test(qa): prove Codex auth product migration ( #109291 )
2026-07-17 16:10:23 -07:00
Peter Steinberger
781913025b
improve: stream native sessions as hosts finish ( #110211 )
...
* perf: stream native session catalogs by host
* fix: satisfy session catalog CI contracts
* fix: retain changed-session refresh timing
* fix: keep catalog refresh helpers private
2026-07-17 23:59:57 +01:00
Peter Steinberger
ed34646bc5
refactor(codex): inline projector no-op cases ( #110116 )
2026-07-17 23:01:28 +01:00
Alex Knight
ddb4ed9a47
feat: trace Claude Code CLI model calls ( #108304 )
...
* feat: trace Claude CLI model calls
* fix: align Claude CLI trace hierarchy
* fix: distinguish model request and turn telemetry
* fix: satisfy diagnostics CI checks
* fix: distinguish agent-turn telemetry
---------
Authored-by: Alex Knight <15041791+amknight@users.noreply.github.com >
2026-07-18 06:23:49 +10:00
Peter Steinberger
67a5ffab77
perf(session-catalog): bound slow node fan-out ( #110106 )
2026-07-17 19:24:27 +01:00
ooiuuii
7a5e0e992c
fix(codex): warn and continue on projector drift ( #99287 )
...
* fix(codex): diagnose projector protocol drift
Co-authored-by: luyifan <al3060388206@gmail.com >
* fix(codex): warn and continue on projector drift
Co-authored-by: luyifan <al3060388206@gmail.com >
* test(codex): publish materialized auth snapshot
Co-authored-by: luyifan <al3060388206@gmail.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-17 18:34:19 +01:00
Peter Steinberger
f341a013af
test(release): repair plugin prerelease coverage
2026-07-17 13:43:12 +01:00
Peter Steinberger
0e792b6de3
refactor(channels): centralize inbound orchestration and remove internal compat ( #109716 )
...
* refactor(channels): centralize inbound turn orchestration
* refactor(runtime): remove stale compatibility paths
* chore(guards): reject internal deprecated API use
* refactor(channels): simplify core turn planning
* chore(guards): keep deprecated checks boundary-focused
* refactor(memory): keep modern config off compat barrel
* fix(msteams): preserve feedback learning
* test(channels): align modern inbound fixtures
* refactor(channels): finish modern inbound migration
* refactor(channels): tighten core inbound kernel
* fix(channels): preserve turn assembly narrowing
* test(sdk): keep runtime mock binding immutable
* test(matrix): isolate read policy runtime
* test(msteams): mock canonical reply factory
* test(slack): mock core inbound turn dispatch
* test(telegram): inject core session recorder
* test(signal): inject core session recorder
* test(googlechat): assert canonical inbound routing
* test(synology-chat): align core turn fixture
* fix(sdk): preserve direct DM runtime compat
* refactor(channels): own inbound envelope compat in core
* refactor(channels): trim inbound dispatch seams
* refactor(channels): remove redundant async wrappers
* test(synology-chat): type canonical dispatcher mock
* refactor(channels): remove remaining dead compat seams
* chore(sdk): refresh API baseline after rebase
* fix(channels): preserve direct DM identity metadata
2026-07-17 00:56:46 -07:00
Peter Steinberger
2b18ef7426
feat(codex): surface native questions and goals ( #109724 )
...
* feat(codex): bridge native questions and goals
Co-authored-by: EVA <eva@100yen.org >
* fix(ui): preserve native question text encoding
* fix(codex): keep secret answers off action paths
* fix(codex): validate native action keys exactly
* fix(codex): isolate new goals and free-form answers
* style(codex): satisfy extension lint
* fix(codex): keep goal replacement non-destructive
* fix(codex): separate native goals from continuation
* fix(codex): preserve exact native answer labels
* test(codex): assert goal continuation stays disabled
* fix(codex): remove unused bridge exports
* test(codex): refresh goal feature snapshots
---------
Co-authored-by: EVA <eva@100yen.org >
2026-07-17 00:35:39 -07:00
ooiuuii
fbfad6eb42
feat(codex): show answer candidates in Activity ( #90610 )
...
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-16 23:58:16 -07:00
marchpure
6b4f372ff6
fix(codex): expose assistant completion idle timeout config ( #97233 )
...
* fix(codex): expose assistant completion idle timeout config
* chore: rerun codex idle timeout config checks
* docs(codex): document assistant completion idle timeout
* test(codex): cover assistant idle timeout default
* fix(codex): preserve runtime option compatibility
---------
Co-authored-by: marchpure <marchpure@users.noreply.github.com >
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-16 22:22:38 -07:00
Mert Başar
9d6133a931
fix(agents): block fallback completion delegation ( #92011 )
...
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-16 21:06:40 -07:00
Peter Steinberger
b1541c933f
test: accelerate Codex startup timeout coverage ( #109614 )
2026-07-16 20:43:21 -07:00
clawsweeper[bot]
1c5c3d5201
fix(codex): before_prompt_build receives conversation messages ( #101752 )
...
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: xingzhou <275915537+zhangguiping-xydt@users.noreply.github.com >
2026-07-16 20:10:25 -07:00
Peter Steinberger
5680791d7f
build(codex): bump Codex CLI to 0.144.5
2026-07-16 21:16:50 +01:00