Public scan — anyone with this URL can view this analysis. Sign up to track your own repos privately, run scheduled re-scans, and get AI fix prompts via your dashboard.

Scan timing: clone 1.64s · analysis 13.01s · 7.1 MB · GitHub API rate-limit (preflight)

openai/openai-python

https://github.com/openai/openai-python · scanned 2026-05-24 01:20 UTC (1 week, 5 days ago) · 10 languages

940 findings (180 legacy + 760 scanner) 69th percentile · Python · large (100-500K LoC) Scanner says 86 (lower by 8)

UNIFIED Repobility · multi-layer engine · AI coders

Complete repo analysis

Last scanned 1 week, 5 days ago · v5 · 333 findings from 2 sources. Findings combine the legacy security pipeline AND the multi-layer engine (atlas, wiring, flows, ranked) AND verified AI agent contributions.

JSON
Score breakdown â 2026-05-18-v5
Component Sub-score Weight Contribution
structure_score 85.0 0.15 12.75
security_score 98.7 0.25 24.68
testing_score 62.0 0.20 12.40
documentation_score 95.0 0.15 14.25
practices_score 68.0 0.15 10.20
code_quality 39.0 0.10 3.90
Overall 1.00 78.2
Severity distribution — click a segment to filter
Active filters: excluding tests × Reset all
Scan summary Repository scanned at 86.5/100 with 88.9% coverage. It contains 7632 nodes across 0 cross-layer flows, written primarily in mixed languages. Engine surfaced 153 findings — concentrated in software (74), quality (73), hardware (3). Risk profile is high: 0 critical, 1 high, 2 medium. Recommended next step: open the software layer findings first — that's where the highest-impact wins live.

Showing 265 of 333 findings. Click TP / FP to vote on a finding's accuracy — votes adjust the confidence weighting and improve detection across the platform.

