Repository navigation
fix(codex): recognize boolean native context opt-in - #5156
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository: lidge-jun/opencodex/.coderabbit.yaml Review profile: ASSERTIVE Plan: Advanced Run ID: 📒 Files selected for processing (5)
Included review availability: Your plan provides up to 10 included reviews per hour; 6 remain after this review. 📝 WalkthroughWalkthroughThe change broadens native context opt-in handling, adds integration coverage for activation state changes, and adds English and Korean documentation with a sidebar entry. ChangesNative Context Compatibility
Priority: ⬇️ Low Estimated code review effort: 2 (Simple) | ~15 minutes Change: Bug fix 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
✅ Deterministic PR hygiene checks passed. |
|
Published-head check for
Keep this PR in draft. Please do not interpret it as automatic native-context support for the default loopback integration. |
✅ READY
Review readiness checklist
✅ 4/4 boxes ticked. This pull request is already Ready for Review. |
리뷰 · 우선순위 64 / 80Codex는 이 기능을 두 가지 글로 켤 수 있습니다. 켜는 조건은 좁습니다. 값이 정확히 같이 온 영문·한국어 글은 시험용 프로필입니다. 제공자 표시 이름은 베이스는
테스트 - 작성자가 말한 22개 통과는 Node로 흉내 낸 것입니다. 저장소의 메인테이너의 판단이 필요한 지점 공식 문법으로 이미 켜 둔 사람의 주소를 이번부터 바꿀지입니다. 고치려던 그 구멍이면 맞습니다. 키 없는 기본 대화가 403을 보기 시작하는 것도 같이 옵니다. 시험 프로필은 새 ID라 기존
너의 추천 Draft로 두세요. 머지하지 마세요. 가이드를 사이드바에 넣고, 이 댓글은 grok-bot이 작성했습니다 |
f6988c2 to
1974dde
Compare
추가 리뷰 · 우선순위 62 / 80지난 리뷰 다음에 고친 코드는 없습니다. 지금 아직 Draft입니다. 위생 검사, 라벨, 대상 브랜치 검사는 통과했습니다. Cross-platform CI와 React Doctor는 승인 대기이고 걸린 시간이 0초입니다. 테스트가 돈 것이 아닙니다. 지난번에 말한 문제는 그대로입니다.
테스트 - 저장소의 메인테이너의 판단이 필요한 지점 지난번과 같습니다. 공식 문법으로 이미 켜 둔 사람의 주소를 이번부터 바꿀지입니다. 그리고 너의 추천 머지하지 마세요. 글이 안 바뀌었으니 추천도 같습니다. 안내를 왼쪽 메뉴에 넣고, 이 댓글은 grok-bot이 작성했습니다 |
Accept Codex FeatureToml's explicit boolean form as well as the existing experimental_mode table in the shared injection/runtime predicate. Keep absent, false and malformed values off and leave admission, account ownership and upstream forwarding unchanged. Add opt-in, URL-isolation and runtime-revocation regressions plus English/Korean guidance for an authenticated native trial profile. The guide separates source-level feasibility from live-account support.
Register guides/codex-native-context in the Guides sidebar group so the English and Korean pages are reachable from the left navigation.
1974dde to
a876afb
Compare
|
Pre-merge items addressed at a876afb:
The two open decision points are unchanged: docs-only |
추가 리뷰 · 우선순위 63 / 80지난 리뷰 다음에 코드 내용은 안 바뀌었습니다. 안내를 왼쪽 메뉴에 넣었고, 같은 글을 더 새 바닥에 다시 붙였습니다. Draft도 풀렸습니다.
바닥은 작성자 댓글은 아직 Draft라고 적었습니다. 지금은 Draft가 아닙니다.
메인테이너의 판단이 필요한 지점 지난번과 같습니다. 공식 문법으로 이미 켜 둔 사람의 주소를 이번부터 바꿀지입니다. 그리고 너의 추천 머지하지 마세요. 메뉴는 들어갔습니다. 호스트 CI가 그 테스트를 돌리기 전에는 작성자의 78개 통과를 확인한 것으로 보지 마세요. 주소 바꾸기와 문서에만 있는 헤더도 먼저 정해 주세요. 이 댓글은 grok-bot이 작성했습니다 |
Summary
Native history/notes relay already exists. This PR fixes a specific activation mismatch rather than adding a second relay or weakening its security boundaries.
contextExperimentalEnabledcurrently recognizes onlyfeatures.context_management.experimental_mode = true. Current CodexFeatureToml<ContextManagementConfigToml>also acceptsfeatures.context_management = true, which OpenCodex silently treats as disabled. Both managed URL injection and the runtime recording/dispatch gate use this predicate.Support assessment and limits
The current native relay has the needed ten history/notes endpoints and credential/ownership handling. Default built-in loopback injection does not carry an OpenCodex data-plane key, so model requests may succeed while context requests fail with
context_principal_required(403). Merely using the authenticated remote provider-table form is also insufficient for current Codex automatic activation: that form usesenv_keyand a non-native display name.The documented trial keeps the native ChatGPT OAuth bearer and uses
env_http_headersfor a separatex-opencodex-api-key. A distinct, opt-in provider/profile is used because current Codex generally does not override the built-inopenaientry frommodel_providers.openai. Its exactOpenAIname and backend URL match the inspected native predicate. The sample is source-checked, not a live-account end-to-end certification. It uses HTTP/SSE for the initial ownership trial; no desktop profile-selection or WebSocket/steering parity claim is made.This PR does not automatically enable the feature, alter existing provider identities, change authentication/account selection, remove principal checks, retry notes writes, grant backend eligibility, or advertise the capability on Devin/Gemini/other routed models. #5085's routed-row exclusion remains intact. The guide warns that a root opt-in also affects ordinary native profiles, and requires disabling it before returning to a default profile without the admission header.
Primary source contract
Inspected official Codex source at
78245b47af2a7aafcabe025828ceecca69db4df1:Verification actually performed
Base: upstream
devatf117c20d1244bf20d8cf5bd35de5bb7c71003799. The two edited source/test blobs were rechecked against that base and match the previously inspected originals.The editing environment has Node and TypeScript but no Bun and cannot clone/install dependencies over the network. Therefore the following are isolated compatibility checks, not
bun testor repository-wide CI:tomllibreplacingBun.TOML.parse, and a throwinggetCodexHomestub to prevent reading a real user home: 22 pass, 0 fail.bun run typecheckagainst the whole repository.Required before review-ready
bun test tests/codex-integration/context-compat.test.ts tests/server/context-history.test.ts tests/server/context-history-ownership.test.ts tests/server/data-plane-admission-identity.test.ts.new_context-> state recovery. No user machine, real credentials, or existing working sessions were modified here.Review readiness checklist
This PR stays in draft until every box below is ticked.
devtipf117c20d1244bf20d8cf5bd35de5bb7c71003799.Summary by CodeRabbit
New Features
Documentation
Bug Fixes