load("//:defs.bzl", "codex_rust_crate") filegroup( name = "model_availability_nux_fixtures", srcs = [ "tests/cli_responses_fixture.sse", ], visibility = ["//visibility:public"], ) codex_rust_crate( name = "core", crate_name = "codex_core", compile_data = glob( include = ["**"], exclude = [ "**/* *", "BUILD.bazel", "Cargo.toml", ], allow_empty = True, ) + [ "//codex-rs:node-version.txt", ], rustc_env = { # Keep manifest-root path lookups inside the Bazel execroot for code # that relies on env!("CARGO_MANIFEST_DIR"). "CARGO_MANIFEST_DIR": "codex-rs/core", }, integration_compile_data_extra = [ "//codex-rs/apply-patch:apply_patch_tool_instructions.md", "templates/realtime/backend_prompt.md", ], integration_test_timeout = "long", test_data_extra = [ "config.schema.json", ] + glob([ "src/**/snapshots/**", ]) + [ # This is a bit of a hack, but empirically, some of our integration tests # are relying on the presence of this file as a repo root marker. When # running tests locally, this "just works," but in remote execution, # the working directory is different and so the file is not found unless it # is explicitly added as test data. # # TODO(aibrahim): Update the tests so that `just bazel-remote-test` # succeeds without this workaround. "//:AGENTS.md", ], test_tags = ["no-sandbox"], unit_test_timeout = "long", extra_binaries = [ "//codex-rs/linux-sandbox:codex-linux-sandbox", "//codex-rs/rmcp-client:test_stdio_server", "//codex-rs/rmcp-client:test_streamable_http_server", "//codex-rs/cli:codex", ], )