critical Legacy quality quality conf 1.00 ✓ Repobility [MINED019] Ssti Jinja From String: jinja2.Environment().from_string(user_input) — full RCE via templates.
Review and fix per the pattern semantics. See CWE-94 / A03:2021 for context.
src/openai/resources/responses/input_items.py:88 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Missing import: `stat` used but not imported
The file uses `stat.something(...)` but never imports `stat`. This raises NameError at runtime the first time the line executes.
src/openai/resources/uploads/uploads.py:452 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Missing import: `string` used but not imported
The file uses `string.something(...)` but never imports `string`. This raises NameError at runtime the first time the line executes.
src/openai/_utils/_utils.py:367 qualitylegacy
critical Legacy software dependency conf 0.90 ✓ Repobility Workflow uses `secrets.OPENAI_API_KEY` on a `pull_request` trigger
This workflow triggers on `pull_request`, which checks out the FORK's code. Referencing `${ secrets.OPENAI_API_KEY }` lets a PR from any fork exfiltrate the secret (modify a script, log the value, etc.). Use `pull_request_target` ONLY with strict checkout discipline (no fork code in the trusted con…
.github/workflows/ci.yml:123 dependencylegacy
critical Legacy software dependency conf 0.90 ✓ Repobility Workflow uses `secrets.OPENAI_API_KEY` on a `pull_request` trigger
This workflow triggers on `pull_request`, which checks out the FORK's code. Referencing `${ secrets.OPENAI_API_KEY }` lets a PR from any fork exfiltrate the secret (modify a script, log the value, etc.). Use `pull_request_target` ONLY with strict checkout discipline (no fork code in the trusted con…
.github/workflows/ci.yml:119 dependencylegacy
low Legacy quality quality conf 1.00 ✓ Repobility [MINED001] Bare Except Pass: except: pass or except Exception: pass — silently swallows everything including KeyboardInterrupt and bugs.
Review and fix per the pattern semantics. See CWE-755 / for context.
src/openai/_event_handler.py:44 qualitylegacy
low Legacy quality quality conf 1.00 ✓ Repobility [MINED001] Bare Except Pass: except: pass or except Exception: pass — silently swallows everything including KeyboardInterrupt and bugs.
Review and fix per the pattern semantics. See CWE-755 / for context.
examples/realtime/push_to_talk_app.py:253 qualitylegacy
low Legacy quality quality conf 1.00 ✓ Repobility [MINED001] Bare Except Pass: except: pass or except Exception: pass — silently swallows everything including KeyboardInterrupt and bugs.
Review and fix per the pattern semantics. See CWE-755 / for context.
examples/realtime/audio_util.py:138 qualitylegacy
low Legacy quality quality conf 1.00 ✓ Repobility [MINED004] Weak Crypto: MD5/SHA1/DES/RC4 used for security context (not just checksums).
Review and fix per the pattern semantics. See CWE-327 / A02:2021 for context.
src/openai/types/upload_complete_params.py:16 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility [MINED006] Overcatch Baseexception: except BaseException: ... — prevents Ctrl+C and SystemExit from working.
Review and fix per the pattern semantics. See CWE-705 / for context.
examples/realtime/push_to_talk_app.py:253 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility [MINED006] Overcatch Baseexception: except BaseException: ... — prevents Ctrl+C and SystemExit from working.
Review and fix per the pattern semantics. See CWE-705 / for context.
examples/realtime/audio_util.py:138 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self._aiter_chunks` used but never assigned in __init__
Method `aiter_bytes` of class `SSEDecoder` reads `self._aiter_chunks`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
src/openai/_streaming.py:319 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self._get_connection` used but never assigned in __init__
Method `on_key` of class `RealtimeApp` reads `self._get_connection`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
examples/realtime/push_to_talk_app.py:281 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self._get_connection` used but never assigned in __init__
Method `send_mic_audio` of class `RealtimeApp` reads `self._get_connection`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
examples/realtime/push_to_talk_app.py:245 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self._iter_chunks` used but never assigned in __init__
Method `iter_bytes` of class `SSEDecoder` reads `self._iter_chunks`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
src/openai/_streaming.py:297 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self._iter_events` used but never assigned in __init__
Method `__stream__` of class `AsyncStream` reads `self._iter_events`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
src/openai/_streaming.py:169 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self._iter_events` used but never assigned in __init__
Method `__stream__` of class `Stream` reads `self._iter_events`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
src/openai/_streaming.py:59 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.close` used but never assigned in __init__
Method `__aexit__` of class `AsyncStream` reads `self.close`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
src/openai/_streaming.py:231 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.close` used but never assigned in __init__
Method `__exit__` of class `Stream` reads `self.close`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
src/openai/_streaming.py:121 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.data` used but never assigned in __init__
Method `__repr__` of class `ServerSentEvent` reads `self.data`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
src/openai/_streaming.py:280 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.data` used but never assigned in __init__
Method `json` of class `ServerSentEvent` reads `self.data`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
src/openai/_streaming.py:276 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.decode` used but never assigned in __init__
Method `iter_bytes` of class `SSEDecoder` reads `self.decode`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
src/openai/_streaming.py:301 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.event` used but never assigned in __init__
Method `__repr__` of class `ServerSentEvent` reads `self.event`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
src/openai/_streaming.py:280 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.exit` used but never assigned in __init__
Method `on_key` of class `RealtimeApp` reads `self.exit`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
examples/realtime/push_to_talk_app.py:266 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.handle_realtime_connection` used but never assigned in __init__
Method `on_mount` of class `RealtimeApp` reads `self.handle_realtime_connection`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
examples/realtime/push_to_talk_app.py:153 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.id` used but never assigned in __init__
Method `__repr__` of class `ServerSentEvent` reads `self.id`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
src/openai/_streaming.py:280 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.query_one` used but never assigned in __init__
Method `on_key` of class `RealtimeApp` reads `self.query_one`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
examples/realtime/push_to_talk_app.py:262 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.query_one` used but never assigned in __init__
Method `on_key` of class `RealtimeApp` reads `self.query_one`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
examples/realtime/push_to_talk_app.py:270 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.query_one` used but never assigned in __init__
Method `send_mic_audio` of class `RealtimeApp` reads `self.query_one`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
examples/realtime/push_to_talk_app.py:232 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.query_one` used but never assigned in __init__
Method `handle_realtime_connection` of class `RealtimeApp` reads `self.query_one`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
examples/realtime/push_to_talk_app.py:205 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.query_one` used but never assigned in __init__
Method `handle_realtime_connection` of class `RealtimeApp` reads `self.query_one`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
examples/realtime/push_to_talk_app.py:178 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.retry` used but never assigned in __init__
Method `__repr__` of class `ServerSentEvent` reads `self.retry`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
src/openai/_streaming.py:280 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.run_worker` used but never assigned in __init__
Method `on_mount` of class `RealtimeApp` reads `self.run_worker`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
examples/realtime/push_to_talk_app.py:154 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.run_worker` used but never assigned in __init__
Method `on_mount` of class `RealtimeApp` reads `self.run_worker`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
examples/realtime/push_to_talk_app.py:153 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.send_mic_audio` used but never assigned in __init__
Method `on_mount` of class `RealtimeApp` reads `self.send_mic_audio`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
examples/realtime/push_to_talk_app.py:154 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility `self.start` used but never assigned in __init__
Method `add_data` of class `AudioPlayerAsync` reads `self.start`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance.
examples/realtime/audio_util.py:79 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Blocking call `input` inside async function `main`
`input` is a synchronous (blocking) call. When invoked inside an `async def` it stalls the event loop, preventing every other coroutine in the process from making progress.
examples/realtime/realtime.py:33 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Blocking call `input` inside async function `main`
`input` is a synchronous (blocking) call. When invoked inside an `async def` it stalls the event loop, preventing every other coroutine in the process from making progress.
examples/realtime/azure_realtime.py:56 qualitylegacy
high Legacy software dependency conf 0.90 ✓ Repobility Dockerfile FROM `mcr.microsoft.com/vscode/devcontainers/python:0-` not pinned by digest
`FROM mcr.microsoft.com/vscode/devcontainers/python:0-` resolves the tag at build time. The registry CAN re-push a different image for the same tag, so every build is potentially different. Production images should pin to `image@sha256:...` for reproducibility + supply-chain integrity.
.devcontainer/Dockerfile:2 dependencylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Phantom test coverage: test_pydantic_v1
Test function `test_pydantic_v1` runs code but contains no assert / expect / should call — it passes regardless of behaviour. Adds line coverage without verifying anything.
noxfile.py:5 qualitylegacy
high 9-layer hardware supply-chain conf 1.00 Dockerfile pipes a remote installer into a shell
Executing downloaded code during image build gives the remote endpoint build-time code execution. Prefer pinned packages or verify downloaded installers by checksum/signature.
.devcontainer/Dockerfile:5 supply-chaindockerremote-installer
medium Legacy quality quality conf 1.00 [SEC127] AI agent stub — TODO: implement / pass placeholder body: Function body left as TODO/pass/raise NotImplementedError after an AI scaffolding pass. The route appears to exist (and may even pass shallow CI), but invoking it crashes or silently no-ops. AI agents consistently emit these when their context window runs out mid-implementation. Production callers hitting these stubs is a classic AI-generated-incident.
Either implement the body, or fail closed at module-load time so the deploy can't ship a half-built route. A CI gate that fails build on `raise NotImplementedError` in non-abstract code catches this cleanly.
src/openai/_compat.py:228 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Bare except continues silently
Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
src/openai/resources/responses/responses.py:4286 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Bare except continues silently
Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
src/openai/resources/responses/responses.py:3831 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Bare except continues silently
Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
src/openai/resources/realtime/realtime.py:897 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Bare except continues silently
Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
src/openai/resources/realtime/realtime.py:419 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Bare except continues silently
Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
src/openai/_utils/_proxy.py:51 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Bare except continues silently
Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
src/openai/_utils/_utils.py:410 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Bare except continues silently
Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
src/openai/_base_client.py:424 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Bare except continues silently
Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
src/openai/_base_client.py:2182 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Bare except continues silently
Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
src/openai/_base_client.py:2175 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Bare except continues silently
Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
src/openai/_base_client.py:2168 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Bare except continues silently
Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
src/openai/_base_client.py:2103 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Bare except continues silently
Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
src/openai/_models.py:651 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Bare except continues silently
Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
src/openai/_models.py:702 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Bare except continues silently
Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
src/openai/_models.py:696 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Bare except continues silently
Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
scripts/utils/ruffen-docs.py:42 qualitylegacy
high Legacy quality quality conf 1.00 ✓ Repobility Bare except continues silently
Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose.
examples/image_stream.py:52 qualitylegacy
medium Legacy cicd docker conf 0.90 Docker build context has no .dockerignore
Without .dockerignore, build context can include source history, local env files, dependencies, and generated artifacts.
.dockerignore dockerlegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `copy` (dict)
`def copy(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_client.py:1015 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `copy` (dict)
`def copy(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_client.py:509 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `delete` (dict)
`def delete(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1990 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `delete` (dict)
`def delete(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1386 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `get_api_list` (dict)
`def get_api_list(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1407 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `get` (dict)
`def get(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1852 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `get` (dict)
`def get(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1842 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `get` (dict)
`def get(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1831 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `get` (dict)
`def get(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1821 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `get` (dict)
`def get(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1251 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `get` (dict)
`def get(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1241 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `get` (dict)
`def get(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1230 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `get` (dict)
`def get(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1220 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `patch` (dict)
`def patch(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1933 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `patch` (dict)
`def patch(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1334 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `post` (dict)
`def post(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1905 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `post` (dict)
`def post(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1892 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `post` (dict)
`def post(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1878 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `post` (dict)
`def post(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1865 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `post` (dict)
`def post(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1306 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `post` (dict)
`def post(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1293 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `post` (dict)
`def post(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1279 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `post` (dict)
`def post(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1266 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `put` (dict)
`def put(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1964 qualitylegacy
medium Legacy quality quality conf 1.00 ✓ Repobility Mutable default argument in `put` (dict)
`def put(... = []/{}/set())` — Python's default value is constructed ONCE at function definition time and shared across all calls. Mutating it in one call mutates it for every future call too.
src/openai/_base_client.py:1360 qualitylegacy
high Legacy quality quality conf 0.82 Parallel implementation file sits beside a canonical file
AI-assisted edits often create a new sibling file instead of integrating the change into the existing module. That leaves two paths for future maintainers to understand and can hide the code that is actually wired into the app.
src/openai/types/beta/realtime/transcription_session_update.py:1 qualitylegacy
medium 9-layer cicd supply-chain conf 1.00 GitHub Actions workflow grants broad write permissions
CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions.
.github/workflows/ci.yml supply-chaingithub-actionsleast-privilege
medium 9-layer quality integrity conf 1.00 Network/subprocess call without timeout or try/except — scripts/utils/ruffen-docs.py:108
`subprocess.check_output(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries.
integrityfragile-runtimerobustness
low Legacy quality quality conf 0.64 Duplicate top-level symbol appears in a patch-style file
A generated replacement file defining the same public function or class name as another module can mean the new logic is not actually wired into the running code.
src/openai/types/beta/realtime/transcription_session_update.py:1 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/users/users.py:171 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/users/users.py:170 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/users/users.py:28 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/users/users.py:3 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/users/roles.py:61 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/users/roles.py:17 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/users/__init__.py:1 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/service_accounts.py:166 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/service_accounts.py:165 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/roles.py:16 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/projects.py:40 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/projects.py:39 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/groups/roles.py:17 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/groups/groups.py:25 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/groups/__init__.py:18 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/data_retention.py:13 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/certificates.py:20 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/__init__.py:49 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/api_keys.py:79 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/__init__.py:8 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/projects/__init__.py:1 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/organization.py:2 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/groups/groups.py:5 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/resources/admin/organization/groups/__init__.py:8 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/lib/streaming/responses/_responses.py:53 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/lib/streaming/responses/_responses.py:52 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/lib/streaming/chat/_completions.py:63 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/lib/streaming/_deltas.py:3 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/_response.py:8 qualitylegacy
high Legacy quality quality conf 0.86 Duplicated implementation block across source files
Duplicated blocks are a common artifact when generated code is pasted or recreated instead of reused. They increase maintenance cost because every future bug fix must be found in multiple locations.
src/openai/_exceptions.py:11 qualitylegacy
low 9-layer hardware coverage conf 1.00 Containers defined but no K8s/orchestration manifest found
Repo has Dockerfiles/compose but no Kubernetes/Nomad manifests. If the target deployment is K8s, the manifests may live in a separate ops repo.
coveragedeployment
low 9-layer hardware supply-chain conf 1.00 Docker base image is tag-pinned but not digest-pinned: mcr.microsoft.com/vscode/devcontainers/python:0-${VARIANT}
Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter.
.devcontainer/Dockerfile:2 supply-chaindockerpinned-dependencies
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: examples/azure.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: examples/demo.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: examples/module_client.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/_constants.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/_version.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/audio_model.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/audio_response_format.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/beta/assistant_response_format_option.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/beta/assistant_response_format_option_param.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/beta/assistant_tool.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/beta/assistant_tool_choice_option.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/beta/assistant_tool_choice_option_param.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/beta/assistant_tool_param.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/beta/threads/message_content.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/beta/threads/message_content_delta.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/beta/threads/message_content_part_param.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/beta/threads/run_status.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/chat_model.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/embedding_model.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/file_chunking_strategy.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/file_chunking_strategy_param.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/file_content.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/file_purpose.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/image_edit_stream_event.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/image_gen_stream_event.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/image_model.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/moderation_model.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/moderation_multi_modal_input_param.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/responses/computer_action_list.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/responses/response_format_text_config.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/responses/response_format_text_config_param.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/responses/response_function_call_output_item.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/responses/response_function_call_output_item_list.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/responses/response_function_call_output_item_list_param.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/responses/response_function_call_output_item_param.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/responses/response_includable.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/responses/response_input.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/responses/response_input_content.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/responses/response_input_content_param.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/responses/response_input_message_content_list.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/responses/response_input_message_content_list_param.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/responses/response_status.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/responses/response_stream_event.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/responses/responses_server_event.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/responses/tool_choice_options.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/video_model.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/video_model_param.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/video_seconds.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/types/video_size.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer software dead-code-candidate conf 1.00 File has no detected symbols: src/openai/version.py
Source file with no class/function declarations — possible config, dead code, or scratch file.
dead-code-candidate
low 9-layer quality integrity conf 1.00 Legacy-named symbol `model_copy` in src/openai/_base_client.py:65
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `model_copy` in src/openai/lib/azure.py:14
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `model_copy` in tests/lib/chat/test_completions_streaming.py:22
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in src/openai/_compat.py:82
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in src/openai/_models.py:120
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in src/openai/resources/beta/assistants.py:1025
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in src/openai/resources/beta/threads/messages.py:639
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in src/openai/resources/beta/threads/runs/runs.py:874
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in src/openai/resources/beta/threads/runs/steps.py:360
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in src/openai/resources/beta/threads/threads.py:795
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in src/openai/resources/files.py:763
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in src/openai/resources/fine_tuning/checkpoints/permissions.py:552
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in tests/api_resources/audio/test_speech.py:16
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in tests/api_resources/beta/test_assistants.py:18
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in tests/api_resources/beta/test_realtime.py:9
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in tests/api_resources/beta/test_threads.py:18
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in tests/api_resources/beta/threads/runs/test_steps.py:15
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in tests/api_resources/beta/threads/test_messages.py:18
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in tests/api_resources/beta/threads/test_runs.py:17
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in tests/api_resources/containers/files/test_content.py:16
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in tests/api_resources/fine_tuning/checkpoints/test_permissions.py:20
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in tests/api_resources/realtime/test_calls.py:16
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in tests/api_resources/skills/test_content.py:16
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in tests/api_resources/skills/versions/test_content.py:16
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in tests/api_resources/test_files.py:18
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in tests/api_resources/test_videos.py:24
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in tests/lib/test_assistants.py:14
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `reportDeprecated` in tests/test_utils/test_json.py:96
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `test_copy` in tests/test_client.py:147
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `test_pydantic_v1` in noxfile.py:5
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality integrity conf 1.00 Legacy-named symbol `test_verify_signature_timestamp_too_old` in tests/api_resources/test_webhooks.py:108
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
integritylegacy-markerdead-code
low 9-layer quality tests conf 1.00 Low test-to-source ratio
145 tests / 1282 src (ratio 0.11).
tests
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: examples/realtime/push_to_talk_app.py:render, examples/realtime/push_to_talk_app.py:render This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate.
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: src/openai/__init__.py:api_key, src/openai/__init__.py:api_key This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate.
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: src/openai/__init__.py:admin_api_key, src/openai/__init__.py:admin_api_key This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate.
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: src/openai/__init__.py:organization, src/openai/__init__.py:organization This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate.
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: src/openai/__init__.py:project, src/openai/__init__.py:project This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate.
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: src/openai/__init__.py:webhook_secret, src/openai/__init__.py:webhook_secret This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate.
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: src/openai/__init__.py:base_url, src/openai/__init__.py:base_url This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate.
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: src/openai/__init__.py:timeout, src/openai/__init__.py:timeout This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate.
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: src/openai/__init__.py:max_retries, src/openai/__init__.py:max_retries This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate.
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: src/openai/_streaming.py:iter_bytes, src/openai/_streaming.py:iter_bytes This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate.
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: src/openai/_streaming.py:aiter_bytes, src/openai/_streaming.py:aiter_bytes This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate.
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: src/openai/_legacy_response.py:content, src/openai/_legacy_response.py:content This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate.
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: src/openai/_legacy_response.py:text, src/openai/_legacy_response.py:text This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate.
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: src/openai/_legacy_response.py:wrapped, src/openai/_legacy_response.py:wrapped This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate.
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 3 places
Functions with the same first-5-line body hash: src/openai/_legacy_response.py:request_id, src/openai/_response.py:request_id, src/openai/_response.py:request_id This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or docume…
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 3 places
Functions with the same first-5-line body hash: src/openai/_legacy_response.py:write_to_file, src/openai/_response.py:write_to_file, src/openai/_response.py:write_to_file This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate …
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 4 places
Functions with the same first-5-line body hash: src/openai/_legacy_response.py:to_raw_response_wrapper, src/openai/_legacy_response.py:async_to_raw_response_wrapper, src/openai/_response.py:to_raw_response_wrapper, src/openai/_response.py:async_to_raw_response_wrapper This is *the* AI-coder failur…
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 4 places
Functions with the same first-5-line body hash: src/openai/_legacy_response.py:stream_to_file, src/openai/_legacy_response.py:astream_to_file, src/openai/_response.py:stream_to_file, src/openai/_response.py:stream_to_file This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos…
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 6 places
Functions with the same first-5-line body hash: src/openai/_streaming.py:close, src/openai/_streaming.py:close, src/openai/lib/streaming/responses/_responses.py:close, src/openai/lib/streaming/responses/_responses.py:close This is *the* AI-coder failure mode (4× more duplication in vibe-coded repo…
integrityduplicatedry
low 9-layer quality integrity conf 1.00 Near-duplicate function bodies in 9 places
Functions with the same first-5-line body hash: src/openai/_legacy_response.py:parse, src/openai/_legacy_response.py:parse, src/openai/_legacy_response.py:parse, src/openai/_response.py:parse This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-h…
integrityduplicatedry
low 9-layer software dead-code conf 1.00 Possibly dead Python function: async_to_custom_raw_response_wrapper
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/_response.py:813 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: audio_to_pcm16_base64
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
examples/realtime/audio_util.py:24 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: callback
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
examples/realtime/audio_util.py:47 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: create_and_run_poll
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/resources/beta/threads/threads.py:1651 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: decorator
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/resources/responses/responses.py:4495 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: dispatch_events
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/resources/responses/responses.py:4381 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: field_is_required
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/_compat.py:87 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: has_handlers
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/_event_handler.py:66 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: model_parse
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/_compat.py:169 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: off
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/resources/responses/responses.py:4482 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: on
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/resources/responses/responses.py:4464 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: once
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/resources/responses/responses.py:4487 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: parser
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/resources/embeddings.py:238 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: parser
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/resources/responses/responses.py:2941 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: put
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/_base_client.py:1964 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: send_audio_worker_sounddevice
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
examples/realtime/audio_util.py:95 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: send_raw
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/resources/responses/responses.py:4228 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: set_pydantic_config
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/_models.py:846 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: terminate
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
examples/realtime/audio_util.py:91 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: to_custom_raw_response_wrapper
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/_response.py:790 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: upload_and_poll
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/resources/vector_stores/file_batches.py:756 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: wait_for_processing
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/resources/files.py:720 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: write_to_file
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/_legacy_response.py:429 dead-code
low 9-layer software dead-code conf 1.00 Possibly dead Python function: write_to_file
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
src/openai/_response.py:526 dead-code
low 9-layer quality integrity conf 1.00 Stub function `_custom_auth` (body is just `pass`/`return`) — src/openai/_base_client.py:450
Likely an AI scaffold that was never filled in. Remove or implement.
integrityempty-handlerdead-code
low 9-layer quality complexity conf 1.00 Very large file: src/openai/_base_client.py (2214 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: src/openai/_client.py (1721 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: src/openai/resources/admin/organization/usage.py (2108 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: src/openai/resources/audio/transcriptions.py (1020 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: src/openai/resources/beta/assistants.py (1142 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: src/openai/resources/beta/threads/runs/runs.py (3197 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: src/openai/resources/beta/threads/threads.py (2001 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: src/openai/resources/chat/completions/completions.py (3237 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: src/openai/resources/completions.py (1194 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: src/openai/resources/images.py (2095 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: src/openai/resources/realtime/realtime.py (1675 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: src/openai/resources/responses/responses.py (4738 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: src/openai/resources/videos.py (1352 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low 9-layer quality complexity conf 1.00 Very large file: tests/test_client.py (2951 lines)
Files with >800 lines often hide complexity hotspots and discourage tests.
complexity
low Legacy quality quality conf 1.00 ✓ Repobility [MINED049] Print Pii: Logging password/token/email/ssn directly to stdout.
Review and fix per the pattern semantics. See CWE-532 / A09:2021 for context.
examples/responses_input_tokens.py:50 qualitylegacy
low Legacy quality quality conf 1.00 ✓ Repobility [MINED064] Python Input Call: input() blocks for stdin. Inappropriate in services.
Review and fix per the pattern semantics.
src/openai/resources/moderations.py:66 qualitylegacy
low Legacy quality quality conf 1.00 ✓ Repobility [MINED064] Python Input Call: input() blocks for stdin. Inappropriate in services.
Review and fix per the pattern semantics.
examples/realtime/realtime.py:33 qualitylegacy
low Legacy quality quality conf 1.00 ✓ Repobility [MINED064] Python Input Call: input() blocks for stdin. Inappropriate in services.
Review and fix per the pattern semantics.
examples/realtime/azure_realtime.py:56 qualitylegacy
For AI agents: Voting guide (TP/FP) MCP manifest Stdio wrapper SARIF Integrate Findings queue Vote TP/FP on findings to calibrate the engine.
For AI agents + API integrations
Email me when this repo regresses
Free. We re-scan periodically; new criticals → your inbox. No signup required for the scan itself.
API access

This page is publicly accessible at: https://repobility.com/scan/b4bd9d3a-a4bb-4865-8249-595ff2477b57/

To check status programmatically (no auth required):

curl -s https://repobility.com/api/v1/public/scan/b4bd9d3a-a4bb-4865-8249-595ff2477b57/

Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.