docs(devlog): open the L4 Responses private-field and history-repair plan unit - #4880
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
✅ Deterministic PR hygiene checks passed. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Advanced Run ID: 📒 Files selected for processing (1)
Included review availability: Your plan provides up to 10 included reviews per hour; 7 remain after this review. 📝 WalkthroughWalkthroughChangesThe pull request adds a roadmap for R2-L4. It defines R2-L4 roadmap
Priority: ⬇️ Low Estimated code review effort: 1 (Trivial) | ~5 minutes Change: Other Merge Risk: ⚪ Minimal · up to This documentation-only change does not alter runtime behavior and is mergeable. 🚥 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 |
리뷰 · 우선순위 75 / 80이 PR은 문서만 추가한다. U1이 고치려는 문제는 간단하다. Codex 0.155가 Responses 요청 최상위에 이슈가 같이 빼자고 한 U2(#4871) 리뷰 계약은
메인테이너의 판단이 필요한 지점
너의 추천 이 댓글은 grok-bot이 작성했습니다 |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: a425ffc168
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| - No local verification of any kind. No `bun test`, `bun run test`, | ||
| `bun run test:changed`, `bun run typecheck`, `bun x tsc`, `bun install`, | ||
| `bun run build:gui`, or `ocx`. A local suite previously deleted real | ||
| `~/.opencodex` data. Evidence is source reading plus hosted CI at an exact head. | ||
| - Push with `git push --no-verify`; the pre-push hook runs the local suite. |
There was a problem hiding this comment.
Permit the mandatory focused checks
When U1 changes the Responses adapter, this blanket prohibition prevents the implementer from running the focused regression file and test:changed checks required for a source behavior change. Hosted CI is useful final evidence, but it does not replace the repository's mandated implementation-time checks; isolate OPENCODEX_HOME or run in a disposable environment instead of forbidding all local verification and bypassing the pre-push gate.
AGENTS.md reference: AGENTS.md:L376-L379
Useful? React with 👍 / 👎.
| One place covers HTTP, WebSocket and compaction. `passthrough.ts` serializes | ||
| `finalBody` once and the WebSocket path transports that same request instead of | ||
| rebuilding it; `buildRoutedCompactionBody` runs later in the same pipeline on the | ||
| already-stripped body. |
There was a problem hiding this comment.
Cover the native compact forwarding path
When a ChatGPT-authenticated Codex client sends a compaction request that routes to openai-apikey, src/server/responses/compact.ts:701 selects the native /responses/compact branch and lines 795-799 build its body directly from raw, so the passthrough adapter and the proposed strip never run. Consequently access_programs still reaches the strict official endpoint and can reject the compact turn; apply the noncanonical strip in this direct branch as well and add coverage through handleResponsesCompact.
Useful? React with 👍 / 👎.
Summary
src/,tests/, or any gate reads this directory.access_programs(new in Codex 0.155) is gated on ChatGPT auth alone and never on the destination URL, so loopback injection leaves it attached to third-party Responses traffic, where a strict gateway 400s the whole turn ([Provider compatibility] Codex 0.155access_programsis forwarded to strict third-party Responses upstreams and 400s every OpenCode Go muse-spark turn #4853).codex_output_schemais thenameof the JSON-schematext.formatobject incodex-rs/codex-api/src/common.rs, not a top-level request key, so it is deliberately excluded from the strip table rather than stripped on a guess.Verification
devlog/is excluded from the file-size ratchet and is read by no build, typecheck, or test path.codex-rs/core/src/cyber_access_program.rs(the auth-only gate),codex-rs/codex-api/src/common.rs(AccessProgramsonResponsesApiRequest,CompactionInputandResponseCreateWsRequest), andcodex-rs/core/src/client.rs(the three assignment sites).CANONICAL_ONLY_TOOL_FIELDSinsrc/adapters/openai-responses/, thesrc/adapters/ownership entry forstructure/transports/responses.mdinstructure/manifest.json, and the 4809-line ratchet entry that rules out growingtests/responses/openai-responses-passthrough.test.ts.Checklist
structure/transports/responses.mdin its own change..tmp/.Summary by CodeRabbit