새로운 기능
- v2 app-server API에
thread/compact를 비동기 트리거 RPC로 추가하여, 클라이언트가 즉시 압축을 시작하고 완료를 별도로 추적할 수 있게 했습니다. (#10445)
- 새로운
codex.rate_limits 이벤트를 통해 websocket 측 속도 제한 신호를 추가하고, ETag/reasoning 메타데이터 처리를 위한 websocket 패리티를 구현했습니다. (#10324)
- 모든 비Windows 플랫폼에서
unified_exec를 활성화했습니다. (#10641)
- 제약된 요구사항 값에 이제 소스 출처가 포함되어,
/debug-config 같은 UI 흐름에서 소스 인식 설정 디버깅이 가능해졌습니다. (#10568)
버그 수정
- TUI
request_user_input 오버레이에서 Esc 처리를 수정했습니다: 노트가 열려있을 때, Esc는 이제 세션을 중단하는 대신 노트 모드를 종료합니다. (#10569)
- 스레드 목록은 이제 먼저 state DB를 쿼리하고(보관된 스레드 포함), 필요한 경우에만 파일시스템 순회로 폴백하여 목록 정확성과 탄력성을 개선했습니다. (#10544)
- 스레드 경로 조회를 수정하여 해석된 파일이 실제로 존재하도록 요구하고, 유효하지 않은 thread-id 해석을 방지했습니다. (#10618)
- 동적 도구 주입은 이제 부분 상태 업데이트를 방지하기 위해 단일 트랜잭션에서 실행됩니다. (#10614)
- 승인 정책 프롬프팅에 사용되는
request_rule 가이드를 정제하여 규칙 동작을 수정했습니다. (#10379, #10598)
문서
thread/compact에 대한 app-server 문서를 업데이트하여 비동기 동작과 스레드 바쁨 라이프사이클을 명확히 했습니다. (#10445)
- TUI 문서를
request_user_input의 모드별 Esc 동작과 일치하도록 업데이트했습니다. (#10569)
기타
- state DB 헬퍼를 버전 관리되는 SQLite 파일명 스키마로 마이그레이션하고 런타임 초기화 중 레거시 상태 파일을 정리했습니다. (#10623)
- 런타임 텔레메트리를 websocket 타이밍 메트릭으로 확장하고 핵심 클라이언트 기반의 내부 메타데이터 흐름을 단순화했습니다. (#10577, #10589)
변경 로그
전체 변경 로그: https://github.com/openai/codex/compare/rust-v0.95.0...rust-v0.96.0
- #10569 tui: 노트가 표시되는 동안 Esc를 통해 request_user_input 노트 지우기 @charley-oai
- #10577 feat: 런타임 메트릭에 websocket 타이밍 로깅 @apanasenko-oai
- #10445 thread/compact v2 추가 @aibrahim-oai
- #10589 메타데이터 계산을 클라이언트 외부로 이동 @pakrym-oai
- #10379 fix(core) request_rule 가이드 업데이트 @dylan-hurd-oai
- #10598 fix(core) Request Rule 가이드 조정 @dylan-hurd-oai
- #10544 파일시스템 이전에 state DB 스레드 목록 우선 처리 @jif-oai
- #10614 fix: 동적 도구 주입을 위한 단일 트랜잭션 @jif-oai
- #10568 Requirements: 제약된 요구사항 값에 소스 추가 @gt-oai
- #10611 chore: 사용자 메시지 감지 단순화 @jif-oai
- #10618 fix:
find_thread_path_by_id_str_in_subdir에서 파일이 존재하는지 확인 @jif-oai
- #10619 nit: 정리 @jif-oai
- #10324 websocket을 위한 codex.rate_limits 이벤트 추가 @rasmusrygaard
- #10623 state DB 경로 헬퍼를 버전 관리되는 파일명으로 마이그레이션 @jif-oai
- #10638 sse_completed 픽스처 사용을 중지하도록 테스트 업데이트 @pakrym-oai
- #10641 feat: unified_exec 구현 @jif-oai