Skip to content

feat(desktop): add the Doctor view (HACK-2214) - #806

Open
roodboi wants to merge 113 commits into
nextfrom
feat/desktop-app-doctor
Open

roodboi wants to merge 113 commits into
nextfrom
feat/desktop-app-doctor

Conversation

@roodboi

@roodboi roodboi commented Nov 14, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Add the optional Doctor pane from apps/desktop/DESIGN.md section 3 (HACK-2214). Targets next after #801 merged; includes core's final script warmups and accepted-refresh tail clearing. No CLI or release changes.

Doctor reads the machine and registered checkouts with bounded read-only CLI probes. Machine findings deduplicate, project findings retain exact checkout evidence, missing rows remain unchecked without being probed, and stale/unknown/incomplete results cannot show all clear. Compose and native backends are explicit; adopted Compose diagnostics retain exact-path coverage. Cards copy an allowlisted, quoted remedy or open documentation; no Doctor fix executes in the app. Card.authored_remedy also exposes a private-construction AuthoredRemedy with executable-free argv() and a bound project_root(), so integrations can bind their selected checked CLI/environment without parsing copy text. Standalone copy display uses terminal PATH; it does not select a candidate CLI or home.

Both async project snapshot paths use ordered refresh/action-epoch admission before clearing a changed selection's old log tail and invalidating Doctor. Machine probes use a private runtime directory or root. Doctor builds a private per-refresh PATH from individually checked executable paths, preserving safe siblings and owner-writable Homebrew/shim layouts while excluding writable directory chains and executable/symlink targets and overrides Git fsmonitor/hooks configuration so nested observations do not execute repository-configured programs.

Visual evidence: Doctor light, Doctor dark. All 19 fixtures are rerendered in light/dark for local evidence.

Verification and open gates

Pinned Rust 1.98.1, offline Cargo, two build jobs, unit-owned target, temporary HOME/HACK_HOME/TMPDIR, autostart disabled:

  • cargo fmt --all --check passed.
  • cargo test --offline --locked -j 2 -p hack-desktop-core: 129 unit + 4 integration passed.
  • Default and screenshot-feature Clippy (--all-targets -- -D warnings) passed.
  • Default and screenshot-feature app builds passed.
  • Offscreen fixture rendering rerun; no desktop window, live home, daemon, Docker, sudo or network probes.

Regression coverage includes process-group termination/pipe deadlines, private Unix sockets and peer ownership, warmed Doctor fake-CLI budgets, exact project/adoption coverage, stale-clean invalidation, backend isolation, command boundaries, harmless fsmonitor/PATH negative controls, and terminal-free command/JSON adapters. These Linux passes do not qualify macOS process/socket behavior, real Doctor probes, clipboard/docs clicks, timer/visibility behavior or a native Terminal adapter.

Exact-head Codex review and the same persistent second-family review remain required; the parent queues Claude after the implementation evidence. Earlier ready notes are superseded. Hosted CI remains separate. No merge is requested before a clean exact-head receipt.

Current boundary fixes preserve Docker HOME/config/context selectors, stream only public plugin-directory metadata, and validate documented standard Unix discovery paths, original/intermediate links, modes, ownership and ACLs before probes. Opaque/custom discovery remains unsupported and requires the same reviewer assessment; no credential-bearing config is copied. Fixed absolute Mutagen selections receive the same preflight. Owner-writable Homebrew/shims remain supported; unknown discovery fails conservatively. macOS ACL mutation grants are refused; Linux access ACLs are conservatively refused. Native ACL execution and real Mac PATH/plugin/context qualification remain open.

DoctorRun.exact_native_root is an explicit pre/post exact-root marker witness; native check IDs alone cannot establish checkout coverage. Fixture integrations must initialize it. Authored remedy argv API is unchanged. Latest filesystem-only fixes preserve rendered fixtures; 38 offscreen renders and inspected light/dark boards remain applicable.

PATH scans now deduplicate canonical directories before caps, retain checked tools at cutoff and mark dependent findings Unknown with incomplete coverage, rather than aborting or implying unsearched tools are missing/healthy. Fake-source tests bind temporary homes and a small explicit tool PATH. DoctorRun.probe_started distinguishes local preflight notes from actual CLI probes; preflight refusal leaves machine coverage unchecked. Darwin ACL queries use acl_get_file with stable pre/post link/target metadata to distinguish absent ACL metadata from missing paths without requiring executable read access; its native fixture remains a required macOS gate. Group-writable Applications/app targets remain refused and explicitly unchecked.

Coverage is scoped to fixed Doctor tool names and check dependencies: unrelated unsafe executables are ignored, independent checks retain their observations, and one card names unchecked tools. Native ACL fixtures include owned 0711/0111 executables, absent ACL, missing path and mutation grants; hosted macOS remains required.

External prerequisite — blocks readiness

The NSS read-path finding 4573575142 remains open. A separate CLI trust-contract guard is assigned to the existing DNS/trust owner; its PR/head is pending. Doctor does not duplicate NSS discovery, modify the CLI, hide profiles through HOME/HACK_HOME/XDG overrides or probe certutil. Readiness requires integration of that guard and resolution of this thread with evidence. Current local review progress does not satisfy that prerequisite.

The full fixed tool/dependency audit is documented in apps/desktop/DOCTOR_TOOLS.md, including actual read invocations, conditional/transitive calls and file-only exclusions. Filtered Docker preserves ingress-network and native-feature warnings from Compose/adaptation files; independent errors, guidance and authored remedies remain visible.

Update (Nov 15)

roodboi and others added 13 commits November 13, 2026 19:01
…CK-2214)

New Cargo workspace under apps/desktop, separate from runtime-core:
- core: lenient models for hack --json and hackd payloads, a CLI runner
  that kills the whole process group on timeout, a read-only hackd socket
  client, project state derivation, list/detail view models and fixtures
  for every designed state. 33 hermetic unit tests.
- app: the gpui-kit window (sidebar, header with Start/Stop/Restart/Open,
  services table, log tail, status bar, light and dark), --fixtures mode
  and offscreen PNG rendering behind the screenshots feature.
- A separate, non-required Linux CI job for the desktop workspace.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…finished one-shot services as completed

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…eout, drop stale log tails

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…abel Docker state as Docker

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…arden chunk parsing, never count unknown as stopped

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…, gate native actions and logs, clear recovered failures

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…er peer

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…iled log read as failed

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…r and machine rows

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Doctor runs once outside any project and once per project, and the app
shows the findings as cards grouped by area: machine findings once,
project findings with the projects they affect, ok checks collapsed into
a count, and one action per card (copy a known command or open a doc;
a one-click fix waits for request R7a). Includes doctor and doctor-clean
fixtures and hermetic tests, including a report kept from exit 1.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@vercel

vercel Bot commented Nov 14, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
hack-docs Ready Ready Preview Nov 15, 2026 2:50pm UTC

Request Review

@linear-code

linear-code Bot commented Nov 14, 2026

Copy link
Copy Markdown

HACK-2214

@roodboi

roodboi commented Nov 14, 2026

Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 14, 2026 •

Copy link
Copy Markdown
Codex Review Summary: ✅ Completed

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-15T14:53:04.106107Z 4eb4eee Manual request
🔒 Security Review ✅ Completed 2026-11-15T14:56:23.831212Z 4eb4eee Manual request

Security findings

Advisory findings (17)

ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

… as down

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: fbeb19d77e

ℹ️ 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".

Comment thread apps/desktop/core/src/doctor.rs Resolved
Comment thread apps/desktop/core/src/doctor.rs Resolved

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛡️ Codex Security Review · Automatically triggered

Here are some automated security review suggestions for this pull request.

Reviewed commit: fbeb19d77e

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

Comment thread apps/desktop/core/src/source.rs Resolved
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
roodboi and others added 3 commits November 13, 2026 20:07
…verage, budget, refresh, stale guard)

- Map the CLI's real check ids (caddy hosts is project-scoped; browser,
  secret, compose and amd64 checks added); a test reads them from
  src/commands/doctor.ts and src/lib/doctor-*.ts.
- Project repairs copy one exact quoted command with --path; daemon
  repairs follow the reported state; otherwise the doc.
- Only an explicit ok counts as passed; unknown statuses and reports
  without a checks array show as could-not-check.
- Partial or failed runs never look clean: coverage line and grey/amber
  sidebar tone.
- 90 s total budget with 4 at once; late projects are not checked.
- Refresh every 10 minutes while visible and on reopen when older;
  a generation guard drops superseded results and re-runs when the
  project set changed.
- The machine run uses a directory outside any Hack project.
- Project headers link to their Doctor findings.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…; add Doctor boards

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@roodboi

roodboi commented Nov 14, 2026

Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 669b92b0d4

ℹ️ 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".

Comment thread apps/desktop/core/src/doctor.rs Resolved
Comment thread apps/desktop/core/src/doctor.rs Resolved
@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review · Automatically triggered

Security review completed. No security issues were found in this pull request.

Reviewed commit: 669b92b0d4

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

roodboi and others added 2 commits November 13, 2026 20:19
…dentity, window visibility, project markers, named remedies)

- secrets hygiene takes its scope from the run that reported it, so the
  global Hack home audit is kept with no projects registered.
- The stale guard compares (name, checkout, backend), not names.
- Automatic doctor runs need the pane shown in a visible window; stale or
  old results refresh when the window becomes visible again.
- The neutral directory check resolves symlinks, recognises every CLI
  project marker (hack.project.json, .hack/, .dev/ with a project file)
  and fails closed on inspection errors.
- A check's own named remedy wins: caddy hosts copies
  hack restart --path '<root>' (or hack global up), not doctor --fix.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…s only

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@roodboi

roodboi commented Nov 15, 2026

Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Can't wait for the next one!

Reviewed commit: aa8c30e36c

ℹ️ 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".

@roodboi

roodboi commented Nov 15, 2026

Copy link
Copy Markdown
Contributor Author

Ready for lead: aa8c30e

The head contains next at 34b5053. It is mergeable and is not a draft.

What changed since the last note: fixes for the bot findings.

  • Doctor's private tool PATH always includes a trusted dirname, which the candidate launchers need.
  • Unrelated test-expectation fixes were propagated.
  • With HACK_NATIVE_BINARY unset, Doctor now checks the hack-native the CLI would take from beside its executable. If that file is unsafe, Doctor refuses. Otherwise it passes the checked path to the CLI.

Decision flagged: if the CLI is a #! launcher, the file it finally runs can't be known. Doctor then points the CLI at a path that can't exist inside its private folder, so native checks report the runtime as unavailable instead of running an unchecked fallback. Setting HACK_NATIVE_BINARY restores the check. This is documented in the README.

What ran

  • apps/desktop: cargo fmt --check, workspace clippy with all features and -D warnings, core clippy for aarch64-apple-darwin, and bash scripts/test.sh (Linux, 152 passed, 1 skipped). All hermetic: temp HOME, no Docker, no real Hack home.
  • Hosted: Desktop app (Linux build, core tests) passed. The required check passed at this head.
  • Persistent reviewer (Codex gpt-6.1-sol): clean at this SHA.
  • @codex review: clean at aa8c30e36c. computer pr review-status: CLEAR at aa8c30e.

Not verified or not waited for

  • Hosted macOS jobs (Desktop app macOS build and core tests, Candidate core macOS, Config compiler macOS) were queued and I did not wait for them.
  • The automatic Codex security review was still running when I posted this; it is non-blocking.
  • No live macOS Doctor run; native-runtime checks on a real Mac are unverified.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛡️ Codex Security Review · Automatically triggered

