A lightweight, powerful framework for multi-agent workflows
This report summarizes scanner evidence for openai/openai-agents-python, a Python project with 29,955 GitHub stars. SynthScan examined 544,513 lines of code across 1605 source files, recording 14047 pattern matches distributed across 24 syntactic categories. The legacy adjusted pattern signal is 26.5 (Elevated pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 11000 finding(s).
Are imports declared and package/API names verified? 1636 finding(s).
Are wrappers, guards, and repeated structures necessary? 11654 finding(s).
Which changes need focused human review? 14047 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 14047 distinct pattern matches across 24 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | integration_tests/_contract_surface.py | 1196 | def _optional_dependency_is_available_for_contract( | CODE |
| LOW⚡ | integration_tests/_contract_surface.py | 1205 | def _optional_dependency_is_unsupported_for_contract( | CODE |
| LOW⚡ | integration_tests/_contract_surface.py | 1212 | def _optional_dependency_for_binding( | CODE |
| LOW | integration_tests/_contract_surface.py | 40 | def is_supported_on_current_platform(self) -> bool: | CODE |
| LOW | integration_tests/_contract_surface.py | 61 | def load_submodule_export_policy(path: Path) -> SubmoduleExportPolicy: | CODE |
| LOW | integration_tests/_contract_surface.py | 271 | def _public_class_contract_policy(value: object) -> tuple[dict[str, Any], ...]: | CODE |
| LOW | integration_tests/_contract_surface.py | 334 | def _public_typed_dict_policy(value: object) -> tuple[dict[str, Any], ...]: | CODE |
| LOW | integration_tests/_contract_surface.py | 378 | def _public_type_alias_policy(value: object) -> tuple[dict[str, str], ...]: | CODE |
| LOW | integration_tests/_contract_surface.py | 405 | def _add_legacy_literal_types(value: object) -> None: | CODE |
| LOW | integration_tests/_contract_surface.py | 525 | def _dataclass_field_contract(value: object) -> list[dict[str, object]]: | CODE |
| LOW | integration_tests/_contract_surface.py | 550 | def _pydantic_model_field_contract(value: object) -> list[dict[str, object]] | None: | CODE |
| LOW | integration_tests/_contract_surface.py | 654 | def _sdk_public_class_descriptor(value: type, name: str) -> object | None: | CODE |
| LOW | integration_tests/_contract_surface.py | 669 | def _public_class_member_contract(value: object) -> dict[str, dict[str, object]]: | CODE |
| LOW | integration_tests/_contract_surface.py | 731 | def _public_property_identity(entry: Mapping[str, Any]) -> tuple[str, str, str]: | CODE |
| LOW | integration_tests/_contract_surface.py | 752 | def _sorted_type_alias_members(members: Iterable[dict[str, object]]) -> list[dict[str, object]]: | CODE |
| LOW | integration_tests/_contract_surface.py | 767 | def _is_type_alias_annotation(annotation: object, module: object) -> bool: | CODE |
| LOW | integration_tests/_contract_surface.py | 784 | def _module_declares_type_alias(module: object, alias_name: str, value: object) -> bool: | CODE |
| LOW | integration_tests/_contract_surface.py | 832 | def _visit_function_definition(self, node: ast.FunctionDef | ast.AsyncFunctionDef) -> None: | CODE |
| LOW | integration_tests/_contract_surface.py | 967 | def _has_explicit_type_alias_declaration( | CODE |
| LOW | integration_tests/_contract_surface.py | 1082 | def _public_type_alias_contract( | CODE |
| LOW | integration_tests/_contract_surface.py | 1107 | def _typed_dict_field_is_required(typed_dict: type, name: str, annotation: object) -> bool: | CODE |
| LOW | integration_tests/_contract_surface.py | 1132 | def _typed_dict_field_contract(typed_dict: type, name: str) -> dict[str, object] | None: | CODE |
| LOW | integration_tests/_contract_surface.py | 1143 | def _public_typed_dict_contract( | CODE |
| LOW | integration_tests/_contract_surface.py | 1171 | def _optional_dependency_unsupported_platforms( | CODE |
| LOW | integration_tests/_contract_surface.py | 1232 | def _optional_dependency_for_binding_in_modules( | CODE |
| LOW | integration_tests/_contract_surface.py | 1243 | def _optional_dependency_for_module_import( | CODE |
| LOW | integration_tests/_contract_surface.py | 1281 | def _submodule_export_contract( | CODE |
| LOW | integration_tests/_contract_surface.py | 1328 | def _optional_dependency_modules(value: object, *, field_name: str) -> dict[str, str]: | CODE |
| LOW | integration_tests/_contract_surface.py | 1343 | def _optional_dependency_is_available(module_name: str) -> bool: | CODE |
| LOW | integration_tests/_contract_surface.py | 1349 | def _matches_platform_import_error( | CODE |
| LOW | integration_tests/conftest.py | 26 | def _external_providers_enabled() -> bool: | CODE |
| LOW | integration_tests/conftest.py | 34 | def _direct_providers_enabled() -> bool: | CODE |
| LOW | integration_tests/conftest.py | 101 | def pytest_collection_modifyitems(config: pytest.Config, items: list[pytest.Item]) -> None: | CODE |
| LOW | integration_tests/conftest.py | 142 | def _provider_model_credentials(model: str) -> tuple[str, ...]: | CODE |
| LOW | integration_tests/conftest.py | 222 | def integration_realtime_model() -> str: | CODE |
| LOW | integration_tests/_contract_validation.py | 15 | def _validate_parameter_contract( | CODE |
| LOW | integration_tests/_contract_validation.py | 59 | def _validate_pydantic_model_field_contract( | CODE |
| LOW | integration_tests/_contract_validation.py | 83 | def _validate_public_property_contract( | CODE |
| LOW | integration_tests/_contract_validation.py | 142 | def _validate_public_class_contract( | CODE |
| LOW | integration_tests/_contract_validation.py | 189 | def _validate_public_typed_dict_contract( | CODE |
| LOW | integration_tests/_contract_validation.py | 230 | def _validate_public_type_alias_contract( | CODE |
| LOW | integration_tests/_contract_validation.py | 277 | def validate_released_api_contract( | CODE |
| LOW⚡ | integration_tests/_contract_state.py | 82 | def _deserialize_common_sandbox_session_state(payload: dict[str, object]) -> Any: | CODE |
| LOW⚡ | integration_tests/_contract_state.py | 90 | def _normalized_durable_state(payload: dict[str, Any]) -> dict[str, Any]: | CODE |
| LOW⚡ | integration_tests/_contract_state.py | 96 | def _normalize_legacy_mount_credentials(payload: dict[str, Any]) -> dict[str, Any]: | CODE |
| LOW | integration_tests/_contract_state.py | 119 | def _legacy_driver_option_errors(payload: dict[str, Any]) -> list[str]: | CODE |
| LOW | integration_tests/_contract_state.py | 184 | async def validate_historical_run_state_fixture(path: Path) -> list[str]: | CODE |
| LOW | integration_tests/_contract_state.py | 218 | async def validate_historical_resume_behavior( | CODE |
| LOW | integration_tests/_contract_state.py | 331 | async def validate_legacy_credential_run_state_fixture( | CODE |
| LOW | integration_tests/_contract_support.py | 58 | def _merge_public_class_contracts( | CODE |
| LOW | integration_tests/_contract_support.py | 83 | def _validate_voice_public_class_contract_policy( | CODE |
| LOW | integration_tests/_contract_support.py | 138 | def _merge_public_type_aliases( | CODE |
| LOW | integration_tests/_contract_support.py | 152 | def _merge_public_typed_dicts( | CODE |
| LOW | integration_tests/_contract_support.py | 179 | def _preserve_released_callable_for_promotion( | CODE |
| LOW | integration_tests/_contract_support.py | 199 | def _preserve_released_submodule_callables( | CODE |
| LOW | integration_tests/_contract_support.py | 208 | def build_released_api_contract( | CODE |
| LOW | …egration_tests/packaging/test_distribution_contents.py | 18 | def test_wheel_excludes_integration_tests_and_contains_runtime_modules() -> None: | CODE |
| LOW | …egration_tests/packaging/test_distribution_contents.py | 32 | def test_source_distribution_excludes_repository_automation_and_local_caches() -> None: | CODE |
| LOW | …egration_tests/packaging/test_distribution_contents.py | 48 | def test_installed_distribution_advertises_expected_optional_extras() -> None: | CODE |
| LOW | …egration_tests/packaging/test_distribution_contents.py | 87 | def test_public_runtime_modules_import_from_the_distribution(module_name: str) -> None: | CODE |
| 10131 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | integration_tests/conftest.py | 1 | CODE | |
| LOW | integration_tests/_contract_validation.py | 3 | CODE | |
| LOW | integration_tests/_contract_state.py | 3 | CODE | |
| LOW | integration_tests/_contract_support.py | 3 | CODE | |
| LOW | integration_tests/packaging/test_mcp_compat.py | 1 | CODE | |
| LOW | …egration_tests/packaging/test_distribution_contents.py | 1 | CODE | |
| LOW | integration_tests/packaging/test_provider_selection.py | 1 | CODE | |
| LOW | integration_tests/packaging/test_optional_extras.py | 1 | CODE | |
| LOW | integration_tests/packaging/mcp_legacy_server.py | 1 | CODE | |
| LOW | …ration_tests/security/test_packaged_mount_redaction.py | 1 | CODE | |
| LOW | …gration_tests/security/test_local_sandbox_isolation.py | 1 | CODE | |
| LOW | integration_tests/providers/test_any_llm.py | 1 | CODE | |
| LOW | integration_tests/providers/test_litellm.py | 1 | CODE | |
| LOW | integration_tests/hosted/test_web_search.py | 1 | CODE | |
| LOW | integration_tests/hosted/test_multi_agent.py | 1 | CODE | |
| LOW | integration_tests/hosted/test_tool_search.py | 1 | CODE | |
| LOW | …gration_tests/hosted/test_programmatic_tool_calling.py | 1 | CODE | |
| LOW | integration_tests/hosted/test_local_tool_families.py | 1 | CODE | |
| LOW | integration_tests/hosted/test_mcp.py | 1 | CODE | |
| LOW | integration_tests/hosted/test_code_interpreter.py | 1 | CODE | |
| LOW | integration_tests/realtime/test_realtime.py | 1 | CODE | |
| LOW | integration_tests/voice/test_voice_pipeline.py | 1 | CODE | |
| LOW | integration_tests/containers/test_dapr_redis.py | 10 | CODE | |
| LOW | integration_tests/openai/test_retry.py | 1 | CODE | |
| LOW | integration_tests/openai/test_tracing.py | 1 | CODE | |
| LOW | integration_tests/openai/test_approval_resume.py | 1 | CODE | |
| LOW | integration_tests/openai/test_guardrails.py | 1 | CODE | |
| LOW | integration_tests/openai/test_websocket.py | 1 | CODE | |
| LOW | integration_tests/openai/test_sessions.py | 1 | CODE | |
| LOW | integration_tests/openai/test_chat_completions.py | 1 | CODE | |
| LOW | integration_tests/openai/test_handoffs.py | 1 | CODE | |
| LOW | integration_tests/openai/test_responses.py | 1 | CODE | |
| LOW | integration_tests/openai/test_model_settings.py | 1 | CODE | |
| LOW | integration_tests/openai/test_execution_controls.py | 1 | CODE | |
| LOW | tests/test_tool_approval_call_id_reuse.py | 1 | CODE | |
| LOW | tests/test_tool_use_tracker.py | 1 | CODE | |
| LOW | tests/test_live_example.py | 1 | CODE | |
| LOW | tests/test_tool_metadata.py | 1 | CODE | |
| LOW | tests/test_asyncio_progress.py | 1 | CODE | |
| LOW | tests/test_run_serial_tests.py | 1 | CODE | |
| LOW | tests/test_run_config.py | 1 | CODE | |
| LOW | tests/test_update_rclone_pin.py | 1 | CODE | |
| LOW | tests/model_test_helpers.py | 1 | CODE | |
| LOW | tests/test_shell_call_serialization.py | 1 | CODE | |
| LOW | tests/test_tracing_errors.py | 1 | CODE | |
| LOW | tests/testing_processor.py | 1 | CODE | |
| LOW | tests/conftest.py | 1 | CODE | |
| LOW | tests/test_shell_examples.py | 1 | CODE | |
| LOW | tests/test_tool_use_behavior.py | 3 | CODE | |
| LOW | tests/test_usaspending_setup_db.py | 1 | CODE | |
| LOW | tests/test_scripted_sandbox.py | 1 | CODE | |
| LOW | tests/test_agent_tool_state.py | 1 | CODE | |
| LOW | tests/test_tool_origin.py | 1 | CODE | |
| LOW | tests/test_code_change_verification_policy.py | 1 | CODE | |
| LOW | tests/test_runner_model_provider_lifecycle.py | 1 | CODE | |
| LOW | tests/test_prompt_cache_key.py | 1 | CODE | |
| LOW | tests/test_tracing.py | 1 | CODE | |
| LOW | tests/test_agent_memory_leak.py | 1 | CODE | |
| LOW | tests/test_call_model_input_filter.py | 1 | CODE | |
| LOW | tests/test_release_provenance.py | 1 | CODE | |
| 1474 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …gration_tests/security/test_local_sandbox_isolation.py | 281 | except docker.errors.NotFound: | CODE |
| HIGH | …gration_tests/security/test_local_sandbox_isolation.py | 283 | except docker.errors.DockerException: | CODE |
| HIGH | integration_tests/containers/test_dapr_redis.py | 116 | except Exception: | CODE |
| HIGH | integration_tests/containers/test_dapr_redis.py | 139 | except Exception: | CODE |
| HIGH | tests/test_code_change_verification_runner.py | 240 | except ProcessLookupError: | CODE |
| HIGH | tests/test_soft_cancel.py | 211 | except StopAsyncIteration: | CODE |
| HIGH | tests/mcp/test_mcp_util.py | 1251 | except Exception: | CODE |
| HIGH | tests/mcp/test_prompt_server.py | 63 | except KeyError: | CODE |
| HIGH | tests/extensions/memory/test_dapr_session.py | 297 | except Exception: | CODE |
| HIGH | tests/extensions/memory/test_dapr_session.py | 650 | except Exception: | CODE |
| HIGH | tests/extensions/memory/test_dapr_session.py | 715 | except Exception: | CODE |
| HIGH | tests/extensions/memory/test_advanced_sqlite_session.py | 2516 | except Exception: | CODE |
| HIGH | tests/extensions/memory/test_redis_session.py | 437 | except Exception: | CODE |
| HIGH | tests/extensions/memory/test_redis_session.py | 664 | except Exception: | CODE |
| HIGH | tests/extensions/memory/test_redis_session.py | 717 | except Exception: | CODE |
| HIGH | tests/extensions/memory/test_redis_session.py | 763 | except Exception: | CODE |
| HIGH | tests/extensions/memory/test_redis_session.py | 841 | except Exception: | CODE |
| HIGH | tests/extensions/memory/test_redis_session.py | 890 | except Exception: | CODE |
| HIGH | tests/realtime/test_openai_realtime.py | 3727 | except Exception: | CODE |
| HIGH | tests/realtime/test_session.py | 690 | except Exception: # noqa: S110 | CODE |
| HIGH | tests/voice/test_input.py | 11 | except ImportError: | CODE |
| HIGH | tests/voice/test_openai_stt.py | 42 | except ImportError: | CODE |
| HIGH | tests/voice/test_workflow.py | 17 | except ImportError: | CODE |
| HIGH | tests/voice/test_openai_tts.py | 11 | except ImportError: | CODE |
| HIGH | tests/voice/helpers.py | 3 | except ImportError: | CODE |
| HIGH | tests/voice/test_pipeline.py | 44 | except ImportError: | CODE |
| HIGH | tests/sandbox/test_unix_local_special_files.py | 100 | except OSError: | CODE |
| HIGH | tests/sandbox/test_unix_local_special_files.py | 107 | except BlockingIOError: | CODE |
| HIGH | tests/sandbox/test_sandboxes_import.py | 23 | except AttributeError: | CODE |
| HIGH | tests/sandbox/test_docker.py | 445 | except ValueError: | CODE |
| HIGH | tests/sandbox/test_docker.py | 522 | except FileNotFoundError: | CODE |
| HIGH | …ls/implementation-final-review/scripts/review_state.py | 183 | except FileNotFoundError: | CODE |
| HIGH | …ls/implementation-final-review/scripts/review_state.py | 193 | except OSError: | CODE |
| HIGH | examples/memory/file_session.py | 78 | except FileNotFoundError: | CODE |
| HIGH | examples/memory/file_session.py | 82 | except FileNotFoundError: | CODE |
| HIGH | examples/basic/trace_redaction.py | 43 | except Exception: | CODE |
| HIGH | examples/mcp/streamablehttp_example/server.py | 36 | except Exception: | CODE |
| HIGH | examples/realtime/app/server.py | 665 | except WebSocketDisconnect: | CODE |
| HIGH | examples/realtime/cli/demo.py | 137 | except Exception: | CODE |
| HIGH | examples/realtime/cli/demo.py | 202 | except Exception: | CODE |
| HIGH | examples/realtime/twilio/twilio_handler.py | 200 | except WebSocketDisconnect: | CODE |
| HIGH | examples/realtime/twilio/twilio_handler.py | 166 | except WebSocketDisconnect: | CODE |
| HIGH | examples/voice/streamed/main.py | 142 | except Exception: | CODE |
| HIGH | examples/voice/streamed/main.py | 205 | except KeyboardInterrupt: | CODE |
| HIGH | examples/sandbox/unix_local_runner.py | 105 | except WorkspaceArchiveWriteError: | CODE |
| HIGH | examples/sandbox/docker/mounts/mount_smoke.py | 52 | except docker.errors.ImageNotFound: | CODE |
| HIGH | …/sandbox/extensions/temporal/temporal_sandbox_agent.py | 654 | except docker.errors.DockerException: | CODE |
| HIGH | …/sandbox/extensions/temporal/temporal_sandbox_agent.py | 235 | except (json.JSONDecodeError, TypeError): | CODE |
| HIGH | …/sandbox/extensions/temporal/temporal_sandbox_agent.py | 615 | except Exception: | CODE |
| HIGH | …es/sandbox/extensions/temporal/temporal_sandbox_tui.py | 359 | except (json.JSONDecodeError, TypeError): | CODE |
| HIGH | …es/sandbox/extensions/temporal/temporal_sandbox_tui.py | 947 | except Exception: | CODE |
| HIGH | …es/sandbox/extensions/temporal/temporal_sandbox_tui.py | 317 | except Exception: | CODE |
| HIGH | …es/sandbox/extensions/temporal/temporal_sandbox_tui.py | 1154 | except Exception: | CODE |
| HIGH | …es/sandbox/extensions/temporal/temporal_sandbox_tui.py | 1144 | except Exception: | CODE |
| HIGH | …ndbox/extensions/daytona/usaspending_text2sql/agent.py | 220 | except Exception: | CODE |
| HIGH | examples/live/app/server.py | 193 | except WebSocketDisconnect: | CODE |
| HIGH | examples/live/app/server.py | 121 | except Exception: | CODE |
| HIGH | .github/scripts/run_integration_tests.py | 462 | except OSError: | CODE |
| HIGH | src/agents/run_state.py | 2999 | except Exception: | CODE |
| HIGH | src/agents/run_state.py | 1731 | except (TypeError, ValueError): | CODE |
| 125 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | tests/memory/test_session.py | 974 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/memory/test_session.py | 976 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/memory/test_openai_conversations_session.py | 1509 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/memory/test_openai_conversations_session.py | 1511 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/extensions/test_tool_output_trimmer.py | 85 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/test_tool_output_trimmer.py | 87 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/test_tool_output_trimmer.py | 116 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/test_tool_output_trimmer.py | 118 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/test_tool_output_trimmer.py | 163 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/test_tool_output_trimmer.py | 165 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/test_tool_output_trimmer.py | 1103 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/test_tool_output_trimmer.py | 1105 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/extensions/test_tool_output_trimmer.py | 20 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/extensions/test_tool_output_trimmer.py | 22 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/extensions/test_tool_output_trimmer.py | 55 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/extensions/test_tool_output_trimmer.py | 57 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/extensions/test_tool_output_trimmer.py | 1045 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/extensions/test_tool_output_trimmer.py | 1047 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_encrypt_session.py | 1696 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_encrypt_session.py | 1698 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_dapr_session.py | 915 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_dapr_session.py | 917 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_advanced_sqlite_session.py | 2976 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_advanced_sqlite_session.py | 2978 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_mongodb_session.py | 284 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_mongodb_session.py | 286 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_mongodb_session.py | 344 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_mongodb_session.py | 346 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_mongodb_session.py | 622 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_mongodb_session.py | 624 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_mongodb_session.py | 685 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_mongodb_session.py | 687 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_mongodb_session.py | 720 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_mongodb_session.py | 722 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_mongodb_session.py | 872 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_mongodb_session.py | 874 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_mongodb_session.py | 1165 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_mongodb_session.py | 1167 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/extensions/memory/test_mongodb_session.py | 31 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/extensions/memory/test_mongodb_session.py | 33 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/extensions/memory/test_mongodb_session.py | 317 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/extensions/memory/test_mongodb_session.py | 319 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/extensions/memory/test_mongodb_session.py | 934 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/extensions/memory/test_mongodb_session.py | 936 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/extensions/memory/test_mongodb_session.py | 1091 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/extensions/memory/test_mongodb_session.py | 1093 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_redis_session.py | 1117 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/extensions/memory/test_redis_session.py | 1119 | # ============================================================================ | COMMENT |
| MEDIUM | tests/extensions/sandbox/test_daytona.py | 1708 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/extensions/sandbox/test_daytona.py | 1710 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/sandbox/test_blaxel.py | 42 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/sandbox/test_blaxel.py | 44 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/sandbox/test_blaxel.py | 56 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/sandbox/test_blaxel.py | 58 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/sandbox/test_blaxel.py | 763 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/sandbox/test_blaxel.py | 765 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/sandbox/test_blaxel.py | 882 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/sandbox/test_blaxel.py | 884 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/sandbox/test_blaxel.py | 1104 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/extensions/sandbox/test_blaxel.py | 1106 | # --------------------------------------------------------------------------- | COMMENT |
| 176 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/test_function_tool_decorator.py | 0 | get the temperature for a given city. args: city: the city to get temperature for. returns: temperature information for | STRING |
| HIGH | examples/agent_patterns/human_in_the_loop.py | 0 | get the temperature for a given city. args: city: the city to get temperature for. returns: temperature information for | STRING |
| HIGH | examples/agent_patterns/human_in_the_loop_stream.py | 0 | get the temperature for a given city. args: city: the city to get temperature for. returns: temperature information for | STRING |
| HIGH | tests/memory/test_session.py | 0 | add_items([]) must not bypass the closed check through the empty-list fast path. | STRING |
| HIGH | tests/extensions/memory/test_dapr_session.py | 0 | add_items([]) must not bypass the closed check through the empty-list fast path. | STRING |
| HIGH | tests/extensions/memory/test_async_sqlite_session.py | 0 | add_items([]) must not bypass the closed check through the empty-list fast path. | STRING |
| HIGH | tests/extensions/memory/test_advanced_sqlite_session.py | 0 | add_items([]) must not bypass the closed check through the empty-list fast path. | STRING |
| HIGH | tests/extensions/memory/test_mongodb_session.py | 0 | add_items([]) must not bypass the closed check through the empty-list fast path. | STRING |
| HIGH | tests/extensions/memory/test_redis_session.py | 0 | add_items([]) must not bypass the closed check through the empty-list fast path. | STRING |
| HIGH | tests/memory/test_session.py | 0 | pop_item skips corrupt newest rows and returns the next valid item. | STRING |
| HIGH | tests/extensions/memory/test_async_sqlite_session.py | 0 | pop_item skips corrupt newest rows and returns the next valid item. | STRING |
| HIGH | tests/extensions/memory/test_sqlalchemy_session.py | 0 | pop_item skips corrupt newest rows and returns the next valid item. | STRING |
| HIGH | tests/memory/test_session.py | 0 | pop_item removes corrupt rows and returns none when no valid items remain. | STRING |
| HIGH | tests/extensions/memory/test_async_sqlite_session.py | 0 | pop_item removes corrupt rows and returns none when no valid items remain. | STRING |
| HIGH | tests/extensions/memory/test_sqlalchemy_session.py | 0 | pop_item removes corrupt rows and returns none when no valid items remain. | STRING |
| HIGH | tests/memory/test_session.py | 0 | limit counts valid items, expanding past corrupt newest rows. | STRING |
| HIGH | tests/extensions/memory/test_async_sqlite_session.py | 0 | limit counts valid items, expanding past corrupt newest rows. | STRING |
| HIGH | tests/extensions/memory/test_sqlalchemy_session.py | 0 | limit counts valid items, expanding past corrupt newest rows. | STRING |
| HIGH | tests/extensions/memory/test_advanced_sqlite_session.py | 0 | limit counts valid items, expanding past corrupt newest rows. | STRING |
| HIGH | tests/memory/test_session.py | 0 | test that session correctly stores and retrieves unicode/non-ascii content. | STRING |
| HIGH | tests/extensions/memory/test_dapr_session.py | 0 | test that session correctly stores and retrieves unicode/non-ascii content. | STRING |
| HIGH | tests/extensions/memory/test_redis_session.py | 0 | test that session correctly stores and retrieves unicode/non-ascii content. | STRING |
| HIGH | tests/memory/test_session.py | 0 | test concurrent access to the same session to verify data integrity. | STRING |
| HIGH | tests/extensions/memory/test_dapr_session.py | 0 | test concurrent access to the same session to verify data integrity. | STRING |
| HIGH | tests/extensions/memory/test_redis_session.py | 0 | test concurrent access to the same session to verify data integrity. | STRING |
| HIGH | tests/memory/test_session.py | 0 | test that session_settings defaults to empty sessionsettings. | STRING |
| HIGH | tests/memory/test_openai_conversations_session.py | 0 | test that session_settings defaults to empty sessionsettings. | STRING |
| HIGH | tests/extensions/memory/test_dapr_session.py | 0 | test that session_settings defaults to empty sessionsettings. | STRING |
| HIGH | tests/extensions/memory/test_async_sqlite_session.py | 0 | test that session_settings defaults to empty sessionsettings. | STRING |
| HIGH | tests/extensions/memory/test_sqlalchemy_session.py | 0 | test that session_settings defaults to empty sessionsettings. | STRING |
| HIGH | tests/extensions/memory/test_advanced_sqlite_session.py | 0 | test that session_settings defaults to empty sessionsettings. | STRING |
| HIGH | tests/extensions/memory/test_redis_session.py | 0 | test that session_settings defaults to empty sessionsettings. | STRING |
| HIGH | tests/memory/test_session.py | 0 | test that get_items uses session_settings.limit as default. | STRING |
| HIGH | tests/extensions/memory/test_dapr_session.py | 0 | test that get_items uses session_settings.limit as default. | STRING |
| HIGH | tests/extensions/memory/test_async_sqlite_session.py | 0 | test that get_items uses session_settings.limit as default. | STRING |
| HIGH | tests/extensions/memory/test_sqlalchemy_session.py | 0 | test that get_items uses session_settings.limit as default. | STRING |
| HIGH | tests/extensions/memory/test_advanced_sqlite_session.py | 0 | test that get_items uses session_settings.limit as default. | STRING |
| HIGH | tests/extensions/memory/test_redis_session.py | 0 | test that get_items uses session_settings.limit as default. | STRING |
| HIGH | tests/memory/test_session.py | 0 | test that explicit limit parameter overrides session_settings. | STRING |
| HIGH | tests/extensions/memory/test_encrypt_session.py | 0 | test that explicit limit parameter overrides session_settings. | STRING |
| HIGH | tests/extensions/memory/test_dapr_session.py | 0 | test that explicit limit parameter overrides session_settings. | STRING |
| HIGH | tests/extensions/memory/test_async_sqlite_session.py | 0 | test that explicit limit parameter overrides session_settings. | STRING |
| HIGH | tests/extensions/memory/test_sqlalchemy_session.py | 0 | test that explicit limit parameter overrides session_settings. | STRING |
| HIGH | tests/extensions/memory/test_advanced_sqlite_session.py | 0 | test that explicit limit parameter overrides session_settings. | STRING |
| HIGH | tests/extensions/memory/test_redis_session.py | 0 | test that explicit limit parameter overrides session_settings. | STRING |
| HIGH | tests/memory/test_session.py | 0 | test that runconfig can override session's default settings. | STRING |
| HIGH | tests/extensions/memory/test_encrypt_session.py | 0 | test that runconfig can override session's default settings. | STRING |
| HIGH | tests/extensions/memory/test_dapr_session.py | 0 | test that runconfig can override session's default settings. | STRING |
| HIGH | tests/extensions/memory/test_sqlalchemy_session.py | 0 | test that runconfig can override session's default settings. | STRING |
| HIGH | tests/extensions/memory/test_advanced_sqlite_session.py | 0 | test that runconfig can override session's default settings. | STRING |
| HIGH | tests/extensions/memory/test_redis_session.py | 0 | test that runconfig can override session's default settings. | STRING |
| HIGH | tests/models/test_litellm_chatcompletions_stream.py | 0 | cancelling during the cleanup `aclose` continues that close instead of abandoning it. | STRING |
| HIGH | tests/models/test_openai_chatcompletions_stream.py | 0 | cancelling during the cleanup `aclose` continues that close instead of abandoning it. | STRING |
| HIGH | tests/models/test_openai_responses.py | 0 | cancelling during the cleanup `aclose` continues that close instead of abandoning it. | STRING |
| HIGH | tests/extensions/memory/test_dapr_session.py | 0 | test that different session ids result in isolated conversation histories. | STRING |
| HIGH | tests/extensions/memory/test_async_sqlite_session.py | 0 | test that different session ids result in isolated conversation histories. | STRING |
| HIGH | tests/extensions/memory/test_sqlalchemy_session.py | 0 | test that different session ids result in isolated conversation histories. | STRING |
| HIGH | tests/extensions/memory/test_redis_session.py | 0 | test that different session ids result in isolated conversation histories. | STRING |
| HIGH | tests/extensions/memory/test_dapr_session.py | 0 | test that pop_item returns none on an empty session. | STRING |
| HIGH | tests/extensions/memory/test_async_sqlite_session.py | 0 | test that pop_item returns none on an empty session. | STRING |
| 95 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | integration_tests/_contract_surface.py | 1011 | except Exception as error: | CODE |
| LOW | integration_tests/_contract_validation.py | 106 | except Exception as error: | CODE |
| LOW | integration_tests/_contract_validation.py | 165 | except Exception as error: | CODE |
| LOW | integration_tests/_contract_validation.py | 212 | except Exception as error: | CODE |
| LOW | integration_tests/_contract_validation.py | 254 | except Exception as error: | CODE |
| LOW | integration_tests/_contract_validation.py | 335 | except Exception as error: | CODE |
| LOW | integration_tests/_contract_validation.py | 496 | except Exception as error: | CODE |
| LOW | integration_tests/_contract_validation.py | 503 | except Exception as error: | CODE |
| LOW | integration_tests/_contract_validation.py | 533 | except Exception as error: | CODE |
| LOW | integration_tests/_contract_validation.py | 553 | except Exception as error: | CODE |
| LOW | integration_tests/_contract_support.py | 347 | except Exception as error: | CODE |
| LOW | integration_tests/_contract_support.py | 364 | except Exception as error: | CODE |
| LOW | integration_tests/_contract_support.py | 466 | except Exception as error: | CODE |
| LOW | integration_tests/containers/test_dapr_redis.py | 116 | except Exception: | CODE |
| LOW | integration_tests/containers/test_dapr_redis.py | 139 | except Exception: | CODE |
| LOW | tests/memory/test_session.py | 80 | except Exception: | CODE |
| LOW | tests/mcp/test_mcp_util.py | 1251 | except Exception: | CODE |
| LOW⚡ | tests/extensions/memory/test_dapr_session.py | 715 | except Exception: | CODE |
| LOW | tests/extensions/memory/test_dapr_session.py | 297 | except Exception: | CODE |
| LOW | tests/extensions/memory/test_dapr_session.py | 650 | except Exception: | CODE |
| LOW | tests/extensions/memory/test_sqlalchemy_session.py | 785 | except Exception as exc: | CODE |
| LOW | tests/extensions/memory/test_sqlalchemy_session.py | 833 | except Exception as exc: | CODE |
| LOW | tests/extensions/memory/test_advanced_sqlite_session.py | 1306 | except Exception as exc: | CODE |
| LOW | tests/extensions/memory/test_advanced_sqlite_session.py | 1330 | except Exception as exc: | CODE |
| LOW | tests/extensions/memory/test_advanced_sqlite_session.py | 2516 | except Exception: | CODE |
| LOW⚡ | tests/extensions/memory/test_redis_session.py | 717 | except Exception: | CODE |
| LOW⚡ | tests/extensions/memory/test_redis_session.py | 841 | except Exception: | CODE |
| LOW | tests/extensions/memory/test_redis_session.py | 437 | except Exception: | CODE |
| LOW | tests/extensions/memory/test_redis_session.py | 664 | except Exception: | CODE |
| LOW | tests/extensions/memory/test_redis_session.py | 763 | except Exception: | CODE |
| LOW | tests/extensions/memory/test_redis_session.py | 890 | except Exception: | CODE |
| MEDIUM | tests/realtime/test_openai_realtime.py | 3698 | def handler(websocket): | CODE |
| LOW | tests/realtime/test_openai_realtime.py | 3727 | except Exception: | CODE |
| LOW | tests/realtime/test_session.py | 690 | except Exception: # noqa: S110 | CODE |
| LOW | tests/sandbox/test_docker_removal_worker.py | 486 | except Exception as exc: | CODE |
| MEDIUM | docs/ja/realtime/quickstart.md | 96 | print(f"Error: {event.error}") | CODE |
| MEDIUM | docs/realtime/quickstart.md | 92 | print(f"Error: {event.error}") | CODE |
| MEDIUM | docs/zh/realtime/quickstart.md | 96 | print(f"Error: {event.error}") | CODE |
| LOW | docs/scripts/translate_docs.py | 706 | except Exception: | CODE |
| MEDIUM | docs/scripts/translate_docs.py | 834 | print("Error: No valid files found to translate") | CODE |
| MEDIUM | docs/ko/realtime/quickstart.md | 96 | print(f"Error: {event.error}") | CODE |
| LOW⚡ | examples/memory/dapr_session_example.py | 236 | except Exception as e: | CODE |
| MEDIUM⚡ | examples/memory/dapr_session_example.py | 237 | print(f"Error: {e}") | CODE |
| LOW | examples/memory/dapr_session_example.py | 310 | except Exception as e: | CODE |
| LOW⚡ | examples/memory/dapr_session_example.py | 433 | except Exception as e: | CODE |
| LOW | examples/memory/file_hitl_example.py | 87 | except Exception as exc: # noqa: BLE001 | CODE |
| LOW | examples/memory/file_hitl_example.py | 147 | except Exception: | CODE |
| LOW | examples/memory/redis_session_example.py | 148 | except Exception: | CODE |
| LOW | examples/memory/redis_session_example.py | 175 | except Exception: | CODE |
| LOW | examples/memory/mongodb_session_example.py | 37 | except Exception: | CODE |
| LOW | examples/financial_research_agent/manager.py | 185 | except Exception: | CODE |
| LOW | examples/basic/trace_redaction.py | 43 | except Exception: | CODE |
| MEDIUM | examples/basic/non_strict_output_type.py | 71 | print(f"Error (expected): {e}") | CODE |
| LOW | examples/research_bot/manager.py | 102 | except Exception: | CODE |
| LOW | …mples/mcp/streamablehttp_custom_client_example/main.py | 129 | except Exception as e: | CODE |
| MEDIUM | …mples/mcp/streamablehttp_custom_client_example/main.py | 130 | print(f"Error starting Streamable HTTP server: {e}") | CODE |
| LOW | examples/mcp/streamablehttp_example/server.py | 36 | except Exception: | CODE |
| LOW | examples/mcp/streamablehttp_example/main.py | 96 | except Exception as e: | CODE |
| MEDIUM | examples/mcp/streamablehttp_example/main.py | 97 | print(f"Error starting Streamable HTTP server: {e}") | CODE |
| LOW | examples/mcp/prompt_server/main.py | 44 | except Exception as e: | CODE |
| 598 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | tests/test_responses_tracing.py | 296 | # Create an instance of the model | COMMENT |
| MEDIUM⚡ | tests/test_responses_tracing.py | 299 | # Define a dummy fetch function that returns an async stream with a dummy response | COMMENT |
| MEDIUM⚡ | tests/test_responses_tracing.py | 441 | # Create an instance of the model | COMMENT |
| MEDIUM⚡ | tests/test_responses_tracing.py | 447 | # Define a dummy fetch function that returns an async stream with a dummy response | COMMENT |
| MEDIUM⚡ | tests/test_responses_tracing.py | 649 | # Create an instance of the model | COMMENT |
| MEDIUM⚡ | tests/test_responses_tracing.py | 652 | # Define a dummy fetch function that returns an async stream with a dummy response | COMMENT |
| MEDIUM | tests/test_responses_tracing.py | 70 | # Create an instance of the model | COMMENT |
| MEDIUM | tests/test_responses_tracing.py | 134 | # Create an instance of the model | COMMENT |
| MEDIUM | tests/test_responses_tracing.py | 255 | # Create an instance of the model | COMMENT |
| MEDIUM | tests/test_run_state_agent_identity.py | 406 | # Create a cycle A -> B -> A. | COMMENT |
| MEDIUM⚡ | tests/test_run_state_agent_identity.py | 425 | # Create a graph: A -> B, C; B -> D; C -> D. | COMMENT |
| MEDIUM⚡ | tests/test_items_helpers.py | 208 | # Create a non-message run item of a different type, e.g., a reasoning trace. | COMMENT |
| MEDIUM | tests/test_agent_runner_streamed.py | 2179 | # Create a tool that requires approval | COMMENT |
| MEDIUM | tests/test_hitl_error_scenarios.py | 652 | # Create the tool with needs_approval directly | COMMENT |
| MEDIUM | tests/test_usage.py | 300 | # Create a usage with request_usage_entries | COMMENT |
| MEDIUM | tests/test_agent_runner.py | 6886 | # Define a tool that will be called by the orchestrator agent | COMMENT |
| MEDIUM | tests/test_agent_runner.py | 6974 | # Create a computer tool (not a FunctionTool) | COMMENT |
| MEDIUM | tests/test_agent_runner.py | 7016 | # Create an approved tool call for the computer tool | COMMENT |
| MEDIUM | tests/test_agent_runner.py | 7048 | # Create a rejected tool call | COMMENT |
| MEDIUM | tests/test_agent_runner.py | 7230 | # Create a tool call with unclear status (neither approved nor rejected) | COMMENT |
| MEDIUM | tests/test_agent_runner.py | 7253 | # Create an approved tool call for a tool that doesn't exist | COMMENT |
| MEDIUM | tests/test_agent_as_tool.py | 225 | # Create a simple agent | COMMENT |
| MEDIUM | tests/test_agent_as_tool.py | 273 | # Create a simple agent | COMMENT |
| MEDIUM | tests/test_agent_as_tool.py | 321 | # Create a simple agent | COMMENT |
| MEDIUM | tests/test_agent_as_tool.py | 384 | # Create a simple agent | COMMENT |
| MEDIUM | tests/test_computer_action.py | 545 | # Create a dummy click action to trigger a click and screenshot. | COMMENT |
| MEDIUM⚡ | tests/test_run_state.py | 6809 | # Create a tool call item | COMMENT |
| MEDIUM⚡ | tests/test_run_state.py | 6819 | # Create a ProcessedResponse with the tool call item in new_items | COMMENT |
| MEDIUM⚡ | tests/test_run_state.py | 6902 | # Create a tool call item | COMMENT |
| MEDIUM⚡ | tests/test_run_state.py | 6912 | # Create a ProcessedResponse with the tool call item | COMMENT |
| MEDIUM⚡ | tests/test_run_state.py | 10131 | # Create a tool call item | COMMENT |
| MEDIUM⚡ | tests/test_run_state.py | 10141 | # Create a ProcessedResponse | COMMENT |
| MEDIUM⚡ | tests/test_run_state.py | 10161 | # Create a tool call item | COMMENT |
| MEDIUM⚡ | tests/test_run_state.py | 10171 | # Create a ProcessedResponse | COMMENT |
| MEDIUM⚡ | tests/test_run_state.py | 10260 | # Create a mock MCP tool that will be recognized as HostedMCPTool | COMMENT |
| MEDIUM⚡ | tests/test_run_state.py | 10265 | # Create a minimal Mcp config | COMMENT |
| MEDIUM | tests/test_run_state.py | 1364 | # Create a mock item that has id and type directly on the item (not in raw_item) | COMMENT |
| MEDIUM | tests/test_run_state.py | 4910 | # Create a handoff output item | COMMENT |
| MEDIUM | tests/test_run_state.py | 6729 | # Create a RunState with context | COMMENT |
| MEDIUM | tests/test_run_state.py | 6749 | # Create a RunState with context | COMMENT |
| MEDIUM | tests/test_run_state.py | 6773 | # Create a run that will have interruptions | COMMENT |
| MEDIUM | tests/test_run_state.py | 6841 | # Create a message with nested content | COMMENT |
| MEDIUM | tests/test_run_state.py | 7118 | # Create a handoff with a name attribute but no tool_name | COMMENT |
| MEDIUM | tests/test_run_state.py | 7263 | # Create a shell tool with description | COMMENT |
| MEDIUM | tests/test_run_state.py | 7301 | # Create an apply patch tool with description | COMMENT |
| MEDIUM | tests/test_run_state.py | 7347 | # Create a mock MCP tool - HostedMCPTool doesn't have a simple constructor | COMMENT |
| MEDIUM | tests/test_run_state.py | 7386 | # Create a message item | COMMENT |
| MEDIUM | tests/test_run_state.py | 7677 | # Create a mock item with a raw_item that is neither dict nor has model_dump | COMMENT |
| MEDIUM | tests/test_run_state.py | 7697 | # Create an agent without get_all_tools method | COMMENT |
| MEDIUM | tests/test_run_state.py | 7726 | # Create a handoff with tool_name | COMMENT |
| MEDIUM | tests/test_run_state.py | 8381 | # Create a mock MCP tool | COMMENT |
| MEDIUM | tests/test_run_state.py | 10221 | # Create a handoff with name attribute but no tool_name | COMMENT |
| MEDIUM | tests/test_run_state.py | 10311 | # Create an agent without get_all_tools method | COMMENT |
| MEDIUM | tests/test_run_state.py | 10374 | # Create an item with missing type field to trigger the union adapter fallback | COMMENT |
| MEDIUM⚡ | tests/test_extension_filters.py | 789 | # Create a nested summary that will be parsed | COMMENT |
| MEDIUM⚡ | tests/test_extension_filters.py | 797 | # Create a second nested summary that includes the first | COMMENT |
| MEDIUM⚡ | tests/test_extension_filters.py | 896 | # Create an item with a circular reference or other unserializable content | COMMENT |
| MEDIUM⚡ | tests/test_extension_filters.py | 901 | # Create an item that will trigger TypeError in json.dumps | COMMENT |
| MEDIUM | tests/test_extension_filters.py | 631 | # Create an item that doesn't have a role (e.g., a function call) | COMMENT |
| MEDIUM | tests/test_extension_filters.py | 768 | # Create a summary message with non-string content (array) | COMMENT |
| 73 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/test_tool_approval_call_id_reuse.py | 169 | "arguments": '{"value": null}', | CODE |
| HIGH | tests/test_agent_as_tool_output_guardrails.py | 60 | final_message = get_text_message('{"response":null}') | CODE |
| HIGH | tests/test_agent_tool_input.py | 93 | assert "- count (integer | null, optional) - Optional count." in info.summary | CODE |
| HIGH | tests/test_run_state.py | 4324 | "output": '{"temperature":20,"unit":"celsius","humidity":null}', | CODE |
| HIGH | tests/extensions/memory/test_dapr_session.py | 1428 | # still non-null, which is the situation the guard is actually for. | COMMENT |
| HIGH | tests/extensions/memory/test_mongodb_session.py | 378 | @pytest.mark.parametrize("session_id", ["", "$ne", '{"$ne": null}', "会話-123"]) | CODE |
| HIGH | tests/extensions/sandbox/test_modal.py | 2562 | "modal-snapshot-directory-ephemeral.tar -T - 2>/dev/null && test -f " | CODE |
| HIGH | tests/extensions/sandbox/test_modal.py | 2798 | "cd -- /workspace && (tar cf - -- tmp.txt 2>/dev/null || true)", | CODE |
| HIGH | tests/extensions/sandbox/test_modal.py | 2829 | ["sh", "-lc", "cd -- /workspace && (tar cf - -- tmp.txt 2>/dev/null || true)"], | CODE |
| HIGH | tests/extensions/sandbox/test_modal.py | 2881 | "cd -- /workspace && (tar cf - -- tmp.txt 2>/dev/null || true)", | CODE |
| HIGH | tests/extensions/sandbox/test_modal.py | 2909 | ["sh", "-lc", "cd -- /workspace && (tar cf - -- tmp.txt 2>/dev/null || true)"], | CODE |
| HIGH | tests/extensions/sandbox/test_e2b.py | 132 | "sh -lc test -c /dev/fuse && grep -qw fuse /proc/filesystems && " | CODE |
| HIGH | tests/extensions/sandbox/test_e2b.py | 133 | "(command -v fusermount3 >/dev/null 2>&1 || command -v fusermount >/dev/null 2>&1)" | CODE |
| HIGH | tests/extensions/sandbox/test_e2b.py | 161 | "sh -lc command -v rclone >/dev/null 2>&1 || test -x /usr/local/bin/rclone", | CODE |
| HIGH | tests/extensions/sandbox/test_e2b.py | 178 | "sh -lc command -v rclone >/dev/null 2>&1 || test -x /usr/local/bin/rclone" | CODE |
| HIGH | tests/extensions/sandbox/test_runloop_mounts.py | 155 | "sh -lc command -v rclone >/dev/null 2>&1 || test -x /usr/local/bin/rclone", | CODE |
| HIGH | tests/extensions/sandbox/test_runloop_mounts.py | 172 | "sh -lc command -v rclone >/dev/null 2>&1 || test -x /usr/local/bin/rclone" | CODE |
| HIGH | tests/extensions/sandbox/test_runloop_mounts.py | 198 | "sh -lc command -v fusermount3 >/dev/null 2>&1 || command -v fusermount >/dev/null 2>&1", | CODE |
| HIGH | tests/extensions/sandbox/test_runloop_mounts.py | 208 | "sh -lc command -v fusermount3 >/dev/null 2>&1 || command -v fusermount >/dev/null 2>&1", | CODE |
| HIGH | tests/extensions/sandbox/test_runloop.py | 2442 | await session.exec("pwd && echo hello", shell=True) | CODE |
| HIGH | tests/extensions/sandbox/test_runloop.py | 2658 | await session.exec("pwd && echo hello", shell=True) | CODE |
| HIGH | tests/realtime/test_session.py | 2611 | complex_args = '{"nested": {"data": [1, 2, 3]}, "bool": true, "null": null}' | CODE |
| HIGH | tests/sandbox/test_session_sinks.py | 449 | slow_result = await session.exec("sleep 1 && echo slow span") | CODE |
| HIGH | tests/sandbox/test_runtime.py | 5107 | result = await session.exec("echo hi > note.txt && cat note.txt") | CODE |
| HIGH⚡ | tests/sandbox/test_session_utils.py | 218 | await session.exec("echo hello && echo goodbye", shell=True) | CODE |
| HIGH⚡ | tests/sandbox/test_session_utils.py | 220 | assert session.last_command == ("sh", "-lc", "echo hello && echo goodbye") | CODE |
| HIGH⚡ | tests/sandbox/test_posix_tool_paths.py | 33 | assert command == "cd /workspace/src/project || exit\npwd" | CODE |
| HIGH | tests/sandbox/test_posix_tool_paths.py | 61 | assert command == f"cd {workspace.as_posix()}/src/project || exit\npwd" | CODE |
| HIGH | tests/sandbox/test_mounts.py | 1267 | ["sh", "-lc", "command -v rclone >/dev/null 2>&1 || test -x /usr/local/bin/rclone"], | CODE |
| HIGH⚡ | tests/sandbox/test_docker.py | 3958 | 'pid="$(cat "$1" 2>/dev/null || true)"; ' | CODE |
| HIGH⚡ | tests/sandbox/test_docker.py | 3959 | 'if [ -n "$pid" ]; then kill -KILL "$pid" >/dev/null 2>&1 || true; fi; ' | CODE |
| HIGH⚡ | tests/sandbox/test_docker.py | 4001 | "cmd": ["sh", "-lc", "pkill -f -- 'sleep 10' >/dev/null 2>&1 || true"], | CODE |
| HIGH⚡ | tests/sandbox/test_docker.py | 4006 | "cmd": ["sh", "-lc", "pkill -f -- 'sleep 20' >/dev/null 2>&1 || true"], | CODE |
| HIGH | tests/sandbox/test_docker.py | 3943 | 'mkdir -p "$1" && printf "%s" "$$" > "$2" && shift 2 && exec "$@"', | CODE |
| HIGH⚡ | tests/sandbox/capabilities/test_shell_capability.py | 359 | assert session.calls[0].args == ("cd /workspace/src/project || exit\npwd",) | CODE |
| HIGH⚡ | tests/sandbox/capabilities/test_shell_capability.py | 367 | "stdout: cd /workspace/src/project || exit\npwd\n" | CODE |
| HIGH⚡ | tests/sandbox/capabilities/test_shell_capability.py | 368 | "stderr: cd /workspace/src/project || exit\npwd" | CODE |
| HIGH⚡ | tests/sandbox/capabilities/test_shell_capability.py | 460 | assert session.calls[0].args == ("cd /mnt/shared-data || exit\npwd",) | CODE |
| HIGH⚡ | tests/sandbox/capabilities/test_shell_capability.py | 468 | "stdout: cd /mnt/shared-data || exit\npwd\n" | CODE |
| HIGH⚡ | tests/sandbox/capabilities/test_shell_capability.py | 469 | "stderr: cd /mnt/shared-data || exit\npwd" | CODE |
| HIGH⚡ | tests/sandbox/capabilities/test_shell_capability.py | 608 | assert session.calls[0].args == ("cd /workspace/tasks/a || exit\npwd",) | CODE |
| HIGH⚡ | tests/sandbox/capabilities/test_shell_capability.py | 609 | assert session.calls[1].args == ("cd /workspace/tasks/a || exit\npwd",) | CODE |
| HIGH | tests/sandbox/capabilities/test_shell_capability.py | 294 | assert session.calls[0].args == ("cd /workspace/tasks/a || exit\npwd",) | CODE |
| HIGH | tests/sandbox/capabilities/test_shell_capability.py | 388 | assert session.calls[0].args == ("cd /workspace/tasks/a || exit\npwd",) | CODE |
| HIGH | tests/sandbox/capabilities/test_shell_capability.py | 403 | assert session.calls[0].args == ("cd /workspace/tasks/a/src/project || exit\npwd",) | CODE |
| HIGH | tests/sandbox/capabilities/test_shell_capability.py | 420 | assert session.calls[0].args == ("cd /workspace/tasks/a/src/project || exit\npwd",) | CODE |
| HIGH | tests/sandbox/capabilities/test_shell_capability.py | 506 | assert session.calls[0].args == ("cd /workspace/tasks/a || exit\npwd",) | CODE |
| HIGH | examples/realtime/app/test_frontend.py | 47 | send(message) { window.sentMessages.push(JSON.parse(message)); } | CODE |
| HIGH | examples/sandbox/shared_session_workdirs.py | 95 | SHELL_COMMAND = "cp reference.png page.png && cat brief.md" | CODE |
| HIGH | examples/sandbox/healthcare_support/support_agents.py | 120 | "Use `exec_command` with `pwd`, `ls`, `cat`, and the documented `rg || grep` search " | STRING |
| HIGH | examples/sandbox/extensions/blaxel_runner.py | 307 | f"cat {mount_path}/{marker}.txt && ls {mount_path}" | CODE |
| HIGH | …ples/sandbox/tutorials/dataroom_metric_extract/main.py | 61 | Optional field: `segment` (segment/geography if explicitly stated, else null). | STRING |
| HIGH | src/agents/extensions/sandbox/_rclone.py | 8 | _RCLONE_CHECK = "command -v rclone >/dev/null 2>&1 || test -x /usr/local/bin/rclone" | CODE |
| HIGH | src/agents/extensions/sandbox/runloop/mounts.py | 53 | "command -v fusermount3 >/dev/null 2>&1 || command -v fusermount >/dev/null 2>&1", | CODE |
| HIGH | src/agents/extensions/sandbox/runloop/mounts.py | 81 | "command -v fusermount3 >/dev/null 2>&1 || command -v fusermount >/dev/null 2>&1", | CODE |
| HIGH | src/agents/extensions/sandbox/blaxel/mounts.py | 247 | "cd /tmp && ar x gcsfuse.deb && " | CODE |
| HIGH | src/agents/extensions/sandbox/blaxel/mounts.py | 271 | detect = await _exec(session, "which apk >/dev/null 2>&1 && echo apk || echo apt") | CODE |
| HIGH | src/agents/extensions/sandbox/blaxel/mounts.py | 271 | detect = await _exec(session, "which apk >/dev/null 2>&1 && echo apk || echo apt") | CODE |
| HIGH⚡ | src/agents/extensions/sandbox/daytona/mounts.py | 42 | f"command -v {cmd} >/dev/null 2>&1 || test -x /usr/local/bin/{cmd}", | CODE |
| HIGH | src/agents/extensions/sandbox/daytona/mounts.py | 62 | f"apt-get update -qq && DEBIAN_FRONTEND=noninteractive apt-get install -y -qq {package}" | CODE |
| 12 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | README.md | 12 | 1. [**Agents**](https://openai.github.io/openai-agents-python/agents): LLMs configured with instructions, tools, guardra | CODE |
| MEDIUM | README.md | 18 | 1. [**Guardrails**](https://openai.github.io/openai-agents-python/guardrails/): Configurable safety checks for input and | CODE |
| MEDIUM | tests/test_guardrails.py | 510 | # Trip only after the tool ran. If parallel guardrails gated the turn, this | COMMENT |
| MEDIUM | tests/test_guardrails.py | 869 | # Trip only after the tool ran. If parallel guardrails gated the turn, this | COMMENT |
| MEDIUM⚡ | tests/test_items_helpers.py | 208 | # Create a non-message run item of a different type, e.g., a reasoning trace. | COMMENT |
| MEDIUM | tests/test_run_impl_resume_paths.py | 3278 | # The output, its guardrails, and its terminal hooks all completed exactly once. | COMMENT |
| MEDIUM | tests/realtime/test_session_guardrails.py | 932 | # Neither should trigger guardrails yet | COMMENT |
| MEDIUM | tests/realtime/test_session_guardrails.py | 1075 | # Use a minimal agent (guardrails from run_config) | COMMENT |
| MEDIUM | tests/deferred_session_writes/test_pending_write.py | 197 | # The zero-count branch of the final save: with guardrails the rebuilt items carry | COMMENT |
| MEDIUM | tests/deferred_session_writes/test_recovery.py | 99 | # With output guardrails the final sweep rebuilds the response and the held batch | COMMENT |
| MEDIUM | tests/deferred_session_writes/test_resume.py | 192 | # A resume may legitimately run without the guardrails the park had; the | COMMENT |
| MEDIUM | tests/deferred_session_writes/test_resume.py | 550 | # With output guardrails the final sweep rebuilds the whole current response, held | COMMENT |
| MEDIUM | tests/deferred_session_writes/test_resume.py | 601 | # once it has ended: the guardrails and the final save run after the terminal step | COMMENT |
| MEDIUM | tests/deferred_session_writes/test_max_turns.py | 42 | # is chosen. Validation, the final-output hooks and the output guardrails all run | COMMENT |
| MEDIUM⚡ | docs/llms.txt | 8 | - [Overview](https://openai.github.io/openai-agents-python/): Learn the core primitives—agents, handoffs, guardrails, se | CODE |
| MEDIUM⚡ | docs/llms.txt | 10 | - [Example Gallery](https://openai.github.io/openai-agents-python/examples/): Task-oriented examples that demonstrate ag | CODE |
| MEDIUM⚡ | docs/llms.txt | 13 | - [Agents](https://openai.github.io/openai-agents-python/agents/): Configure agent instructions, tools, guardrails, memo | CODE |
| MEDIUM | docs/llms.txt | 25 | - [Guardrails](https://openai.github.io/openai-agents-python/guardrails/): Define validators that run alongside the agen | CODE |
| MEDIUM | docs/guardrails.md | 20 | ## Input guardrails | COMMENT |
| MEDIUM | docs/guardrails.md | 40 | ## Output guardrails | COMMENT |
| MEDIUM | docs/guardrails.md | 71 | ## Tool guardrails | COMMENT |
| MEDIUM | docs/guardrails.md | 78 | - Tool guardrails use the `FunctionTool` execution pipeline. You can attach them directly to a custom tool created with | CODE |
| MEDIUM | docs/mcp.md | 465 | ## Tool guardrails | COMMENT |
| MEDIUM | docs/mcp.md | 467 | Local MCP server classes accept `tool_input_guardrails` and `tool_output_guardrails`. The SDK attaches these server-wide | CODE |
| MEDIUM | docs/context.md | 40 | Adapt the shared application policy to these callbacks instead of maintaining separate capability lists. The callbacks c | CODE |
| MEDIUM | docs/quickstart.md | 183 | ## Run the agent orchestration | COMMENT |
| MEDIUM | docs/llms-full.txt | 10 | - [Example Gallery](https://openai.github.io/openai-agents-python/examples/): Realistic Python samples that demonstrate | CODE |
| MEDIUM | docs/llms-full.txt | 29 | - [Guardrails](https://openai.github.io/openai-agents-python/guardrails/): Create synchronous or asynchronous checks, sh | CODE |
| MEDIUM | docs/llms-full.txt | 61 | - [guardrail APIs](https://openai.github.io/openai-agents-python/ref/guardrail/): Build custom guardrails, interpret val | CODE |
| MEDIUM | docs/release.md | 28 | - When an agent-level output guardrail blocks final output produced directly by a terminal function tool, the SDK reta | CODE |
| MEDIUM | docs/release.md | 61 | - Runtime reliability fixes align streamed and non-streamed [output-guardrail session persistence](guardrails.md#outpu | CODE |
| MEDIUM | docs/results.md | 222 | One redaction rule applies when an agent-level output guardrail blocks final output produced directly by a terminal func | CODE |
| MEDIUM | docs/index.md | 3 | The [OpenAI Agents SDK](https://github.com/openai/openai-agents-python) enables you to build agentic AI apps in a lightw | CODE |
| MEDIUM | docs/tools.md | 913 | For locally configured function tools, the runner also reevaluates `is_enabled` before invocation. However, `is_enabled` | CODE |
| MEDIUM | docs/multi_agent.md | 1 | # Agent orchestration | COMMENT |
| MEDIUM | docs/multi_agent.md | 57 | - [Tools](tools.md#agents-as-tools) for `Agent.as_tool()` and manager-style orchestration. | CODE |
| MEDIUM | docs/ja/guardrails.md | 24 | ## 入力ガードレール {#input-guardrails} | COMMENT |
| MEDIUM | docs/ja/guardrails.md | 44 | ## 出力ガードレール {#output-guardrails} | COMMENT |
| MEDIUM | docs/ja/guardrails.md | 75 | ## ツールガードレール {#tool-guardrails} | COMMENT |
| MEDIUM | docs/ja/guardrails.md | 82 | - ツールガードレールは、 `FunctionTool` 実行パイプラインを使用します。 `tool` または [`function_tool`][agents.tool.function_tool] で作成したカスタムツールに直接設定でき | CODE |
| MEDIUM | docs/ja/mcp.md | 458 | ## ツールガードレール {#tool-guardrails} | COMMENT |
| MEDIUM | docs/ja/mcp.md | 460 | ローカル MCP サーバークラスは、`tool_input_guardrails` と `tool_output_guardrails` を受け付けます。SDK は、フィルタリング後に残ったすべての MCP ツールに、これらのサーバー全体の | CODE |
| MEDIUM | docs/ja/context.md | 44 | 個別の機能リストを管理するのではなく、共有アプリケーションポリシーをこれらのコールバックに合わせて適用してください。これらのコールバックは、現在の実行に対して SDK が公開する機能を制御しますが、モデルが生成した引数やリソース選択を認可す | CODE |
| MEDIUM | docs/ja/quickstart.md | 185 | ## エージェントオーケストレーションの実行 {#run-the-agent-orchestration} | COMMENT |
| MEDIUM | docs/ja/running_agents.md | 146 | ##### ガードレール、ハンドオフ、モデル入力の整形 {#guardrails-handoffs-and-model-input-shaping} | COMMENT |
| MEDIUM | docs/ja/release.md | 32 | - エージェントレベルの出力ガードレールが、終端関数ツールによって直接生成された最終出力をブロックした場合、検証済みフィールドによって安全に再構築できる場合に限り、SDK は再実行可能な呼び出し/出力ペアを保持します。元の `funct | CODE |
| MEDIUM | docs/ja/release.md | 65 | - 実行時の信頼性修正により、ストリーミングと非ストリーミングの[出力ガードレールのセッション永続化](guardrails.md#output-guardrails)が統一され、コピーおよび名前空間化の際に `FunctionTool | CODE |
| MEDIUM | docs/ja/results.md | 228 | エージェントレベルの出力ガードレールが、終端関数ツールによって直接生成された最終出力をブロックする場合は、1 つの編集規則が適用されます。ブロックされた現在のレスポンスでは、`output_guardrail_results` が拒否された | CODE |
| MEDIUM | docs/ja/agents.md | 182 | ## マルチエージェントシステムの設計パターン {#multi-agent-system-design-patterns} | COMMENT |
| MEDIUM | docs/ja/agents.md | 305 | ## ガードレール {#guardrails} | COMMENT |
| MEDIUM | docs/ja/tools.md | 856 | ローカルで設定された関数ツールの場合、Runner は呼び出し前にも `is_enabled` を再評価します。ただし、`is_enabled` は可視性とディスパッチを制御するものであり、ツール引数やアクセス対象のリソースに依存する認可の | CODE |
| MEDIUM | docs/ja/multi_agent.md | 14 | ## LLM によるオーケストレーション {#orchestrating-via-llm} | COMMENT |
| MEDIUM | docs/ja/multi_agent.md | 47 | ## コードによるオーケストレーション {#orchestrating-via-code} | COMMENT |
| MEDIUM | docs/ja/models/index.md | 20 | | OpenAIがホストするサブエージェントを使用する | 実験的なホスト型マルチエージェントモデルを使用する | [ホスト型マルチエージェント](#hosted-multi-agent-experimental) | | CODE |
| MEDIUM | docs/ja/models/index.md | 242 | ### ホスト型マルチエージェント(実験的) {#hosted-multi-agent-experimental} | COMMENT |
| MEDIUM | docs/ja/models/index.md | 294 | #### SDK オーケストレーションとの関係 {#relationship-to-sdk-orchestration} | COMMENT |
| MEDIUM | docs/ja/realtime/guide.md | 266 | ## ツール、承認、ハンドオフ、ガードレール {#tools-approvals-handoffs-and-guardrails} | COMMENT |
| MEDIUM | docs/ja/realtime/guide.md | 329 | ### ガードレール {#guardrails} | COMMENT |
| MEDIUM | docs/models/index.md | 16 | | Use OpenAI-hosted subagents | Use the experimental hosted multi-agent model | [Hosted multi-agent](#hosted-multi-agent | CODE |
| MEDIUM | docs/models/index.md | 238 | ### Hosted multi-agent (experimental) | COMMENT |
| 77 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | integration_tests/conftest.py | 160 | CODE | |
| LOW | integration_tests/_contract_validation.py | 277 | CODE | |
| LOW | integration_tests/_contract_state.py | 17 | CODE | |
| LOW | integration_tests/_contract_state.py | 218 | CODE | |
| LOW | integration_tests/_contract_state.py | 24 | CODE | |
| LOW | integration_tests/_contract_support.py | 208 | CODE | |
| LOW | integration_tests/packaging/mcp_legacy_server.py | 12 | CODE | |
| LOW | …gration_tests/security/test_local_sandbox_isolation.py | 115 | CODE | |
| LOW | integration_tests/containers/test_dapr_redis.py | 95 | CODE | |
| LOW | integration_tests/containers/test_dapr_redis.py | 125 | CODE | |
| LOW | tests/test_function_tool_approval_arguments.py | 187 | CODE | |
| LOW | tests/test_function_tool_approval_arguments.py | 675 | CODE | |
| LOW | tests/test_tracing.py | 306 | CODE | |
| LOW | tests/test_error_logging_redaction.py | 1861 | CODE | |
| LOW | tests/test_error_logging_redaction.py | 1897 | CODE | |
| LOW | tests/test_error_logging_redaction.py | 2286 | CODE | |
| LOW | tests/test_agent_llm_hooks.py | 104 | CODE | |
| LOW | tests/test_hitl_session_scenario.py | 321 | CODE | |
| LOW | tests/test_hitl_session_scenario.py | 342 | CODE | |
| LOW | tests/test_run_hooks.py | 125 | CODE | |
| LOW | tests/test_code_change_verification_runner.py | 170 | CODE | |
| LOW | tests/test_human_in_the_loop_server_example.py | 109 | CODE | |
| LOW | tests/test_agent_runner_streamed.py | 2713 | CODE | |
| LOW | tests/test_agent_runner_streamed.py | 2918 | CODE | |
| LOW | tests/test_release_automation.py | 249 | CODE | |
| LOW | tests/test_release_automation.py | 360 | CODE | |
| LOW | tests/test_release_automation.py | 603 | CODE | |
| LOW | tests/test_repository_workflow_interfaces.py | 24 | CODE | |
| LOW | tests/test_max_turns.py | 929 | CODE | |
| LOW | tests/test_provider_span_errors.py | 259 | CODE | |
| LOW | tests/test_provider_span_errors.py | 282 | CODE | |
| LOW | tests/test_provider_span_errors.py | 304 | CODE | |
| LOW | tests/test_provider_span_errors.py | 324 | CODE | |
| LOW | tests/test_function_tool_decorator.py | 723 | CODE | |
| LOW | tests/test_trace_processor.py | 297 | CODE | |
| LOW | tests/test_scripted_model.py | 1818 | CODE | |
| LOW | tests/test_run_impl_resume_paths.py | 531 | CODE | |
| LOW | tests/test_run_impl_resume_paths.py | 1567 | CODE | |
| LOW | tests/memory/test_session.py | 62 | CODE | |
| LOW | tests/memory/test_session.py | 298 | CODE | |
| LOW | tests/mcp/test_server_errors.py | 64 | CODE | |
| LOW | tests/mcp/test_server_errors.py | 133 | CODE | |
| LOW | tests/mcp/test_mcp_v2_http.py | 186 | CODE | |
| LOW | tests/mcp/servers/legacy.py | 12 | CODE | |
| LOW | …xtensions/experimental/hosted_multi_agent/test_live.py | 37 | CODE | |
| LOW | tests/extensions/memory/test_encrypt_session.py | 981 | CODE | |
| LOW | tests/extensions/memory/test_dapr_session.py | 1265 | CODE | |
| LOW | tests/extensions/memory/test_advanced_sqlite_session.py | 688 | CODE | |
| LOW | tests/extensions/memory/test_advanced_sqlite_session.py | 1526 | CODE | |
| LOW | tests/extensions/memory/test_advanced_sqlite_session.py | 3778 | CODE | |
| LOW | tests/extensions/memory/test_advanced_sqlite_session.py | 3811 | CODE | |
| LOW | tests/extensions/memory/test_advanced_sqlite_session.py | 3862 | CODE | |
| LOW | tests/extensions/memory/test_advanced_sqlite_session.py | 3988 | CODE | |
| LOW | tests/extensions/memory/test_advanced_sqlite_session.py | 4047 | CODE | |
| LOW | tests/extensions/memory/test_advanced_sqlite_session.py | 4124 | CODE | |
| LOW | tests/extensions/memory/test_advanced_sqlite_session.py | 4502 | CODE | |
| LOW | tests/extensions/memory/test_redis_session.py | 3218 | CODE | |
| LOW | tests/extensions/sandbox/test_modal.py | 3338 | CODE | |
| LOW | tests/extensions/sandbox/test_e2b.py | 311 | CODE | |
| LOW | tests/extensions/sandbox/test_vercel.py | 341 | CODE | |
| 362 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_tracing_errors.py | 710 | def set_error(self, error: Any) -> None: | CODE |
| LOW | tests/test_tracing_errors.py | 726 | def set_error(self, error: Any) -> None: | CODE |
| LOW | tests/test_agent_runner_sync.py | 14 | def set_event_loop(self, loop: asyncio.AbstractEventLoop | None) -> None: ... | CODE |
| LOW⚡ | tests/test_trace_processor.py | 527 | def set_processors(self, processors: list[TracingProcessor]) -> None: | CODE |
| LOW⚡ | tests/test_trace_processor.py | 536 | def set_disabled(self, disabled: bool) -> None: | CODE |
| LOW | tests/test_model_error_logging_redaction.py | 14 | def set_error(self, _error: Any) -> None: | CODE |
| LOW⚡ | tests/test_scripted_model.py | 1362 | def set_error(self, _error: SpanError) -> None: | CODE |
| LOW⚡ | tests/test_scripted_model.py | 1377 | def set_error(self, error: SpanError) -> None: | CODE |
| LOW | tests/test_scripted_model.py | 1405 | def set_error(self, error: SpanError) -> None: | CODE |
| LOW | tests/extensions/memory/test_encrypt_session.py | 65 | def _set_time(value: int) -> None: | CODE |
| LOW | tests/extensions/sandbox/test_modal.py | 62 | def _set_aio_attr(obj: object, name: str, fn: Callable[..., object]) -> None: | CODE |
| LOW | tests/sandbox/test_runtime.py | 168 | def _set_concurrency_limits(self, limits: SandboxConcurrencyLimits) -> None: | CODE |
| LOW | tests/sandbox/test_runtime.py | 172 | def _set_archive_limits(self, limits: SandboxArchiveLimits | None) -> None: | CODE |
| LOW | examples/basic/trace_redaction.py | 16 | logger = logging.getLogger(__name__) | CODE |
| LOW | examples/realtime/app/server.py | 46 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | examples/realtime/cli/demo.py | 385 | def _update_playback_rms(self, samples: np.ndarray[Any, np.dtype[Any]]) -> None: | CODE |
| LOW | …andbox/extensions/temporal/temporal_session_manager.py | 395 | async def update_snapshot_id(self, request: RenameRequest) -> None: | CODE |
| LOW⚡ | …es/sandbox/extensions/temporal/temporal_sandbox_tui.py | 328 | def _set_activity(self, text: str | Text = "") -> None: | CODE |
| LOW | …es/sandbox/extensions/temporal/temporal_sandbox_tui.py | 722 | def _set_session_title(self, title: str) -> None: | CODE |
| LOW⚡ | …es/sandbox/extensions/temporal/temporal_sandbox_tui.py | 324 | def _set_liveness(self, text: str | Text) -> None: | STRING |
| LOW | examples/live/app/server.py | 25 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/agents/run.py | 186 | __all__ = [ | CODE |
| LOW | src/agents/run.py | 210 | def set_default_agent_runner(runner: AgentRunner | None) -> None: | CODE |
| LOW⚡ | src/agents/run_state.py | 2271 | def set_trace(self, trace: Trace | None) -> None: | CODE |
| LOW⚡ | src/agents/run_state.py | 2280 | def set_tool_use_tracker_snapshot(self, snapshot: Mapping[str, Sequence[str]] | None) -> None: | CODE |
| LOW⚡ | src/agents/run_state.py | 2293 | def set_reasoning_item_id_policy(self, policy: Literal["preserve", "omit"] | None) -> None: | CODE |
| LOW | src/agents/run_error_handlers.py | 58 | __all__ = [ | CODE |
| LOW | src/agents/responses_websocket_session.py | 142 | __all__ = ["ResponsesWebSocketSession", "responses_websocket_session"] | CODE |
| LOW⚡ | src/agents/__init__.py | 308 | def set_default_openai_api(api: Literal["chat_completions", "responses"]) -> None: | CODE |
| LOW⚡ | src/agents/__init__.py | 315 | def set_default_openai_responses_transport(transport: Literal["http", "websocket"]) -> None: | CODE |
| LOW | src/agents/__init__.py | 280 | def set_default_openai_key(key: str, use_for_tracing: bool = True) -> None: | CODE |
| LOW | src/agents/__init__.py | 295 | def set_default_openai_client(client: AsyncOpenAI, use_for_tracing: bool = True) -> None: | CODE |
| LOW | src/agents/__init__.py | 335 | def set_default_openai_harness(harness_id: str | None) -> None: | CODE |
| LOW | src/agents/__init__.py | 368 | __all__ = [ | CODE |
| LOW | src/agents/apply_diff.py | 411 | __all__ = ["apply_diff"] | CODE |
| LOW⚡ | src/agents/_config.py | 13 | def set_default_openai_key(key: str, use_for_tracing: bool) -> None: | CODE |
| LOW⚡ | src/agents/_config.py | 20 | def set_default_openai_client(client: AsyncOpenAI, use_for_tracing: bool) -> None: | CODE |
| LOW⚡ | src/agents/_config.py | 27 | def set_default_openai_api(api: Literal["chat_completions", "responses"]) -> None: | CODE |
| LOW⚡ | src/agents/_config.py | 34 | def set_default_openai_responses_transport(transport: Literal["http", "websocket"]) -> None: | CODE |
| LOW⚡ | src/agents/_config.py | 48 | def set_default_openai_harness(harness_id: str | None) -> None: | CODE |
| LOW | src/agents/run_config.py | 637 | __all__ = [ | CODE |
| LOW⚡ | src/agents/agent_tool_state.py | 57 | def set_agent_tool_state_scope(context: Any, scope_id: str | None) -> None: | CODE |
| LOW | src/agents/decorators.py | 12 | __all__ = [ | CODE |
| LOW | src/agents/tracing/provider.py | 230 | def set_processors(self, processors: list[TracingProcessor]) -> None: | CODE |
| LOW | src/agents/tracing/provider.py | 242 | def set_disabled(self, disabled: bool) -> None: | CODE |
| LOW | src/agents/tracing/provider.py | 332 | def set_disabled(self, disabled: bool) -> None: | CODE |
| LOW⚡ | src/agents/tracing/__init__.py | 101 | def set_trace_processors(processors: list[TracingProcessor]) -> None: | CODE |
| LOW⚡ | src/agents/tracing/__init__.py | 108 | def set_tracing_disabled(disabled: bool) -> None: | CODE |
| LOW⚡ | src/agents/tracing/__init__.py | 115 | def set_tracing_export_api_key(api_key: str) -> None: | CODE |
| LOW | src/agents/tracing/__init__.py | 45 | __all__ = [ | CODE |
| LOW | src/agents/tracing/spans.py | 167 | def set_error(self, error: SpanError) -> None: | CODE |
| LOW | src/agents/tracing/spans.py | 266 | def set_error(self, error: SpanError) -> None: | CODE |
| LOW | src/agents/tracing/spans.py | 373 | def set_error(self, error: SpanError) -> None: | CODE |
| LOW | src/agents/tracing/setup.py | 27 | def set_trace_provider(provider: TraceProvider) -> None: | CODE |
| LOW | src/agents/memory/__init__.py | 20 | __all__ = [ | CODE |
| LOW | src/agents/mcp/__init__.py | 44 | __all__ = [ | CODE |
| LOW | src/agents/models/reasoning_content_replay.py | 61 | __all__ = [ | CODE |
| LOW | src/agents/models/__init__.py | 9 | __all__ = [ | CODE |
| LOW | src/agents/models/_openai_websocket.py | 52 | def _set_header(headers: dict[str, str], key: object, value: object) -> None: | CODE |
| LOW⚡ | src/agents/models/_openai_shared.py | 18 | def set_default_openai_key(key: str) -> None: | CODE |
| 97 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docs/tracing.md | 192 | api_key="your-api-key", | CODE |
| HIGH | docs/ja/tracing.md | 195 | api_key="your-api-key", | CODE |
| HIGH | docs/ja/realtime/quickstart.md | 134 | export OPENAI_API_KEY="your-api-key-here" | CODE |
| HIGH | docs/ja/realtime/quickstart.md | 140 | session = await runner.run(model_config={"api_key": "your-api-key"}) | CODE |
| HIGH | docs/realtime/quickstart.md | 130 | export OPENAI_API_KEY="your-api-key-here" | CODE |
| HIGH | docs/realtime/quickstart.md | 136 | session = await runner.run(model_config={"api_key": "your-api-key"}) | CODE |
| HIGH | docs/zh/tracing.md | 195 | api_key="your-api-key", | CODE |
| HIGH | docs/zh/realtime/quickstart.md | 134 | export OPENAI_API_KEY="your-api-key-here" | CODE |
| HIGH | docs/zh/realtime/quickstart.md | 140 | session = await runner.run(model_config={"api_key": "your-api-key"}) | CODE |
| HIGH | docs/ko/tracing.md | 195 | api_key="your-api-key", | CODE |
| HIGH | docs/ko/realtime/quickstart.md | 134 | export OPENAI_API_KEY="your-api-key-here" | CODE |
| HIGH | docs/ko/realtime/quickstart.md | 140 | session = await runner.run(model_config={"api_key": "your-api-key"}) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/test_cancel_streaming.py | 284 | CODE | |
| MEDIUM | tests/test_cancel_streaming.py | 308 | CODE | |
| MEDIUM | tests/test_run_step_execution.py | 2811 | CODE | |
| MEDIUM | tests/models/test_model_retry.py | 3447 | CODE | |
| MEDIUM | tests/models/test_model_retry.py | 1755 | CODE | |
| MEDIUM | tests/models/test_model_retry.py | 2491 | CODE | |
| MEDIUM | tests/models/test_model_retry.py | 2621 | CODE | |
| MEDIUM | tests/models/test_model_retry.py | 2665 | CODE | |
| MEDIUM | tests/models/test_model_retry.py | 2987 | CODE | |
| MEDIUM | tests/models/test_model_retry.py | 3031 | CODE | |
| MEDIUM | tests/realtime/test_testing.py | 327 | CODE | |
| MEDIUM | tests/voice/test_pipeline.py | 1823 | CODE | |
| MEDIUM | tests/voice/test_pipeline.py | 669 | CODE | |
| MEDIUM | tests/voice/test_pipeline.py | 740 | CODE | |
| MEDIUM | tests/voice/test_pipeline.py | 1255 | CODE | |
| MEDIUM | tests/voice/test_pipeline.py | 1309 | CODE | |
| MEDIUM | tests/voice/test_pipeline.py | 1382 | CODE | |
| MEDIUM | tests/voice/test_pipeline.py | 1420 | CODE | |
| MEDIUM | tests/voice/test_pipeline.py | 1522 | CODE | |
| MEDIUM | src/agents/voice/workflow.py | 41 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_agent_runner_streamed.py | 4312 | CODE | |
| LOW | tests/test_run_state.py | 165 | CODE | |
| LOW | tests/test_run_step_execution.py | 3153 | CODE | |
| LOW | tests/mcp/helpers.py | 72 | CODE | |
| LOW | tests/extensions/sandbox/test_e2b.py | 311 | CODE | |
| LOW | tests/extensions/sandbox/test_e2b.py | 1123 | CODE | |
| LOW | tests/extensions/sandbox/test_e2b.py | 1190 | CODE | |
| LOW | tests/extensions/sandbox/test_e2b.py | 1242 | CODE | |
| LOW | tests/extensions/sandbox/test_e2b.py | 1460 | CODE | |
| LOW | tests/sandbox/capabilities/test_apply_patch_tool.py | 785 | CODE | |
| LOW | …ndbox/extensions/daytona/usaspending_text2sql/agent.py | 203 | CODE | |
| LOW | src/agents/model_settings.py | 225 | CODE | |
| LOW | src/agents/run.py | 275 | CODE | |
| LOW | src/agents/run.py | 380 | CODE | |
| LOW | src/agents/run.py | 483 | CODE | |
| LOW | src/agents/responses_websocket_session.py | 90 | CODE | |
| LOW | src/agents/tool_context.py | 67 | CODE | |
| LOW | src/agents/retry.py | 62 | CODE | |
| LOW | src/agents/agent.py | 606 | CODE | |
| LOW | src/agents/agent.py | 424 | CODE | |
| LOW | src/agents/run_config.py | 276 | CODE | |
| LOW | src/agents/run_config.py | 526 | CODE | |
| LOW | src/agents/tool.py | 725 | CODE | |
| LOW | src/agents/tool.py | 2604 | CODE | |
| LOW | src/agents/tool.py | 2632 | CODE | |
| LOW | src/agents/tool.py | 2658 | CODE | |
| LOW | src/agents/tracing/create.py | 188 | CODE | |
| LOW | src/agents/tracing/create.py | 353 | CODE | |
| LOW | src/agents/tracing/create.py | 397 | CODE | |
| LOW | src/agents/mcp/server.py | 897 | CODE | |
| LOW | src/agents/mcp/server.py | 1968 | CODE | |
| LOW | src/agents/mcp/server.py | 2118 | CODE | |
| LOW | src/agents/mcp/server.py | 2296 | CODE | |
| LOW | src/agents/models/multi_provider.py | 76 | CODE | |
| LOW | src/agents/models/openai_provider.py | 46 | CODE | |
| LOW | src/agents/extensions/experimental/codex/codex_tool.py | 237 | CODE | |
| LOW | src/agents/extensions/sandbox/vercel/_provider.py | 97 | CODE | |
| LOW | src/agents/extensions/sandbox/vercel/sandbox.py | 424 | CODE | |
| LOW | src/agents/extensions/sandbox/runloop/sandbox.py | 491 | CODE | |
| LOW | src/agents/extensions/sandbox/blaxel/mounts.py | 231 | CODE | |
| LOW | src/agents/extensions/sandbox/blaxel/sandbox.py | 1229 | CODE | |
| LOW | src/agents/extensions/sandbox/daytona/sandbox.py | 331 | CODE | |
| LOW | src/agents/extensions/sandbox/modal/sandbox.py | 303 | CODE | |
| LOW | src/agents/extensions/sandbox/e2b/sandbox.py | 446 | CODE | |
| LOW | src/agents/extensions/sandbox/e2b/sandbox.py | 213 | CODE | |
| LOW | src/agents/extensions/sandbox/e2b/sandbox.py | 274 | CODE | |
| LOW | src/agents/extensions/sandbox/e2b/sandbox.py | 628 | CODE | |
| LOW | src/agents/run_internal/session_persistence.py | 919 | CODE | |
| LOW | src/agents/run_internal/run_loop.py | 2308 | CODE | |
| LOW | src/agents/run_internal/run_loop.py | 2665 | CODE | |
| LOW | src/agents/voice/pipeline_config.py | 77 | CODE | |
| LOW | src/agents/sandbox/sandbox_agent.py | 67 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | src/agents/run_state.py | 1892 | Serializes the run state to a JSON-compatible dictionary. This method is used to serialize the run state to a d | STRING |
| HIGH | src/agents/run_state.py | 2313 | Deserializes a run state from a JSON string. This method is used to deserialize a run state from a string that | STRING |
| HIGH | src/agents/run_state.py | 2401 | Deserializes a run state from a JSON dictionary. This method is used to deserialize a run state from a dict tha | STRING |
| HIGH | src/agents/extensions/memory/advanced_sqlite_session.py | 1066 | Create a new branch starting from a specific user message turn. Args: turn_number: The branch turn | STRING |
| HIGH | src/agents/extensions/memory/advanced_sqlite_session.py | 1123 | Create branch from the first user turn matching the search term. Args: search_term: Text to search | STRING |
| HIGH | src/agents/extensions/memory/advanced_sqlite_session.py | 1469 | Copy messages before the branch point to the new branch. Args: new_branch_id: The ID of the new bra | STRING |
| HIGH | src/agents/extensions/memory/mongodb_session.py | 180 | Create a session from a MongoDB URI string. Args: session_id: Conversation ID. uri: Mon | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | src/agents/extensions/sandbox/runloop/sandbox.py | 962 | async with self._sdk.api.devboxes.with_streaming_response.download_file( | CODE |
| CRITICAL | src/agents/voice/models/openai_tts.py | 42 | response = self._client.audio.speech.with_streaming_response.create( | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/voice/test_input.py | 207 | # Add audio to the queue | COMMENT |
| LOW | examples/memory/memory_session_hitl_example.py | 41 | # Check if any city name is in the provided location string | COMMENT |
| LOW | examples/memory/openai_session_hitl_example.py | 41 | # Check if any city name is in the provided location string | COMMENT |
| LOW | examples/realtime/cli/demo.py | 298 | # Check if there's enough data to read | COMMENT |
| LOW | examples/agent_patterns/agents_as_tools_structured.py | 41 | # Set include_input_schema to true to include the full JSON Schema: | COMMENT |
| LOW | examples/agent_patterns/streaming_guardrails.py | 68 | # Check if it's time to run the guardrail check | COMMENT |
| LOW | src/agents/models/chatcmpl_converter.py | 140 | # Check if message is agents.extensions.models.litellm_model.InternalChatCompletionMessage. | COMMENT |
| LOW | src/agents/extensions/memory/advanced_sqlite_session.py | 1215 | # Check if trying to delete current branch | COMMENT |
| LOW | src/agents/extensions/models/litellm_model.py | 708 | # Check if this is an assistant message with tool calls | COMMENT |
| LOW | src/agents/realtime/session.py | 322 | # Check if there's a stored exception to raise | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | integration_tests/openai/test_approval_resume.py | 37 | def perform_action(action: str) -> str: | CODE |
| LOW⚡ | tests/test_apply_diff.py | 187 | " def helper():", | CODE |
| LOW | tests/test_apply_diff.py | 136 | " def helper():", | CODE |
| LOW | tests/test_apply_diff.py | 163 | " def helper():", | CODE |
| LOW | tests/test_trace_processor.py | 303 | def handle_request(request: httpx2.Request) -> httpx2.Response: | CODE |
| LOW | tests/test_agent_as_tool_callback_validation.py | 37 | def perform_action() -> str: | CODE |
| LOW | tests/test_released_api_contract.py | 1711 | def helper(value: str = "default") -> None: | CODE |
| LOW | tests/mcp/test_mcp_v2_http.py | 72 | def handle_request(request): | CODE |
| LOW | tests/mcp/test_mcp_v2_http.py | 109 | def handle_request(request): | CODE |
| LOW | tests/realtime/test_realtime_model_settings.py | 167 | def helper() -> str: | CODE |
| LOW⚡ | tests/sandbox/test_apply_patch.py | 96 | b" def helper():\n" | CODE |
| LOW⚡ | tests/sandbox/test_apply_patch.py | 109 | b"class Target\n def helper():\n pass\n\n def desired():\n return 1\n" | CODE |
| LOW | tests/sandbox/test_apply_patch.py | 75 | b" def helper():\n" | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_responses_tracing.py | 54 | self.id = "dummy-id" | CODE |
| LOW | tests/test_responses_tracing.py | 110 | "response_id": "dummy-id", | CODE |
| LOW | tests/test_responses_tracing.py | 177 | "response_id": "dummy-id", | CODE |
| LOW | tests/test_responses_tracing.py | 316 | response=model_test_helpers.get_response_obj([], "dummy-id-123"), | CODE |
| LOW | tests/test_responses_tracing.py | 345 | "response_id": "dummy-id-123", | CODE |
| LOW | tests/test_responses_tracing.py | 389 | self.response = model_test_helpers.get_response_obj([], "dummy-id-terminal") | CODE |
| LOW | tests/test_responses_tracing.py | 464 | response=model_test_helpers.get_response_obj([], "dummy-id-123"), | CODE |
| LOW | tests/test_responses_tracing.py | 499 | "response_id": "dummy-id-123", | CODE |
| LOW | tests/test_responses_tracing.py | 669 | response=model_test_helpers.get_response_obj([], "dummy-id-123"), | CODE |
| LOW | tests/test_run_state.py | 4569 | state = make_state(agent, context=context, original_input="placeholder", max_turns=5) | CODE |
| LOW | tests/models/test_model_payload_iterators.py | 87 | id="dummy-id", | CODE |
| LOW | tests/extensions/sandbox/test_blaxel.py | 165 | def __init__(self, value: str = "fake-token-abc123") -> None: | CODE |
| LOW | examples/basic/tool_guardrails.py | 31 | "name": "John Doe", | CODE |
| LOW | examples/basic/tool_guardrails.py | 34 | "phone": "555-1234", | CODE |
| LOW | examples/basic/tool_guardrails.py | 45 | "phone": "555-1234", | CODE |
| LOW | examples/basic/tool_guardrails.py | 97 | if "555-1234" in output_str: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docs/scripts/translate_docs.py | 261 | ## DO NOT TRANSLATE ## | COMMENT |
| LOW | examples/__init__.py | 1 | # Make the examples directory into a package to avoid top-level module name collisions. | COMMENT |
| LOW | examples/basic/lifecycle_example.py | 181 | ### 11: LLM ended. Usage: 3 requests, 472 input tokens, 45 output tokens, 517 total tokens | COMMENT |
| LOW | examples/basic/stream_items.py | 61 | # They don't have the guts! | COMMENT |
| LOW | examples/sandbox/memory.py | 81 | "access, report that validation was blocked and finish instead of retrying repeatedly. " | COMMENT |
| LOW | examples/sandbox/memory.py | 101 | # considered during consolidation. Older conversation-specific guidance may be removed from | COMMENT |
| LOW | .github/dependabot.yml | 1 | version: 2 | COMMENT |
| LOW | src/agents/mcp/manager.py | 181 | ) | COMMENT |
| LOW | src/agents/extensions/memory/dapr_session.py | 401 | # guarded by the etag that backed the value that was read. | COMMENT |
| LOW | src/agents/extensions/sandbox/modal/sandbox.py | 441 | """ | COMMENT |
| LOW | src/agents/run_internal/model_retry.py | 441 | COMMENT | |
| LOW | src/agents/run_internal/session_persistence.py | 1421 | including independently restored RunState copies. Session has no distributed compare-and-swap | COMMENT |
| LOW | src/agents/sandbox/sandboxes/docker.py | 141 | spool.write(chunk) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/test_code_change_verification_runner.py | 341 | # Keep the orphan alive even when the harness releases its normal exit gate. | STRING |
| LOW | tests/test_run_state.py | 10327 | # This should not raise an error, just return empty tools | COMMENT |
| MEDIUM | tests/mcp/test_tool_filtering.py | 239 | # Role-based filter for comprehensive testing | COMMENT |
| LOW | examples/customer_service/main.py | 156 | # Here, we'll just use a random UUID for the conversation ID | COMMENT |
| MEDIUM | examples/mcp/prompt_server/server.py | 20 | return f"""You are a senior {language} code review specialist. Your role is to provide comprehensive code analysis w | CODE |
| LOW | src/agents/result.py | 976 | # Soft cancel - just set the flag | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/models/test_anthropic_thinking_blocks.py | 246 | # Step 1: Convert message to output items | COMMENT |
| LOW | tests/models/test_anthropic_thinking_blocks.py | 279 | # Step 2: Convert output items back to messages | COMMENT |
| LOW | tests/models/test_anthropic_thinking_blocks.py | 419 | # Step 1: Convert message to output items | COMMENT |
| LOW | tests/models/test_anthropic_thinking_blocks.py | 455 | # Step 2: Convert output items back to messages with preserve_thinking_blocks=True | COMMENT |
| LOW | tests/models/test_gemini_thought_signatures.py | 38 | # Step 1: Convert to items | COMMENT |
| LOW | tests/models/test_gemini_thought_signatures.py | 53 | # Step 2: Convert back to messages | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/models/test_anthropic_thinking_blocks.py | 246 | # Step 1: Convert message to output items | COMMENT |
| LOW | tests/models/test_anthropic_thinking_blocks.py | 279 | # Step 2: Convert output items back to messages | COMMENT |
| LOW | tests/models/test_anthropic_thinking_blocks.py | 419 | # Step 1: Convert message to output items | COMMENT |
| LOW | tests/models/test_anthropic_thinking_blocks.py | 455 | # Step 2: Convert output items back to messages with preserve_thinking_blocks=True | COMMENT |
| LOW | tests/models/test_gemini_thought_signatures.py | 38 | # Step 1: Convert to items | COMMENT |
| LOW | tests/models/test_gemini_thought_signatures.py | 53 | # Step 2: Convert back to messages | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | examples/basic/tool_guardrails.py | 169 | ❌ Guardrail rejected function tool call: I'm unable to send the email as mentioning ACME Corp. is restricted. | STRING |
| MEDIUM | examples/basic/tool_guardrails.py | 176 | ❌ Guardrail rejected function tool output: I'm unable to retrieve the contact info for user456 because it contains restr | STRING |
| MEDIUM | examples/handoffs/message_filter_streaming.py | 44 | # or, you can use the HandoffInputData.clone(kwargs) method | COMMENT |
| MEDIUM | examples/handoffs/message_filter.py | 44 | # or, you can use the HandoffInputData.clone(kwargs) method | COMMENT |