AI Slop Code RIsk Monitor

aio-libs/aiohttp

Asynchronous HTTP client/server framework for asyncio and Python

24.3 Elevated pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for aio-libs/aiohttp, a Python project with 16,572 GitHub stars. SynthScan examined 113,282 lines of code across 239 source files, recording 3138 pattern matches distributed across 21 syntactic categories. The legacy adjusted pattern signal is 24.3 (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.

24.3
Adjusted Signal
24.3
Raw Pattern Score
100%
Time Factor
2026-10-11
Last Push
16.6K
Stars
Python
Language
113.3K
Lines of Code
239
Files
3.1K
Pattern Hits
2026-10-12
Scan Date
0.13
HC Hit Rate

Risk Review · v3

Use each vector to guide manual verification of the underlying findings.

Cognitive Ownership Risk 64.0/100 · HIGH

Can maintainers explain intent, assumptions, and trade-offs? 2734 finding(s).

Hallucinated Dependency & Supply Chain Risk 11.1/100 · LOW

Are imports declared and package/API names verified? 325 finding(s).

Agent Over-Engineering Ratio 58.7/100 · HIGH

Are wrappers, guards, and repeated structures necessary? 2504 finding(s).

PR Review Velocity Impact 78.2/100 · CRITICAL

Which changes need focused human review? 3138 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

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.

Severity Breakdown

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.

CRITICAL 0HIGH 30MEDIUM 81LOW 3027

Directory Score Breakdown

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.

Pattern Findings

The scanner identified 3138 distinct pattern matches across 21 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.

Hyper-Verbose Identifiers2396 hits · 1813 pts
SeverityFileLineSnippetContext
LOWaiohttp/web_ws.py246 def _handle_ping_pong_exception(self, exc: BaseException) -> None:CODE
LOW⚡aiohttp/web_ws.py586 def _set_code_close_transport(self, code: int) -> None:CODE
LOWaiohttp/client_middlewares.py35 async def single_middleware_handler(req: ClientRequest) -> ClientResponse:CODE
LOWaiohttp/multipart.py85def parse_content_disposition(CODE
LOWaiohttp/multipart.py194def content_disposition_filename(CODE
LOWaiohttp/multipart.py568 def _apply_content_transfer_decoding(self, data: bytes) -> bytes:CODE
LOWaiohttp/multipart.py889 async def _read_until_first_boundary(self) -> None:CODE
LOWaiohttp/web_response.py318 def _generate_content_type_header(CODE
LOWaiohttp/client_ws.py222 def _handle_ping_pong_exception(self, exc: BaseException) -> None:CODE
LOWaiohttp/tracing.py136 def on_response_chunk_received(CODE
LOWaiohttp/tracing.py158 def on_connection_queued_start(CODE
LOWaiohttp/tracing.py170 def on_connection_create_start(CODE
LOWaiohttp/tracing.py368 async def send_response_chunk_received(CODE
LOW⚡aiohttp/tracing.py416 async def send_connection_queued_start(self) -> None:CODE
LOW⚡aiohttp/tracing.py421 async def send_connection_queued_end(self) -> None:CODE
LOW⚡aiohttp/tracing.py426 async def send_connection_create_start(self) -> None:CODE
LOW⚡aiohttp/tracing.py431 async def send_connection_create_end(self) -> None:CODE
LOW⚡aiohttp/tracing.py436 async def send_connection_reuseconn(self) -> None:CODE
LOW⚡aiohttp/tracing.py441 async def send_dns_resolvehost_start(self, host: str) -> None:CODE
LOWaiohttp/web_exceptions.py499def _initialize_default_reason() -> None:CODE
LOWaiohttp/web_middlewares.py49def normalize_path_middleware(CODE
LOWaiohttp/streams.py305 def begin_http_chunk_receiving(self) -> None:CODE
LOWaiohttp/web_protocol.py132class RequestHandler(BaseProtocol, Generic[_Request]):CODE
LOWaiohttp/web_protocol.py535 def _resume_reading_if_drained(self) -> None:CODE
LOWaiohttp/client.py255async def _connect_and_send_request(req: ClientRequest) -> ClientResponse:CODE
LOWaiohttp/web_urldispatcher.py642 def _resolve_path_to_response(self, unresolved_path: Path) -> StreamResponse:CODE
LOWaiohttp/client_proto.py32class ResponseHandler(BaseProtocol, DataQueue[tuple[RawResponseMessage, StreamReader]]):CODE
LOWaiohttp/base_protocol.py76 def _pause_reading_for_buffer(self) -> None:CODE
LOWaiohttp/base_protocol.py86 def _resume_reading_for_buffer(self) -> None:CODE
LOWaiohttp/base_protocol.py101 def _resume_transport_reading(self) -> None:CODE
LOWaiohttp/payload.py472 def _set_or_restore_start_position(self) -> None:CODE
LOWaiohttp/client_reqrep.py136def _gen_default_accept_encoding() -> str:CODE
LOWaiohttp/client_reqrep.py877 async def _on_chunk_response_received(self, chunk: bytes) -> None:CODE
LOWaiohttp/client_reqrep.py1424 def _update_transfer_encoding(self) -> None:CODE
LOWaiohttp/connector.py639 def _update_proxy_auth_header_and_build_proxy_req(CODE
LOWaiohttp/connector.py722 async def _wait_for_available_connection(CODE
LOWaiohttp/connector.py1252 async def _resolve_host_with_throttle(CODE
LOWaiohttp/connector.py1528 def _convert_hosts_to_addr_infos(CODE
LOWaiohttp/connector.py1549 async def _create_direct_connection(CODE
LOWaiohttp/web_fileresponse.py237 def _get_file_path_stat_encoding(CODE
LOWaiohttp/_cookie_helpers.py96def preserve_morsel_with_coded_value(cookie: Morsel[str]) -> Morsel[str]:STRING
LOWaiohttp/http_writer.py133 def _send_headers_with_payload(CODE
LOWaiohttp/helpers.py435def content_disposition_header(CODE
LOWaiohttp/helpers.py1190def should_remove_content_length(method: str, code: int) -> bool:CODE
LOWaiohttp/http_parser.py1268 def begin_http_chunk_receiving(self) -> None:CODE
LOWaiohttp/cookiejar.py457 def update_cookies_from_headers(CODE
LOWaiohttp/cookiejar.py716 def _filter_cookies_within_limits(CODE
LOWaiohttp/cookiejar.py918 def update_cookies_from_headers(CODE
LOWaiohttp/abc.py195 def update_cookies_from_headers(CODE
LOWaiohttp/_websocket/writer.py198 def _send_compressed_frame_sync(CODE
LOWaiohttp/_websocket/writer.py226 async def _send_compressed_frame_async_locked(CODE
LOW⚡tests/test_connector.py2956async def test_close_cancels_cleanup_handle(key: ConnectionKey) -> None:CODE
LOW⚡tests/test_connector.py2964async def test_close_cancels_resolve_host(make_client_request: _RequestMaker) -> None:CODE
LOW⚡tests/test_connector.py3338async def test_close_cancels_cleanup_closed_handle() -> None:CODE
LOW⚡tests/test_connector.py3345async def test_ctor_with_default_loop() -> None:CODE
LOW⚡tests/test_connector.py3352async def test_base_connector_allows_high_level_protocols() -> None:CODE
LOW⚡tests/test_connector.py3875async def test_limit_per_host_property() -> None:CODE
LOW⚡tests/test_connector.py3882async def test_limit_property_default() -> None:CODE
LOW⚡tests/test_connector.py3888async def test_limit_per_host_property_default() -> None:CODE
LOW⚡tests/test_connector.py3894async def test_force_close_and_explicit_keep_alive() -> None:CODE
2336 more matches not shown…
Self-Referential Comments70 hits · 222 pts
SeverityFileLineSnippetContext
MEDIUMaiohttp/client_middlewares.py44 # Create a new closure that captures the current stateCOMMENT
MEDIUMaiohttp/resolver.py228 # Create a new resolver and client set for this loop if it doesn't existCOMMENT
MEDIUMaiohttp/connector.py1448 tls_proto = self._factory() # Create a brand new proto for TLSCODE
MEDIUMaiohttp/client_middleware_digest_auth.py357 # Define a dict mapping of header fields to their valuesCOMMENT
MEDIUMaiohttp/_websocket/writer.py97 # Create a task to shield from cancellationCOMMENT
MEDIUMtests/test_connector.py2396 # Create a mock SSL protocolCOMMENT
MEDIUMtests/test_connector.py2426 # Create a mock non-SSL protocolCOMMENT
MEDIUMtests/test_connector.py4843 # Create a connect tunnel connectionCOMMENT
MEDIUMtests/test_client_functional.py697 # Create a BytesPayload directly - this ensures we test the pathCOMMENT
MEDIUMtests/test_client_functional.py774 # Create a streaming response that continuously sends dataCOMMENT
MEDIUMtests/test_client_functional.py799 # Create a background task that continuously reads dataCOMMENT
MEDIUMtests/test_client_functional.py2615 # Create a highly compressible payload.COMMENT
MEDIUMtests/test_client_functional.py2647 # Create a highly compressible payloadCOMMENT
MEDIUMtests/test_client_functional.py2678 # Create a highly compressible payload.COMMENT
MEDIUMtests/test_client_functional.py5033 # Create an async generator of dataCOMMENT
MEDIUMtests/test_client_functional.py5664 # Create a mocked payload to verify close() is calledCOMMENT
MEDIUMtests/test_client_functional.py5694 # Create a mocked payload to verify close() is calledCOMMENT
MEDIUMtests/test_client_functional.py5724 # Create a mocked payload to verify close() is calledCOMMENT
MEDIUMtests/test_client_functional.py5752 # Create a mocked payload to verify close() is calledCOMMENT
MEDIUMtests/test_client_functional.py5893 # Create a new client session with our fake resolverCOMMENT
MEDIUMtests/test_client_functional.py5999 # Create a test fileCOMMENT
MEDIUMtests/test_client_functional.py6064 # Create a test fileCOMMENT
MEDIUMtests/test_client_functional.py6137 # Create a test fileCOMMENT
MEDIUMtests/test_websocket_parser.py50 # This method is overridden to allow for patching in tests.COMMENT
MEDIUMtests/test_websocket_parser.py59 # This method is overridden to allow for patching in tests.COMMENT
MEDIUMtests/test_client_request.py164 # Create a response to test request_infoCOMMENT
MEDIUMtests/test_client_request.py186 # Create a response to test request_infoCOMMENT
MEDIUMtests/test_client_request.py1179 # Create a BytesPayload which has a size propertyCOMMENT
MEDIUMtests/test_client_request.py1202 # Create a payload with a known sizeCOMMENT
MEDIUMtests/test_client_request.py1978 # Create an empty async generatorCOMMENT
MEDIUMtests/test_client_request.py2000 # Create a mock payload that tracks if it was closedCOMMENT
MEDIUMtests/test_client_request.py2123 # Create a mock writer and connectionCOMMENT
MEDIUMtests/test_client_request.py2127 # Create a requestCOMMENT
MEDIUMtests/test_cookie_helpers.py47 # Create a cookie with a coded_value different from valueCOMMENT
MEDIUMtests/test_cookiejar.py2508 # Create a shared cookie (no domain/path restrictions)COMMENT
MEDIUMtests/test_cookiejar.py2636 # Create a truly shared cookieCOMMENT
MEDIUM⚡tests/test_client_middleware_digest_auth.py269 # Create a modified challenge with an unsupported algorithmCOMMENT
MEDIUM⚡tests/test_client_middleware_digest_auth.py285 # Create a challenge with the specific algorithm caseCOMMENT
MEDIUMtests/test_client_middleware_digest_auth.py254 # Create a modified challenge with the test algorithmCOMMENT
MEDIUMtests/test_client_middleware_digest_auth.py305 # Create a challenge with the specific algorithm caseCOMMENT
MEDIUMtests/test_client_middleware_digest_auth.py405 # Create the auth objectCOMMENT
MEDIUMtests/test_client_middleware_digest_auth.py919 # Create a session that uses the digest auth middlewareCOMMENT
MEDIUMtests/test_client_response.py1790 # Create a SimpleCookie with some cookiesCOMMENT
MEDIUMtests/test_client_middleware.py877 # Create a simple server for the allowed requestCOMMENT
MEDIUMtests/test_client_middleware.py1018 # Create main serverCOMMENT
MEDIUMtests/test_client_middleware.py1087 # Create main serverCOMMENT
MEDIUM⚡tests/test_payload.py1354 # Create a test file with known contentCOMMENT
MEDIUMtests/test_payload.py374 # Create a large file that's multiple times larger than DEFAULT_CHUNK_SIZECOMMENT
MEDIUMtests/test_payload.py418 # Create a custom file-like object that tracks read sizesCOMMENT
MEDIUMtests/test_payload.py448 # Create a large text file that's multiple times larger than DEFAULT_CHUNK_SIZECOMMENT
MEDIUMtests/test_payload.py493 # Create a custom file-like object that tracks read sizesCOMMENT
MEDIUMtests/test_http_parser.py3762 # Create a large payload (3MiB) that compresses wellCOMMENT
MEDIUMtests/test_proxy_functional.py1023 # Create a minimal proxy serverCOMMENT
MEDIUMtests/test_client_proto.py356 # Create a mock transportCOMMENT
MEDIUM⚡tests/test_multipart.py1865 # Create a mock BodyPartReaderCOMMENT
MEDIUM⚡tests/test_multipart.py1871 # Create the payloadCOMMENT
MEDIUMtests/test_web_urldispatcher.py280 # This file is below the symlink target and should not be reachableCOMMENT
MEDIUM⚡tests/test_resolver.py549 # Create a second manager and check it's the same instanceCOMMENT
MEDIUM⚡tests/test_resolver.py566 # Create a mock AsyncResolver for testingCOMMENT
MEDIUM⚡tests/test_resolver.py686 # Create a mock resolver that will be None when accessedCOMMENT
10 more matches not shown…
Unused Imports316 hits · 222 pts
SeverityFileLineSnippetContext
LOWaiohttp/multipart.py74CODE
LOWaiohttp/web_response.py1CODE
LOWaiohttp/web_response.py49CODE
LOWaiohttp/test_utils.py19CODE
LOWaiohttp/tracing.py5CODE
LOWaiohttp/tracing.py12CODE
LOWaiohttp/web_middlewares.py21CODE
LOWaiohttp/web.py14CODE
LOWaiohttp/web.py14CODE
LOWaiohttp/web.py14CODE
LOWaiohttp/web.py17CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
LOWaiohttp/web.py18CODE
256 more matches not shown…
Over-Commented Block128 hits · 128 pts
SeverityFileLineSnippetContext
LOW.coveragerc.toml41# NOTE: context.COMMENT
LOW.coveragerc.toml61]COMMENT
LOW.coveragerc-cython.toml41# NOTE: context.COMMENT
LOWaiohttp/streams.py321 # the body transfer. Each offset is the offset of the end of a chunk.COMMENT
LOWaiohttp/web_urldispatcher.py1001 # the traversal algorithm below can't be applied, and that we likelyCOMMENT
LOWaiohttp/client_reqrep.py101 # connection_acquiring_timeout: Optional[float] = NoneCOMMENT
LOWaiohttp/client_middleware_digest_auth.py61 # +--||--|--|----|------|---|---||-----|-> maybe whitespaceCOMMENT
LOWaiohttp/web_fileresponse.py321 # https://www.rfc-editor.org/info/rfc9110/#section-13.1.5-10.2COMMENT
LOWaiohttp/web_fileresponse.py341 end: int | None = rng.stopCOMMENT
LOWaiohttp/web_fileresponse.py361 if start < 0:COMMENT
LOWaiohttp/web_fileresponse.py381 # According to https://tools.ietf.org/html/rfc7233:COMMENT
LOWaiohttp/_websocket/writer.py81 if not (compress or self.compress) or opcode >= WS_CONTROL_FRAME_OPCODE:COMMENT
LOWtests/test_web_urldispatcher.py261async def test_follow_symlink_directory_traversal_after_normalization(COMMENT
LOWrequirements/base-ft.txt1#COMMENT
LOWrequirements/base-ft.txt21cffi==2.1.1COMMENT
LOWrequirements/base-ft.txt41pycares==5.1.0COMMENT
LOWrequirements/multidict.txt1#COMMENT
LOWrequirements/constraints.txt1#COMMENT
LOWrequirements/constraints.txt21aiosignal==1.4.0COMMENT
LOWrequirements/constraints.txt41 # via sphinxCOMMENT
LOWrequirements/constraints.txt61 # pycaresCOMMENT
LOWrequirements/constraints.txt81 # viaCOMMENT
LOWrequirements/constraints.txt101 # viaCOMMENT
LOWrequirements/constraints.txt121 # -r requirements/test-common.inCOMMENT
LOWrequirements/constraints.txt141multidict==6.9.1COMMENT
LOWrequirements/constraints.txt161 # sphinxCOMMENT
LOWrequirements/constraints.txt181 # viaCOMMENT
LOWrequirements/constraints.txt201 # pytestCOMMENT
LOWrequirements/constraints.txt221 # -r requirements/lint.inCOMMENT
LOWrequirements/constraints.txt241python-discovery==1.6.1COMMENT
LOWrequirements/constraints.txt261 # via -r requirements/test-common-base.inCOMMENT
LOWrequirements/constraints.txt281 # via sphinxCOMMENT
LOWrequirements/constraints.txt301 # pip-toolsCOMMENT
LOWrequirements/constraints.txt321 # multidictCOMMENT
LOWrequirements/constraints.txt341 # via pre-commitCOMMENT
LOWrequirements/dev.txt1#COMMENT
LOWrequirements/dev.txt21aiosignal==1.4.0COMMENT
LOWrequirements/dev.txt41 # via sphinxCOMMENT
LOWrequirements/dev.txt61 # pycaresCOMMENT
LOWrequirements/dev.txt81 # sphinxCOMMENT
LOWrequirements/dev.txt101 # aiohttpCOMMENT
LOWrequirements/dev.txt121 # viaCOMMENT
LOWrequirements/dev.txt141 # -r requirements/runtime-deps.inCOMMENT
LOWrequirements/dev.txt161pathspec==1.1.1COMMENT
LOWrequirements/dev.txt181 # yarlCOMMENT
LOWrequirements/dev.txt201 # buildCOMMENT
LOWrequirements/dev.txt221 # viaCOMMENT
LOWrequirements/dev.txt241 # -r requirements/test-common.inCOMMENT
LOWrequirements/dev.txt261sphinx==8.1.3COMMENT
LOWrequirements/dev.txt281 # via sphinxCOMMENT
LOWrequirements/dev.txt301 # viaCOMMENT
LOWrequirements/dev.txt321 # via pydanticCOMMENT
LOWrequirements/cython.txt1#COMMENT
LOWrequirements/runtime-deps.txt1#COMMENT
LOWrequirements/runtime-deps.txt21cffi==2.1.1COMMENT
LOWrequirements/runtime-deps.txt41pycparser==3.0COMMENT
LOWrequirements/test-common-base.txt1#COMMENT
LOWrequirements/test-common-base.txt21freezegun==1.5.5COMMENT
LOWrequirements/test-common-base.txt41 # pytestCOMMENT
LOWrequirements/test-common-base.txt61pytest-asyncio==1.4.0COMMENT
68 more matches not shown…
Empty Error Handlers15 hits · 75 pts
SeverityFileLineSnippetContext
HIGHaiohttp/worker.py141except Exception:CODE
HIGHaiohttp/web_exceptions.py506except ValueError:CODE
HIGHaiohttp/web.py487except (GracefulExit, KeyboardInterrupt):CODE
HIGHaiohttp/web_protocol.py277except (TypeError, ValueError):CODE
HIGHaiohttp/web_runner.py341except NotImplementedError:CODE
HIGHaiohttp/web_runner.py374except NotImplementedError:CODE
HIGHaiohttp/base_protocol.py96except PAUSE_RESUME_READING_ERRORS:CODE
HIGHaiohttp/base_protocol.py105except PAUSE_RESUME_READING_ERRORS:CODE
HIGHaiohttp/_cookie_helpers.py236except CookieError:CODE
HIGHaiohttp/http_writer.py393except ImportError:CODE
HIGHaiohttp/helpers.py1000except KeyError:CODE
HIGHtests/test_client_session.py1404except Exception:CODE
HIGHtests/test_worker.py69except TypeError:CODE
HIGHdocs/conf.py73except ImportError:CODE
HIGHexamples/lowlevel_srv.py24except KeyboardInterrupt:CODE
Deep Nesting78 hits · 72 pts
SeverityFileLineSnippetContext
LOWaiohttp/web_ws.py520CODE
LOWaiohttp/web_ws.py611CODE
LOWaiohttp/worker.py72CODE
LOWaiohttp/multipart.py85CODE
LOWaiohttp/multipart.py194CODE
LOWaiohttp/web_response.py260CODE
LOWaiohttp/web_response.py298CODE
LOWaiohttp/web_response.py372CODE
LOWaiohttp/web_response.py542CODE
LOWaiohttp/web_response.py612CODE
LOWaiohttp/web_response.py702CODE
LOWaiohttp/client_ws.py400CODE
LOWaiohttp/web_exceptions.py499CODE
LOWaiohttp/web.py279CODE
LOWaiohttp/web.py426CODE
LOWaiohttp/streams.py381CODE
LOWaiohttp/streams.py479CODE
LOWaiohttp/web_protocol.py481CODE
LOWaiohttp/web_protocol.py718CODE
LOWaiohttp/client.py488CODE
LOWaiohttp/client.py1060CODE
LOWaiohttp/web_request.py367CODE
LOWaiohttp/web_request.py725CODE
LOWaiohttp/web_request.py787CODE
LOWaiohttp/client_proto.py117CODE
LOWaiohttp/web_runner.py319CODE
LOWaiohttp/payload.py122CODE
LOWaiohttp/payload.py1015CODE
LOWaiohttp/formdata.py83CODE
LOWaiohttp/connector.py464CODE
LOWaiohttp/connector.py543CODE
LOWaiohttp/connector.py722CODE
LOWaiohttp/connector.py764CODE
LOWaiohttp/connector.py1440CODE
LOWaiohttp/connector.py1549CODE
LOWaiohttp/connector.py1623CODE
LOWaiohttp/web_fileresponse.py301CODE
LOWaiohttp/_cookie_helpers.py180CODE
LOWaiohttp/http_writer.py284CODE
LOWaiohttp/helpers.py283CODE
LOWaiohttp/helpers.py435CODE
LOWaiohttp/http_parser.py180CODE
LOWaiohttp/http_parser.py342CODE
LOWaiohttp/http_parser.py674CODE
LOWaiohttp/http_parser.py825CODE
LOWaiohttp/http_parser.py889CODE
LOWaiohttp/http_parser.py953CODE
LOWaiohttp/http_parser.py984CODE
LOWaiohttp/cookiejar.py166CODE
LOWaiohttp/cookiejar.py223CODE
LOWaiohttp/cookiejar.py370CODE
LOWaiohttp/cookiejar.py476CODE
LOWaiohttp/_websocket/writer.py74CODE
LOWaiohttp/_websocket/helpers.py78CODE
LOWaiohttp/_websocket/reader_py.py152CODE
LOWaiohttp/_websocket/reader_py.py251CODE
LOWaiohttp/_websocket/reader_py.py405CODE
LOWtests/test_client_session.py589CODE
LOWtests/test_cookiejar.py1761CODE
LOWtests/test_cookiejar.py2029CODE
18 more matches not shown…
Cross-Language Confusion8 hits · 42 pts
SeverityFileLineSnippetContext
HIGHaiohttp/client.py952 method, url.update_query(params), headers, e # type: ignore[possibly-undefined, arg-type]CODE
HIGHaiohttp/helpers.py939 self._name = module + "." + name # type: ignore[possibly-undefined]CODE
HIGH⚡tests/test_benchmarks_web_fileresponse.py199 return resp # type: ignore[possibly-undefined]CODE
HIGHtests/test_client_functional.py5875 "av-profile=null; Domain=.amazon.it; "CODE
HIGHtests/test_benchmarks_http_websocket.py27 b'8","result":{"name":null,"id":"shellyplugus-c049ef8c30e4","mac":"C049EF8C30E'CODE
HIGHtests/test_benchmarks_http_websocket.py29 b'4b5d4f","ver":"1.1.0","app":"PlugUS","auth_en":false,"auth_domain":null}}'CODE
HIGHdocs/code/client_middleware_cookbook.py32 return resp # type: ignore[possibly-undefined]CODE
HIGHdocs/code/client_middleware_cookbook.py69 return resp # type: ignore[possibly-undefined]CODE
Cross-File Repetition6 hits · 30 pts
SeverityFileLineSnippetContext
HIGHtests/test_client_middleware.py0middleware that retries failed requests with exponential backoff.STRING
HIGHexamples/combined_middleware.py0middleware that retries failed requests with exponential backoff.STRING
HIGHexamples/retry_middleware.py0middleware that retries failed requests with exponential backoff.STRING
HIGHexamples/web_srv.py0\ type {url}/hello/john {url}/simple or {url}/change_body in browser url barSTRING
HIGHexamples/web_srv_route_table.py0\ type {url}/hello/john {url}/simple or {url}/change_body in browser url barSTRING
HIGHexamples/web_srv_route_deco.py0\ type {url}/hello/john {url}/simple or {url}/change_body in browser url barSTRING
Redundant / Tautological Comments18 hits · 28 pts
SeverityFileLineSnippetContext
LOWaiohttp/payload.py624 # Check if we're done writingCOMMENT
LOWaiohttp/connector.py1402 # Check if uvloop is being used, which supports TLS in TLS,COMMENT
LOWaiohttp/connector.py1407 # Check if aiofastnet is being used, which supports TLS in TLSCOMMENT
LOWaiohttp/client_middleware_digest_auth.py398 # Check if request starts with space URLCOMMENT
LOWaiohttp/client_middleware_digest_auth.py501 # Check if we need to authenticateCOMMENT
LOWaiohttp/cookiejar.py360 # Check if the cookie hasn't been re-added to the heapCOMMENT
LOWtests/test_client_middleware.py409 # Check if token needs refreshCOMMENT
LOW⚡tests/test_payload.py1295 # Write file in executorCOMMENT
LOW⚡tests/test_payload.py1299 # Open file in executorCOMMENT
LOW⚡tests/test_payload.py1360 # Open the file and create payloadCOMMENT
LOW⚡tests/test_payload.py1368 # Read the file (simulating first request)COMMENT
LOWtests/test_payload.py1319 # Write file in executorCOMMENT
LOWtests/test_payload.py1327 # Open file in executorCOMMENT
LOWexamples/token_refresh_middleware.py53 # Check if another coroutine already refreshed the tokenCOMMENT
LOWexamples/token_refresh_middleware.py203 # Check if token exists and is not expiredCOMMENT
LOWexamples/basic_auth_middleware.py68 # Check if Authorization header is presentCOMMENT
LOWexamples/combined_middleware.py140 # Check if we should retryCOMMENT
LOWexamples/retry_middleware.py69 # Check if we should retryCOMMENT
Modern Structural Boilerplate27 hits · 28 pts
SeverityFileLineSnippetContext
LOWaiohttp/web_ws.py258 def _set_closed(self) -> None:CODE
LOW⚡aiohttp/web_ws.py580 def _set_closing(self, code: int) -> None:CODE
LOW⚡aiohttp/web_ws.py586 def _set_code_close_transport(self, code: int) -> None:CODE
LOWaiohttp/web_response.py155 def _set_status(self, status: int, reason: str | None) -> None:CODE
LOWaiohttp/client_ws.py235 def _set_closed(self) -> None:CODE
LOWaiohttp/client_ws.py243 def _set_closing(self) -> None:CODE
LOWaiohttp/test_utils.py538 def set_dict(app: Any, key: str, value: Any) -> None:CODE
LOWaiohttp/web_app.py206 def _set_loop(self, loop: asyncio.AbstractEventLoop | None) -> None:CODE
LOWaiohttp/streams.py181 def set_read_chunk_size(self, n: int) -> None:CODE
LOWaiohttp/streams.py664 def set_read_chunk_size(self, n: int) -> None:CODE
LOWaiohttp/compression_utils.py159def set_zlib_backend(new_zlib_backend: ZLibBackendProtocol) -> None:CODE
LOWaiohttp/payload.py472 def _set_or_restore_start_position(self) -> None:CODE
LOWaiohttp/client_reqrep.py402 def _settle(self) -> None:CODE
LOWaiohttp/client_reqrep.py1092 def _update_headers(self, headers: CIMultiDict[str]) -> None:CODE
LOWaiohttp/client_reqrep.py1366 def _update_auto_headers(self, skip_auto_headers: Iterable[str] | None) -> None:CODE
LOWaiohttp/client_reqrep.py1385 def _update_cookies(self, cookies: BaseCookie[str]) -> None:CODE
LOWaiohttp/client_reqrep.py1424 def _update_transfer_encoding(self) -> None:CODE
LOWaiohttp/client_reqrep.py1443 def _update_body_from_data(self, body: Any) -> None:CODE
LOWaiohttp/client_reqrep.py1488 def _update_body(self, body: Any) -> None:CODE
LOWaiohttp/client_reqrep.py1505 async def update_body(self, body: Any) -> None:CODE
LOWaiohttp/client_reqrep.py1567 def _update_expect_continue(self, expect: bool = False) -> None:CODE
LOWaiohttp/http_writer.py257 def set_eof(self) -> None:CODE
LOWaiohttp/helpers.py873def set_result(fut: "asyncio.Future[_T]", result: _T) -> None:CODE
LOWaiohttp/http_parser.py658 def set_upgraded(self, val: bool) -> None:CODE
LOWtests/test_streams.py689 async def set_err() -> None:CODE
LOWtests/test_streams.py1517 async def set_err() -> None:CODE
LOWdocs/code/client_middleware_cookbook.py98 async def set_token(session: ClientSession, event: asyncio.Event) -> None:CODE
Excessive Try-Catch Wrapping26 hits · 28 pts
SeverityFileLineSnippetContext
LOWaiohttp/web_ws.py541 except Exception as exc:CODE
LOW⚡aiohttp/web_ws.py571 except Exception as exc:CODE
LOWaiohttp/web_ws.py656 except Exception as exc:CODE
LOWaiohttp/worker.py141 except Exception:CODE
LOWaiohttp/multipart.py1238 except Exception as exc:CODE
LOWaiohttp/client_ws.py352 except Exception as exc:CODE
LOWaiohttp/client_ws.py370 except Exception as exc:CODE
LOWaiohttp/client_ws.py450 except Exception as exc:CODE
LOWaiohttp/streams.py212 except Exception:CODE
LOWaiohttp/streams.py236 except Exception:CODE
LOWaiohttp/streams.py646 except Exception:CODE
MEDIUMaiohttp/streams.py44def __anext__(self) -> _T:CODE
LOWaiohttp/web_protocol.py706 except Exception as exc:CODE
LOWaiohttp/web_protocol.py851 except Exception as exc:CODE
LOWaiohttp/client_proto.py152 except Exception as underlying_exc:CODE
LOWaiohttp/client_reqrep.py1718 except Exception as underlying_exc:CODE
LOWaiohttp/web_log.py223 except Exception:CODE
LOWaiohttp/formdata.py142 except Exception as exc:CODE
LOWaiohttp/http_parser.py559 except Exception as underlying_exc:CODE
LOWaiohttp/http_parser.py1245 except Exception:CODE
LOWaiohttp/_websocket/reader_py.py244 except Exception as exc:CODE
LOWtests/test_client_session.py1404 except Exception:CODE
LOWtests/test_web_exceptions.py166 except Exception as exc:CODE
LOWtests/test_web_websocket_functional.py140 except Exception as exc: # pragma: no coverCODE
LOWtests/test_web_websocket_functional.py2106 except Exception as exc: # pragma: no coverCODE
MEDIUMexamples/client_ws.py31 print("Error during receive %s" % ws.exception())CODE
AI Structural Patterns29 hits · 21 pts
SeverityFileLineSnippetContext
LOWaiohttp/web_ws.py101CODE
LOWaiohttp/web_response.py740CODE
LOWaiohttp/web_response.py542CODE
LOWaiohttp/test_utils.py563CODE
LOWaiohttp/web.py279CODE
LOWaiohttp/web.py426CODE
LOWaiohttp/web_protocol.py203CODE
LOWaiohttp/client.py317CODE
LOWaiohttp/client.py488CODE
LOWaiohttp/client.py985CODE
LOWaiohttp/client.py1060CODE
LOWaiohttp/client.py1537CODE
LOWaiohttp/web_request.py233CODE
LOWaiohttp/web_request.py963CODE
LOWaiohttp/client_proto.py246CODE
LOWaiohttp/connector.py1008CODE
LOWaiohttp/helpers.py1052CODE
LOWaiohttp/http_parser.py267CODE
LOWaiohttp/http_parser.py889CODE
LOWtests/test_web_sendfile_functional.py1298CODE
LOWtests/test_web_sendfile_functional.py1339CODE
LOWtests/test_websocket_writer.py21CODE
LOWtests/test_client_middleware.py50CODE
LOWtests/test_client_middleware.py114CODE
LOWtests/test_client_middleware.py122CODE
LOWtests/test_client_middleware.py201CODE
LOWtests/test_client_middleware.py675CODE
LOWtests/test_client_middleware.py719CODE
LOWtests/test_client_middleware.py728CODE
Structural Annotation Overuse5 hits · 10 pts
SeverityFileLineSnippetContext
LOW⚡tests/test_client_middleware.py302 # Step 0: No auth, request client IDCOMMENT
LOW⚡tests/test_client_middleware.py309 # Step 1: Has session, request credentialsCOMMENT
LOW⚡tests/test_client_middleware.py316 # Step 2: Has challenge response, authenticateCOMMENT
LOWdocs/code/client_middleware_cookbook.py124 # WARNING: This is a simplified example for demonstration purposes only.COMMENT
LOWdocs/code/client_middleware_cookbook.py140 # WARNING: This is a simplified example - should also check ::1, private ranges, etc.COMMENT
Dead Code4 hits · 8 pts
SeverityFileLineSnippetContext
MEDIUMtests/test_web_app.py342CODE
MEDIUMtests/test_client_request.py1981CODE
MEDIUMtests/test_run_app.py177CODE
MEDIUMtests/test_run_app.py1132CODE
Verbosity Indicators3 hits · 7 pts
SeverityFileLineSnippetContext
LOW⚡tests/test_client_middleware.py302 # Step 0: No auth, request client IDCOMMENT
LOW⚡tests/test_client_middleware.py309 # Step 1: Has session, request credentialsCOMMENT
LOW⚡tests/test_client_middleware.py316 # Step 2: Has challenge response, authenticateCOMMENT
AI Slop Vocabulary3 hits · 6 pts
SeverityFileLineSnippetContext
LOWaiohttp/compression_utils.py151 # Everything not explicitly listed in the Protocol we just pass throughCOMMENT
MEDIUM⚡tests/test_connector.py2968 """Delay resolve() task in order to test cancellation."""STRING
MEDIUMtests/test_client_ws_functional.py1541 # The test harness will cleanup the unclosed websocketCOMMENT
Docstring Block Structure1 hit · 5 pts
SeverityFileLineSnippetContext
HIGHaiohttp/client_middleware_digest_auth.py225 Build digest authorization header for the current challenge. Args: method: The HTTP methodSTRING
Slop Phrases2 hits · 4 pts
SeverityFileLineSnippetContext
MEDIUMdocs/code/client_middleware_cookbook.py124 # WARNING: This is a simplified example for demonstration purposes only.COMMENT
MEDIUMexamples/token_refresh_middleware.py13Note: This is a simplified example for demonstration purposes.STRING
Decorative Section Separators1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMdocs/conf.py420# -------------------------------------------------------------------------COMMENT
TODO Padding1 hit · 2 pts
SeverityFileLineSnippetContext
LOWaiohttp/web_urldispatcher.py360 # TODO: implement all abstract methodsCOMMENT
Fake / Example Data1 hit · 1 pts
SeverityFileLineSnippetContext
LOWexamples/fake_server.py73 return web.json_response({"name": "John Doe", "id": "12345678901234567"})CODE