Here are some automated security review suggestions for this pull request.

Reviewed commit: aa8c30e36c

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

Comment thread apps/desktop/core/src/source.rs Resolved
@chatgpt-codex-connector

Copy link
Copy Markdown

Codex couldn't complete this request. Try again later.

roodboi and others added 2 commits November 15, 2026 09:11
# Conflicts:
#	apps/desktop/README.md
#	apps/desktop/app/src/main.rs
#	apps/desktop/app/src/view.rs
#	apps/desktop/core/src/runner.rs
#	apps/desktop/core/src/source.rs
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@roodboi

roodboi commented Nov 15, 2026

Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Delightful!

Reviewed commit: 868284df21

ℹ️ 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".

…paths

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛡️ Codex Security Review · Automatically triggered

Here are some automated security review suggestions for this pull request.

Reviewed commit: 868284df21

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

Comment thread apps/desktop/core/src/source.rs Resolved
@roodboi

roodboi commented Nov 15, 2026

Copy link
Copy Markdown
Contributor Author

@codex review

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 0dcc2323c5

ℹ️ 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".

Comment thread apps/desktop/core/src/doctor_plugins.rs Resolved
@roodboi

roodboi commented Nov 15, 2026

Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: bca7e9c685

ℹ️ 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".

Comment thread apps/desktop/core/src/doctor.rs Resolved
@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review · Automatically triggered

Security review completed. No security issues were found in this pull request.

Reviewed commit: bca7e9c685

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

…fore Doctor

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@roodboi

roodboi commented Nov 15, 2026

Copy link
Copy Markdown
Contributor Author

@codex review

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Chef's kiss.

Reviewed commit: 85c980b63c

ℹ️ 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".

@roodboi

roodboi commented Nov 15, 2026

Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Swish!

Reviewed commit: 4eb4eee498

ℹ️ 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".

@roodboi

roodboi commented Nov 15, 2026

Copy link
Copy Markdown
Contributor Author

Ready for lead: 4eb4eee

The base is next and the head contains next at 081a526. It is mergeable and not a draft.

What changed since the last note

Open decisions (Doctor security limits, documented in the README, unmitigated):

  1. When the CLI is a #! launcher, Doctor cannot locate the hack-native the CLI would fall back to, so it points the CLI at a path that cannot exist and native checks report the runtime unavailable.
  2. When the CLI is a #! launcher, Doctor cannot locate the hack-lifecycle-supervisor the CLI finally runs. Unlike native, the CLI still runs it unchecked. For a compiled CLI the adjacent supervisor is checked.
  3. Shared libraries loaded by compiled tools are not validated: ELF RUNPATH/RPATH, loader configuration and cache, Mach-O @rpath/LC_RPATH, and the dyld shared cache. Inherited loader variables are removed.

My reviewer judged deferring these acceptable for an unsupported preview, but they need your explicit acceptance.

What ran

  • apps/desktop: cargo fmt --check, workspace clippy with all features and -D warnings, core clippy for aarch64-apple-darwin, and bash scripts/test.sh (Linux, 176 passed, 1 skipped). All hermetic.
  • Lead instruction checks: the diff against next touches only apps/desktop/, so the CLI reference, machine-output table, error-code reference and TLA coverage doc need no regeneration, and the contract and spawn-bound tests and the nine acceptance scripts do not apply.
  • Persistent reviewer (Codex gpt-6.1-sol, rounds 44 to 51): clean at this SHA.
  • @codex review: clean at 4eb4eee498. computer pr review-status: CLEAR at 4eb4eee. The required check and Desktop app (Linux) passed.

Not verified or not waited for: hosted macOS jobs (queued); the automatic Codex security review of this head (running, non-blocking); no live Doctor run on a Mac.

@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review · Automatically triggered

Security review completed. No security issues were found in this pull request.

Reviewed commit: 4eb4eee498

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex couldn't complete this request. Try again later.

This branch has not been deployed

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant