Scan timing: clone 6.38s · analysis 21.43s · 15.0 MB · GitHub API rate-limit (preflight)
https://github.com/ansible/ansible
· scanned 2026-06-05 08:39 UTC (5 days, 19 hours ago)
· 10 languages
1041 raw signals (193 security + 848 graph) 28th percentile · Python · large (100-500K LoC) System graph score 81 (lower by 14)
Last scanned 5 days, 19 hours ago · v2 · 483 actionable findings from 2 signal sources. 117 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
| Component | Sub-score | Weight | Contribution |
|---|---|---|---|
structure_score |
85.0 | 0.15 | 12.75 |
security_score |
39.7 | 0.25 | 9.93 |
testing_score |
100.0 | 0.20 | 20.00 |
documentation_score |
91.0 | 0.15 | 13.65 |
practices_score |
42.0 | 0.15 | 6.30 |
code_quality |
42.0 | 0.10 | 4.20 |
| Overall | 1.00 | 66.8 |
Showing 284 of 483 actionable findings. 600 raw detector signals were grouped into reader-sized issues. Click TP / FP to vote on a finding's accuracy — votes adjust the confidence weighting and improve detection across the platform.
lib/ansible/plugins/connection/ssh.py:1093
test/integration/targets/git/vars/main.yml:48test/units/module_utils/urls/fixtures/client.key:1test/units/module_utils/urls/fixtures/multipart.txt:105hacking/update-sanity-requirements.py:177lib/ansible/_internal/_task.py:660lib/ansible/cli/galaxy.py:1590lib/ansible/config/manager.py:307lib/ansible/module_utils/_embed/dnf.py:137lib/ansible/module_utils/common/_utils.py:22lib/ansible/module_utils/json_utils.py:73lib/ansible/modules/async_wrapper.py:111requirements.txt
requirements.txt
requirements.txt
lib/ansible/cli/__init__.py:249, 250, 254, 346, 348 (5 hits)lib/ansible/module_utils/urls.py:721
lib/ansible/modules/expect.py:93
lib/ansible/modules/shell.py:140
lib/ansible/plugins/become/sudo.py:109, 126 (2 hits)lib/ansible/plugins/connection/ssh.py:498
lib/ansible/plugins/lookup/password.py:92, 98, 104, 110, 119 (5 hits)lib/ansible/plugins/lookup/url.py:194, 198 (2 hits)packaging/release.py:155, 159, 196, 204, 249, 260 (6 hits)hacking/update-sanity-requirements.py:64, 73 (2 hits)lib/ansible/galaxy/data/apb/Dockerfile.j2:8
CI/CD securitycontainers
lib/ansible/galaxy/data/apb/Dockerfile.j2:2
packaging/release.py:875
packaging/release.py:1257
packaging/release.py:1283
requirements.txt
lib/ansible/plugins/strategy/__init__.py:1122
Eval used
lib/ansible/module_utils/_internal/_dataclass_validation.py:174
Exec used
lib/ansible/module_utils/six/__init__.py:761
Exec used
lib/ansible/plugins/strategy/__init__.py:1145
Exec used
lib/ansible/utils/collection_loader/_collection_finder.py:541
Exec used
lib/ansible/galaxy/collection/__init__.py:1584
Tls verify false
hacking/backport/backport_of_line_adder.py:163
hacking/azp/download.py:195
test/lib/ansible_test/_internal/content_config.py:96, 102 (2 hits)test/units/_internal/templating/conftest.py:43, 47 (2 hits)hacking/test-module.py:261test/integration/targets/pause/test-pause.py:21test/integration/targets/var_precedence/ansible-var-precedence-check.py:531test/lib/ansible_test/_internal/commands/coverage/__init__.py:251test/lib/ansible_test/_internal/commands/integration/cloud/cs.py:137test/lib/ansible_test/_internal/http.py:79.dockerignore
CI/CD securitycontainers
requirements.txt
requirements.txt
requirements.txt
requirements.txt
requirements.txt
.well-known/security.txt
requirements.txt:8, 9 (2 hits)test/integration/targets/ansible-test-integration-constraints/ansible_collections/ns/col/tests/integration/requirements.txt:1test/integration/targets/ansible-test-units-constraints/ansible_collections/ns/col/tests/unit/requirements.txt:1test/units/requirements.txt:5lib/ansible/cli/__init__.py:514
Subprocess shell true
lib/ansible/executor/powershell/module_manifest.py:117
Subprocess shell true
lib/ansible/module_utils/basic.py:1969
Subprocess shell true
lib/ansible/module_utils/facts/hardware/aix.py:201
Subprocess shell true
lib/ansible/module_utils/facts/hardware/hpux.py:61
Subprocess shell true
lib/ansible/module_utils/facts/system/distribution.py:650
Subprocess shell true
lib/ansible/module_utils/facts/system/service_mgr.py:88
Subprocess shell true
lib/ansible/modules/cron.py:280
Subprocess shell true
lib/ansible/modules/hostname.py:423
Subprocess shell true
lib/ansible/modules/package_facts.py:418
Subprocess shell true
lib/ansible/modules/rpm_key.py:525
Subprocess shell true
lib/ansible/modules/service_facts.py:168
Subprocess shell true
lib/ansible/plugins/lookup/lines.py:64
Subprocess shell true
lib/ansible/plugins/lookup/pipe.py:67
Subprocess shell true
lib/ansible/module_utils/basic.py:1647
Weak hash
lib/ansible/plugins/filter/md5.yml:4
Weak hash
lib/ansible/utils/hashing.py:78
Weak hash
.github/ISSUE_TEMPLATE/bug_report.yml
Ports
lib/ansible/plugins/filter/to_datetime.yml
Ports
.github/ISSUE_TEMPLATE/bug_report.yml
Ports
lib/ansible/plugins/filter/to_datetime.yml
Ports
lib/ansible/plugins/filter/strftime.yml
Ports
.github/ISSUE_TEMPLATE/bug_report.yml
Ports
lib/ansible/plugins/filter/strftime.yml
Ports
lib/ansible/modules/replace.py:6, 168 (2 hits)lib/ansible/module_utils/_internal/_json/_profiles/_tagless.py:15lib/ansible/module_utils/csharp/Ansible.Privilege.cs:91lib/ansible/module_utils/facts/hardware/linux.py:277lib/ansible/module_utils/facts/hardware/netbsd.py:90lib/ansible/module_utils/facts/hardware/openbsd.py:72lib/ansible/module_utils/facts/network/generic_bsd.py:78lib/ansible/module_utils/facts/network/sunos.py:26test/support/windows-integration/collections/ansible_collections/ansible/windows/plugins/action/win_copy.py:1test/support/windows-integration/collections/ansible_collections/ansible/windows/plugins/modules/win_copy.py:1test/support/windows-integration/plugins/action/win_copy.py:1test/support/windows-integration/plugins/modules/win_copy.py:1repo-level (12 hits)repo-level (5 hits)lib/ansible/inventory/manager.py:671
lib/ansible/_internal/_yaml/_constructor.py:57
lib/ansible/_internal/_yaml/_constructor.py:147
lib/ansible/_internal/_yaml/_constructor.py:141
lib/ansible/_internal/_yaml/_constructor.py:120
lib/ansible/_internal/_yaml/_constructor.py:200
lib/ansible/_internal/_yaml/_constructor.py:218
lib/ansible/_internal/_templating/_engine.py:395
lib/ansible/_internal/_templating/_transform.py:42
lib/ansible/_internal/_templating/_jinja_bits.py:251
lib/ansible/_internal/_templating/_transform.py:50
lib/ansible/_internal/_templating/_transform.py:29
lib/ansible/context.py:45
lib/ansible/_internal/_templating/_jinja_bits.py:341
lib/ansible/_internal/_templating/_transform.py:19
lib/ansible/_internal/ansible_collections/ansible/_protomatter/plugins/filter/python_literal_eval.py:8
lib/ansible/_internal/_yaml/_dumper.py:94
lib/ansible/_internal/_yaml/_dumper.py:106
lib/ansible/_internal/_yaml/_dumper.py:72
lib/ansible/_internal/_powershell/_clixml.py:174
lib/ansible/_internal/ansible_collections/ansible/_protomatter/plugins/filter/tag_names.py:8
lib/ansible/_internal/_templating/_jinja_bits.py:379
lib/ansible/_internal/_templating/_transform.py:37
This page is publicly accessible at:
https://repobility.com/scan/529d3d56-8a1c-4035-8414-20e7a8c17bc0/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/529d3d56-8a1c-4035-8414-20e7a8c17bc0/
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.