AI Slop Code RIsk Monitor

python-poetry/poetry

Python packaging and dependency management made easy

23.4 Elevated pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for python-poetry/poetry, a Python project with 34,302 GitHub stars. SynthScan examined 86,323 lines of code across 372 source files, recording 1849 pattern matches distributed across 14 syntactic categories. The legacy adjusted pattern signal is 23.4 (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.

23.4
Adjusted Signal
23.4
Raw Pattern Score
100%
Time Factor
2026-10-06
Last Push
34.3K
Stars
Python
Language
86.3K
Lines of Code
372
Files
1.8K
Pattern Hits
2026-10-12
Scan Date
0.11
HC Hit Rate

Risk Review · v3

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

Cognitive Ownership Risk 50.5/100 · HIGH

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

Hallucinated Dependency & Supply Chain Risk 34.3/100 · MEDIUM

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

Agent Over-Engineering Ratio 48.6/100 · MEDIUM

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

PR Review Velocity Impact 72.7/100 · HIGH

Which changes need focused human review? 1849 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 38HIGH 4MEDIUM 16LOW 1791

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 1849 distinct pattern matches across 14 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 Identifiers1306 hits · 1065 pts
SeverityFileLineSnippetContext
LOWtests/conftest.py176 def set_default_service_credential(CODE
LOWtests/conftest.py255def with_chained_fail_keyring(mocker: MockerFixture) -> None:CODE
LOWtests/conftest.py266def with_chained_null_keyring(mocker: MockerFixture) -> None:CODE
LOWtests/conftest.py663def disable_http_status_force_list(mocker: MockerFixture) -> Iterator[None]:CODE
LOWtests/conftest.py675def tmp_session_working_directory(tmp_path_factory: TempPathFactory) -> Iterator[Path]:CODE
LOWtests/conftest.py783def mocked_pythons_version_map() -> dict[str, findpython.PythonVersion]:CODE
LOWtests/conftest.py941def without_mocked_findpython(CODE
LOWtests/conftest.py1025def mocked_poetry_managed_python_register(CODE
LOWtests/conftest.py1054def wheel_with_path_traversal(tmp_path: Path, request: pytest.FixtureRequest) -> Path:CODE
LOWtests/conftest.py1087def wheel_with_path_traversal_via_symlink(CODE
LOWtests/test_conftest.py22def test_conftest_create_package(CODE
LOW⚡tests/test_factory.py236def test_create_poetry_non_package_mode(fixture_dir: FixtureDirGetter) -> None:CODE
LOW⚡tests/test_factory.py242def test_create_poetry_version_ok(fixture_dir: FixtureDirGetter) -> None:CODE
LOW⚡tests/test_factory.py250def test_create_poetry_version_not_ok(fixture_dir: FixtureDirGetter) -> None:CODE
LOW⚡tests/test_factory.py259def test_create_poetry_check_version_before_validation(CODE
LOWtests/test_factory.py161def test_create_pyproject_from_package(CODE
LOWtests/test_factory.py193def test_create_poetry_with_packages_and_includes(CODE
LOWtests/test_factory.py224def test_create_poetry_with_multi_constraints_dependency(CODE
LOWtests/test_factory.py274def test_poetry_with_primary_source(CODE
LOWtests/test_factory.py287def test_poetry_with_multiple_supplemental_sources(CODE
LOWtests/test_factory.py302def test_poetry_with_multiple_sources(CODE
LOWtests/test_factory.py315def test_poetry_with_multiple_sources_pypi(CODE
LOWtests/test_factory.py330def test_poetry_with_no_default_source(fixture_dir: FixtureDirGetter) -> None:CODE
LOWtests/test_factory.py339def test_poetry_with_supplemental_source(CODE
LOWtests/test_factory.py355def test_poetry_with_explicit_source(CODE
LOWtests/test_factory.py372def test_poetry_with_explicit_pypi_and_other(CODE
LOWtests/test_factory.py387def test_poetry_with_pypi_explicit_only(CODE
LOWtests/test_factory.py395def test_poetry_with_build_constraints(fixture_dir: FixtureDirGetter) -> None:CODE
LOWtests/test_factory.py413def test_poetry_with_empty_build_constraints(fixture_dir: FixtureDirGetter) -> None:CODE
LOWtests/test_factory.py442def test_create_poetry_fails_on_invalid_configuration(CODE
LOWtests/test_factory.py456def test_create_poetry_fails_on_nameless_project(STRING
LOWtests/test_factory.py470def test_create_poetry_with_local_config(fixture_dir: FixtureDirGetter) -> None:STRING
LOWtests/test_factory.py480def test_create_poetry_with_plugins(STRING
LOWtests/test_factory.py501def test_create_package_source_invalid(STRING
LOW⚡tests/test_helpers.py44 def test_returns_package_with_name_and_version(self) -> None:CODE
LOW⚡tests/test_helpers.py50 def test_returns_package_not_yanked_by_default(self) -> None:CODE
LOW⚡tests/test_helpers.py54 def test_returns_yanked_package_with_string_reason(self) -> None:CODE
LOW⚡tests/test_helpers.py58 def test_returns_yanked_package_with_bool(self) -> None:CODE
LOW⚡tests/test_helpers.py64 def test_returns_dependency_with_wildcard_constraint(self) -> None:CODE
LOW⚡tests/test_helpers.py69 def test_returns_dependency_with_version_constraint(self) -> None:CODE
LOW⚡tests/test_helpers.py73 def test_returns_dependency_with_dict_constraint(self) -> None:CODE
LOW⚡tests/test_helpers.py77 def test_returns_optional_dependency(self) -> None:CODE
LOW⚡tests/test_helpers.py81 def test_returns_dependency_with_groups(self) -> None:CODE
LOW⚡tests/test_helpers.py86 def test_returns_dependency_allowing_prereleases(self) -> None:CODE
LOW⚡tests/test_helpers.py139 def test_stores_path_as_string(self, tmp_path: Path) -> None:CODE
LOW⚡tests/test_helpers.py149 def test_head_returns_mock_revision(self, tmp_path: Path) -> None:CODE
LOW⚡tests/test_helpers.py153 def test_ignores_extra_kwargs(self, tmp_path: Path) -> None:CODE
LOW⚡tests/test_helpers.py160 def test_clones_fixture_to_source_root(self, tmp_path: Path) -> None:CODE
LOW⚡tests/test_helpers.py169 def test_clones_fixture_with_nested_path(self, tmp_path: Path) -> None:CODE
LOW⚡tests/test_helpers.py179 def test_is_not_locked_by_default(self, tmp_path: Path) -> None:CODE
LOW⚡tests/test_helpers.py184 def test_locked_sets_locked_state(self, tmp_path: Path) -> None:CODE
LOW⚡tests/test_helpers.py393 def test_flattens_with_default_delimiter(self) -> None:CODE
LOW⚡tests/test_helpers.py397 def test_flattens_deeply_nested_dict(self) -> None:CODE
LOW⚡tests/test_helpers.py401 def test_returns_flat_dict_unchanged(self) -> None:CODE
LOW⚡tests/test_helpers.py410 def test_redirects_to_original_url(self, http: RequestsMock) -> None:CODE
LOWtests/test_helpers.py101 def test_overwrites_existing_file(self, tmp_path: Path) -> None:CODE
LOWtests/test_helpers.py122 def test_overwrites_existing_directory(self, tmp_path: Path) -> None:CODE
LOWtests/test_helpers.py198 def test_is_fresh_always_returns_true(self, tmp_path: Path) -> None:CODE
LOWtests/test_helpers.py203 def test_mock_lock_data_sets_data(self, tmp_path: Path) -> None:CODE
LOWtests/test_helpers.py214 def test_write_lock_data_without_write_stores_in_memory(CODE
1246 more matches not shown…
Hallucination Indicators38 hits · 405 pts
SeverityFileLineSnippetContext
CRITICALtests/utils/test_download.py19from poetry.utils.helpers import get_file_hashCODE
CRITICAL⚡tests/utils/test_helpers.py16from poetry.utils.helpers import directoryCODE
CRITICAL⚡tests/utils/test_helpers.py17from poetry.utils.helpers import ensure_pathCODE
CRITICAL⚡tests/utils/test_helpers.py18from poetry.utils.helpers import extractallCODE
CRITICAL⚡tests/utils/test_helpers.py19from poetry.utils.helpers import get_file_hashCODE
CRITICAL⚡tests/utils/test_helpers.py20from poetry.utils.helpers import get_highest_priority_hash_typeCODE
CRITICAL⚡tests/utils/test_helpers.py21from poetry.utils.helpers import merge_dictsCODE
CRITICALtests/pyproject/test_pyproject_toml_file.py7from poetry.core.exceptions import PoetryCoreErrorCODE
CRITICAL⚡tests/console/commands/test_version.py129 old_pyproject = tester.command.poetry.file.path.read_text(encoding="utf-8")CODE
CRITICAL⚡tests/console/commands/test_version.py132 new_pyproject = tester.command.poetry.file.path.read_text(encoding="utf-8")CODE
CRITICALtests/console/commands/test_add.py567 demo_path = app.poetry.file.path.parent.joinpath(path).resolve().as_posix()STRING
CRITICALtests/console/commands/test_add.py790 demo_path = app.poetry.file.path.parent.joinpath(path).resolve().as_posix()STRING
CRITICALtests/console/commands/test_add.py829 demo_path = app.poetry.file.path.parent.joinpath(path).resolve().as_posix()STRING
CRITICALtests/console/commands/test_add.py859 demo_path = app.poetry.file.path.parent.joinpath(path).resolve().as_posix()STRING
CRITICALtests/console/commands/test_add.py895 demo_path = app.poetry.file.path.parent.joinpath(path).resolve().as_posix()STRING
CRITICALtests/console/commands/test_build.py18from poetry.utils.helpers import remove_directoryCODE
CRITICALsrc/poetry/toml/exceptions.py3from poetry.core.exceptions import PoetryCoreErrorCODE
CRITICALsrc/poetry/config/config.py221 from poetry.utils.helpers import merge_dictsCODE
CRITICALsrc/poetry/masonry/builders/editable.py21from poetry.utils.helpers import is_dir_writableCODE
CRITICALsrc/poetry/masonry/builders/editable.py284 "url": self._poetry.file.path.parent.absolute().as_uri(),STRING
CRITICALsrc/poetry/utils/cache.py21from poetry.utils.helpers import get_highest_priority_hash_typeCODE
CRITICALsrc/poetry/repositories/http_repository.py41from poetry.utils.helpers import get_highest_priority_hash_typeCODE
CRITICALsrc/poetry/installation/uninstaller.py43from poetry.utils.helpers import remove_directoryCODE
CRITICALsrc/poetry/installation/chooser.py14from poetry.utils.helpers import get_highest_priority_hash_typeCODE
CRITICALsrc/poetry/installation/chef.py11from poetry.utils.helpers import extractallCODE
CRITICAL⚡src/poetry/installation/executor.py31from poetry.utils.helpers import get_file_hashCODE
CRITICAL⚡src/poetry/installation/executor.py32from poetry.utils.helpers import get_highest_priority_hash_typeCODE
CRITICAL⚡src/poetry/installation/executor.py33from poetry.utils.helpers import pluralizeCODE
CRITICAL⚡src/poetry/installation/executor.py34from poetry.utils.helpers import remove_directoryCODE
CRITICALsrc/poetry/inspection/info.py26from poetry.utils.helpers import extractallCODE
CRITICALsrc/poetry/vcs/git/backend.py32from poetry.utils.helpers import remove_directoryCODE
CRITICALsrc/poetry/packages/direct_origin.py15from poetry.utils.helpers import get_file_hashCODE
CRITICALsrc/poetry/console/application.py26from poetry.utils.helpers import directoryCODE
CRITICALsrc/poetry/console/application.py27from poetry.utils.helpers import ensure_pathCODE
CRITICALsrc/poetry/console/commands/build.py17from poetry.utils.helpers import remove_directoryCODE
CRITICALsrc/poetry/console/commands/show.py298 from poetry.utils.helpers import get_package_version_display_stringCODE
CRITICALsrc/poetry/console/commands/self/self_command.py20from poetry.utils.helpers import directoryCODE
CRITICALsrc/poetry/console/commands/self/show/plugins.py59 from poetry.utils.helpers import pluralizeSTRING
Unused Imports323 hits · 318 pts
SeverityFileLineSnippetContext
LOWtests/conftest.py1CODE
LOWtests/test_conftest.py1CODE
LOWtests/test_factory.py1CODE
LOWtests/types.py1CODE
LOWtests/test_helpers.py1CODE
LOWtests/helpers.py1CODE
LOWtests/test_main.py1CODE
LOWtests/publishing/test_uploader.py1CODE
LOWtests/publishing/test_publisher.py1CODE
LOWtests/publishing/test_hash_manager.py1CODE
LOWtests/toml/test_file.py1CODE
LOWtests/mixology/test_incompatibility.py1CODE
LOWtests/mixology/helpers.py1CODE
LOWtests/mixology/version_solver/conftest.py1CODE
LOWtests/mixology/version_solver/test_backtracking.py1CODE
LOWtests/mixology/version_solver/__init__.py1CODE
LOWtests/mixology/version_solver/test_unsolvable.py1CODE
LOWtests/mixology/version_solver/test_python_constraint.py1CODE
LOWtests/mixology/version_solver/test_dependency_cache.py1CODE
LOWtests/mixology/version_solver/test_with_lock.py1CODE
LOWtests/mixology/version_solver/test_basic_graph.py1CODE
LOWtests/puzzle/test_transaction.py1CODE
LOWtests/puzzle/conftest.py1CODE
LOWtests/puzzle/test_provider.py1CODE
LOWtests/puzzle/test_solver_internals.py1CODE
LOWtests/puzzle/test_solver.py1CODE
LOWtests/config/test_file_config_source.py1CODE
LOWtests/config/test_source.py1CODE
LOWtests/config/test_config_source.py1CODE
LOWtests/config/test_config.py1CODE
LOWtests/config/test_dict_config_source.py1CODE
LOWtests/plugins/test_plugin_manager.py1CODE
LOWtests/integration/test_utils_vcs_git.py1CODE
LOWtests/masonry/builders/test_editable_builder.py1CODE
LOWtests/utils/conftest.py1CODE
LOWtests/utils/test_authenticator.py1CODE
LOWtests/utils/test_download.py1CODE
LOWtests/utils/test_threading.py1CODE
LOWtests/utils/test_password_manager.py1CODE
LOWtests/utils/test_isolated_build.py1CODE
LOWtests/utils/test_dependency_specification.py1CODE
LOWtests/utils/test_patterns.py1CODE
LOWtests/utils/test_wheel.py1CODE
LOWtests/utils/test_extras.py1CODE
LOWtests/utils/test_pip.py1CODE
LOWtests/utils/test_compat.py1CODE
LOWtests/utils/test_helpers.py1CODE
LOWtests/utils/test_python_manager.py1CODE
LOWtests/utils/test_cache.py1CODE
LOWtests/utils/test_log_utils.py1CODE
LOWtests/repositories/test_repository.py1CODE
LOWtests/repositories/conftest.py1CODE
LOWtests/repositories/test_pypi_repository.py1CODE
LOWtests/repositories/test_installed_repository.py1CODE
LOWtests/repositories/test_lockfile_repository.py1CODE
LOWtests/repositories/test_cached_repository.py1CODE
LOWtests/repositories/test_legacy_repository.py1CODE
LOWtests/repositories/test_repository_pool.py1CODE
LOWtests/repositories/test_http_repository.py1CODE
LOWtests/repositories/test_single_page_repository.py1CODE
263 more matches not shown…
Deep Nesting72 hits · 72 pts
SeverityFileLineSnippetContext
LOWtests/conftest.py531CODE
LOWtests/conftest.py541CODE
LOWtests/mixology/helpers.py43CODE
LOWtests/puzzle/test_transaction.py361CODE
LOWtests/installation/test_uninstaller.py41CODE
LOWtests/inspection/test_lazy_wheel.py76CODE
LOWtests/packages/test_locker.py1740CODE
LOWtests/console/commands/test_check.py318CODE
LOWtests/console/commands/test_check.py379CODE
LOWsrc/poetry/factory.py251CODE
LOWsrc/poetry/publishing/uploader.py200CODE
LOWsrc/poetry/publishing/uploader.py340CODE
LOWsrc/poetry/mixology/version_solver.py257CODE
LOWsrc/poetry/mixology/version_solver.py318CODE
LOWsrc/poetry/mixology/version_solver.py531CODE
LOWsrc/poetry/mixology/incompatibility.py108CODE
LOWsrc/poetry/mixology/failure.py143CODE
LOWsrc/poetry/puzzle/solver.py416CODE
LOWsrc/poetry/puzzle/solver.py470CODE
LOWsrc/poetry/puzzle/solver.py84CODE
LOWsrc/poetry/puzzle/solver.py190CODE
LOWsrc/poetry/puzzle/solver.py353CODE
LOWsrc/poetry/puzzle/provider.py282CODE
LOWsrc/poetry/puzzle/provider.py507CODE
LOWsrc/poetry/puzzle/provider.py849CODE
LOWsrc/poetry/puzzle/provider.py870CODE
LOWsrc/poetry/puzzle/provider.py1023CODE
LOWsrc/poetry/puzzle/transaction.py45CODE
LOWsrc/poetry/masonry/builders/editable.py143CODE
LOWsrc/poetry/utils/authenticator.py214CODE
LOWsrc/poetry/utils/download.py28CODE
LOWsrc/poetry/utils/download.py108CODE
LOWsrc/poetry/utils/cache.py248CODE
LOWsrc/poetry/utils/dependency_specification.py32CODE
LOWsrc/poetry/utils/helpers.py283CODE
LOWsrc/poetry/repositories/http_repository.py275CODE
LOWsrc/poetry/repositories/http_repository.py308CODE
LOWsrc/poetry/repositories/http_repository.py511CODE
LOWsrc/poetry/repositories/installed_repository.py41CODE
LOWsrc/poetry/repositories/installed_repository.py109CODE
LOWsrc/poetry/repositories/installed_repository.py243CODE
LOWsrc/poetry/repositories/parsers/pypi_search_parser.py41CODE
LOWsrc/poetry/repositories/link_sources/html.py36CODE
LOWsrc/poetry/installation/installer.py216CODE
LOWsrc/poetry/installation/executor.py157CODE
LOWsrc/poetry/installation/executor.py274CODE
LOWsrc/poetry/installation/executor.py531CODE
LOWsrc/poetry/installation/executor.py585CODE
LOWsrc/poetry/installation/executor.py883CODE
LOWsrc/poetry/inspection/lazy_wheel.py598CODE
LOWsrc/poetry/inspection/lazy_wheel.py704CODE
LOWsrc/poetry/inspection/info.py117CODE
LOWsrc/poetry/inspection/info.py369CODE
LOWsrc/poetry/inspection/info.py435CODE
LOWsrc/poetry/vcs/git/backend.py520CODE
LOWsrc/poetry/packages/locker.py95CODE
LOWsrc/poetry/packages/locker.py387CODE
LOWsrc/poetry/packages/locker.py518CODE
LOWsrc/poetry/console/application.py255CODE
LOWsrc/poetry/console/application.py424CODE
12 more matches not shown…
Modern Structural Boilerplate54 hits · 54 pts
SeverityFileLineSnippetContext
LOWtests/conftest.py151 def set_password(self, service: str, username: str, password: str) -> None:CODE
LOWtests/conftest.py187 def set_password(self, service: str, username: str, password: str) -> None:CODE
LOWtests/conftest.py610def set_simple_log_formatter() -> None:CODE
LOWtests/test_helpers.py518 def set_password(self, service: str, username: str, password: str) -> None:CODE
LOWtests/helpers.py368def set_keyring_backend(backend: KeyringBackend) -> None:CODE
LOWtests/mixology/version_solver/conftest.py20 def set_package_python_versions(self, python_versions: str) -> None:CODE
LOWtests/puzzle/test_solver.py69def set_package_python_versions(provider: Provider, python_versions: str) -> None:CODE
LOWtests/installation/test_executor.py60 def set_directory_wheel(self, wheels: Path | list[Path]) -> None:CODE
LOWtests/installation/test_executor.py66 def set_sdist_wheel(self, wheels: Path | list[Path]) -> None:CODE
LOWsrc/poetry/factory.py44logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/publishing/__init__.py6__all__ = ["Publisher"]CODE
LOWsrc/poetry/publishing/publisher.py18logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/toml/__init__.py7__all__ = ["TOMLError", "TOMLFile"]CODE
LOWsrc/poetry/puzzle/provider.py60logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/puzzle/provider.py108 def _set_context(context: str | None) -> None:CODE
LOWsrc/poetry/puzzle/provider.py226 def set_overrides(self, overrides: dict[Package, dict[str, Dependency]]) -> None:CODE
LOWsrc/poetry/puzzle/__init__.py6__all__ = ["Solver"]CODE
LOWsrc/poetry/config/config.py146logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/plugins/__init__.py7__all__ = ["ApplicationPlugin", "Plugin"]CODE
LOWsrc/poetry/plugins/plugin_manager.py42logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/masonry/api.py10__all__ = [CODE
LOWsrc/poetry/masonry/builders/editable.py89 def _setup_build(self) -> None:STRING
LOWsrc/poetry/masonry/builders/__init__.py9__all__ = ["BUILD_FORMATS", "EditableBuilder"]CODE
LOWsrc/poetry/utils/authenticator.py38logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/utils/cache.py38logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/utils/password_manager.py20logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/utils/password_manager.py111 def set_password(self, name: str, username: str, password: str) -> None:CODE
LOWsrc/poetry/utils/password_manager.py212 def set_pypi_token(self, repo_name: str, token: str) -> None:CODE
LOWsrc/poetry/utils/password_manager.py258 def set_http_password(self, repo_name: str, username: str, password: str) -> None:CODE
LOWsrc/poetry/utils/_compat.py95__all__ = [CODE
LOWsrc/poetry/utils/helpers.py33logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/utils/wheel.py16logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/repositories/__init__.py7__all__ = ["Repository", "RepositoryPool"]CODE
LOWsrc/poetry/repositories/installed_repository.py27logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/repositories/pypi_repository.py28logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/repositories/link_sources/base.py41logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/installation/uninstaller.py54logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/installation/__init__.py6__all__ = ["Installer"]CODE
LOWsrc/poetry/installation/chooser.py28logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/installation/wheel_installer.py23logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/installation/operations/__init__.py8__all__ = ["Install", "Uninstall", "Update"]CODE
LOWsrc/poetry/inspection/lazy_wheel.py40logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/inspection/lazy_wheel.py361 def _setup_content(self) -> None:CODE
LOWsrc/poetry/inspection/info.py41logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/vcs/git/backend.py40logger = logging.getLogger(__name__)CODE
LOWsrc/poetry/vcs/git/backend.py148 def _set_head(self, remote_refs: FetchPackResult, repo: Repo) -> None:CODE
LOWsrc/poetry/vcs/git/__init__.py6__all__ = ["Git"]CODE
LOWsrc/poetry/packages/locker.py47logger = logging.getLogger(__name__)CODE
LOW⚡src/poetry/packages/locker.py133 def set_pyproject_data(self, pyproject_data: dict[str, Any]) -> None:CODE
LOW⚡src/poetry/packages/locker.py137 def set_local_config(self, local_config: dict[str, Any]) -> None:CODE
LOWsrc/poetry/packages/__init__.py8__all__ = ["DependencyPackage", "Locker", "PackageCollection"]CODE
LOWsrc/poetry/console/commands/installer_command.py34 def set_installer(self, installer: Installer) -> None:CODE
LOWsrc/poetry/console/commands/command.py28 def set_poetry(self, poetry: Poetry) -> None:CODE
LOWsrc/poetry/console/commands/env_command.py24 def set_env(self, env: Env) -> None:CODE
Self-Referential Comments14 hits · 42 pts
SeverityFileLineSnippetContext
MEDIUMtests/installation/test_uninstaller.py278 # Create a sibling directory next to env.path that shares a name prefix.COMMENT
MEDIUMtests/vcs/git/test_backend.py303 # Create a source repository with an annotated tagCOMMENT
MEDIUMtests/vcs/git/test_backend.py320 # Create an annotated tagCOMMENT
MEDIUMtests/vcs/git/test_backend.py365 # Create a source repository with nested annotated tagsCOMMENT
MEDIUMtests/vcs/git/test_backend.py466 # Create a source repository with LFS supportCOMMENT
MEDIUMtests/vcs/git/test_backend.py483 # Create a regular fileCOMMENT
MEDIUMtests/vcs/git/test_backend.py488 # Create an LFS file with a pointerCOMMENT
MEDIUM.github/scripts/backport.sh142# Create a temporary directory in which to hold worktrees for each backport attempt.COMMENT
MEDIUM.github/scripts/backport.sh161 # Create a new backport branch, in a new worktree, based on the target branch.COMMENT
MEDIUM.github/scripts/backport.sh177 # Create a derived title and label for the PR.COMMENT
MEDIUM.github/scripts/backport.sh195 # Create a new pull request from the backport branch, against the target branch.COMMENT
MEDIUMsrc/poetry/mixology/version_solver.py415 # Create a new incompatibility by combining incompatibility with theCOMMENT
MEDIUMsrc/poetry/repositories/parsers/pypi_search_parser.py14# The following code was originally written for PDM projectCOMMENT
MEDIUMsrc/poetry/packages/locker.py263 # The following code is roughly equivalent toCOMMENT
Empty Error Handlers4 hits · 20 pts
SeverityFileLineSnippetContext
HIGHsrc/poetry/mixology/version_solver.py611except Exception: # noqa: BLE001, S110CODE
HIGHsrc/poetry/installation/uninstaller.py252except FileNotFoundError:CODE
HIGHsrc/poetry/packages/locker.py254except RuntimeError:CODE
HIGHsrc/poetry/packages/locker.py111except InvalidVersionError:CODE
Over-Commented Block13 hits · 13 pts
SeverityFileLineSnippetContext
LOW.github/scripts/backport.sh1#!/usr/bin/env bashCOMMENT
LOWsrc/poetry/mixology/version_solver.py221COMMENT
LOWsrc/poetry/mixology/version_solver.py341COMMENT
LOWsrc/poetry/mixology/version_solver.py421 new_terms = [COMMENT
LOWsrc/poetry/mixology/partial_solution.py21 # total solution.COMMENT
LOWsrc/poetry/puzzle/solver.py221 _package.add_dependency(dep)COMMENT
LOWsrc/poetry/puzzle/provider.py61COMMENT
LOWsrc/poetry/puzzle/provider.py661 locked = self.get_locked(dep)COMMENT
LOWsrc/poetry/puzzle/provider.py761 if not deps or (len(deps) == 1 and deps[0].constraint.is_empty()):COMMENT
LOWsrc/poetry/puzzle/provider.py1081 constraint = constraint.intersect(dep.constraint)COMMENT
LOWsrc/poetry/plugins/plugin_manager.py161 returnCOMMENT
LOWsrc/poetry/installation/uninstaller.py101 # Create local cache of normalize_path results. Creating an UninstallPathSetCOMMENT
LOWsrc/poetry/installation/wheel_installer.py101 # Attention: Path.absolute() is not sufficient because it does notCOMMENT
AI Slop Vocabulary4 hits · 8 pts
SeverityFileLineSnippetContext
LOWtests/plugins/test_plugin_manager.py612 # just use a file dependency so that we do not have to set up a repositoryCOMMENT
MEDIUMtests/utils/test_dependency_specification.py96 ( # allow several equivalent versions to make test more robustCODE
MEDIUMsrc/poetry/installation/uninstaller.py107 # because we are robust against files that may have been deletedCOMMENT
LOWsrc/poetry/packages/locker.py425 # so we just set both file and hash.COMMENT
Excessive Try-Catch Wrapping7 hits · 7 pts
SeverityFileLineSnippetContext
LOWtests/utils/test_cache.py359 except Exception: # noqa: BLE001CODE
LOWsrc/poetry/mixology/version_solver.py611 except Exception: # noqa: BLE001, S110CODE
LOWsrc/poetry/config/file_config_source.py106 except Exception:CODE
LOWsrc/poetry/installation/executor.py316 except Exception as e: # noqa: BLE001CODE
LOWsrc/poetry/installation/executor.py725 except Exception:CODE
LOWsrc/poetry/inspection/lazy_wheel.py96 except Exception as e:CODE
LOWsrc/poetry/console/logging/io_handler.py29 except Exception: # noqa: BLE001CODE
Overly Generic Function Names5 hits · 6 pts
SeverityFileLineSnippetContext
LOWtests/utils/test_download.py70 def handle_request(request: PreparedRequest) -> HttpResponse:CODE
LOW⚡tests/utils/test_download.py103 def handle_request(request: PreparedRequest) -> HttpResponse:CODE
LOW⚡tests/utils/test_download.py121 def handle_request(request: PreparedRequest) -> tuple[int, dict[str, Any], bytes]:CODE
LOWtests/utils/test_download.py145 def handle_request(request: PreparedRequest) -> tuple[int, dict[str, Any], bytes]:CODE
LOWtests/inspection/test_lazy_wheel.py130 def handle_request(request: PreparedRequest) -> HttpResponse:CODE
Redundant / Tautological Comments3 hits · 4 pts
SeverityFileLineSnippetContext
LOWsrc/poetry/publishing/publisher.py64 # Check if we have a token firstCOMMENT
LOWsrc/poetry/puzzle/provider.py1101 # Set constraint to empty to mark dependency as "not required".COMMENT
LOWsrc/poetry/installation/installer.py102 # Check if refreshCOMMENT
AI Structural Patterns4 hits · 4 pts
SeverityFileLineSnippetContext
LOWtests/conftest.py460CODE
LOWtests/types.py56CODE
LOWsrc/poetry/inspection/info.py53CODE
LOWsrc/poetry/layouts/layout.py62CODE
Fake / Example Data2 hits · 2 pts
SeverityFileLineSnippetContext
LOWdocs/pyproject.md215 { name = "John Smith", email = "johnsmith@example.org" },CODE
LOWdocs/pyproject.md216 { name = "Jane Smith", email = "janesmith@example.org" },CODE