Skip to content

fix(responses): preserve raw content and provider summary provenance - #4345

Draft
lidge-jun wants to merge 5 commits into
devfrom
codex/260912-60plus-thinking
Draft

fix(responses): preserve raw content and provider summary provenance#4345
lidge-jun wants to merge 5 commits into
devfrom
codex/260912-60plus-thinking

Conversation

@lidge-jun

@lidge-jun lidge-jun commented Sep 12, 2026

Copy link
Copy Markdown
Owner

Summary

Keep raw reasoning on the Responses content channel and reserve summary presentation for provider-authored summaries. Reconciles #4301 and #4287: the Antigravity provider default enables CCA Gemini summaries when the client omits the preference, while explicit wire reasoning.summary: "none" and configured provider false retain their meaning. A client that serializes its preference as omission cannot be distinguished. Raw DeepSeek/Chat content is never promoted into summary events, and native Responses replay retains its original representation.

CCA summary classification is request-local and Gemini-only; direct Google/Vertex and unknown model provenance retain their prior classification. Tool signatures remain independent of display. The change does not alter client settings, the running service or Spark retirement.

Carries source work from #4301 and #4287, with corrected contract and additional streaming, opt-out, fallback and signature regression coverage. Source PRs remain open for coordinator disposition after integration. Independent ordinary PR; base dev, no native stack.

Verification

  • Local tests of every size, typecheck, build and install: NOT RUN, explicitly prohibited by the maintainer for this task.
  • git diff --check: passed; static whitespace inspection only.
  • Inherited independent design reflection and plan audit: PASS. Implementation review and final-head hosted Cross-platform CI are tracked after publication; this draft makes no runtime-pass claim yet.
  • Pushed with git push --no-verify. No merge or auto-merge is authorized here.

Checklist

  • Scope stays focused and avoids unrelated cleanup.
  • Docs or release notes were updated when needed.
  • Security-sensitive changes were reviewed for secrets, auth, and unsafe defaults.

Co-authored-by: Robin Bially 7304732+RobinBially@users.noreply.github.com
Co-authored-by: yxr1995-maker 257504378+yxr1995-maker@users.noreply.github.com
Co-authored-by: Eran earan@localhost

Current head: 97a7d9c0f8b9ae3dae9ce87c439e4e84a5564216, rebased onto e4ee8c54b0d3dcf5d245aea4589d608bf118c9c3. Independent implementation review and resolution-only re-audit PASS; source/tests patch equivalent. Document conflict preserves new continuation recovery alongside native raw-content representation. Local product checks NOT RUN; final refreshed hosted CI pending.

@coderabbitai

coderabbitai Bot commented Sep 12, 2026

Copy link
Copy Markdown
Contributor

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown
Contributor

Deterministic PR hygiene checks passed.

@github-actions github-actions Bot added the bug Something isn't working label Sep 12, 2026
lidge-jun and others added 4 commits September 12, 2026 14:03
Co-authored-by: Robin Bially <7304732+RobinBially@users.noreply.github.com>

Co-authored-by: yxr1995-maker <257504378+yxr1995-maker@users.noreply.github.com>

Co-authored-by: Eran <earan@localhost>
@lidge-jun
lidge-jun force-pushed the codex/260912-60plus-thinking branch from 41aa8a5 to 97a7d9c Compare September 12, 2026 05:05
@lidge-jun

Copy link
Copy Markdown
Owner Author

리뷰 · 우선순위 49 / 80

이 PR은 Responses에서 raw reasoning은 content 채널에 두고, summary 이벤트는 provider가 쓴 요약만 쓰게 맞춘다. Antigravity/CCA Gemini는 클라이언트가 preference를 생략하면 요약을 켜는 기본을 시드하고, wire reasoning.summary: "none"과 provider showThinkingSummary: false는 지킨다. DeepSeek/Chat raw를 summary로 승격하지 않고, native Responses replay 표현도 유지한다. src/bridge.ts raw 경로가 summary_* 대신 reasoning_text 계열로 바뀌고, src/server/responses-reasoning-summary-rewrite.ts, google wire, showThinkingSummary 타입이 함께 움직인다. HEAD 81f6cd591에는 이미 rewrite 파일이 있어 부분 랜드/후속 수정 충돌이 보이며 mergeable=CONFLICTING draft다.

#4301과 #4287을 한 계약으로 모은 carry다. 클라이언트가 “생략”으로 직렬화하면 “명시적 none”과 구분이 안 된다는 한계를 본문이 인정한다. 테스트 면은 bridge raw hidden, google adapter/compiler, reasoning summary passthrough/rewrite, show-thinking-summary, combo failover, xAI chat reasoning 등 넓다. 로컬 스위트 미실행·--no-verify push·hosted CI 추적. 응답 슬라이스 중 계약 면적이 가장 크고 충돌도 있다.

경로/심볼 - src/bridge.ts raw reasoning close - summary_text 이벤트를 reasoning_text로 바꾸는 순간, 옛 rewrite/passthrough 가정이 깨진다. HEAD rewrite와 반드시 한 줄로 맞춰야 한다.
경로/심볼 - showThinkingSummary on OcxProviderConfig - provider 기본 시드. CCA Gemini-only classification이 google/vertex/unknown에 새지 않는지 회귀가 핵심이다.
경로/심볼 - responses-reasoning-summary-rewrite.ts - 이미 HEAD에 존재. 이 PR diff가 기존 랜딩과 겹치면 리베이스가 사실상 재작성이다.
경로/심볼 - CONFLICTING + large - CI 큐가 있어도 tip 신뢰도가 낮다.

메인테이너의 판단이 필요한 지점

너의 추천
위험·충돌 대비 점수를 낮게 둔다. 먼저 HEAD rewrite/bridge 상태와 diff를 대조해 “이미 흡수됨”이면 close, 남은 구멍만 있으면 최소 후속 PR로 쪼개라. 지금 draft를 그대로 머지하지 말 것.

이 댓글은 grok-bot이 작성했습니다

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant