Skip to content

E2.3.1: Compile mapped syscall policy - #310

Open
omry wants to merge 1 commit into
pr308from
pr309
Open

omry wants to merge 1 commit into
pr308from
pr309

Conversation

@omry

@omry omry commented Oct 30, 2026 •

Copy link
Copy Markdown
Owner

Mapped policy needs namespace, mount and handle restrictions even when trusted setup has extra capabilities. Add a private pure compiler over the existing pinned seccomp seed, with native-only clone rules, unconditional clone3 ENOSYS, kernel/catalog capability checks and an immutable canonical policy identity.

Keep consuming engine integration in E2.3.2 and final entry-plan construction in E4.1.1. This preparatory compiler does not activate public mapped execution.

Validation: focused compiler and ordinary seccomp regressions with Go coverage, targeted vet, Python checks, all shipping/conformance Go packages, linux-amd64 build and CLI smoke. The retained WSL tmpfs-test exclusion and explicit Docker skip remain; exact-head CI and runtime qualification are separate gates.


@omry

omry commented Oct 30, 2026 •

Copy link
Copy Markdown
Owner Author

PR-cycle state — maintained automatically. Do not edit by hand.

Mechanical PR-cycle state (JSON)
{
  "approval": {
    "candidate_revision_fingerprint": "sha256:689d71c3218592034ffd8aac3cd985927909a8a35716f70f7ae6a7f7c636bbb9",
    "evidence": {
      "attestations": [],
      "candidate_revision_fingerprint": "sha256:689d71c3218592034ffd8aac3cd985927909a8a35716f70f7ae6a7f7c636bbb9",
      "check_conclusions": [
        {
          "conclusion": "SUCCESS",
          "name": "Bash native evidence checks",
          "run_id": 124116908739
        },
        {
          "conclusion": "SUCCESS",
          "name": "Gitar",
          "run_id": 124108263905
        },
        {
          "conclusion": "SUCCESS",
          "name": "Linux CI checks",
          "run_id": 124108271284
        },
        {
          "conclusion": "SUCCESS",
          "name": "Target smoke (darwin-amd64)",
          "run_id": 124108271697
        },
        {
          "conclusion": "SUCCESS",
          "name": "Target smoke (darwin-arm64)",
          "run_id": 124108271774
        },
        {
          "conclusion": "SUCCESS",
          "name": "Target smoke (linux-amd64)",
          "run_id": 124108271544
        },
        {
          "conclusion": "SUCCESS",
          "name": "Target smoke (linux-arm64)",
          "run_id": 124108271669
        },
        {
          "conclusion": "SUCCESS",
          "name": "Windows host smoke (windows-amd64)",
          "run_id": 124108271756
        },
        {
          "conclusion": "SUCCESS",
          "name": "Windows host smoke (windows-arm64)",
          "run_id": 124108271862
        }
      ],
      "delivery_deferral_ledger_digest": "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
      "finding_dispositions_digest": "sha256:0b67b88b41e8d24c5c8f9e98b57067f6578a8d4a9986d504ed97ab6eece423da",
      "operation_identity": "sha256:2510c78e32f74d4aaaf6a5b57eb32dd3b359593436a2d84fa9bcc1e620793816",
      "review_request": {
        "body_digest": "sha256:d3bfcb4270cc28d07e2b37804c8eb7e4a80ab1ff7044d3998b935107b7b1534d",
        "id": 6525026859
      },
      "review_result": {
        "body_digest": "sha256:9bbe01a5215076ac0a82dd8c431ef3b79d39e36f96e5be2abd005f34f00fccac",
        "id": 6525053522
      }
    },
    "evidence_fingerprint": "sha256:bd35221c51dcc059670bd54a118aa4c4fa34bb4d2ce7783cb96a1d68158c0f6c",
    "head_sha": "5be35af35ca2ed25b327d9c905839410d2d0d819",
    "operation_identity": "sha256:2510c78e32f74d4aaaf6a5b57eb32dd3b359593436a2d84fa9bcc1e620793816",
    "review_request_id": 6525026859,
    "review_result_id": 6525053522,
    "status": "approved-evidence-recorded"
  },
  "candidate_revision_fingerprint": "sha256:689d71c3218592034ffd8aac3cd985927909a8a35716f70f7ae6a7f7c636bbb9",
  "check_conclusions": [
    {
      "conclusion": "SUCCESS",
      "name": "Bash native evidence checks",
      "run_id": 124116908739
    },
    {
      "conclusion": "SUCCESS",
      "name": "Gitar",
      "run_id": 124108263905
    },
    {
      "conclusion": "SUCCESS",
      "name": "Linux CI checks",
      "run_id": 124108271284
    },
    {
      "conclusion": "SUCCESS",
      "name": "Target smoke (darwin-amd64)",
      "run_id": 124108271697
    },
    {
      "conclusion": "SUCCESS",
      "name": "Target smoke (darwin-arm64)",
      "run_id": 124108271774
    },
    {
      "conclusion": "SUCCESS",
      "name": "Target smoke (linux-amd64)",
      "run_id": 124108271544
    },
    {
      "conclusion": "SUCCESS",
      "name": "Target smoke (linux-arm64)",
      "run_id": 124108271669
    },
    {
      "conclusion": "SUCCESS",
      "name": "Windows host smoke (windows-amd64)",
      "run_id": 124108271756
    },
    {
      "conclusion": "SUCCESS",
      "name": "Windows host smoke (windows-arm64)",
      "run_id": 124108271862
    }
  ],
  "check_observations": [
    {
      "checks": [
        {
          "conclusion": "SKIPPED",
          "name": "Bash native evidence checks",
          "run_id": 124088056884,
          "run_status": "completed",
          "status": "failure",
          "url": "https://github.com/omry/reploy/actions/runs/41060574550/job/124088056884"
        },
        {
          "conclusion": "SUCCESS",
          "name": "Gitar",
          "run_id": 124078972685,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/omry/reploy/runs/124078972685"
        },
        {
          "conclusion": "SUCCESS",
          "name": "Gitar",
          "run_id": 124082691472,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/omry/reploy/runs/124082691472"
        },
        {
          "conclusion": "SUCCESS",
          "name": "Linux CI checks",
          "run_id": 124078969627,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/omry/reploy/actions/runs/41060574550/job/124078969627"
        },
        {
          "conclusion": "SUCCESS",
          "name": "Target smoke (darwin-amd64)",
          "run_id": 124078970079,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/omry/reploy/actions/runs/41060574550/job/124078970079"
        },
        {
          "conclusion": "SUCCESS",
          "name": "Target smoke (darwin-arm64)",
          "run_id": 124078970276,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/omry/reploy/actions/runs/41060574550/job/124078970276"
        },
        {
          "conclusion": "SUCCESS",
          "name": "Target smoke (linux-amd64)",
          "run_id": 124078970201,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/omry/reploy/actions/runs/41060574550/job/124078970201"
        },
        {
          "conclusion": "SUCCESS",
          "name": "Target smoke (linux-arm64)",
          "run_id": 124078970244,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/omry/reploy/actions/runs/41060574550/job/124078970244"
        },
        {
          "conclusion": "FAILURE",
          "name": "Windows host smoke (windows-amd64)",
          "run_id": 124078970059,
          "run_status": "completed",
          "status": "failure",
          "url": "https://github.com/omry/reploy/actions/runs/41060574550/job/124078970059"
        },
        {
          "conclusion": "FAILURE",
          "name": "Windows host smoke (windows-arm64)",
          "run_id": 124078969977,
          "run_status": "completed",
          "status": "failure",
          "url": "https://github.com/omry/reploy/actions/runs/41060574550/job/124078969977"
        }
      ],
      "head_sha": "3e82565b49e33b8acac171981379d382abdb7e9a",
      "id": "sha256:7be50f7af93751a17b49eeda9a095c193919d4c2350a7c92a2d188f150235e6f",
      "required_checks": [
        "Bash native evidence checks",
        "Gitar",
        "Linux CI checks",
        "Target smoke (darwin-amd64)",
        "Target smoke (darwin-arm64)",
        "Target smoke (linux-amd64)",
        "Target smoke (linux-arm64)",
        "Windows host smoke (windows-amd64)",
        "Windows host smoke (windows-arm64)"
      ],
      "status": "failure"
    },
    {
      "checks": [
        {
          "conclusion": "SUCCESS",
          "name": "Bash native evidence checks",
          "run_id": 124116908739,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/omry/reploy/actions/runs/41069128871/job/124116908739"
        },
        {
          "conclusion": "SUCCESS",
          "name": "Gitar",
          "run_id": 124108263905,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/omry/reploy/runs/124108263905"
        },
        {
          "conclusion": "SUCCESS",
          "name": "Linux CI checks",
          "run_id": 124108271284,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/omry/reploy/actions/runs/41069128871/job/124108271284"
        },
        {
          "conclusion": "SUCCESS",
          "name": "Target smoke (darwin-amd64)",
          "run_id": 124108271697,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/omry/reploy/actions/runs/41069128871/job/124108271697"
        },
        {
          "conclusion": "SUCCESS",
          "name": "Target smoke (darwin-arm64)",
          "run_id": 124108271774,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/omry/reploy/actions/runs/41069128871/job/124108271774"
        },
        {
          "conclusion": "SUCCESS",
          "name": "Target smoke (linux-amd64)",
          "run_id": 124108271544,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/omry/reploy/actions/runs/41069128871/job/124108271544"
        },
        {
          "conclusion": "SUCCESS",
          "name": "Target smoke (linux-arm64)",
          "run_id": 124108271669,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/omry/reploy/actions/runs/41069128871/job/124108271669"
        },
        {
          "conclusion": "SUCCESS",
          "name": "Windows host smoke (windows-amd64)",
          "run_id": 124108271756,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/omry/reploy/actions/runs/41069128871/job/124108271756"
        },
        {
          "conclusion": "SUCCESS",
          "name": "Windows host smoke (windows-arm64)",
          "run_id": 124108271862,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/omry/reploy/actions/runs/41069128871/job/124108271862"
        }
      ],
      "head_sha": "5be35af35ca2ed25b327d9c905839410d2d0d819",
      "id": "sha256:ffe3dd886ffdc2e86439ce62a5cac519a89029dcab9b42e3be9fffb335a64b9d",
      "required_checks": [
        "Bash native evidence checks",
        "Gitar",
        "Linux CI checks",
        "Target smoke (darwin-amd64)",
        "Target smoke (darwin-arm64)",
        "Target smoke (linux-amd64)",
        "Target smoke (linux-arm64)",
        "Windows host smoke (windows-amd64)",
        "Windows host smoke (windows-arm64)"
      ],
      "status": "success"
    }
  ],
  "delivery_deferral_ledger_digest": "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
  "delivery_deferrals": [],
  "findings": [
    {
      "disposition": "verified current-slice truth fix",
      "evidence": [
        "https://github.com/omry/reploy/actions/runs/41060574550/job/124078970059",
        "https://github.com/omry/reploy/actions/runs/41060574550/job/124078969977",
        "/home/omry/.local/state/awd/reploy-E-delivery-20261030/pr310-pre-cycle-seed-eol-proof.json",
        "/home/omry/.local/state/awd/reploy-E-delivery-20261030/pr310-R1-correction-proof.json",
        "/home/omry/.local/state/awd/reploy-E-delivery-20261030/pr310-R2-local.json",
        "/home/omry/.local/state/awd/reploy-E-delivery-20261030/pr310-R2-checks.json",
        "https://github.com/omry/reploy/pull/310#issuecomment-6525053522"
      ],
      "id": "E231-CI-001",
      "invariant": "The compiler receives the exact pinned seccomp seed bytes under supported Windows checkout.",
      "proposed_fix_paths": [
        ".gitattributes"
      ],
      "qualification": "Fix remains pending. Actual corrected-head Windows CI must pass.",
      "resolution": "Actual corrected-head Windows AMD64 and ARM64 CI, all other applicable checks, current full local validation and fresh regular review passed. Original qualification text is retained as the historical pending assessment for the original reviewed head.",
      "resolution_evidence": [
        "/home/omry/.local/state/awd/reploy-E-delivery-20261030/pr310-R1-correction-proof.json",
        "/home/omry/.local/state/awd/reploy-E-delivery-20261030/pr310-R2-local.json",
        "/home/omry/.local/state/awd/reploy-E-delivery-20261030/pr310-R2-checks.json",
        "https://github.com/omry/reploy/pull/310#issuecomment-6525053522"
      ],
      "resolved_on_head": "5be35af35ca2ed25b327d9c905839410d2d0d819",
      "root_cause": "Windows checkout converts unpinned JSON line endings to CRLF. New mapped compiler integrity tests correctly refuse the altered embedded seed.",
      "source": "CI check evidence; coordinator diagnosis, not a remote-review finding",
      "status": "resolved"
    }
  ],
  "pr": {
    "base_ref": "pr308",
    "base_sha": "9210b3c8e4387af8a72bf6cd6c11ae0f4e2952c3",
    "body_digest": "sha256:e09a75084378cc80088700ff3caf1521c872f1473285978a53d93bae2b3adf2d",
    "body_identity_version": 2,
    "diff_digest": "sha256:a9564b6f23902aefc0a7ea370cc82d2e1dd188fcff2d36a75c6c913ddc7e7e80",
    "head_ref": "pr309",
    "head_sha": "5be35af35ca2ed25b327d9c905839410d2d0d819",
    "pr": 310,
    "repository": "omry/reploy",
    "scope_authority": [
      {
        "digest": "sha256:f5058bb465d6af9d58b98eb6fde19edd4ed710aff1cc2588173757d37cdbbc58",
        "path": "docs/MULTI_IDENTITY_E_DESIGN.md"
      },
      {
        "digest": "sha256:3ef44a7a0be43648f5df1faad39b16101978662c58c87d6fa8e7409093a58fe9",
        "path": "docs/MULTI_IDENTITY_IMPLEMENTATION_PLAN.md"
      },
      {
        "digest": "sha256:b049714f4a85d0f3fb204615897374377690564627bfcdd03e50c945fb042826",
        "path": "docs/MULTI_IDENTITY_SECURITY_CONTRACT.md"
      }
    ],
    "title_digest": "sha256:5ac1556c40ac3423f2e41485431d63283a02107e4e5190a3e6a17e5fd060cfc3"
  },
  "record_version": 6,
  "review_observations": [],
  "review_requests": [
    {
      "base_established_at": "2026-10-30T13:07:01Z",
      "base_ref": "pr308",
      "base_sha": "9210b3c8e4387af8a72bf6cd6c11ae0f4e2952c3",
      "body_digest": "sha256:795d3ce9dc3bca02fca198f79393462b2f832aa343580ab4adca91cbfb9382eb",
      "created_at": "2026-10-30T13:42:02Z",
      "head_sha": "3e82565b49e33b8acac171981379d382abdb7e9a",
      "id": 6524248490,
      "kind": "regular-review"
    },
    {
      "base_established_at": "2026-10-30T13:07:01Z",
      "base_ref": "pr308",
      "base_sha": "9210b3c8e4387af8a72bf6cd6c11ae0f4e2952c3",
      "body_digest": "sha256:d3bfcb4270cc28d07e2b37804c8eb7e4a80ab1ff7044d3998b935107b7b1534d",
      "created_at": "2026-10-30T14:18:52Z",
      "head_sha": "5be35af35ca2ed25b327d9c905839410d2d0d819",
      "id": 6525026859,
      "kind": "regular-review"
    }
  ],
  "review_results": [
    {
      "base_ref": "pr308",
      "base_sha": "9210b3c8e4387af8a72bf6cd6c11ae0f4e2952c3",
      "body_digest": "sha256:765052277fc7dba1b1b943c60089cc8c77a002c10b879fa267fa735a3e98722c",
      "commit_id": "3e82565b49e33b8acac171981379d382abdb7e9a",
      "id": 6524271284,
      "inline_message_ids": [],
      "request_comment_id": 6524248490,
      "result_kind": "clean",
      "status": "result",
      "submitted_at": "2026-10-30T13:43:14Z",
      "unresolved_thread_ids": []
    },
    {
      "base_ref": "pr308",
      "base_sha": "9210b3c8e4387af8a72bf6cd6c11ae0f4e2952c3",
      "body_digest": "sha256:9bbe01a5215076ac0a82dd8c431ef3b79d39e36f96e5be2abd005f34f00fccac",
      "commit_id": "5be35af35ca2ed25b327d9c905839410d2d0d819",
      "id": 6525053522,
      "inline_message_ids": [],
      "request_comment_id": 6525026859,
      "result_kind": "clean",
      "status": "result",
      "submitted_at": "2026-10-30T14:20:06Z",
      "unresolved_thread_ids": []
    }
  ],
  "revision_fingerprint": "sha256:689d71c3218592034ffd8aac3cd985927909a8a35716f70f7ae6a7f7c636bbb9",
  "rounds": [
    {
      "applied_fix_paths": [
        ".gitattributes"
      ],
      "disposition_changes": [],
      "effective_diff_digest": "sha256:a9564b6f23902aefc0a7ea370cc82d2e1dd188fcff2d36a75c6c913ddc7e7e80",
      "finding_ids": [
        "E231-CI-001"
      ],
      "invariants": [
        "Retain exact pinned embedded seed bytes on Windows checkout.",
        "Preserve approved native ABI and capability compiler contract and ordinary policy behavior.",
        "Keep public mapped activation guarded.",
        "Every exact-head ci.yml job and fresh regular review must pass before approval."
      ],
      "outcome": "corrected-head-needs-review",
      "proposed_fix_paths": [
        ".gitattributes"
      ],
      "resulting_head": "5be35af35ca2ed25b327d9c905839410d2d0d819",
      "review_observation_id": null,
      "review_request_id": 6524248490,
      "review_result_id": 6524271284,
      "reviewed_head": "3e82565b49e33b8acac171981379d382abdb7e9a",
      "root_cause": "Windows checkout converted embedded pinned JSON to CRLF. A path-specific LF attribute now preserves exact upstream seed bytes, proven with the actual attributes in a disposable core.autocrlf=true Git fixture. Full local validation passed; original finding growth bundle completed. Corrected-head Windows CI and fresh regular review remain pending.",
      "round": 1,
      "unresolved_current_slice_findings": 1,
      "unresolved_design_blockers": 0
    },
    {
      "applied_fix_paths": [],
      "disposition_changes": [
        "E231-CI-001"
      ],
      "effective_diff_digest": "sha256:a9564b6f23902aefc0a7ea370cc82d2e1dd188fcff2d36a75c6c913ddc7e7e80",
      "finding_ids": [
        "E231-CI-001"
      ],
      "invariants": [
        "Exact pinned embedded seed bytes survive supported Windows checkout.",
        "Native ABI, clone restrictions, capability bounds and canonical compiler identity conform to approved E2.3.1.",
        "Public mapped activation remains guarded.",
        "All exact-head CI jobs and current complete local validation must pass."
      ],
      "outcome": "clean",
      "proposed_fix_paths": [],
      "resulting_head": "5be35af35ca2ed25b327d9c905839410d2d0d819",
      "review_observation_id": null,
      "review_request_id": 6525026859,
      "review_result_id": 6525053522,
      "reviewed_head": "5be35af35ca2ed25b327d9c905839410d2d0d819",
      "root_cause": "Previously accepted checkout-byte defect is now verified as a truth fix: actual Windows AMD64/ARM64 jobs, all other selected CI, fresh regular review and complete current-head local validation passed. Original finding was resolved with retained proof. No further correction or synchronization needed.",
      "round": 2,
      "unresolved_current_slice_findings": 0,
      "unresolved_design_blockers": 0
    }
  ],
  "schema": "awd:swe:pr-cycle-state",
  "version": 2
}

@omry
omry marked this pull request as ready for review October 30, 2026 13:40
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 30, 2026 •

Copy link
Copy Markdown

Codex Review Summary

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

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-30T14:20:07.528073Z 5be35af Manual request
🔒 Security Review ⚠️ Failed 2026-10-30T13:40:45.168316Z
We couldn’t complete this review. Comment @codex security review to try again.
3e82565 Draft marked ready
ℹ️ 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.

@chatgpt-codex-connector

Copy link
Copy Markdown

The account paying for this security review has reached its Codex usage limits. The payer can check the Codex usage dashboard. For personal accounts, using credits requires enabling “Use credits for security reviews” in Code review settings. If you do not manage the paying account, contact this repository's admins.

@omry

omry commented Oct 30, 2026

Copy link
Copy Markdown
Owner Author

@codex review

Exact head: 3e82565

@chatgpt-codex-connector

Copy link
Copy Markdown

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

Reviewed commit: 3e82565b49

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

Mapped policy needs namespace, mount and handle restrictions even when trusted setup has extra capabilities. Add a private pure compiler over the existing pinned seccomp seed, with native-only clone rules, unconditional clone3 ENOSYS, kernel/catalog capability checks and an immutable canonical policy identity.

Keep consuming engine integration in E2.3.2 and final entry-plan construction in E4.1.1. This preparatory compiler does not activate public mapped execution.

