fix(container): preserve routed catalogs through recreation - #3822
Conversation
…ip ci] Report declared wire length, observed lower bounds, and decoded sizes without reading rejected payloads further or changing admission and retry policy. Follow up on #3573; thanks to @nowhere1975 for the content-free incident measurements. The issue remains open for exact compact-attempt evidence. Independent source review passed; final remote CI pending.
Exercise the source-build contract from #3421/#3604 and separate-home persistence from #3747 using disposable Docker resources. Preserve original token and both named volumes through container replacement; verify admission without upstream inference. Independent source/security review completed; actual Docker networking and runtime acceptance remain pending final CI. Co-authored-by: Buseong Kim <flight@skyline23.com> Co-authored-by: Ingwannu <ingwannu@users.noreply.github.com>
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. 🗂️ Base branches to auto review (2)
Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Team Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
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. |
…ing [skip ci] CI run 34064754947 built and started the image, then proved internal-only networking suppressed host port publication. Keep actual Compose networking and seed a checked loopback-only provider into disposable state before startup. Verify loaded configuration and hashes through recreation. Co-authored-by: Buseong Kim <flight@skyline23.com> Co-authored-by: Ingwannu <ingwannu@users.noreply.github.com>
리뷰 · 우선순위 66 / 80이 PR은 플랫폼 체인 3층입니다. 베이스는 #3819의 body 브랜치이고, 새 파일 하나 지금 프로브는 랜덤 프로젝트명 보안/격리 면에서도 신경을 썼습니다. 로그에 인자·본문·토큰을 안 찍고, 자식 프로세스 출력 상한·타임아웃·프로세스 그룹 kill, cleanup 실패 시 프로브 실패 처리가 있습니다. 컨테이너 안 state probe는 파일 바이트 대신 sha256만 밖으로 보냅니다. ReadonlyRootfs, CapDrop ALL, no-new-privileges, non-root UID, 홈 700/파일 600도 확인합니다. 현재 경로 scripts/ci/docker-smoke.ts networks.default.internal - 내부 네트워크와 호스트 포트 퍼블리시가 러너 Docker 버전에 따라 충돌할 수 있습니다. PR 본문도 runtime validation pending이라고 적었습니다. 최종 CI가 여기서 빨개질 첫 후보입니다. 메인테이너의 판단이 필요한 지점
너의 추천 이 댓글은 grok-bot이 작성했습니다 |
The Docker diagnostic failed because loadConfig correctly rejects private destinations unless explicitly allowed. A bounded remote fixture reproduced the fallback and passed with the test-only flag. Validate the fixture before startup and report fixed seed-phase codes without exposing child errors. Co-authored-by: Buseong Kim <flight@skyline23.com> Co-authored-by: Ingwannu <ingwannu@users.noreply.github.com>
…eline [skip ci] Remote source startup proved the expected tier/subagent migrations and schema-default persistence, followed by byte-stable second startup. Verify exact seed bytes before startup, six explicit migration/default additions at readiness, and an immutable post-start hash through bootstrap refusal and recreation. Co-authored-by: Buseong Kim <flight@skyline23.com> Co-authored-by: Ingwannu <ingwannu@users.noreply.github.com>
… ci] Real Docker CI exposed foreground shutdown stripping routed catalog rows despite persistent volumes. Declare the existing service lifecycle mode in the runtime image so Docker-managed stop/recreate preserves routed state. Keep the routed fixture and exact-byte checks. Two independent lifecycle/security reviews accepted this bounded packaging change; isolated CLI before/after reproduced the defect and preservation with service mode. Co-authored-by: Buseong Kim <flight@skyline23.com> Co-authored-by: Ingwannu <ingwannu@users.noreply.github.com>
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
Docker-managed shutdown previously restored native Codex state and removed routed catalog rows despite their persistent volume. Set the existing service lifecycle mode in the runtime image so stop/recreate preserves those rows; no service manager is installed and shared CLI cleanup is unchanged.
Add an isolated real image build/start/recreate probe with a routed synthetic catalog. It verifies loaded configuration, expected first-start migrations, readiness, token admission, refused token replacement, effective restrictions, and exact post-start config/token/catalog preservation across replacement. The next PR connects it to CI.
Carries the source-build contract from #3421/#3604 and separate-home persistence from #3747; addresses the remaining #3449 lifecycle validation. Layer 3, based on #3819. Dashboard-driven restart and arbitrary custom mount migration remain outside this proof.
Verification
6f2ad1ef32c113ff5827c58959c85cefa923b15c. Cross-platform CI, lane=all passed (26 successful jobs). The verification ref points to the same commit as the final PR.Checklist
Co-authored-by: Buseong Kim flight@skyline23.com
Co-authored-by: Ingwannu ingwannu@users.noreply.github.com
Maintainer integration
The repository owner explicitly authorized admin integration of this manual chain into dev. The final combined head
6f2ad1ef32c113ff5827c58959c85cefa923b15cpassed all 26 CI jobs. One cancelled macOS shard was rerun with unchanged source, commands and limits; its original stall remains recorded rather than claimed fixed.Independent integration review found no conflict with current dev
a5f9c3497. A clean merge produced tree2c51d5e8042011fe8362e267b224016c6061d684; the relevant OAuth/body/container tests passed there on isolated Linux (129 passed, zero failures). This focused result is distinct from the full CI proof on the combined PR head. The branch commits preserve original contributors through Co-authored-by trailers.