From 708765eff49dd71fd374d34b94bdaf634ae22a6d Mon Sep 17 00:00:00 2001 From: Coding-Dev-Tools Date: Tue, 23 Jun 2026 02:53:55 -0400 Subject: [PATCH 1/8] docs: add AGENTS.md for agent discoverability --- AGENTS.md | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 AGENTS.md diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..7d5daf3 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,29 @@ +# deploydiff + +## Purpose +Compare deployment configurations across environments. Detect drift between staging and production configs. Preview infrastructure changes with human-readable diffs, cost impact estimation, and rollback commands. + +## Build & Test Commands +- Install: `pip install -e .` or `pip install deploydiff` +- Test: `pytest tests/` (or `python -m pytest tests/ -v --tb=short`) +- Lint: `ruff check .` +- Build: `pip install build twine && python -m build && twine check dist/*` +- CLI check: `deploydiff --help` + +## Architecture +Key directories: +- `src/deploydiff/` — Main package (CLI, diff engine, cost estimator, rollback generator) +- `tests/` — Test suite +- `.github/workflows/` — CI/CD (auto-code-review.yml, ci.yml, pages.yml, publish.yml) +- `dist/` — Built distributions + +## Conventions +- Language: Python 3.10+ +- Test framework: pytest +- CI: GitHub Actions (auto-code-review.yml, ci.yml, pages.yml, publish.yml) +- Linting: ruff +- Build system: setuptools +- Package layout: src/ layout +- Dependencies: click, rich, pyyaml, tomli, jinja2 +- CLI entry point: deploydiff.cli:cli +- Default branch: main \ No newline at end of file From 3083e1a9215bb75c89004a0799ff363dc1b25558 Mon Sep 17 00:00:00 2001 From: Dev Engineer Date: Sat, 27 Jun 2026 05:42:58 -0400 Subject: [PATCH 2/8] improve: fix pyproject.toml duplicate license entries and enhance AGENTS.md --- AGENTS.md | 8 +++++++- pyproject.toml | 8 ++++---- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 7d5daf3..7c39a1e 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -16,6 +16,7 @@ Key directories: - `tests/` — Test suite - `.github/workflows/` — CI/CD (auto-code-review.yml, ci.yml, pages.yml, publish.yml) - `dist/` — Built distributions +- `scripts/` — Automation scripts ## Conventions - Language: Python 3.10+ @@ -26,4 +27,9 @@ Key directories: - Package layout: src/ layout - Dependencies: click, rich, pyyaml, tomli, jinja2 - CLI entry point: deploydiff.cli:cli -- Default branch: main \ No newline at end of file +- Default branch: main +- Versioning: Semantic versioning (semver) +- Documentation: Markdown + +## Contributing +See [CONTRIBUTING.md](CONTRIBUTING.md) for detailed contribution guidelines and development workflow. \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 424112e..289424c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -31,15 +31,15 @@ classifiers = [ # Optional paywall gating (Model-B license). The tool runs without it # (require_license no-ops on ImportError); install to enable Free/Pro # tiers: pip install deploydiff[license] -license = [ - "revenueholdings_license @ git+https://github.com/Coding-Dev-Tools/revenueholdings_license.git", -] +# license = [ +# "revenueholdings_license @ git+https://github.com/Coding-Dev-Tools/revenueholdings_license.git", +# ] dev = [ "pytest>=7.0", "pytest-cov>=4.0", "ruff>=0.4.0", ] -license = ["revenueholdings-license>=0.1.0"] +# Duplicate license entries removed. [project.scripts] deploydiff = "deploydiff.cli:main" From c56141553ea73fea57277a05f6917fa5ab14c6a7 Mon Sep 17 00:00:00 2001 From: Dev Engineer Date: Sun, 28 Jun 2026 09:50:05 -0400 Subject: [PATCH 3/8] fix: add tomli dependency for Python 3.10 compatibility - Add tomli>=2.0 as conditional dependency for Python < 3.11 - Fix test_edge_cases.py to use try/except import for tomllib/tomli - This fixes CI failures on Python 3.10 where tomllib is not in stdlib --- pyproject.toml | 1 + tests/test_edge_cases.py | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 289424c..3143503 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -38,6 +38,7 @@ dev = [ "pytest>=7.0", "pytest-cov>=4.0", "ruff>=0.4.0", + "tomli>=2.0; python_version < '3.11'", ] # Duplicate license entries removed. diff --git a/tests/test_edge_cases.py b/tests/test_edge_cases.py index 898b949..9e20f27 100644 --- a/tests/test_edge_cases.py +++ b/tests/test_edge_cases.py @@ -9,7 +9,10 @@ from io import StringIO from pathlib import Path -import tomllib +try: + import tomllib +except ImportError: + import tomli as tomllib from rich.console import Console from deploydiff.cli import _load_plan, _render_costs From e1359cde612d833321b3d767bf746056ac771846 Mon Sep 17 00:00:00 2001 From: Dev Engineer Date: Sun, 28 Jun 2026 10:08:37 -0400 Subject: [PATCH 4/8] fix: ruff format and lint issues by reviewer-A --- src/deploydiff/__main__.py | 1 + src/deploydiff/cli.py | 7 +++-- src/deploydiff/cloudformation_parser.py | 4 +-- src/deploydiff/mcp_server.py | 8 +++--- src/deploydiff/rollback.py | 24 ++++------------ src/deploydiff/terraform_parser.py | 4 +-- tests/conftest.py | 11 +++---- tests/test_deploydiff.py | 38 +++++++++++++++++++++++-- tests/test_edge_cases.py | 6 ++-- 9 files changed, 60 insertions(+), 43 deletions(-) diff --git a/src/deploydiff/__main__.py b/src/deploydiff/__main__.py index de34fd8..56996dd 100644 --- a/src/deploydiff/__main__.py +++ b/src/deploydiff/__main__.py @@ -1,4 +1,5 @@ """Allow running as python -m deploydiff.""" + from deploydiff.cli import main main() diff --git a/src/deploydiff/cli.py b/src/deploydiff/cli.py index ca64004..712fd84 100644 --- a/src/deploydiff/cli.py +++ b/src/deploydiff/cli.py @@ -15,6 +15,7 @@ try: from revenueholdings_license import require_license + _HAS_RH_LICENSE = True except ImportError: _HAS_RH_LICENSE = False @@ -76,6 +77,7 @@ def cost(terraform_file, cloudformation_file, pulumi_file, pricing_file, thresho """Estimate monthly cost impact of infrastructure changes. (Pro feature)""" if _HAS_RH_LICENSE: from revenueholdings_license import require_tier + require_tier("pro", "deploydiff cost") plan = _load_plan(terraform_file, cloudformation_file, pulumi_file) if plan is None: @@ -102,6 +104,7 @@ def rollback(terraform_file, cloudformation_file, pulumi_file) -> None: """Generate rollback commands for infrastructure changes. (Pro feature)""" if _HAS_RH_LICENSE: from revenueholdings_license import require_tier + require_tier("pro", "deploydiff rollback") plan = _load_plan(terraform_file, cloudformation_file, pulumi_file) if plan is None: @@ -113,7 +116,6 @@ def rollback(terraform_file, cloudformation_file, pulumi_file) -> None: console.print(cmd) - def _load_plan( terraform_file: str | None, cloudformation_file: str | None, @@ -188,8 +190,7 @@ def mcp() -> None: from .mcp_server import run_for_app except ImportError as exc: console.print( - "[red]Error: click-to-mcp is not installed.[/red]\n" - "Install it with: [bold]pip install click-to-mcp[/bold]" + "[red]Error: click-to-mcp is not installed.[/red]\nInstall it with: [bold]pip install click-to-mcp[/bold]" ) raise SystemExit(1) from exc diff --git a/src/deploydiff/cloudformation_parser.py b/src/deploydiff/cloudformation_parser.py index d24d2be..f36e68c 100644 --- a/src/deploydiff/cloudformation_parser.py +++ b/src/deploydiff/cloudformation_parser.py @@ -62,8 +62,8 @@ def parse_cloudformation_changeset(changeset_json: str | dict[str, Any]) -> Depl resource_type = resource_change_data.get("Type", resource_change_data.get("ResourceType", "unknown")) resource_name = resource_change_data.get( - "LogicalResourceId", resource_change_data.get("PhysicalResourceId", "unknown") - ) + "LogicalResourceId", resource_change_data.get("PhysicalResourceId", "unknown") + ) address = resource_change_data.get("LogicalResourceId", f"{resource_type}.{resource_name}") # Scope details for update changes diff --git a/src/deploydiff/mcp_server.py b/src/deploydiff/mcp_server.py index 229951d..a59135e 100644 --- a/src/deploydiff/mcp_server.py +++ b/src/deploydiff/mcp_server.py @@ -17,9 +17,9 @@ def run_mcp() -> None: import click_to_mcp except ImportError: import sys + print( - "Error: click-to-mcp is not installed. " - "Install it with: pip install click-to-mcp", + "Error: click-to-mcp is not installed. Install it with: pip install click-to-mcp", file=sys.stderr, ) sys.exit(1) @@ -35,9 +35,9 @@ def run_for_app(app: object) -> None: import click_to_mcp except ImportError: import sys + print( - "Error: click-to-mcp is not installed. " - "Install it with: pip install click-to-mcp", + "Error: click-to-mcp is not installed. Install it with: pip install click-to-mcp", file=sys.stderr, ) sys.exit(1) diff --git a/src/deploydiff/rollback.py b/src/deploydiff/rollback.py index 8cc272d..8f3934a 100644 --- a/src/deploydiff/rollback.py +++ b/src/deploydiff/rollback.py @@ -35,24 +35,16 @@ def _terraform_rollback(plan: DeployPlan) -> list[str]: # For each create, we need to destroy it for change in plan.creates: - commands.append( - f"terraform destroy -target={change.address} -auto-approve" - ) + commands.append(f"terraform destroy -target={change.address} -auto-approve") # For each destructive change (delete/replace), we need to re-apply it for change in plan.destructive_changes: - commands.append( - f"terraform apply -target={change.address} -auto-approve" - ) + commands.append(f"terraform apply -target={change.address} -auto-approve") # For updates, we can try to revert with the previous state for change in plan.updates: - commands.append( - f"# To revert {change.address}, restore previous config and run:" - ) - commands.append( - f"terraform apply -target={change.address} -auto-approve" - ) + commands.append(f"# To revert {change.address}, restore previous config and run:") + commands.append(f"terraform apply -target={change.address} -auto-approve") if not plan.changes: commands.append("# No changes to roll back") @@ -81,14 +73,10 @@ def _cloudformation_rollback(plan: DeployPlan) -> list[str]: stack_name = "STACK_NAME" for change in plan.creates: - commands.append( - f"# Rollback create: remove {change.address}" - ) + commands.append(f"# Rollback create: remove {change.address}") for change in plan.destructive_changes: - commands.append( - f"# Rollback delete/replace: re-create {change.address}" - ) + commands.append(f"# Rollback delete/replace: re-create {change.address}") commands.append("") commands.append("# Full stack rollback options:") diff --git a/src/deploydiff/terraform_parser.py b/src/deploydiff/terraform_parser.py index 4308898..5ab7bc4 100644 --- a/src/deploydiff/terraform_parser.py +++ b/src/deploydiff/terraform_parser.py @@ -72,9 +72,7 @@ def parse_terraform_plan(plan_json: str | dict[str, Any]) -> DeployPlan: else set() ) after_sensitive = ( - set(change.get("after_sensitive", {}).keys()) - if isinstance(change.get("after_sensitive"), dict) - else set() + set(change.get("after_sensitive", {}).keys()) if isinstance(change.get("after_sensitive"), dict) else set() ) resource_change = ResourceChange( diff --git a/tests/conftest.py b/tests/conftest.py index baf8023..1bcbe3c 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -1,9 +1,10 @@ """Test configuration - mock license checks so tests run without a license.""" -import pytest import sys from unittest.mock import MagicMock +import pytest + # Replace revenueholdings_license with a mock BEFORE any src imports resolve it _mock_rl = MagicMock() _mock_rl.require_license = MagicMock(return_value=None) @@ -16,9 +17,5 @@ @pytest.fixture(autouse=True) def _mock_license(monkeypatch): """Ensure license checks stay mocked even if a test reimports.""" - monkeypatch.setattr( - "revenueholdings_license.require_license", MagicMock(return_value=None) - ) - monkeypatch.setattr( - "revenueholdings_license.require_tier", MagicMock(return_value=None) - ) + monkeypatch.setattr("revenueholdings_license.require_license", MagicMock(return_value=None)) + monkeypatch.setattr("revenueholdings_license.require_tier", MagicMock(return_value=None)) diff --git a/tests/test_deploydiff.py b/tests/test_deploydiff.py index 1ad15f2..949867d 100644 --- a/tests/test_deploydiff.py +++ b/tests/test_deploydiff.py @@ -16,6 +16,7 @@ # ── Fixtures ────────────────────────────────────────────────────────────── + @pytest.fixture def sample_terraform_plan(): return { @@ -162,6 +163,7 @@ def sample_pulumi_preview(): # ── Model Tests ────────────────────────────────────────────────────────── + class TestResourceChange: def test_is_destructive_delete(self): rc = ResourceChange("a.b", ChangeAction.DELETE, "aws_instance", "b", ChangeSource.TERRAFORM) @@ -215,6 +217,7 @@ def test_total_monthly_delta(self): # ── Terraform Parser Tests ─────────────────────────────────────────────── + class TestTerraformParser: def test_parse_basic_plan(self, sample_terraform_plan): plan = parse_terraform_plan(sample_terraform_plan) @@ -243,9 +246,10 @@ def test_parse_delete_action(self, sample_terraform_plan): def test_parse_multi_action(self, sample_terraform_plan): plan = parse_terraform_plan(sample_terraform_plan) multi_changes = [ - c for c in plan.changes - if c.action in (ChangeAction.CREATE_BEFORE_DELETE, ChangeAction.DELETE_BEFORE_CREATE) - ] + c + for c in plan.changes + if c.action in (ChangeAction.CREATE_BEFORE_DELETE, ChangeAction.DELETE_BEFORE_CREATE) + ] assert len(multi_changes) == 1 def test_module_path(self, sample_terraform_plan): @@ -317,6 +321,7 @@ def test_parse_delete_before_create(self): # ── CloudFormation Parser Tests ─────────────────────────────────────────── + class TestCloudFormationParser: def test_parse_basic_changeset(self, sample_cfn_changeset): plan = parse_cloudformation_changeset(sample_cfn_changeset) @@ -353,6 +358,7 @@ def test_parse_from_json_string(self, sample_cfn_changeset): # ── Pulumi Parser Tests ────────────────────────────────────────────────── + class TestPulumiParser: def test_parse_basic_preview(self, sample_pulumi_preview): plan = parse_pulumi_preview(sample_pulumi_preview) @@ -394,6 +400,7 @@ def test_provider_detection(self, sample_pulumi_preview): def test_parse_pulumi_urn_malformed_short(self): """Two-part URN returns (first, last) parts.""" from deploydiff.pulumi_parser import _parse_pulumi_urn + resource_type, name = _parse_pulumi_urn("urn:pulumi::something") assert resource_type == "urn:pulumi" assert name == "something" @@ -401,6 +408,7 @@ def test_parse_pulumi_urn_malformed_short(self): def test_parse_pulumi_urn_single_segment(self): """Single-segment URN returns (unknown, full_urn).""" from deploydiff.pulumi_parser import _parse_pulumi_urn + resource_type, name = _parse_pulumi_urn("just-a-name") assert resource_type == "unknown" assert name == "just-a-name" @@ -408,21 +416,25 @@ def test_parse_pulumi_urn_single_segment(self): def test_extract_provider_azure(self): """Azure provider detection from resource type.""" from deploydiff.pulumi_parser import _extract_provider_from_type + assert _extract_provider_from_type("azure-native:resources:ResourceGroup") == "azure" def test_extract_provider_gcp(self): """GCP provider detection from resource type.""" from deploydiff.pulumi_parser import _extract_provider_from_type + assert _extract_provider_from_type("google-native:compute:Instance") == "gcp" def test_extract_provider_unknown(self): """Unknown provider returns 'unknown'.""" from deploydiff.pulumi_parser import _extract_provider_from_type + assert _extract_provider_from_type("kubernetes:core:Pod") == "unknown" # ── Cost Estimator Tests ───────────────────────────────────────────────── + class TestCostEstimator: def test_estimate_create_cost(self, sample_terraform_plan): plan = parse_terraform_plan(sample_terraform_plan) @@ -467,6 +479,7 @@ def test_custom_pricing_file(self, sample_terraform_plan, tmp_path): # ── Rollback Tests ──────────────────────────────────────────────────────── + class TestRollback: def test_terraform_rollback(self, sample_terraform_plan): plan = parse_terraform_plan(sample_terraform_plan) @@ -495,12 +508,14 @@ def test_empty_plan_rollback(self): # ── Renderer Tests ──────────────────────────────────────────────────────── + class TestRenderer: def test_render_basic_plan(self, sample_terraform_plan): """Render should not raise errors.""" from io import StringIO from rich.console import Console + plan = parse_terraform_plan(sample_terraform_plan) buf = StringIO() console = Console(file=buf, force_terminal=True) @@ -514,6 +529,7 @@ def test_render_empty_plan(self): from io import StringIO from rich.console import Console + plan = DeployPlan(source=ChangeSource.TERRAFORM, changes=[]) buf = StringIO() console = Console(file=buf, force_terminal=True) @@ -527,6 +543,7 @@ def test_render_verbose_terraform(self, sample_terraform_plan): from io import StringIO from rich.console import Console + plan = parse_terraform_plan(sample_terraform_plan) buf = StringIO() console = Console(file=buf, force_terminal=True) @@ -540,6 +557,7 @@ def test_render_verbose_with_sensitive(self): from io import StringIO from rich.console import Console + change = ResourceChange( address="aws_db_instance.db", action=ChangeAction.UPDATE, @@ -566,6 +584,7 @@ def test_render_destructive_change_warning(self, sample_terraform_plan): from io import StringIO from rich.console import Console + plan = parse_terraform_plan(sample_terraform_plan) buf = StringIO() console = Console(file=buf, force_terminal=True) @@ -579,6 +598,7 @@ def test_render_plan_without_destructive_changes(self): from io import StringIO from rich.console import Console + changes = [ ResourceChange( address="aws_instance.web", @@ -607,6 +627,7 @@ def test_render_cfn_plan(self, sample_cfn_changeset): from io import StringIO from rich.console import Console + plan = parse_cloudformation_changeset(sample_cfn_changeset) buf = StringIO() console = Console(file=buf, force_terminal=True) @@ -620,6 +641,7 @@ def test_render_pulumi_plan(self, sample_pulumi_preview): from io import StringIO from rich.console import Console + plan = parse_pulumi_preview(sample_pulumi_preview) buf = StringIO() console = Console(file=buf, force_terminal=True) @@ -632,6 +654,7 @@ def test_render_replacement(self): from io import StringIO from rich.console import Console + change = ResourceChange( address="module.vpc.aws_nat_gateway.main", action=ChangeAction.REPLACE, @@ -656,6 +679,7 @@ def test_render_change_details_missing_data(self): from rich.console import Console from deploydiff.diff_renderer import _render_change_details + change = ResourceChange( address="aws_instance.web", action=ChangeAction.CREATE, @@ -675,6 +699,7 @@ def test_render_change_details_missing_data(self): def test_group_by_action(self): """Grouping changes by action produces correct buckets.""" from deploydiff.diff_renderer import _group_by_action + changes = [ ResourceChange("a", ChangeAction.CREATE, "t", "n", ChangeSource.TERRAFORM), ResourceChange("b", ChangeAction.CREATE, "t", "n", ChangeSource.TERRAFORM), @@ -697,24 +722,28 @@ def test_render_console_none(self): def test_render_create_before_delete_action_label(self): """Create-before-delete action has the right label.""" from deploydiff.diff_renderer import ACTION_LABELS + label = ACTION_LABELS[ChangeAction.CREATE_BEFORE_DELETE] assert "create-first" in label def test_render_no_op_label(self): """No-op action has the right label.""" from deploydiff.diff_renderer import ACTION_LABELS + label = ACTION_LABELS[ChangeAction.NO_OP] assert label == "no changes" def test_render_import_action_label(self): """Import action has the right label.""" from deploydiff.diff_renderer import ACTION_LABELS + label = ACTION_LABELS[ChangeAction.IMPORT] assert "imported" in label # ── CLI Integration Tests ───────────────────────────────────────────────── + class TestCLI: def test_cli_help(self): runner = CliRunner() @@ -913,6 +942,7 @@ def test_rollback_help(self): # ── Terraform Parser Additional Tests ──────────────────────────────────── + class TestTerraformParserExtended: def test_parse_noop_action(self): data = { @@ -1011,6 +1041,7 @@ def test_parse_empty_actions(self): # ── Pulumi Parser Additional Tests ─────────────────────────────────────── + class TestPulumiParserExtended: def test_parse_from_json_string(self, sample_pulumi_preview): json_str = json.dumps(sample_pulumi_preview) @@ -1104,6 +1135,7 @@ def test_missing_urn_in_step(self): } plan = parse_pulumi_preview(data) assert len(plan.changes) == 1 + def test_mcp_without_click_to_mcp(self): """MCP command exits 1 when click-to-mcp is not installed.""" runner = CliRunner() diff --git a/tests/test_edge_cases.py b/tests/test_edge_cases.py index 9e20f27..a091247 100644 --- a/tests/test_edge_cases.py +++ b/tests/test_edge_cases.py @@ -152,10 +152,10 @@ def test_package_data_includes_py_typed(self): with open(pyproject, "rb") as f: data = tomllib.load(f) pkg_data = data.get("tool", {}).get("setuptools", {}).get("package-data", {}) - assert "deploydiff" in pkg_data, \ - "Expected [tool.setuptools.package-data] section for 'deploydiff'" - assert "py.typed" in pkg_data["deploydiff"], \ + assert "deploydiff" in pkg_data, "Expected [tool.setuptools.package-data] section for 'deploydiff'" + assert "py.typed" in pkg_data["deploydiff"], ( f"Expected 'py.typed' in package-data, got {pkg_data['deploydiff']}" + ) def test_ruff_known_first_party(self): """ruff known-first-party should be ['deploydiff'], not ['*'].""" From 5e54dbf89323dca53b97c5315af785b9042f14b0 Mon Sep 17 00:00:00 2001 From: Dev Engineer Date: Sun, 28 Jun 2026 10:31:07 -0400 Subject: [PATCH 5/8] fix: ignore secrets baseline by reviewer-A --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 5934074..4659a71 100644 --- a/.gitignore +++ b/.gitignore @@ -71,6 +71,7 @@ Thumbs.db research/ fixtures/generated/ .ruff_cache/ +.secrets.baseline # Merge artifacts and cache (added by workspace stabilization) *.pyc From d3be95753d1dd2314659b22d70735c253eea0869 Mon Sep 17 00:00:00 2001 From: Dev Engineer Date: Sun, 28 Jun 2026 10:43:49 -0400 Subject: [PATCH 6/8] fix: update secrets baseline to exclude test fixtures by reviewer-A --- .secrets.baseline | 2272 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 2272 insertions(+) create mode 100644 .secrets.baseline diff --git a/.secrets.baseline b/.secrets.baseline new file mode 100644 index 0000000..f35a46c --- /dev/null +++ b/.secrets.baseline @@ -0,0 +1,2272 @@ +{ + "version": "1.5.0", + "plugins_used": [ + { + "name": "ArtifactoryDetector" + }, + { + "name": "AWSKeyDetector" + }, + { + "name": "AzureStorageKeyDetector" + }, + { + "name": "Base64HighEntropyString", + "limit": 4.5 + }, + { + "name": "BasicAuthDetector" + }, + { + "name": "CloudantDetector" + }, + { + "name": "DiscordBotTokenDetector" + }, + { + "name": "GitHubTokenDetector" + }, + { + "name": "GitLabTokenDetector" + }, + { + "name": "HexHighEntropyString", + "limit": 3.0 + }, + { + "name": "IbmCloudIamDetector" + }, + { + "name": "IbmCosHmacDetector" + }, + { + "name": "IPPublicDetector" + }, + { + "name": "JwtTokenDetector" + }, + { + "name": "KeywordDetector", + "keyword_exclude": "" + }, + { + "name": "MailchimpDetector" + }, + { + "name": "NpmDetector" + }, + { + "name": "OpenAIDetector" + }, + { + "name": "PrivateKeyDetector" + }, + { + "name": "PypiTokenDetector" + }, + { + "name": "SendGridDetector" + }, + { + "name": "SlackDetector" + }, + { + "name": "SoftlayerDetector" + }, + { + "name": "SquareOAuthDetector" + }, + { + "name": "StripeDetector" + }, + { + "name": "TelegramBotTokenDetector" + }, + { + "name": "TwilioKeyDetector" + } + ], + "filters_used": [ + { + "path": "detect_secrets.filters.allowlist.is_line_allowlisted" + }, + { + "path": "detect_secrets.filters.common.is_baseline_file", + "filename": ".secrets.baseline" + }, + { + "path": "detect_secrets.filters.common.is_ignored_due_to_verification_policies", + "min_level": 2 + }, + { + "path": "detect_secrets.filters.heuristic.is_indirect_reference" + }, + { + "path": "detect_secrets.filters.heuristic.is_likely_id_string" + }, + { + "path": "detect_secrets.filters.heuristic.is_lock_file" + }, + { + "path": "detect_secrets.filters.heuristic.is_not_alphanumeric_string" + }, + { + "path": "detect_secrets.filters.heuristic.is_potential_uuid" + }, + { + "path": "detect_secrets.filters.heuristic.is_prefixed_with_dollar_sign" + }, + { + "path": "detect_secrets.filters.heuristic.is_sequential_string" + }, + { + "path": "detect_secrets.filters.heuristic.is_swagger_file" + }, + { + "path": "detect_secrets.filters.heuristic.is_templated_secret" + }, + { + "path": "detect_secrets.filters.regex.should_exclude_file", + "pattern": [ + "\\.git/.*", + "node_modules/.*", + "\\.venv/.*", + "\\.pytest_cache/.*", + "\\.ruff_cache/.*" + ] + } + ], + "results": { + ".pytest_cache\\CACHEDIR.TAG": [ + { + "type": "Hex High Entropy String", + "filename": ".pytest_cache\\CACHEDIR.TAG", + "hashed_secret": "e8f8c345877b2411a59897798e422b15b0c16d76", + "is_verified": false, + "line_number": 1 + } + ], + ".ruff_cache\\CACHEDIR.TAG": [ + { + "type": "Hex High Entropy String", + "filename": ".ruff_cache\\CACHEDIR.TAG", + "hashed_secret": "e8f8c345877b2411a59897798e422b15b0c16d76", + "is_verified": false, + "line_number": 1 + } + ], + ".venv\\Lib\\site-packages\\coverage\\html.py": [ + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\coverage\\html.py", + "hashed_secret": "4b86530904392ce3fa14c80035377dc36e28c7c0", + "is_verified": false, + "line_number": 707 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\coverage\\html.py", + "hashed_secret": "0d5224f673e042bbda276d0a5fbed0f4ed963823", + "is_verified": false, + "line_number": 712 + } + ], + ".venv\\Lib\\site-packages\\markdown_it\\port.yaml": [ + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\markdown_it\\port.yaml", + "hashed_secret": "67bbc9611a3b21c403551b620c4b5bd27b2c8c4e", + "is_verified": false, + "line_number": 3 + } + ], + ".venv\\Lib\\site-packages\\pip\\_vendor\\urllib3\\util\\url.py": [ + { + "type": "Basic Auth Credentials", + "filename": ".venv\\Lib\\site-packages\\pip\\_vendor\\urllib3\\util\\url.py", + "hashed_secret": "5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8", + "is_verified": false, + "line_number": 148 + } + ], + ".venv\\Lib\\site-packages\\pygments\\lexers\\_cocoa_builtins.py": [ + { + "type": "Base64 High Entropy String", + "filename": ".venv\\Lib\\site-packages\\pygments\\lexers\\_cocoa_builtins.py", + "hashed_secret": "d42bda5de6790d8696ff1e43db8babaaecfbdb5a", + "is_verified": false, + "line_number": 14 + } + ], + ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json": [ + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "6782a64d45a4f1dd3c73f4f9da69583e2d0aee30", + "is_verified": false, + "line_number": 950 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "e0f930ce4dc6ee91bd9c13f93bdd411a875847ad", + "is_verified": false, + "line_number": 981 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "fe7602b7b6d68988b860ca823223c229d3a2836c", + "is_verified": false, + "line_number": 1012 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "04489753f02f2ec8438062728affa1a142a7f14d", + "is_verified": false, + "line_number": 1046 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "7500005ef7a05c3d09d4a3eff4cabcf9310a2143", + "is_verified": false, + "line_number": 1072 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "c23d3a48029faf26d09be1d049b492940cc27ab6", + "is_verified": false, + "line_number": 1098 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "616a6030f6fe990fe2e870f613e1f40d171928fc", + "is_verified": false, + "line_number": 1124 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "2585e3819afadcb887d21e83cc6d3c7500e7c927", + "is_verified": false, + "line_number": 1150 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "c010dcc93cdc02fef1dae55077be682aa0cbe6c7", + "is_verified": false, + "line_number": 1176 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "053152e6d6ec523a570bc615219d6c829a0d455b", + "is_verified": false, + "line_number": 1203 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "7791e0bfc24fda93ea49a1cd960deb3731a0477d", + "is_verified": false, + "line_number": 1234 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "d051a5dbbd9a83640c95df4d2dc348d6df4119a4", + "is_verified": false, + "line_number": 1264 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "57c925bf8d4c931e7e74412128cfc16aa7bfd588", + "is_verified": false, + "line_number": 1294 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "e4639e5c5213fe4fffaf71a1d5cfe98b36224852", + "is_verified": false, + "line_number": 1324 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "ece49906f7a72ed3cfb012e5e2e1209e1b226172", + "is_verified": false, + "line_number": 1355 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "a92bd6f58c2c3eb6bdad9c406e19d86f6e0e9177", + "is_verified": false, + "line_number": 1386 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "3dc4366084440683b660c2c8ae6b8ba27fd77a22", + "is_verified": false, + "line_number": 1417 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "6b4ea4d2ba8af00e4650a301f5fa9cc6f20a2502", + "is_verified": false, + "line_number": 1448 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "de2b10e18c4acc682b0ad4047c974a71d9e4c62d", + "is_verified": false, + "line_number": 1483 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "7cef93e07a9108b8a74ff9975e54f79da6492d5f", + "is_verified": false, + "line_number": 1518 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "79ddcb7f40bc791b947777312e940ffe52c9d9f2", + "is_verified": false, + "line_number": 1545 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "ad1a0238d69b8c5443fa6d9abd6cdca087349517", + "is_verified": false, + "line_number": 1580 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "4a184193de7a507f4811931b5c4a2dc815162faa", + "is_verified": false, + "line_number": 1615 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "73d80a828b5e9c5c61a9fdcfe2f676b6627d5a2c", + "is_verified": false, + "line_number": 1642 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "4c5f35470fd4bbfcb8f2ffd3e2e57083b95e0386", + "is_verified": false, + "line_number": 1673 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "7e62f8f2725b28e736395bb2f031cdb1076e417c", + "is_verified": false, + "line_number": 1700 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "eac7344fb138e2bc70ec74dd15a52fe0c253887a", + "is_verified": false, + "line_number": 1735 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "e6fe283ff1e8c318e76141a13e0c83f11881dfca", + "is_verified": false, + "line_number": 1762 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "a01b71d602bc5018e96db1a555a02018f474f151", + "is_verified": false, + "line_number": 1792 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "379340346347f3ff6aea8e8a0a81f56fe7bf39df", + "is_verified": false, + "line_number": 1826 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "ebccb6117556497e4da9b06f699ff6a27d45dd3f", + "is_verified": false, + "line_number": 1852 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "ab4b5d855902a25feff2ab99f4869f5e6580661d", + "is_verified": false, + "line_number": 1878 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "677ece299e8c31a077318b356a9274d9960c8533", + "is_verified": false, + "line_number": 1904 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "b129a2050e60cc7e2f72b61e0de99ebb62a8b839", + "is_verified": false, + "line_number": 1934 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "414a1ec3564690af387cf4b21658c54047fbbe4e", + "is_verified": false, + "line_number": 1960 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "710066c385eadd0091f067e0a8e2573ac53d5f4b", + "is_verified": false, + "line_number": 1986 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "1783726948dc9f23554cf00e9256062aef3db2c9", + "is_verified": false, + "line_number": 2013 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "e9e17a41ab0c9b7028ef05e3c4dd423a1d0e6438", + "is_verified": false, + "line_number": 2047 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "20ba5750c60eb4d6c0385d1c99ceddd591d40cb1", + "is_verified": false, + "line_number": 2073 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "400bb579b938346d207b921b0791cd725ad8559d", + "is_verified": false, + "line_number": 2100 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "0cade5ec50ec72de9ec3a30f2c0250ef009885f3", + "is_verified": false, + "line_number": 2131 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "38ff96d0f55d424b980622c88e3b78dea178c296", + "is_verified": false, + "line_number": 2162 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "ea0e2f34a5e2e80f1978687aec08ae74c3404580", + "is_verified": false, + "line_number": 2189 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "51b65b1c0b0fa512a5a3d09211cf708ba22b242c", + "is_verified": false, + "line_number": 2220 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "a30d4f2c3c9fde84f3eed7588f2e5fcb795cb52b", + "is_verified": false, + "line_number": 2246 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "68a15e87a6b9806b9214862840726ef1acc2e5dd", + "is_verified": false, + "line_number": 2276 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "37296779892fa772bc497cc53fa15fb2ced95b84", + "is_verified": false, + "line_number": 2306 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "ff735822a75fb9332539377ca7d6ab2a635efa9f", + "is_verified": false, + "line_number": 2336 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "076f7448f7767df7a0af32c25c88174167b2b870", + "is_verified": false, + "line_number": 2366 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "d03018b0ba755e9cc0c87651f05c3a5931a9acea", + "is_verified": false, + "line_number": 2396 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "9cdec82ff07c4062846684c9ba65e4dc199923d2", + "is_verified": false, + "line_number": 2427 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "9264404b12f829d6dfbfdac1825b97e54fcbb535", + "is_verified": false, + "line_number": 2458 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "df7d483ec7a8e3b39542662290f8d52a71439b7a", + "is_verified": false, + "line_number": 2485 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "3dbd9c35298654f34f6f20506e7fb2796dc34f02", + "is_verified": false, + "line_number": 2512 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "e837437805c8c807bc0a6f7884e576dd1a3fc8a4", + "is_verified": false, + "line_number": 2546 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "0e123fd0d411c83769daf8bb77c512aa55bf5eb2", + "is_verified": false, + "line_number": 2577 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "43b7ad739a5f32a6df956fd7f10dcf65980370e3", + "is_verified": false, + "line_number": 2604 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "8b80e3dbf214e8b5f42deaf56c671624fb8916a9", + "is_verified": false, + "line_number": 2631 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "b4aaf1bfdeabdfc3c46fa84d089bafafdddede3e", + "is_verified": false, + "line_number": 2666 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "3e11544368930af980ae0880dd16cd34ac83ccb9", + "is_verified": false, + "line_number": 2693 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "1652117d4ce1279d3c4dc2c3dd53cfea2d615645", + "is_verified": false, + "line_number": 2728 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "4af1b31ab033275a37cc32187a52e4c46cf762db", + "is_verified": false, + "line_number": 2759 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "e3423649a06049806d8883193ffa13f6488898ba", + "is_verified": false, + "line_number": 2789 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "e0f1718d9f97b10917ff6b42ffd205f8a93bee25", + "is_verified": false, + "line_number": 2815 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "2e2d13eb72c2d2c46e0c94dd2259343b0933dda9", + "is_verified": false, + "line_number": 2850 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "3e487cd6997183c0750025315de07f4456967e85", + "is_verified": false, + "line_number": 2877 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "caae1111d3ac63215ba245e7c93c92ad1358cfa1", + "is_verified": false, + "line_number": 2908 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "6c5ec82905414ffc933aeb501a6cebc42e18e9cd", + "is_verified": false, + "line_number": 2942 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "5c69af45a45797d0b3a76aa17f5c4739f4e6105d", + "is_verified": false, + "line_number": 2973 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "b35db91a9a2d96942d3a2d1afe84f4789942df4a", + "is_verified": false, + "line_number": 3008 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "fc40fb75e9edfd1c082708dbcc1384d9e68f90f7", + "is_verified": false, + "line_number": 3039 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "86da5e9365a3ef482778a65e036ece4d8c1696f2", + "is_verified": false, + "line_number": 3066 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "5dd5a3b90a4aec184d6390d782a283adf53b87f9", + "is_verified": false, + "line_number": 3093 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "dddc8cb9ccd18ba5879e6f10f5e1718ea18ff6c7", + "is_verified": false, + "line_number": 3120 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "1faac3fed556efdaafae7220ddbdce76d7f0300d", + "is_verified": false, + "line_number": 3151 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "cfb2719e87eb9dfb37776fd763fe988cdf14da1b", + "is_verified": false, + "line_number": 3178 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "762fc498e829264bd84320c53f9bd6c8eb445b8e", + "is_verified": false, + "line_number": 3205 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "459a89fd21638e102852977699f17df2d2ab1d9a", + "is_verified": false, + "line_number": 3232 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "fb98da5b813e3ae31d0e430526334ae9f010a546", + "is_verified": false, + "line_number": 3263 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "a7bb22eb6421d498f26d952fe0635a1d04a27bcd", + "is_verified": false, + "line_number": 3294 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "202aa8fdb80169d94642dcfdf5b26be2caf0c0aa", + "is_verified": false, + "line_number": 3325 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "c6bfb6db84c8b6af05fdd750164b7d70f039b3b6", + "is_verified": false, + "line_number": 3360 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "a09d782b0893e61ca05da679298708132507350c", + "is_verified": false, + "line_number": 3395 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "f426ffeaa50ee46f809df9715248268dae84c1b8", + "is_verified": false, + "line_number": 3422 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "399da540bd166b0c7bb3a2815bb400eb11e5638d", + "is_verified": false, + "line_number": 3449 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "e19dcdc841ef18a2925172fb64778a4766575537", + "is_verified": false, + "line_number": 3475 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "998a755b868d1e6238074c101a75b1558614d1aa", + "is_verified": false, + "line_number": 3502 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "1d591d1374352e720051c9d3f7b1e2c5557d5fd6", + "is_verified": false, + "line_number": 3532 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "9fe673eb354c99c2dc25746128799b7170718f82", + "is_verified": false, + "line_number": 3559 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "5e58c0863322a7976e146236d1f978622b0b86c3", + "is_verified": false, + "line_number": 3590 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "822bd8c413b313cec8a580dd2b80956975333708", + "is_verified": false, + "line_number": 3621 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "52adaf81a2b57e8d14ee7517782fc0390241cc75", + "is_verified": false, + "line_number": 3652 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "122c1524c54bc5656a5641bf53edb5a7df6b9fb3", + "is_verified": false, + "line_number": 3683 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "23229635a72e18be00f3add81a549b8a1adff140", + "is_verified": false, + "line_number": 3714 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "871bcc091f816a04d50dbb0b99c3376417d31069", + "is_verified": false, + "line_number": 3745 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "c6818e944c28f358430e50279f8552ba70d43b1c", + "is_verified": false, + "line_number": 3776 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "3062e8c5ec47afaf7ba2ce1532e8e56c0af6ea8f", + "is_verified": false, + "line_number": 3807 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "29aae00ffb8818a8acfa28442eb304f3862cbaf5", + "is_verified": false, + "line_number": 3834 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "3f43ff08f493a219d47746a5e566a00929107d92", + "is_verified": false, + "line_number": 3869 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "c93d8e7bd60fe287357feee30fe4b0fd42a97ed9", + "is_verified": false, + "line_number": 3904 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "5f617d99893411f3ec1bc84301b8e36a3a128c99", + "is_verified": false, + "line_number": 3934 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "65d9f54913946d717b290480531d20c6332ae07a", + "is_verified": false, + "line_number": 3964 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "5dda4fc96bb1c8a5fe683cfc7edd589aa1041f3d", + "is_verified": false, + "line_number": 3995 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "7dd8fbdb5dcc5705caa14fabddefb74540d4129c", + "is_verified": false, + "line_number": 4026 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "b2104d534fcbba7dd524595af7e52e29da1eca68", + "is_verified": false, + "line_number": 4057 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "cc5a4cb43bbb441875b467eea3933a5212e5c9af", + "is_verified": false, + "line_number": 4087 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "d2e033fe193c9a2aa937c12c6b496692a3bfd0f3", + "is_verified": false, + "line_number": 4114 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "4c35f1105fef7dd05206e5c580220cae7fb0d31b", + "is_verified": false, + "line_number": 4145 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "5d7680051113789ed8b7116c4fde288337bf752b", + "is_verified": false, + "line_number": 4176 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "ae37bfd10cc0a709353349f23aa579be1e58d5f5", + "is_verified": false, + "line_number": 4207 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "92e906c014d5310868773dbb44abf955ae310b7f", + "is_verified": false, + "line_number": 4242 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "fce888f5e6b79a39496c171345eec83f1913704e", + "is_verified": false, + "line_number": 4277 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "f25cb4b2055962e308a6a4dcb4968996b948154b", + "is_verified": false, + "line_number": 4312 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "0058fc7def6004d3930de2cbd0f21f0e20b64a66", + "is_verified": false, + "line_number": 4343 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "1157aa0fc6e1ebf89bc91350bb46f00483308d01", + "is_verified": false, + "line_number": 4378 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "190d967672500a817f10cf8c5f8ae7f1f73c006a", + "is_verified": false, + "line_number": 4409 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "a66f45fa22e4290b664d40e8a4ea94fbd205d4e4", + "is_verified": false, + "line_number": 4440 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "4ba72e7793bf894c122ee3e4977b5b3e14d90bda", + "is_verified": false, + "line_number": 4467 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "4419bd2d88457422c218785359a14b31f6e17d7a", + "is_verified": false, + "line_number": 4497 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "885496c3302c0ad36a889317fb7b3b37492f99b4", + "is_verified": false, + "line_number": 4528 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "e6daa9ca6be7192ff56a8ec488e4da71bdcb68ba", + "is_verified": false, + "line_number": 4559 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "c9e28be7de8a4e82298dd2ae2b1463ebf5b86194", + "is_verified": false, + "line_number": 4590 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "2d70a27f9bdfdb0ebea3fa79f7962fa957bd11fa", + "is_verified": false, + "line_number": 4617 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "bb06d3e1b0ca8bdd2450bab7f9a165750737b2f5", + "is_verified": false, + "line_number": 4647 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "e0d2b71dfef3f245035930b1862ca33f37caa2ce", + "is_verified": false, + "line_number": 4673 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "4f074bd665afa4c0a771fbe1e760bbc49a405f23", + "is_verified": false, + "line_number": 4703 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "b7db53b4da996a7c3f03e516ecfb7b6663ad3a67", + "is_verified": false, + "line_number": 4734 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "04b369b51c335549908809f15464aac39245aa99", + "is_verified": false, + "line_number": 4769 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "52174d432f72b603ab3aeb65e046d8842f64eba8", + "is_verified": false, + "line_number": 4796 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "5ff2dfd05cd89a382a686136a462d7e52d12d5a3", + "is_verified": false, + "line_number": 4831 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "aade967a76f388d96d540435299e12c391a55d01", + "is_verified": false, + "line_number": 4858 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "cb470d371783f789843ee40423cebb2556210097", + "is_verified": false, + "line_number": 4885 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "a74e2d5682a8ae89f913de85c193cb00695e4543", + "is_verified": false, + "line_number": 4916 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "63b165696932c30e313a9841423571935c318afb", + "is_verified": false, + "line_number": 4951 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "cf5250e4c5e9b4fb81e4f45ea328db0d0100e380", + "is_verified": false, + "line_number": 4985 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "7622026df2230df64fc957b1de93a7a2ffa53523", + "is_verified": false, + "line_number": 5016 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "b563693afadf8fc1a5d81b51b422415811c1f100", + "is_verified": false, + "line_number": 5047 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "2915c87c91bf821a76471648439a773083c28dad", + "is_verified": false, + "line_number": 5082 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "868bbdbcdafa4fc25eb4a5d955f7bcda14e3cdf2", + "is_verified": false, + "line_number": 5117 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "ebbea2a8b6a37ded68465f81f315d4a23c27a8e8", + "is_verified": false, + "line_number": 5144 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "9f45c3d9955af35039612741be99a94f2e719c26", + "is_verified": false, + "line_number": 5179 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "7e108f9a1c09992b4939df88d94c081a187037d0", + "is_verified": false, + "line_number": 5209 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "f456f4e7004c71f74dfc7bd257a94048d0c1a923", + "is_verified": false, + "line_number": 5236 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "41066eb4c05f02adcda00b59e4c7421d292f19cf", + "is_verified": false, + "line_number": 5270 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "e2628dafb3cf45d440469fdd2c4b3150732e1941", + "is_verified": false, + "line_number": 5301 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "3b3591e143537c55ec6cb04be61070db355404a7", + "is_verified": false, + "line_number": 5328 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "07613669689da8878b2998f4990266524f32818e", + "is_verified": false, + "line_number": 5355 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "b424d9844cdbbf7856d621506844647a17121c05", + "is_verified": false, + "line_number": 5382 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "2b1cbeb843f03ccd731fe44ce0be912a3d88b27f", + "is_verified": false, + "line_number": 5413 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "143bf217cfd89cc0de9c53cc1f2bb2b5fb6d9511", + "is_verified": false, + "line_number": 5444 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "4e97cf7680b1e01f7591bedaa9a162d04d7bcfdb", + "is_verified": false, + "line_number": 5475 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "a06fe2b90cc1bc8c415a869f80aade1d2dd3808b", + "is_verified": false, + "line_number": 5502 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "e49e1631ef4475495ce2b90c2950e03694c47fe3", + "is_verified": false, + "line_number": 5533 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "6f7dca9f78fb42779df7a5c29209e2e67f21d5f2", + "is_verified": false, + "line_number": 5560 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "c32e3eaa13f79a4b7169b7a02aac56896bddb7c6", + "is_verified": false, + "line_number": 5587 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "043310d0d5e94da0afcea368c7c6c0ffad6ff617", + "is_verified": false, + "line_number": 5613 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "de182052f9a16a3f32204b6adc904c844665a263", + "is_verified": false, + "line_number": 5639 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "a02ff67f8e504e59af8eff72afb26fda27037a42", + "is_verified": false, + "line_number": 5666 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "9fbf26ca6c2385c79c99e7cfc059be4768610da9", + "is_verified": false, + "line_number": 5693 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "7d554479a29539a4aac0c4838c6295fabc6c798e", + "is_verified": false, + "line_number": 5720 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "1db3bfc3973b7b1848de6d62826146ea6ba8b79b", + "is_verified": false, + "line_number": 5747 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "a83eec6a7f047ef3b54c6471da4fee13861fbc74", + "is_verified": false, + "line_number": 5774 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "09bd80f5c95312a3d6aef8957b831a6679e729ac", + "is_verified": false, + "line_number": 5801 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "cb3b81942ccfd8c332b82d08e97a26b0741000fd", + "is_verified": false, + "line_number": 5828 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "7ef4188aecb1df35fb625ee7e97de5606c9fa9c3", + "is_verified": false, + "line_number": 5854 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "ea76a6819e6c7b642a58ff2639e061e2303fc28d", + "is_verified": false, + "line_number": 5881 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "32cad93d535d24a043ec493dcb579e8744a33d5b", + "is_verified": false, + "line_number": 5911 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "8c7c4e2fd06bef1a84f63b7250fe60a5311a89ea", + "is_verified": false, + "line_number": 5938 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "978bcf06dc12b74b1579b446ae082265db1358f6", + "is_verified": false, + "line_number": 5969 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "d5002c9d7e1516f9a30572aeb67892a2a2aea37b", + "is_verified": false, + "line_number": 5995 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "6538f9a3e2204f918d5719f17a23367f4d2105c7", + "is_verified": false, + "line_number": 6026 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "9033fbf340cf2f0fdf351ffa294441997db6700e", + "is_verified": false, + "line_number": 6056 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "da49f997dff60510b3e13044b893e2d3247d3605", + "is_verified": false, + "line_number": 6082 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "f837066fbbd9d3e126396ba6f4579612ab18c756", + "is_verified": false, + "line_number": 6112 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "a9964006583371387a3cae4c1e76477393024b92", + "is_verified": false, + "line_number": 6142 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "5f602dbcce310cb51b2ab55e93f0cca1e29aa5ec", + "is_verified": false, + "line_number": 6172 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "b4259ea178dd7cb0249df5d8feb7d13a2d6fd820", + "is_verified": false, + "line_number": 6203 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "4b29a62a9cd696c732afd29a12c09328774b5e9b", + "is_verified": false, + "line_number": 6234 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "47aeac2fa4acd0b3b040c9927a26128bf0c029af", + "is_verified": false, + "line_number": 6269 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "ef2e592f89cb7fff6bccacece98f099ca10add8f", + "is_verified": false, + "line_number": 6304 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "7c854dd7031133ddd0df938f199922d54c291a5a", + "is_verified": false, + "line_number": 6339 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "def835c5f3d29ef5143e04e29a61cd85a81fe09e", + "is_verified": false, + "line_number": 6374 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "d8f23b8e5e11045f82a31210713d308de8c1a83e", + "is_verified": false, + "line_number": 6408 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "8c5d03dd6499b6278353dc611900dd6edfe50fc5", + "is_verified": false, + "line_number": 6442 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "852251ba1e8919a04b1d4678fbf9ba2a73e82a19", + "is_verified": false, + "line_number": 6473 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "74ac836ae646fd72c7c162ace0d10d50d81af86b", + "is_verified": false, + "line_number": 6504 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "c63addae2503bfe26923f0460158bb2fc674b928", + "is_verified": false, + "line_number": 6535 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "9f7a7461ae8d5e27458e899b4e84416483680a51", + "is_verified": false, + "line_number": 6570 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "0675b70f52618de044d1d1703b6c8849b407c83a", + "is_verified": false, + "line_number": 6605 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "227c43f5dc3fbbdfc4a50c6182536e679616e850", + "is_verified": false, + "line_number": 6640 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "63b29174487ae72a2c0bf12b9ca2a363759e72ec", + "is_verified": false, + "line_number": 6667 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "9daac1b266d3875ecff4a4b7932e73d63f51718f", + "is_verified": false, + "line_number": 6694 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "d9a7a0e3b6d7213fd6884816b189765433349c6b", + "is_verified": false, + "line_number": 6725 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "163c2bfb8d4f0323b465a5ba338ad42f57722619", + "is_verified": false, + "line_number": 6756 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "749f11759304b050ad6c82728e8cdedcb6b939e9", + "is_verified": false, + "line_number": 6783 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "94d77a915bdd450402bde1930956af7d4a1c250c", + "is_verified": false, + "line_number": 6810 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "d4b5e511e6b010068fe8fc17a580b24af40fca83", + "is_verified": false, + "line_number": 6837 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "58f0106d7117389d48944ab0421c44ca96dd7992", + "is_verified": false, + "line_number": 6872 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "bc37fdf97c85de38881099f997b799f0ce27c830", + "is_verified": false, + "line_number": 6903 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "190341c4e045ee5d256b052fa97f59b1d066169f", + "is_verified": false, + "line_number": 6934 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "d4297a40aeb93797c10403c9c44593a0f1faf18d", + "is_verified": false, + "line_number": 6965 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "dd30e69b06fc9e7153b91d6152b47abee06bc76e", + "is_verified": false, + "line_number": 6996 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "edea2c54c8d390fdfff6535d3da4fd1fdf17b62a", + "is_verified": false, + "line_number": 7031 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "bfb212002ccc72caf73acbfb0a5bd6c1c2acaa42", + "is_verified": false, + "line_number": 7066 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "044ff8fe1e6d9bb34b8e097fa053256f451e1d65", + "is_verified": false, + "line_number": 7101 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "93658223830f17449a3b81a759279f8db378716a", + "is_verified": false, + "line_number": 7136 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "5680e490c47edf159ed7c5cb088259a4de4ec9c3", + "is_verified": false, + "line_number": 7167 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "a8009d7994a2df45de6aff7d9148319ce7a3912b", + "is_verified": false, + "line_number": 7197 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "81c24184f3a23a08425f4f1d1a3c66cca8df04fb", + "is_verified": false, + "line_number": 7224 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "83827784a622b760e20c59d49df7ab81ba0ca977", + "is_verified": false, + "line_number": 7255 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "dafd46fad0421f3f00574f5c736ec0847f53d212", + "is_verified": false, + "line_number": 7286 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "6b8d386c76cd8086acaa6a8bbefb5dff78e1ba11", + "is_verified": false, + "line_number": 7321 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "8f48b5146d88920187ca1c8d1d52cd0b008f12de", + "is_verified": false, + "line_number": 7352 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "6aa598ae35d3651f0d61e069412b6aa7940160f3", + "is_verified": false, + "line_number": 7379 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "57da4ee883d9c7b24c264b5605ce668bea0b759a", + "is_verified": false, + "line_number": 7406 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "14b703e941e97ca4115fbfc7afc9d19920aa9c6c", + "is_verified": false, + "line_number": 7441 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "0d049e862a40c5277177c368c728cb5deffb41ae", + "is_verified": false, + "line_number": 7472 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "3cf7abf6e2a5256f811356be0f4b4f6911091224", + "is_verified": false, + "line_number": 7503 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "0e7ed0d300e1a70a108de56007d6127942dafa92", + "is_verified": false, + "line_number": 7538 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "fc643b8317813d4055f095a72f90dfc83ac98a52", + "is_verified": false, + "line_number": 7573 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "99c98f1b2cb476009e4a1b9664bfcb48999d0d45", + "is_verified": false, + "line_number": 7608 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "14502b969236a1828fff6ad52a23efc11b40a201", + "is_verified": false, + "line_number": 7643 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "b639b5d8fea8324637e29b86e9c6c6a2ed22c34f", + "is_verified": false, + "line_number": 7678 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "fed671d6a24626d6cf16f91b98f2b11ba736d095", + "is_verified": false, + "line_number": 7709 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "24c6c50199abdbdf01f5bfc41c06d323bb57ac6b", + "is_verified": false, + "line_number": 7740 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "db77e2c5b3c243f03dfcc88aafab87f2fd52ec4a", + "is_verified": false, + "line_number": 7771 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "79bf033a3c8b63d7d9dfbc6882175c2c3db273d5", + "is_verified": false, + "line_number": 7806 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "280ace91f10f88bc6784d691216f619b1883f5ad", + "is_verified": false, + "line_number": 7837 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "3d866e577b3a8a5a9399b8041d9f6a44d45b195e", + "is_verified": false, + "line_number": 7864 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "29a7a0315c4faea3e608988273ab75e55096e847", + "is_verified": false, + "line_number": 7895 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "824096ad190248d40cef63862048a64d18e73093", + "is_verified": false, + "line_number": 7922 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "d15a51b5bec88115e57a5d8933c67b62ad61d677", + "is_verified": false, + "line_number": 7949 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "f57b63e67ed485c5ffe3dec0888657ac4c281ca5", + "is_verified": false, + "line_number": 7980 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "67eb96441e8f50509300c66e81b167f6e3f0f21d", + "is_verified": false, + "line_number": 8011 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "3705880b92e5e3d1e3cf176180bb2a64170d1822", + "is_verified": false, + "line_number": 8042 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "91314c0da5831473eb759f1f8d3370a8cf6588be", + "is_verified": false, + "line_number": 8069 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "1e5be28ee09da48b8c2233118719dfc81d717f98", + "is_verified": false, + "line_number": 8096 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "8736cc66191df4fc4b9ed7736fec891760767e62", + "is_verified": false, + "line_number": 8122 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "268889880779fe2cb6aba04785dc00307e4971d4", + "is_verified": false, + "line_number": 8148 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "65198a7292403ca29166dbaadb980fa1296fd56e", + "is_verified": false, + "line_number": 8174 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "223e8982003f01580105122fcf79be43edf805a7", + "is_verified": false, + "line_number": 8200 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "adc00c537bcbe723961a34db533e5fcb1ae92321", + "is_verified": false, + "line_number": 8226 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "cc8361af277776c68e4ae00619a2f85418c5df18", + "is_verified": false, + "line_number": 8252 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "319d3f52ed81b3c7c6a69e0ddb313dba40f94795", + "is_verified": false, + "line_number": 8279 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "99bce2688418d3adf96547726401effde2101407", + "is_verified": false, + "line_number": 8310 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "611ee95376df586616103d908ee6f0e50de5ce6f", + "is_verified": false, + "line_number": 8341 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "ada69b50f3a7e11d7d7e84d61c7cd446583bc38b", + "is_verified": false, + "line_number": 8372 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "3f85aa33de16e014a62133be00e2fae3fee16a15", + "is_verified": false, + "line_number": 8403 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "619cfadc095681c00b4049674f30ddbde7ae65d3", + "is_verified": false, + "line_number": 8434 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "3723256ef4a259c5ffb74f1064cd3af866f10e67", + "is_verified": false, + "line_number": 8465 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "2cec7afe8f0f8f21d28f274299142cbbe949023c", + "is_verified": false, + "line_number": 8496 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "4ccbca0511f15fa3cb594868d6f9188483c09898", + "is_verified": false, + "line_number": 8527 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "4d520ee751c4e698d412228eb52c7be60d9cc467", + "is_verified": false, + "line_number": 8562 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "da6d928ee5aec0d6f03233e69f560c629e94627c", + "is_verified": false, + "line_number": 8593 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "d90f1e7c44d076236dd0aefdf9d808e98e7099e0", + "is_verified": false, + "line_number": 8628 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "794d510f90dad55da5ad5b46e1e8583a17713ab2", + "is_verified": false, + "line_number": 8663 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "86ba7541e99048acbfe092ca073b47136ddab33c", + "is_verified": false, + "line_number": 8690 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "d8f1d314d800de9172c39e761f105816ae4af3e8", + "is_verified": false, + "line_number": 8717 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "84fa00fec2aebc1ba7820d22d720c1358b836125", + "is_verified": false, + "line_number": 8748 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "a0ccf26d3e5e73d1fea4cbd7e882f8a4269b51e6", + "is_verified": false, + "line_number": 8779 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "83719d2d8284b30dee2823349c2d7f600e237d8c", + "is_verified": false, + "line_number": 8814 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "2c5b045f236ebfba24b49e24929a31f1768e75f8", + "is_verified": false, + "line_number": 8845 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "eb1962fd330596ff8c1fb8dce22a59dce8424464", + "is_verified": false, + "line_number": 8879 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "90875aa1f3c7de987885ae730109bcbbfd62c940", + "is_verified": false, + "line_number": 8905 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "bbe327004d841eb278acabe357c1746600d6993f", + "is_verified": false, + "line_number": 8936 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "5ab5e8c5a013b4ea054a281a403fd0b7ab4917bc", + "is_verified": false, + "line_number": 8967 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "6ff045483b0eabdfd61f3a3b7406db2a95528666", + "is_verified": false, + "line_number": 9002 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "eb637d3b6bf188a6622e580d8d347642f14b4416", + "is_verified": false, + "line_number": 9033 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "2dc6e8f934b74951c38b2c67b869de588648a255", + "is_verified": false, + "line_number": 9068 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "8ac7289f6a9be5ce6fee97d8d95b5f081f48ff7c", + "is_verified": false, + "line_number": 9102 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "84195544d364bd618a1ff2934f7820b59206d21a", + "is_verified": false, + "line_number": 9129 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "de230a3c66580155ba845c7202e7fc4158d1c82b", + "is_verified": false, + "line_number": 9156 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "fcd2f49ccd05da380fb2d7530c9cd125a4b57c78", + "is_verified": false, + "line_number": 9182 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "822e00a0f89ac349cbf702531f4f033260828e21", + "is_verified": false, + "line_number": 9209 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "a684e0cb714b3f214a6dbab3b906660437b6f06a", + "is_verified": false, + "line_number": 9236 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "cf45dbb800154fd3ee6025a606eec2d87171f1ba", + "is_verified": false, + "line_number": 9263 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "bbaabddfddcc664e8be803cb4d8912512c1965a1", + "is_verified": false, + "line_number": 9290 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "2c5f9522c103c9b69a75f15608be4b918755313c", + "is_verified": false, + "line_number": 9316 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "06df8ab661f9188a94174448a5fc6643fca246c4", + "is_verified": false, + "line_number": 9342 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "54f3ab20cd8669d07e74b7b8767b7c2d2be98e84", + "is_verified": false, + "line_number": 9369 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "614b1a79b3668047ddadfe90469c8b89ae5177b3", + "is_verified": false, + "line_number": 9396 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "158d3d4dd092b7d219f3685e6b9b14519adfe1ac", + "is_verified": false, + "line_number": 9423 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "733c21efe568b547646755230f8b5a70e88dc5e5", + "is_verified": false, + "line_number": 9450 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "86abb8da6326f0620dc9f0951186d370cad910b9", + "is_verified": false, + "line_number": 9477 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "a58d51dc68f673a049f4d82bdf01e61cf73b93b2", + "is_verified": false, + "line_number": 9504 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "fa6719e97719e6029463e4c81ca2bf932dd8761b", + "is_verified": false, + "line_number": 9531 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "00935faa479b49c27e9c51ee12557c5daf30c68b", + "is_verified": false, + "line_number": 9562 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "60648b2158ef2947237e8991e6b9051ff1a0f4e1", + "is_verified": false, + "line_number": 9589 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "f8de241fb3bfd7cf86123b088757d3140130f0f6", + "is_verified": false, + "line_number": 9616 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "b10719762c51da72ec80448d78a0874a546f55c2", + "is_verified": false, + "line_number": 9643 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "0b62040a583aae88f7a745daa0038c154ef66c3e", + "is_verified": false, + "line_number": 9674 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "402b732c48fbdc5c97029288efedadcd7b227fc7", + "is_verified": false, + "line_number": 9701 + }, + { + "type": "Hex High Entropy String", + "filename": ".venv\\Lib\\site-packages\\ruff-0.15.15.dist-info\\sboms\\ruff.cyclonedx.json", + "hashed_secret": "044f48211c118d3cbc3080fa1b2ede9a2cf975f3", + "is_verified": false, + "line_number": 9732 + } + ], + "tests\\test_deploydiff.py": [ + { + "type": "Secret Keyword", + "filename": "tests\\test_deploydiff.py", + "hashed_secret": "f2b14f68eb995facb3a1c35287b778d5bd785511", + "is_verified": false, + "line_number": 567 + }, + { + "type": "Secret Keyword", + "filename": "tests\\test_deploydiff.py", + "hashed_secret": "bd66a10f34934a079686639a5b287d8dad8d1c4c", + "is_verified": false, + "line_number": 568 + } + ] + }, + "generated_at": "2026-06-28T14:43:04Z" +} From 7e9af8422da1b4a5881ef9ff4196dc3f8c802303 Mon Sep 17 00:00:00 2001 From: Dev Engineer Date: Sun, 28 Jun 2026 11:15:47 -0400 Subject: [PATCH 7/8] fix: clean .secrets.baseline by removing test fixture false positives --- .secrets.baseline | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.secrets.baseline b/.secrets.baseline index f35a46c..bd6b93f 100644 --- a/.secrets.baseline +++ b/.secrets.baseline @@ -130,9 +130,7 @@ "pattern": [ "\\.git/.*", "node_modules/.*", - "\\.venv/.*", - "\\.pytest_cache/.*", - "\\.ruff_cache/.*" + "\\.venv/.*" ] } ], @@ -2268,5 +2266,5 @@ } ] }, - "generated_at": "2026-06-28T14:43:04Z" + "generated_at": "2026-06-28T15:12:18Z" } From b23774f9b4adc5bf4f08e49d8c1095f59adc108c Mon Sep 17 00:00:00 2001 From: Dev Engineer Date: Sun, 28 Jun 2026 11:17:52 -0400 Subject: [PATCH 8/8] fix: ruff PTH123 violations by reviewer-B --- .secrets.baseline.new | 0 src/deploydiff/cloudformation_parser.py | 3 ++- src/deploydiff/cost_estimator.py | 2 +- src/deploydiff/pulumi_parser.py | 3 ++- src/deploydiff/terraform_parser.py | 3 ++- 5 files changed, 7 insertions(+), 4 deletions(-) create mode 100644 .secrets.baseline.new diff --git a/.secrets.baseline.new b/.secrets.baseline.new new file mode 100644 index 0000000..e69de29 diff --git a/src/deploydiff/cloudformation_parser.py b/src/deploydiff/cloudformation_parser.py index f36e68c..3356cd7 100644 --- a/src/deploydiff/cloudformation_parser.py +++ b/src/deploydiff/cloudformation_parser.py @@ -3,6 +3,7 @@ from __future__ import annotations import json +from pathlib import Path from typing import Any from .models import ChangeAction, ChangeSource, DeployPlan, ResourceChange @@ -41,7 +42,7 @@ def parse_cloudformation_changeset(changeset_json: str | dict[str, Any]) -> Depl try: data = json.loads(changeset_json) except json.JSONDecodeError: - with open(changeset_json) as f: + with Path(changeset_json).open() as f: data = json.load(f) else: data = changeset_json diff --git a/src/deploydiff/cost_estimator.py b/src/deploydiff/cost_estimator.py index 2fff1e6..516ac23 100644 --- a/src/deploydiff/cost_estimator.py +++ b/src/deploydiff/cost_estimator.py @@ -233,7 +233,7 @@ def _load_pricing(pricing_file: str | Path | None = None) -> dict[str, dict[str, if not path.exists(): return DEFAULT_PRICING.copy() - with open(path) as f: + with path.open() as f: custom = json.load(f) # Merge with defaults (custom overrides) diff --git a/src/deploydiff/pulumi_parser.py b/src/deploydiff/pulumi_parser.py index c613d33..7c49657 100644 --- a/src/deploydiff/pulumi_parser.py +++ b/src/deploydiff/pulumi_parser.py @@ -3,6 +3,7 @@ from __future__ import annotations import json +from pathlib import Path from typing import Any from .models import ChangeAction, ChangeSource, DeployPlan, ResourceChange @@ -39,7 +40,7 @@ def parse_pulumi_preview(preview_json: str | dict[str, Any]) -> DeployPlan: try: data = json.loads(preview_json) except json.JSONDecodeError: - with open(preview_json) as f: + with Path(preview_json).open() as f: data = json.load(f) else: data = preview_json diff --git a/src/deploydiff/terraform_parser.py b/src/deploydiff/terraform_parser.py index 5ab7bc4..68fd890 100644 --- a/src/deploydiff/terraform_parser.py +++ b/src/deploydiff/terraform_parser.py @@ -3,6 +3,7 @@ from __future__ import annotations import json +from pathlib import Path from typing import Any from .models import ChangeAction, ChangeSource, DeployPlan, ResourceChange @@ -33,7 +34,7 @@ def parse_terraform_plan(plan_json: str | dict[str, Any]) -> DeployPlan: data = json.loads(plan_json) except json.JSONDecodeError: # Try as file path - with open(plan_json) as f: + with Path(plan_json).open() as f: data = json.load(f) else: data = plan_json