Validation: focused compiler and ordinary seccomp regressions with Go coverage, targeted vet, Python checks, all shipping/conformance Go packages, linux-amd64 build and CLI smoke. The retained WSL tmpfs-test exclusion and explicit Docker skip remain; exact-head CI and runtime qualification are separate gates.
@gitar-bot

gitar-bot Bot commented Oct 30, 2026

Copy link
Copy Markdown
Code Review ✅ Approved

🟡 Medium risk · The private compiler emits seccomp rules blocking mount and namespace calls and rewriting clone behavior, which could deny syscalls in later mapped execution.

Adds a private pure compiler for the mapped syscall policy over the existing pinned seccomp seed, enforcing native-only clone rules, unconditional clone3 ENOSYS, kernel and catalog capability checks, and an immutable canonical policy identity. No issues found; public mapped execution is not activated by this change.

Verification

Rules No rules evaluated

Functional validation Not enabled

Set up

For more verification details, comment gitar display:verbose.

Options

Auto-apply is off → Gitar will not commit updates to this branch.
Display: compact → Showing compact verification results.

Comment with these commands to change the behavior for this request:

Auto-apply Compact
gitar auto-apply:on         
gitar display:verbose         

Was this helpful? React with 👍 / 👎 | Powered by Gitar — free for open source

@omry

omry commented Oct 30, 2026

Copy link
Copy Markdown
Owner Author

@codex review

Exact head: 5be35af

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Another round soon, please!

Reviewed commit: 5be35af35c

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

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

approved PR reviewed and approved

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant