auditr 0.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- auditr-0.1.0/.dockerignore +22 -0
- auditr-0.1.0/.gitignore +37 -0
- auditr-0.1.0/Dockerfile +25 -0
- auditr-0.1.0/LICENSE +21 -0
- auditr-0.1.0/PKG-INFO +721 -0
- auditr-0.1.0/README.md +675 -0
- auditr-0.1.0/assets/icon.svg +26 -0
- auditr-0.1.0/auditor/__init__.py +45 -0
- auditr-0.1.0/auditor/aggregate.py +93 -0
- auditr-0.1.0/auditor/ast_util.py +85 -0
- auditr-0.1.0/auditor/baseline.py +69 -0
- auditr-0.1.0/auditor/builtins.py +20 -0
- auditr-0.1.0/auditor/cli/__init__.py +33 -0
- auditr-0.1.0/auditor/cli/__main__.py +6 -0
- auditr-0.1.0/auditor/cli/aggregate.py +27 -0
- auditr-0.1.0/auditor/cli/apps.py +18 -0
- auditr-0.1.0/auditor/cli/config.py +28 -0
- auditr-0.1.0/auditor/cli/crossfile.py +29 -0
- auditr-0.1.0/auditor/cli/discover.py +43 -0
- auditr-0.1.0/auditor/cli/helpers.py +106 -0
- auditr-0.1.0/auditor/cli/ignore.py +130 -0
- auditr-0.1.0/auditor/cli/index.py +66 -0
- auditr-0.1.0/auditor/cli/manifest.py +22 -0
- auditr-0.1.0/auditor/cli/options.py +181 -0
- auditr-0.1.0/auditor/cli/plugins.py +24 -0
- auditr-0.1.0/auditor/cli/report.py +54 -0
- auditr-0.1.0/auditor/cli/rules.py +66 -0
- auditr-0.1.0/auditor/cli/scan.py +265 -0
- auditr-0.1.0/auditor/cli/summary.py +91 -0
- auditr-0.1.0/auditor/config.py +530 -0
- auditr-0.1.0/auditor/crossfile.py +177 -0
- auditr-0.1.0/auditor/dead_code.py +80 -0
- auditr-0.1.0/auditor/discovery.py +249 -0
- auditr-0.1.0/auditor/engine.py +553 -0
- auditr-0.1.0/auditor/fingerprints.py +27 -0
- auditr-0.1.0/auditor/fixture_usage.py +42 -0
- auditr-0.1.0/auditor/ignores.py +85 -0
- auditr-0.1.0/auditor/index.py +697 -0
- auditr-0.1.0/auditor/languages/__init__.py +0 -0
- auditr-0.1.0/auditor/languages/base.py +298 -0
- auditr-0.1.0/auditor/languages/bash/__init__.py +2 -0
- auditr-0.1.0/auditor/languages/bash/auditor.py +42 -0
- auditr-0.1.0/auditor/languages/bash/base.py +62 -0
- auditr-0.1.0/auditor/languages/bash/detectors/__init__.py +6 -0
- auditr-0.1.0/auditor/languages/bash/detectors/malware.py +209 -0
- auditr-0.1.0/auditor/languages/bash/detectors/secrets.py +10 -0
- auditr-0.1.0/auditor/languages/malware_signatures.py +43 -0
- auditr-0.1.0/auditor/languages/malware_sweeps.py +73 -0
- auditr-0.1.0/auditor/languages/manifest/__init__.py +3 -0
- auditr-0.1.0/auditor/languages/manifest/auditor.py +43 -0
- auditr-0.1.0/auditor/languages/manifest/base.py +85 -0
- auditr-0.1.0/auditor/languages/manifest/detectors/__init__.py +3 -0
- auditr-0.1.0/auditor/languages/manifest/detectors/supply_chain.py +43 -0
- auditr-0.1.0/auditor/languages/python/__init__.py +0 -0
- auditr-0.1.0/auditor/languages/python/auditor.py +89 -0
- auditr-0.1.0/auditor/languages/python/detectors/__init__.py +18 -0
- auditr-0.1.0/auditor/languages/python/detectors/_util.py +135 -0
- auditr-0.1.0/auditor/languages/python/detectors/async_rules.py +335 -0
- auditr-0.1.0/auditor/languages/python/detectors/config_rules.py +91 -0
- auditr-0.1.0/auditor/languages/python/detectors/correctness.py +188 -0
- auditr-0.1.0/auditor/languages/python/detectors/malware.py +347 -0
- auditr-0.1.0/auditor/languages/python/detectors/oop.py +697 -0
- auditr-0.1.0/auditor/languages/python/detectors/secrets.py +10 -0
- auditr-0.1.0/auditor/languages/python/detectors/security/__init__.py +9 -0
- auditr-0.1.0/auditor/languages/python/detectors/security/_base.py +32 -0
- auditr-0.1.0/auditor/languages/python/detectors/security/crypto.py +177 -0
- auditr-0.1.0/auditor/languages/python/detectors/security/deserialize.py +119 -0
- auditr-0.1.0/auditor/languages/python/detectors/security/framework.py +174 -0
- auditr-0.1.0/auditor/languages/python/detectors/security/injection.py +226 -0
- auditr-0.1.0/auditor/languages/python/detectors/security/network.py +230 -0
- auditr-0.1.0/auditor/languages/python/detectors/sqlalchemy_rules.py +428 -0
- auditr-0.1.0/auditor/languages/python/detectors/style.py +141 -0
- auditr-0.1.0/auditor/languages/python/detectors/suggestions.py +203 -0
- auditr-0.1.0/auditor/languages/python/detectors/supply_chain.py +105 -0
- auditr-0.1.0/auditor/languages/python/detectors/testing.py +442 -0
- auditr-0.1.0/auditor/languages/python/detectors/typing_rules.py +115 -0
- auditr-0.1.0/auditor/languages/python/detectors/xfile.py +62 -0
- auditr-0.1.0/auditor/languages/python/shapes.py +330 -0
- auditr-0.1.0/auditor/languages/secret_sweeps.py +37 -0
- auditr-0.1.0/auditor/languages/sweep.py +65 -0
- auditr-0.1.0/auditor/languages/typescript/__init__.py +1 -0
- auditr-0.1.0/auditor/languages/typescript/auditor.py +68 -0
- auditr-0.1.0/auditor/languages/typescript/base.py +47 -0
- auditr-0.1.0/auditor/languages/typescript/detectors/__init__.py +14 -0
- auditr-0.1.0/auditor/languages/typescript/detectors/a11y.py +323 -0
- auditr-0.1.0/auditor/languages/typescript/detectors/complexity.py +120 -0
- auditr-0.1.0/auditor/languages/typescript/detectors/design_system.py +165 -0
- auditr-0.1.0/auditor/languages/typescript/detectors/dry.py +191 -0
- auditr-0.1.0/auditor/languages/typescript/detectors/malware.py +212 -0
- auditr-0.1.0/auditor/languages/typescript/detectors/react.py +306 -0
- auditr-0.1.0/auditor/languages/typescript/detectors/secrets.py +10 -0
- auditr-0.1.0/auditor/languages/typescript/detectors/security.py +155 -0
- auditr-0.1.0/auditor/languages/typescript/detectors/style.py +40 -0
- auditr-0.1.0/auditor/languages/typescript/detectors/xfile.py +37 -0
- auditr-0.1.0/auditor/languages/typescript/manifest.py +47 -0
- auditr-0.1.0/auditor/languages/typescript/nodes.py +203 -0
- auditr-0.1.0/auditor/languages/typescript/parser.py +42 -0
- auditr-0.1.0/auditor/languages/typescript/shapes.py +162 -0
- auditr-0.1.0/auditor/logconfig.py +25 -0
- auditr-0.1.0/auditor/mcp_server.py +239 -0
- auditr-0.1.0/auditor/models.py +235 -0
- auditr-0.1.0/auditor/paths.py +29 -0
- auditr-0.1.0/auditor/plugins.py +78 -0
- auditr-0.1.0/auditor/profiles/__init__.py +0 -0
- auditr-0.1.0/auditor/profiles/all-strict.toml +11 -0
- auditr-0.1.0/auditor/profiles/base.toml +55 -0
- auditr-0.1.0/auditor/profiles/pydantic.toml +2 -0
- auditr-0.1.0/auditor/profiles/strict.toml +5 -0
- auditr-0.1.0/auditor/registry.py +132 -0
- auditr-0.1.0/auditor/reporters/__init__.py +11 -0
- auditr-0.1.0/auditor/reporters/base.py +47 -0
- auditr-0.1.0/auditor/reporters/html_reporter.py +324 -0
- auditr-0.1.0/auditor/reporters/json_reporter.py +62 -0
- auditr-0.1.0/auditor/reporters/markdown_reporter.py +53 -0
- auditr-0.1.0/auditor/reporters/sarif_reporter.py +74 -0
- auditr-0.1.0/auditor/roles.py +123 -0
- auditr-0.1.0/auditor/secrets_signatures.py +253 -0
- auditr-0.1.0/auditor/serve.py +91 -0
- auditr-0.1.0/auditor/settings_cohesion.py +109 -0
- auditr-0.1.0/auditor/skips.py +126 -0
- auditr-0.1.0/docker-compose.yml +28 -0
- auditr-0.1.0/docs/superpowers/plans/2026-06-08-dead-code-rule.md +672 -0
- auditr-0.1.0/docs/superpowers/plans/2026-06-08-pytest-structural-test-rules.md +1702 -0
- auditr-0.1.0/docs/superpowers/plans/2026-06-08-sqlalchemy-rules.md +721 -0
- auditr-0.1.0/docs/superpowers/plans/2026-06-09-injectable-config-json.md +465 -0
- auditr-0.1.0/docs/superpowers/specs/2026-06-06-auditor-skip-directive-design.md +83 -0
- auditr-0.1.0/docs/superpowers/specs/2026-06-06-discovery-defaults-design.md +75 -0
- auditr-0.1.0/docs/superpowers/specs/2026-06-06-persistent-ignores-design.md +167 -0
- auditr-0.1.0/docs/superpowers/specs/2026-06-06-scattered-settings-rule-design.md +124 -0
- auditr-0.1.0/docs/superpowers/specs/2026-06-08-dead-code-rule-design.md +115 -0
- auditr-0.1.0/docs/superpowers/specs/2026-06-08-pytest-structural-test-rules-design.md +276 -0
- auditr-0.1.0/docs/superpowers/specs/2026-06-08-sqlalchemy-rules-design.md +156 -0
- auditr-0.1.0/docs/superpowers/specs/2026-06-09-injectable-config-json-design.md +98 -0
- auditr-0.1.0/pyproject.toml +60 -0
- auditr-0.1.0/scripts/release.sh +199 -0
- auditr-0.1.0/tests/_detector_cases.py +1067 -0
- auditr-0.1.0/tests/_support.py +213 -0
- auditr-0.1.0/tests/_ts_cases.py +475 -0
- auditr-0.1.0/tests/cli/test_aggregate.py +12 -0
- auditr-0.1.0/tests/cli/test_config.py +30 -0
- auditr-0.1.0/tests/cli/test_crossfile.py +10 -0
- auditr-0.1.0/tests/cli/test_discover.py +58 -0
- auditr-0.1.0/tests/cli/test_errors.py +22 -0
- auditr-0.1.0/tests/cli/test_helpers.py +44 -0
- auditr-0.1.0/tests/cli/test_ignore.py +193 -0
- auditr-0.1.0/tests/cli/test_index.py +30 -0
- auditr-0.1.0/tests/cli/test_manifest.py +31 -0
- auditr-0.1.0/tests/cli/test_plugins.py +9 -0
- auditr-0.1.0/tests/cli/test_report.py +21 -0
- auditr-0.1.0/tests/cli/test_rules.py +50 -0
- auditr-0.1.0/tests/cli/test_scan.py +417 -0
- auditr-0.1.0/tests/conftest.py +27 -0
- auditr-0.1.0/tests/fixtures/data/plugins/house_rules.py +25 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/edge/broken.py +3 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/edge/empty.py +0 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/edge/tricky.py +42 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/generated/client_pb2.py +4 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/pyproject.toml +7 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/scripts/migrate.py +13 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/src/__init__.py +0 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/src/account.py +17 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/src/async_service.py +65 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/src/clean.py +19 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/src/customer.py +16 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/src/integrations.py +81 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/src/models.py +58 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/src/processing.py +131 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/src/settings.py +24 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/src/web.py +58 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/tests/__init__.py +0 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/tests/conftest.py +8 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/tests/factories.py +15 -0
- auditr-0.1.0/tests/fixtures/data/sample_repo/tests/test_app.py +34 -0
- auditr-0.1.0/tests/fixtures/data/ts/Clean.tsx +19 -0
- auditr-0.1.0/tests/fixtures/data/ts/Dirty.tsx +20 -0
- auditr-0.1.0/tests/fixtures/data/ts/app/Clean.tsx +22 -0
- auditr-0.1.0/tests/fixtures/data/ts/app/components/Dashboard.tsx +105 -0
- auditr-0.1.0/tests/fixtures/data/ts/app/components/EdgeCases.tsx +55 -0
- auditr-0.1.0/tests/fixtures/data/ts/app/components/EmbedViewer.tsx +16 -0
- auditr-0.1.0/tests/fixtures/data/ts/app/components/HookPitfalls.tsx +23 -0
- auditr-0.1.0/tests/fixtures/data/ts/app/components/MetricsGrid.tsx +20 -0
- auditr-0.1.0/tests/fixtures/data/ts/app/components/StatCard.tsx +44 -0
- auditr-0.1.0/tests/fixtures/data/ts/app/components/StatCardLegacy.tsx +21 -0
- auditr-0.1.0/tests/fixtures/data/ts/app/components/StatusRow.tsx +13 -0
- auditr-0.1.0/tests/fixtures/data/ts/app/components/SummaryPanel.tsx +21 -0
- auditr-0.1.0/tests/fixtures/data/ts/app/components/Toolbar.tsx +17 -0
- auditr-0.1.0/tests/fixtures/data/ts/app/components/UserSettingsForm.tsx +13 -0
- auditr-0.1.0/tests/fixtures/data/ts/app/hooks/use-metrics.ts +13 -0
- auditr-0.1.0/tests/fixtures/data/ts/app/lib/format.ts +20 -0
- auditr-0.1.0/tests/fixtures/data/ts/app/lib/payload.ts +23 -0
- auditr-0.1.0/tests/fixtures/data/ts/stress/AdminConsole.tsx +237 -0
- auditr-0.1.0/tests/fixtures/data/ts/stress/AuditLog.tsx +96 -0
- auditr-0.1.0/tests/fixtures/data/ts/stress/HookPitfalls.tsx +23 -0
- auditr-0.1.0/tests/fixtures/data/ts/stress/PluginLoader.ts +22 -0
- auditr-0.1.0/tests/fixtures/data/ts/stress/ReportsView.tsx +98 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/app/__init__.py +1 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/app/api/__init__.py +1 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/app/api/routes.py +34 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/app/core/VERSION +1 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/app/core/__init__.py +1 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/app/core/auth.py +31 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/app/core/config.py +21 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/app/core/legacy.py +33 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/app/main.py +20 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/app/models/__init__.py +1 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/app/models/entities.py +78 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/app/schemas/__init__.py +1 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/app/schemas/reports.py +26 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/app/services/__init__.py +1 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/app/services/alerts.py +92 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/app/services/exporters.py +45 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/app/services/metrics.py +50 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/app/services/reports.py +71 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/backend/tests/test_metrics.py +14 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/frontend/src/components/AlertsPanel.tsx +28 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/frontend/src/components/Clean.tsx +10 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/frontend/src/components/Dashboard.tsx +62 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/frontend/src/components/HostRow.tsx +19 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/frontend/src/components/MetricsTable.tsx +51 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/frontend/src/components/ServiceRow.tsx +19 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/frontend/src/components/ui/index.tsx +23 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/frontend/src/hooks/useMetrics.ts +27 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/frontend/src/lib/format.ts +15 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/frontend/src/routeTree.gen.ts +11 -0
- auditr-0.1.0/tests/fixtures/sample_projects/dashboard/pyproject.toml +25 -0
- auditr-0.1.0/tests/languages/bash/test_malware.py +234 -0
- auditr-0.1.0/tests/languages/bash/test_secrets.py +18 -0
- auditr-0.1.0/tests/languages/manifest/test_base.py +87 -0
- auditr-0.1.0/tests/languages/manifest/test_supply_chain.py +118 -0
- auditr-0.1.0/tests/languages/python/detectors/security/test_base.py +20 -0
- auditr-0.1.0/tests/languages/python/detectors/security/test_crypto.py +47 -0
- auditr-0.1.0/tests/languages/python/detectors/security/test_deserialize.py +56 -0
- auditr-0.1.0/tests/languages/python/detectors/security/test_framework.py +34 -0
- auditr-0.1.0/tests/languages/python/detectors/security/test_injection.py +58 -0
- auditr-0.1.0/tests/languages/python/detectors/security/test_network.py +87 -0
- auditr-0.1.0/tests/languages/python/detectors/test_async_rules.py +91 -0
- auditr-0.1.0/tests/languages/python/detectors/test_config_rules.py +35 -0
- auditr-0.1.0/tests/languages/python/detectors/test_correctness.py +90 -0
- auditr-0.1.0/tests/languages/python/detectors/test_malware.py +246 -0
- auditr-0.1.0/tests/languages/python/detectors/test_oop.py +118 -0
- auditr-0.1.0/tests/languages/python/detectors/test_secrets.py +18 -0
- auditr-0.1.0/tests/languages/python/detectors/test_sqlalchemy.py +337 -0
- auditr-0.1.0/tests/languages/python/detectors/test_style.py +48 -0
- auditr-0.1.0/tests/languages/python/detectors/test_supply_chain.py +114 -0
- auditr-0.1.0/tests/languages/python/detectors/test_testing.py +372 -0
- auditr-0.1.0/tests/languages/python/detectors/test_typing_rules.py +43 -0
- auditr-0.1.0/tests/languages/python/detectors/test_util.py +177 -0
- auditr-0.1.0/tests/languages/python/detectors/test_xfile.py +22 -0
- auditr-0.1.0/tests/languages/python/test_auditor.py +39 -0
- auditr-0.1.0/tests/languages/python/test_manifest.py +47 -0
- auditr-0.1.0/tests/languages/python/test_shapes.py +138 -0
- auditr-0.1.0/tests/languages/test_base.py +61 -0
- auditr-0.1.0/tests/languages/typescript/detectors/test_a11y.py +68 -0
- auditr-0.1.0/tests/languages/typescript/detectors/test_complexity.py +47 -0
- auditr-0.1.0/tests/languages/typescript/detectors/test_design_system.py +109 -0
- auditr-0.1.0/tests/languages/typescript/detectors/test_malware.py +42 -0
- auditr-0.1.0/tests/languages/typescript/detectors/test_react.py +189 -0
- auditr-0.1.0/tests/languages/typescript/detectors/test_secrets.py +20 -0
- auditr-0.1.0/tests/languages/typescript/detectors/test_security.py +34 -0
- auditr-0.1.0/tests/languages/typescript/detectors/test_style.py +33 -0
- auditr-0.1.0/tests/languages/typescript/test_app_fixture.py +56 -0
- auditr-0.1.0/tests/languages/typescript/test_auditor.py +55 -0
- auditr-0.1.0/tests/languages/typescript/test_base.py +28 -0
- auditr-0.1.0/tests/languages/typescript/test_crossfile.py +116 -0
- auditr-0.1.0/tests/languages/typescript/test_manifest.py +28 -0
- auditr-0.1.0/tests/languages/typescript/test_nodes.py +66 -0
- auditr-0.1.0/tests/languages/typescript/test_parser.py +27 -0
- auditr-0.1.0/tests/languages/typescript/test_shapes.py +104 -0
- auditr-0.1.0/tests/languages/typescript/test_stress_fixture.py +70 -0
- auditr-0.1.0/tests/reporters/test_base.py +16 -0
- auditr-0.1.0/tests/reporters/test_html_reporter.py +81 -0
- auditr-0.1.0/tests/reporters/test_json_reporter.py +35 -0
- auditr-0.1.0/tests/reporters/test_markdown_reporter.py +24 -0
- auditr-0.1.0/tests/reporters/test_sarif_reporter.py +19 -0
- auditr-0.1.0/tests/test_aggregate.py +49 -0
- auditr-0.1.0/tests/test_ast_util.py +72 -0
- auditr-0.1.0/tests/test_auditor_mechanics.py +70 -0
- auditr-0.1.0/tests/test_baseline.py +101 -0
- auditr-0.1.0/tests/test_builtins.py +25 -0
- auditr-0.1.0/tests/test_config.py +306 -0
- auditr-0.1.0/tests/test_crossfile.py +187 -0
- auditr-0.1.0/tests/test_dead_code.py +128 -0
- auditr-0.1.0/tests/test_detectors.py +19 -0
- auditr-0.1.0/tests/test_discovery.py +247 -0
- auditr-0.1.0/tests/test_dogfood.py +58 -0
- auditr-0.1.0/tests/test_engine.py +278 -0
- auditr-0.1.0/tests/test_fingerprints.py +54 -0
- auditr-0.1.0/tests/test_ignores.py +125 -0
- auditr-0.1.0/tests/test_ignores_integration.py +69 -0
- auditr-0.1.0/tests/test_index.py +204 -0
- auditr-0.1.0/tests/test_index_ignores.py +131 -0
- auditr-0.1.0/tests/test_index_partitioning.py +230 -0
- auditr-0.1.0/tests/test_index_schema.py +219 -0
- auditr-0.1.0/tests/test_logconfig.py +61 -0
- auditr-0.1.0/tests/test_mcp_server.py +291 -0
- auditr-0.1.0/tests/test_models.py +110 -0
- auditr-0.1.0/tests/test_paths.py +39 -0
- auditr-0.1.0/tests/test_plugins.py +117 -0
- auditr-0.1.0/tests/test_registry.py +77 -0
- auditr-0.1.0/tests/test_roles.py +77 -0
- auditr-0.1.0/tests/test_sample_dashboard.py +112 -0
- auditr-0.1.0/tests/test_sample_repo.py +221 -0
- auditr-0.1.0/tests/test_scattered_settings.py +170 -0
- auditr-0.1.0/tests/test_serve.py +50 -0
- auditr-0.1.0/tests/test_settings_cohesion.py +133 -0
- auditr-0.1.0/tests/test_shared_index.py +69 -0
- auditr-0.1.0/tests/test_shared_index_integration.py +40 -0
- auditr-0.1.0/tests/test_skips.py +173 -0
- auditr-0.1.0/tests/test_thresholds.py +48 -0
- auditr-0.1.0/uv.lock +1448 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
.git/
|
|
2
|
+
.gitignore
|
|
3
|
+
.venv/
|
|
4
|
+
venv/
|
|
5
|
+
__pycache__/
|
|
6
|
+
*.py[cod]
|
|
7
|
+
*.egg-info/
|
|
8
|
+
.pytest_cache/
|
|
9
|
+
.ruff_cache/
|
|
10
|
+
.mypy_cache/
|
|
11
|
+
.coverage
|
|
12
|
+
htmlcov/
|
|
13
|
+
.auditor/
|
|
14
|
+
AUDIT.md
|
|
15
|
+
.audit/
|
|
16
|
+
.idea/
|
|
17
|
+
.vscode/
|
|
18
|
+
*.md
|
|
19
|
+
!README.md
|
|
20
|
+
Dockerfile
|
|
21
|
+
.dockerignore
|
|
22
|
+
docker-compose.yml
|
auditr-0.1.0/.gitignore
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Python
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[cod]
|
|
4
|
+
*.egg-info/
|
|
5
|
+
.eggs/
|
|
6
|
+
build/
|
|
7
|
+
dist/
|
|
8
|
+
*.egg
|
|
9
|
+
|
|
10
|
+
# Virtual environments
|
|
11
|
+
.venv/
|
|
12
|
+
venv/
|
|
13
|
+
env/
|
|
14
|
+
|
|
15
|
+
# uv
|
|
16
|
+
.python-version
|
|
17
|
+
|
|
18
|
+
# Test / tooling caches
|
|
19
|
+
.pytest_cache/
|
|
20
|
+
.ruff_cache/
|
|
21
|
+
.mypy_cache/
|
|
22
|
+
.coverage
|
|
23
|
+
htmlcov/
|
|
24
|
+
|
|
25
|
+
# auditor's generated index/cache now lives in the global home (~/.auditor or
|
|
26
|
+
# $AUDITOR_HOME), not in-repo. Local plugins stay untrusted local-only.
|
|
27
|
+
.auditor/plugins/
|
|
28
|
+
|
|
29
|
+
# Audit output
|
|
30
|
+
AUDIT.md
|
|
31
|
+
.audit/
|
|
32
|
+
|
|
33
|
+
# Editors / OS
|
|
34
|
+
.idea/
|
|
35
|
+
.vscode/
|
|
36
|
+
*.swp
|
|
37
|
+
.DS_Store
|
auditr-0.1.0/Dockerfile
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# syntax=docker/dockerfile:1
|
|
2
|
+
FROM python:3.13-slim
|
|
3
|
+
|
|
4
|
+
# git is needed for accurate .gitignore-aware discovery (git ls-files)
|
|
5
|
+
RUN apt-get update \
|
|
6
|
+
&& apt-get install -y --no-install-recommends git \
|
|
7
|
+
&& rm -rf /var/lib/apt/lists/*
|
|
8
|
+
|
|
9
|
+
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/
|
|
10
|
+
|
|
11
|
+
WORKDIR /app
|
|
12
|
+
|
|
13
|
+
COPY pyproject.toml README.md LICENSE ./
|
|
14
|
+
COPY auditor ./auditor
|
|
15
|
+
RUN uv pip install --system --no-cache ".[mcp,ts]"
|
|
16
|
+
|
|
17
|
+
# The shared index lives here (NOT inside the mounted repo at /auditor). Mount a named volume at
|
|
18
|
+
# this path to persist the incremental cache across runs: -v auditor-index:/root/.auditor
|
|
19
|
+
ENV AUDITOR_HOME=/root/.auditor
|
|
20
|
+
|
|
21
|
+
WORKDIR /auditor
|
|
22
|
+
# Default: the CLI (`docker run … scan .`). For the MCP server, override the entrypoint:
|
|
23
|
+
# docker run -i --rm -v "$PWD:/auditor" --entrypoint auditor-mcp auditor:latest
|
|
24
|
+
ENTRYPOINT ["auditor"]
|
|
25
|
+
CMD ["scan", "."]
|
auditr-0.1.0/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Sung Kim
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|