Repository navigation
fix: packaged macOS startup probes and desktop ownership safety - #6286
Conversation
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. Note Currently processing new changes in this PR. This may take a few minutes, please wait... ⚙️ Run configurationConfiguration used: Repository: lidge-jun/opencodex/.coderabbit.yaml Review profile: ASSERTIVE Plan: Advanced Run ID: 📒 Files selected for processing (28)
✨ Finishing Touches📝 Generate docstrings
🧪 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. |
리뷰 · 우선순위 58 / 80이 PR은 macOS에서 데스크톱 앱이 프록시를 소유할 때 Startup safety가 그걸 제대로 알아보게 고칩니다. 예전에는 패키징된 CLI가 가상 소스 경로로 프로브를 띄우다 실패했고, 데스크톱 감독도 보호로 인정하지 않았습니다. 이번에는 라인 - 메인테이너의 판단이 필요한 지점 서비스가 너의 추천
이 댓글은 grok-bot이 작성했습니다 |
Re-enter packaged probes without a virtual source entrypoint, require fresh matching desktop evidence, and keep desktop recovery guidance while the claim remains held. Cover packaged replacement, evidence failures and competing starter controls. Co-authored-by: codingbo <cnsdbo@163.com>
f483808 to
9913594
Compare
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. |
|
Maintainer integration into Local focused verification passed: startup classification (41 cases), additional desktop health policy (2), desktop ownership/login/process evidence (4), the real compiled cache subprocess before/after bundled-executable replacement (1), and GUI startup/reconciliation (11). The two new service files were renamed with the existing The broader Per the owner’s updated rule, Cross-platform CI is deferred to one final union run after all lanes finish. Per-PR CI is not a merge gate and is not claimed as green. No further rebase is required unless GitHub reports an actual conflict; this PR is mergeable.
|
Summary
Closes #6222. Carries codingbooo’s draft #6256 (commits
1e641878c9f77064fa154379f9fd2401d1e815d6andd0b4bd5cde94329ffe324564ab498aec8dd0b883) onto currentdev.The bundled startup-health reader now re-enters the standalone CLI with
selfLaunchArgvinstead of trying to execute a virtual source path. macOS reports desktop protection only after matching the recorded installation, enabled and loaded login registration, and live desktop-to-bundled-proxy process paths. PID and ownership changes revoke the verdict.A desktop claim remains held when those checks fail. Stale and failed results stay at risk, service/shim installation and repair stay disabled, and both CLI and dashboard recovery guidance point to reopening OpenCodex and checking Start at Login. The GUI no longer recommends a competing starter through its recovery commands. All ten locales and ownership/user docs are updated.
Co-authored-by: codingbo cnsdbo@163.com
Verification
bun run typecheck— passed before and after rebasing ontofdf4177dfe.bun test tests/service/autostart-health.test.ts tests/service/service-desktop-startup-health.test.ts tests/service/service-desktop-startup.test.ts tests/lib/self-launch-argv.test.ts tests/gui/startup-health-ui.test.ts tests/config/settings-startup-health-seam.test.ts— focused behavior coverage passed. The layout naming mismatch discovered in the combined run was fixed by using the existingservice-naming convention.bun test tests/test-layout-tooling.test.ts tests/test-layout.test.ts— 18 passed, 0 failed.bun test tests/server/startup-health-packaged-probe.test.ts— compiled default cache subprocess passed before and after executable replacement. Uses the release builder’s macOS ad-hoc signing step. A separate compiled ablation with the old arguments reproduceddiagnosticStale: true.cd gui && bun test tests— 2,645 passed, 0 failed; after the final recovery-summary change,bun test tests/startup-minimal.test.tsx tests/startup-install-result-reconciliation.test.tsxpassed all 11 cases, including starter install/repair guards and the CLI-owned control.cd gui && bun run lint && bun run lint:i18n && bun run build— passed; the final recovery-summary change was rebuilt.bun run structure:check,bun scripts/file-size-ratchet.ts,bun run privacy:scan, andgit diff --check— passed.cd docs-site && bun install --frozen-lockfile && bun run build— passed, 545 pages and 74,719 internal links checked.bun run build:standalone -- --out .tmp/6222-standaloneand isolated bundledocx __startup-health— passed with a fresh result.ocx restoreand omitted service/shim commands. At the browser’s minimum 500px viewport, no horizontal overflow was observed.bun run test:changed— completed unsuccessfully on the pre-rebase head: exit 124 at the built-in 900-second bound, after a 305-second lock wait. Its buffered output records 334 failing-case entries, predominantly cleanup refusals for test-created fixtures inside this managed worktree under the protected real~/.codextree. It ended withtests/server/api-keys-routes.test.tsstill running (857 seconds); a fresh-process attribution run of that file passed all 48 cases in 755 ms. This broad local result is not passing evidence. The focused startup regressions pass; per the owner’s updated integration rule, Cross-platform CI is deferred to the final union run rather than used as a per-PR merge gate.Full local backend suite exception: concurrent integration worktrees share this machine and serialize through the user test lock (changed coverage waited 305 seconds). Focused regressions passed and import-connected coverage was attempted with the limitation above. Full Linux/macOS suite validation is assigned to exact-head Cross-platform CI; native Windows full-suite coverage is outside the repository’s automatic PR selection, while Windows packaging/keyring/service smokes run on this head. No reboot, signed installer/menu update, or installed desktop replacement was performed.
Screenshot from the actual Startup components with a failed desktop-supervision fixture, uploaded only on
pr-assets:Checklist
Rebased onto the latest
dev(fdf4177dfe, test-only Windows fixture stabilization); current review head is9913594337a5b5340b46d81fc5c85df2c0f84d0b. The owner subsequently changed integration policy: no further rebase unless GitHub reports an actual conflict, and Cross-platform CI is deferred to a single final union run. Per-PR run 36663535186 is not claimed as merge evidence; the earlier run was superseded by the prior rebase.