fix: bound multipart encrypted agent task recovery - #4364
Conversation
Co-authored-by: Cortes Ventures <admin@cortesventures.com>
Co-authored-by: SB Yoon <44089734+yansigit@users.noreply.github.com>
Preserve ordered whole-token parts and input identity through one admitted recovery request. Detect split-token structure without authorizing reconstruction. Local tests NOT RUN by maintainer instruction; hosted CI follows.
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: trueThanks 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 |
Co-authored-by: Kosta Milovanovic <kosta963@gmail.com>
|
✅ Deterministic PR hygiene checks passed. |
리뷰 · 우선순위 71 / 80이 PR은 암호화된 agent task recovery가 한 번에 최대 32개의 연속·완전한 Fernet 파트만 한 번의 인증된 ChatGPT recovery 요청으로 복구하게 합니다. 합산 ciphertext는 2MiB 한도를 유지하고, 캐시 키에 파트 경계·순서를 넣으며, 치환 전에 input 스냅샷으로 재검증합니다. 추가 upstream 재시도는 없습니다. #3661 관련이고, 지금은 MERGEABLE draft입니다.
현재 라인 / 심볼 - 메인테이너의 판단이 필요한 지점
너의 추천 이 댓글은 grok-bot이 작성했습니다 |
Share browser session readiness with the shell, explicitly refresh retained resources after pairing, distinguish authentication/permission/network/shape failures, and preserve labelled stale data only for non-auth failures. Show hub identity and current-origin pairing command with copy and cancellation feedback. Local suites NOT RUN; hosted build and rendered review follow.
Carry #4119 with current structured-output fields preserved, retained-byte accounting, and conditional-async MiMo delegation. Co-authored-by: DamnUi <damnui@users.noreply.github.com>
…ence Carry #4317 intent with direct local transport, pre-header loopback validation, explicit management ingress selection, redirect refusal and admin environment removal from the inference child. Preserve the catalog deadline and post-read config reload. Local suites NOT RUN; hosted regressions follow. Co-authored-by: Cortes Ventures <admin@cortesventures.com>
…codex/260912-60plus-stream-cursor
…codex/260912-60plus-stream-sideband
…o codex/260912-60plus-models-images
…codex/260912-60plus-operations-pairing
…into codex/260912-60plus-operations-transport
…t into codex/260912-operations-client-probe
…to codex/260912-60plus-operations-listeners
…ex/260912-60plus-v2-recovery
✅ READY
Hygiene✅ Deterministic PR hygiene checks passed. |
…log tests Pre-open the voice/audio upstream before the client 101, reuse that socket on attach, and pass audio protocol/abort/finish fields through. Catalog launcher tests now read OPENCODEX_OPENCODE_API_KEY and do not require Bun to honor HTTP_PROXY. Dashboard sidecar optional chaining and the French Hub product name keep pairing tests green after the audio dashboard merge.
Pairing tests seed dashboard sidecar vision/webSearch so the overview panels do not crash after session install. Catalog transport tests stop using a global fetch proxy probe and assert the spawn env object the launcher actually passes.
|
Maintainer integration record — singles lane tip, merged by @lidge-jun. Tip of the cumulative singles chain. Merging with a merge commit lands all nine and lets GitHub close each link as These nine share no ordering dependency beyond two pairs — #4356/#4363 both touch
|
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. |
Summary
Recover one ordered, consecutive run of up to 32 complete encrypted task parts through the existing authenticated ChatGPT recovery request. The aggregate ciphertext limit stays 2 MiB, cache identity includes part boundaries/order, and input is revalidated before replacement. No additional upstream retries are introduced.
Relates to #3661. Bounded split-token detection prevents otherwise unreadable fragments from becoming plaintext during normalization, but does not reconstruct tokens or claim upstream multipart fidelity. Independent readable task text retains the existing mixed-content policy. #3794 diagnostics remain intact.
This PR is independent of plaintext-prevention PR #4351; both target dev. Read-only merge previews against current dev and between siblings are clean. Neither PR closes #3661.
This stacked tip also carries the hub browser pairing panel from #4378. Capture of that panel on the current GUI build:
Verification
dev:bun run typecheck;bun testof the touched catalog/pairing/French files.git diff --check: passed (whitespace only).origin/dev4a49d7f34. Earlier heads are not verification evidence.Checklist