AI Slop Code RIsk Monitor

data-privacy-stack/presidio

An open-source framework for detecting, redacting, masking, and anonymizing sensitive data (PII) across text, images, and structured data. Supports NLP, pattern matching, and customizable pipelines.

36.0 High pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for data-privacy-stack/presidio, a Python project with 11,271 GitHub stars. SynthScan examined 92,055 lines of code across 758 source files, recording 2594 pattern matches distributed across 21 syntactic categories. The legacy adjusted pattern signal is 36.0 (High pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

36.0
Adjusted Signal
36.0
Raw Pattern Score
100%
Time Factor
2026-10-09
Last Push
11.3K
Stars
Python
Language
92.1K
Lines of Code
758
Files
2.6K
Pattern Hits
2026-10-12
Scan Date
0.14
HC Hit Rate

Risk Review · v3

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

Cognitive Ownership Risk 63.4/100 · HIGH

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

Hallucinated Dependency & Supply Chain Risk 28.4/100 · MEDIUM

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

Agent Over-Engineering Ratio 74.3/100 · HIGH

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

PR Review Velocity Impact 84.5/100 · CRITICAL

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

What These Metrics Mean

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

Pattern-Signal History

This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.

Severity Breakdown

Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.

CRITICAL 0HIGH 104MEDIUM 156LOW 2334

Directory Score Breakdown

This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.

Pattern Findings

The scanner identified 2594 distinct pattern matches across 21 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.

Hyper-Verbose Identifiers1646 hits · 1642 pts
SeverityFileLineSnippetContext
LOWpresidio-analyzer/install_nlp_models.py65def _install_models_from_nlp_config(nlp_configuration: dict) -> None:CODE
LOWpresidio-analyzer/install_nlp_models.py107def _install_transformers_spacy_models(model_name: Dict[str, str]) -> None:CODE
LOWpresidio-analyzer/app.py168def _exclude_attributes_from_dto(recognizer_result_list):CODE
LOWpresidio-analyzer/tests/test_us_bank_recognizer.py28def test_when_bank_in_text_then_all_us_banks_found(CODE
LOW…er/tests/test_za_traffic_register_number_recognizer.py35def test_analyze_valid_and_invalid_za_traffic_register_numbers(CODE
LOWpresidio-analyzer/tests/test_spacy_recognizer.py68def test_when_using_spacy_then_all_spacy_result_found(CODE
LOWpresidio-analyzer/tests/test_spacy_recognizer.py88def test_when_person_in_text_then_person_full_name_complex_found(CODE
LOWpresidio-analyzer/tests/test_spacy_recognizer.py105def test_analyze_no_nlp_artifacts():CODE
LOWpresidio-analyzer/tests/test_spacy_recognizer.py111def test_entity_not_returned_if_not_in_supported_entities(mock_nlp_artifacts):CODE
LOW…dio-analyzer/tests/test_za_mobile_number_recognizer.py54def test_when_mobile_in_text_then_all_mobile_numbers_found(CODE
LOW…dio-analyzer/tests/test_za_mobile_number_recognizer.py97def test_classify_by_nsn_prefix(nsn, expected):CODE
LOWpresidio-analyzer/tests/test_uk_nino_recognizer.py45def test_when_nino_in_text_then_all_uk_ninos_found(CODE
LOWpresidio-analyzer/tests/test_it_passport_recognizer.py26def test_when_passport_in_text_then_all_it_passports_found(CODE
LOWpresidio-analyzer/tests/test_spacy_nlp_engine.py26def test_process_batch_strings(spacy_nlp_engine):CODE
LOWpresidio-analyzer/tests/test_spacy_nlp_engine.py38def test_nlp_not_loaded_value_error():CODE
LOWpresidio-analyzer/tests/test_spacy_nlp_engine.py46def test_validate_model_params_missing_fields():CODE
LOWpresidio-analyzer/tests/test_spacy_nlp_engine.py57def test_default_configuration_correct():CODE
LOWpresidio-analyzer/tests/test_spacy_nlp_engine.py74def test_get_supported_entities_doesnt_include_ignored():CODE
LOWpresidio-analyzer/tests/test_spacy_nlp_engine.py91def test_batch_processing_with_as_tuples_returns_context(spacy_nlp_engine, texts, as_tuples):CODE
LOWpresidio-analyzer/tests/test_spacy_nlp_engine.py109def test_when_gpu_available_then_spacy_gpu_configured():CODE
LOWpresidio-analyzer/tests/test_spacy_nlp_engine.py124def test_when_gpu_configuration_fails_then_warning_logged():CODE
LOWpresidio-analyzer/tests/test_spacy_nlp_engine.py141def test_when_cpu_device_then_gpu_not_configured():CODE
LOWpresidio-analyzer/tests/test_au_tfn_recognizer.py33def test_when_all_tfns_then_succeed(CODE
LOWpresidio-analyzer/tests/test_language_validation.py6def test_configuration_validator_language_codes_no_exception():CODE
LOWpresidio-analyzer/tests/test_language_validation.py11def test_configuration_validator_language_codes_invalid():CODE
LOW⚡presidio-analyzer/tests/test_device_detector.py18 def test_when_env_var_set_to_cpu_then_uses_cpu(self):CODE
LOW⚡presidio-analyzer/tests/test_device_detector.py24 def test_when_env_var_set_to_cuda_then_uses_cuda(self):CODE
LOW⚡presidio-analyzer/tests/test_device_detector.py30 def test_when_env_var_set_to_specific_gpu_then_uses_it(self):CODE
LOW⚡presidio-analyzer/tests/test_device_detector.py40 def test_when_env_var_has_whitespace_then_trimmed(self):CODE
LOW⚡presidio-analyzer/tests/test_device_detector.py50 def test_when_env_var_empty_then_auto_detects(self):CODE
LOW⚡presidio-analyzer/tests/test_device_detector.py56 def test_when_env_var_not_set_then_auto_detects(self):CODE
LOW⚡presidio-analyzer/tests/test_device_detector.py65 def test_when_env_var_set_skips_auto_detection(self):CODE
LOWpresidio-analyzer/tests/test_device_detector.py77 def test_when_torch_import_fails_then_cpu_device(self):CODE
LOWpresidio-analyzer/tests/test_device_detector.py84 def test_when_cuda_not_available_then_cpu_device(self):CODE
LOWpresidio-analyzer/tests/test_device_detector.py99 def test_when_cuda_initialization_fails_then_fallback_to_cpu(self):CODE
LOWpresidio-analyzer/tests/test_device_detector.py115 def test_when_cuda_get_device_name_fails_then_fallback_to_cpu(self):CODE
LOWpresidio-analyzer/tests/test_device_detector.py132 def test_when_cuda_available_then_cuda_device(self):CODE
LOWpresidio-analyzer/tests/test_device_detector.py150 def test_when_cuda_available_then_uses_cuda_not_cpu(self):CODE
LOWpresidio-analyzer/tests/test_device_detector.py172 def test_when_get_device_then_returns_string(self):CODE
LOWpresidio-analyzer/tests/test_device_detector.py179 def test_when_multiple_instances_then_same_values(self):CODE
LOWpresidio-analyzer/tests/test_device_detector.py192 def test_when_spacy_engine_loads_then_uses_device_detector(self):CODE
LOWpresidio-analyzer/tests/test_device_detector.py203 def test_when_stanza_engine_initializes_then_sets_device(self):CODE
LOWpresidio-analyzer/tests/test_device_detector.py215 def test_when_gliner_recognizer_initializes_then_uses_correct_device(self):CODE
LOWpresidio-analyzer/tests/test_device_detector.py225 def test_when_stanza_engine_device_matches_device_detector(self):CODE
LOWpresidio-analyzer/tests/test_device_detector.py240 def test_when_creating_new_instance_then_device_consistent(self):CODE
LOW…-analyzer/tests/test_za_telephone_number_recognizer.py51def test_when_telephone_in_text_then_all_telephone_numbers_found(CODE
LOW…o-analyzer/tests/test_de_handelsregister_recognizer.py50def test_when_all_de_handelsregister_numbers_then_succeed(CODE
LOWpresidio-analyzer/tests/test_za_passport_recognizer.py32def test_analyze_valid_and_invalid_za_passports(CODE
LOW…io-analyzer/tests/test_kr_driver_license_recognizer.py46def test_when_all_driver_licenses_then_succeed(CODE
LOWpresidio-analyzer/tests/test_in_aadhaar_recognizer.py37def test_when_aadhaar_in_text_then_all_aadhaars_found(CODE
LOWpresidio-analyzer/tests/test_ip_recognizer.py58def test_when_all_ips_then_succeed(CODE
LOWpresidio-analyzer/tests/test_ip_recognizer.py229def test_when_multiple_ips_then_all_found(CODE
LOWpresidio-analyzer/tests/test_ip_recognizer.py265def test_when_non_ip_pattern_then_no_match(CODE
LOWpresidio-analyzer/tests/test_ip_recognizer.py303def test_when_ip_at_boundary_then_correct_span(CODE
LOWpresidio-analyzer/tests/test_ip_recognizer.py343def test_when_invalid_ip_then_no_match(CODE
LOWpresidio-analyzer/tests/test_ip_recognizer.py377def test_when_special_ip_variants_then_succeed(CODE
LOWpresidio-analyzer/tests/test_ip_recognizer.py426def test_when_cidr_notation_then_largest_span_redacted(CODE
LOWpresidio-analyzer/tests/test_kr_frn_recognizer.py42def test_when_all_frns_then_succeed(CODE
LOWpresidio-analyzer/tests/test_it_vat_code_recognizer.py34def test_when_fiscalcode_in_text_then_all_it_fiscalcode_found(CODE
LOWpresidio-analyzer/tests/test_uk_passport_recognizer.py122def test_when_passport_in_text_then_all_uk_passports_found( # noqa: D103CODE
1586 more matches not shown…
Decorative Section Separators125 hits · 378 pts
SeverityFileLineSnippetContext
MEDIUM⚡presidio-analyzer/tests/test_recognizer_registry.py393# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡presidio-analyzer/tests/test_recognizer_registry.py395# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡presidio-analyzer/tests/test_recognizer_registry.py470# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡presidio-analyzer/tests/test_recognizer_registry.py472# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡presidio-analyzer/tests/test_recognizer_registry.py746# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡presidio-analyzer/tests/test_recognizer_registry.py748# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡presidio-analyzer/tests/test_recognizer_registry.py762# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡presidio-analyzer/tests/test_recognizer_registry.py764# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡presidio-analyzer/tests/test_recognizer_registry.py767# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡presidio-analyzer/tests/test_recognizer_registry.py769# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡presidio-analyzer/tests/test_recognizer_registry.py802# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡presidio-analyzer/tests/test_recognizer_registry.py804# ---------------------------------------------------------------------------COMMENT
MEDIUMpresidio-analyzer/tests/test_recognizer_registry.py620# ---------------------------------------------------------------------------COMMENT
MEDIUMpresidio-analyzer/tests/test_recognizer_registry.py631# ---------------------------------------------------------------------------COMMENT
MEDIUMpresidio-analyzer/tests/test_de_vat_id_recognizer.py48# ---------------------------------------------------------------------------COMMENT
MEDIUMpresidio-analyzer/tests/test_de_vat_id_recognizer.py50# ---------------------------------------------------------------------------COMMENT
MEDIUMpresidio-analyzer/tests/test_de_vat_id_recognizer.py91# ---------------------------------------------------------------------------COMMENT
MEDIUMpresidio-analyzer/tests/test_de_vat_id_recognizer.py93# ---------------------------------------------------------------------------COMMENT
MEDIUMpresidio-analyzer/tests/test_de_vat_id_recognizer.py127# ---------------------------------------------------------------------------COMMENT
MEDIUMpresidio-analyzer/tests/test_de_vat_id_recognizer.py129# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡presidio-analyzer/tests/test_de_vat_id_recognizer.py158# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡presidio-analyzer/tests/test_de_vat_id_recognizer.py160# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡presidio-analyzer/tests/test_de_vat_id_recognizer.py178# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡presidio-analyzer/tests/test_de_vat_id_recognizer.py180# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…esidio-analyzer/tests/test_recognizers_loader_utils.py322# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…esidio-analyzer/tests/test_recognizers_loader_utils.py324# ---------------------------------------------------------------------------COMMENT
MEDIUM…esidio-analyzer/tests/test_recognizers_loader_utils.py589# ---------------------------------------------------------------------------COMMENT
MEDIUM…esidio-analyzer/tests/test_recognizers_loader_utils.py602# ---------------------------------------------------------------------------COMMENT
MEDIUM…/country_specific/sweden/se_personnummer_recognizer.py29 # ---------------------------------------------------------------------COMMENT
MEDIUM…/country_specific/sweden/se_personnummer_recognizer.py31 # ---------------------------------------------------------------------COMMENT
MEDIUM…/country_specific/sweden/se_personnummer_recognizer.py53 # ---------------------------------------------------------------------COMMENT
MEDIUM…/country_specific/sweden/se_personnummer_recognizer.py55 # ---------------------------------------------------------------------COMMENT
MEDIUM…/country_specific/sweden/se_personnummer_recognizer.py74 # ---------------------------------------------------------------------COMMENT
MEDIUM…/country_specific/sweden/se_personnummer_recognizer.py76 # ---------------------------------------------------------------------COMMENT
MEDIUM…/country_specific/sweden/se_personnummer_recognizer.py117 # ---------------------------------------------------------------------COMMENT
MEDIUM…/country_specific/sweden/se_personnummer_recognizer.py119 # ---------------------------------------------------------------------COMMENT
MEDIUM…y_specific/sweden/se_organisationsnummer_recognizer.py61 # ---------------------------------------------------------COMMENT
MEDIUM…y_specific/sweden/se_organisationsnummer_recognizer.py63 # ---------------------------------------------------------COMMENT
MEDIUM…y_specific/sweden/se_organisationsnummer_recognizer.py93 # ---------------------------------------------------------COMMENT
MEDIUM…y_specific/sweden/se_organisationsnummer_recognizer.py95 # ---------------------------------------------------------COMMENT
MEDIUM…rs/country_specific/us/us_driver_license_recognizer.py6# ---------------COMMENT
MEDIUM⚡presidio-anonymizer/tests/test_anonymizer_engine.py301# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡presidio-anonymizer/tests/test_anonymizer_engine.py303# ---------------------------------------------------------------------------COMMENT
MEDIUM⚡…age-redactor/tests/test_dicom_image_redactor_engine.py99# ------------------------------------------------------COMMENT
MEDIUM⚡…age-redactor/tests/test_dicom_image_redactor_engine.py101# ------------------------------------------------------COMMENT
MEDIUM⚡…age-redactor/tests/test_dicom_image_redactor_engine.py580# ------------------------------------------------------COMMENT
MEDIUM⚡…age-redactor/tests/test_dicom_image_redactor_engine.py582# ------------------------------------------------------COMMENT
MEDIUM⚡…age-redactor/tests/test_dicom_image_redactor_engine.py843# ------------------------------------------------------COMMENT
MEDIUM⚡…age-redactor/tests/test_dicom_image_redactor_engine.py845# ------------------------------------------------------COMMENT
MEDIUM⚡…age-redactor/tests/test_dicom_image_redactor_engine.py920# ------------------------------------------------------COMMENT
MEDIUM⚡…age-redactor/tests/test_dicom_image_redactor_engine.py922# ------------------------------------------------------COMMENT
MEDIUM⚡…age-redactor/tests/test_dicom_image_redactor_engine.py952# ------------------------------------------------------COMMENT
MEDIUM⚡…age-redactor/tests/test_dicom_image_redactor_engine.py954# ------------------------------------------------------COMMENT
MEDIUM⚡…age-redactor/tests/test_dicom_image_redactor_engine.py979# ------------------------------------------------------COMMENT
MEDIUM⚡…age-redactor/tests/test_dicom_image_redactor_engine.py981# ------------------------------------------------------COMMENT
MEDIUM…age-redactor/tests/test_dicom_image_redactor_engine.py37# ------------------------------------------------------COMMENT
MEDIUM…age-redactor/tests/test_dicom_image_redactor_engine.py39# ------------------------------------------------------COMMENT
MEDIUM…age-redactor/tests/test_dicom_image_redactor_engine.py126# ------------------------------------------------------COMMENT
MEDIUM…age-redactor/tests/test_dicom_image_redactor_engine.py128# ------------------------------------------------------COMMENT
MEDIUM…age-redactor/tests/test_dicom_image_redactor_engine.py164# ------------------------------------------------------COMMENT
65 more matches not shown…
Unused Imports385 hits · 337 pts
SeverityFileLineSnippetContext
LOWpresidio-analyzer/tests/test_spacy_recognizer.py6CODE
LOWpresidio-analyzer/tests/test_ahds_recognizer.py15CODE
LOWpresidio-analyzer/tests/test_ahds_recognizer.py16CODE
LOWpresidio-analyzer/tests/test_ahds_recognizer.py16CODE
LOWpresidio-analyzer/tests/test_ahds_recognizer.py16CODE
LOWpresidio-analyzer/tests/test_ahds_recognizer.py21CODE
LOWpresidio-analyzer/tests/test_langextract_helper.py2CODE
LOWpresidio-analyzer/tests/test_langextract_helper.py3CODE
LOWpresidio-analyzer/tests/test_langextract_helper.py3CODE
LOWpresidio-analyzer/tests/__init__.py1CODE
LOWpresidio-analyzer/tests/__init__.py1CODE
LOWpresidio-analyzer/tests/__init__.py1CODE
LOWpresidio-analyzer/tests/test_base_chunker.py2CODE
LOWpresidio-analyzer/tests/test_entity_mapper.py2CODE
LOWpresidio-analyzer/tests/test_stanza_batch_processing.py4CODE
LOWpresidio-analyzer/tests/test_iban_recognizer.py1CODE
LOWpresidio-analyzer/tests/test_lm_recognizer.py3CODE
LOW…io-analyzer/tests/test_basic_langextract_recognizer.py3CODE
LOW…io-analyzer/tests/test_basic_langextract_recognizer.py4CODE
LOWpresidio-analyzer/tests/test_prompt_loader.py3CODE
LOW…zer/tests/test_ahds_recognizer_credential_selection.py4CODE
LOWpresidio-analyzer/presidio_analyzer/__init__.py6CODE
LOWpresidio-analyzer/presidio_analyzer/__init__.py7CODE
LOWpresidio-analyzer/presidio_analyzer/__init__.py8CODE
LOWpresidio-analyzer/presidio_analyzer/__init__.py9CODE
LOWpresidio-analyzer/presidio_analyzer/__init__.py10CODE
LOWpresidio-analyzer/presidio_analyzer/__init__.py11CODE
LOWpresidio-analyzer/presidio_analyzer/__init__.py12CODE
LOWpresidio-analyzer/presidio_analyzer/__init__.py13CODE
LOWpresidio-analyzer/presidio_analyzer/__init__.py14CODE
LOWpresidio-analyzer/presidio_analyzer/__init__.py15CODE
LOWpresidio-analyzer/presidio_analyzer/__init__.py16CODE
LOWpresidio-analyzer/presidio_analyzer/__init__.py17CODE
LOWpresidio-analyzer/presidio_analyzer/__init__.py18CODE
LOWpresidio-analyzer/presidio_analyzer/__init__.py19CODE
LOWpresidio-analyzer/presidio_analyzer/__init__.py20CODE
LOWpresidio-analyzer/presidio_analyzer/__init__.py21CODE
LOW…esidio-analyzer/presidio_analyzer/remote_recognizer.py7CODE
LOW…esidio-analyzer/presidio_analyzer/entity_recognizer.py10CODE
LOWpresidio-analyzer/presidio_analyzer/lm_recognizer.py17CODE
LOW…sidio-analyzer/presidio_analyzer/pattern_recognizer.py17CODE
LOW…yzer/presidio_analyzer/recognizer_registry/__init__.py3CODE
LOW…yzer/presidio_analyzer/recognizer_registry/__init__.py4CODE
LOW…alyzer/recognizer_registry/recognizers_loader_utils.py1CODE
LOW…er/recognizer_registry/recognizer_registry_provider.py1CODE
LOW…nalyzer/presidio_analyzer/input_validation/__init__.py3CODE
LOW…nalyzer/presidio_analyzer/input_validation/__init__.py4CODE
LOW…nalyzer/presidio_analyzer/input_validation/__init__.py5CODE
LOW…nalyzer/presidio_analyzer/input_validation/__init__.py5CODE
LOW…nalyzer/presidio_analyzer/input_validation/__init__.py5CODE
LOW…nalyzer/presidio_analyzer/input_validation/__init__.py5CODE
LOW…nalyzer/presidio_analyzer/input_validation/__init__.py5CODE
LOW…nalyzer/presidio_analyzer/input_validation/__init__.py5CODE
LOW…nalyzer/presidio_analyzer/input_validation/__init__.py5CODE
LOW…sidio-analyzer/presidio_analyzer/llm_utils/__init__.py3CODE
LOW…sidio-analyzer/presidio_analyzer/llm_utils/__init__.py3CODE
LOW…sidio-analyzer/presidio_analyzer/llm_utils/__init__.py3CODE
LOW…sidio-analyzer/presidio_analyzer/llm_utils/__init__.py3CODE
LOW…sidio-analyzer/presidio_analyzer/llm_utils/__init__.py3CODE
LOW…sidio-analyzer/presidio_analyzer/llm_utils/__init__.py10CODE
325 more matches not shown…
Cross-File Repetition63 hits · 315 pts
SeverityFileLineSnippetContext
HIGHpresidio-analyzer/app.py0_______ _______ _______ _______ _________ ______ _________ _______ ( ____ )( ____ )( ____ \( ____ \\__ __/( __ \ \__ __/STRING
HIGHpresidio-anonymizer/app.py0_______ _______ _______ _______ _________ ______ _________ _______ ( ____ )( ____ )( ____ \( ____ \\__ __/( __ \ \__ __/STRING
HIGHpresidio-image-redactor/app.py0_______ _______ _______ _______ _________ ______ _________ _______ ( ____ )( ____ )( ____ \( ____ \\__ __/( __ \ \__ __/STRING
HIGH…esidio-analyzer/presidio_analyzer/recognizer_result.py0serialize self to dictionary. :return: a dictionarySTRING
HIGH…esidio-analyzer/presidio_analyzer/entity_recognizer.py0serialize self to dictionary. :return: a dictionarySTRING
HIGH…dio-analyzer/presidio_analyzer/analysis_explanation.py0serialize self to dictionary. :return: a dictionarySTRING
HIGH…sidio-analyzer/presidio_analyzer/pattern_recognizer.py0validate the pattern logic e.g., by running checksum on a detected pattern. :param pattern_text: the text to validated. STRING
HIGH…nizers/country_specific/australia/au_tfn_recognizer.py0validate the pattern logic e.g., by running checksum on a detected pattern. :param pattern_text: the text to validated. STRING
HIGH…s/country_specific/australia/au_medicare_recognizer.py0validate the pattern logic e.g., by running checksum on a detected pattern. :param pattern_text: the text to validated. STRING
HIGH…nizers/country_specific/australia/au_abn_recognizer.py0validate the pattern logic e.g., by running checksum on a detected pattern. :param pattern_text: the text to validated. STRING
HIGH…nizers/country_specific/australia/au_acn_recognizer.py0validate the pattern logic e.g., by running checksum on a detected pattern. :param pattern_text: the text to validated. STRING
HIGH…d_recognizers/country_specific/uk/uk_nhs_recognizer.py0validate the pattern logic e.g., by running checksum on a detected pattern. :param pattern_text: the text to validated. STRING
HIGH…nizers/country_specific/singapore/sg_uen_recognizer.py0validate the pattern logic e.g., by running checksum on a detected pattern. :param pattern_text: the text to validated. STRING
HIGH…rs/country_specific/italy/it_fiscal_code_recognizer.py0validate the pattern logic e.g., by running checksum on a detected pattern. :param pattern_text: the text to validated. STRING
HIGH…ined_recognizers/country_specific/italy/it_vat_code.py0validate the pattern logic e.g., by running checksum on a detected pattern. :param pattern_text: the text to validated. STRING
HIGH…s/country_specific/turkey/tr_national_id_recognizer.py0validate the pattern logic e.g., by running checksum on a detected pattern. :param pattern_text: the text to validated. STRING
HIGH…ecognizers/country_specific/thai/th_tnin_recognizer.py0validate the pattern logic e.g., by running checksum on a detected pattern. :param pattern_text: the text to validated. STRING
HIGH…zers/country_specific/us/medical_license_recognizer.py0recognizes nhs number using regex and checksum. :param patterns: list of patterns to be used by this recognizer :param cSTRING
HIGH…ecognizers/country_specific/spain/es_nie_recognizer.py0recognizes nhs number using regex and checksum. :param patterns: list of patterns to be used by this recognizer :param cSTRING
HIGH…ecognizers/country_specific/spain/es_nif_recognizer.py0recognizes nhs number using regex and checksum. :param patterns: list of patterns to be used by this recognizer :param cSTRING
HIGH…d_recognizers/country_specific/uk/uk_nhs_recognizer.py0recognizes nhs number using regex and checksum. :param patterns: list of patterns to be used by this recognizer :param cSTRING
HIGH…edefined_recognizers/generic/credit_card_recognizer.py0recognizes nhs number using regex and checksum. :param patterns: list of patterns to be used by this recognizer :param cSTRING
HIGH…ognizers/country_specific/us/us_passport_recognizer.py0recognizes italian identity card number using case-insensitive regex. :param patterns: list of patterns to be used by thSTRING
HIGH…rs/country_specific/us/us_driver_license_recognizer.py0recognizes italian identity card number using case-insensitive regex. :param patterns: list of patterns to be used by thSTRING
HIGH…_recognizers/country_specific/us/us_bank_recognizer.py0recognizes italian identity card number using case-insensitive regex. :param patterns: list of patterns to be used by thSTRING
HIGH…_recognizers/country_specific/uk/uk_nino_recognizer.py0recognizes italian identity card number using case-insensitive regex. :param patterns: list of patterns to be used by thSTRING
HIGH…country_specific/italy/it_driver_license_recognizer.py0recognizes italian identity card number using case-insensitive regex. :param patterns: list of patterns to be used by thSTRING
HIGH…rs/country_specific/italy/it_fiscal_code_recognizer.py0recognizes italian identity card number using case-insensitive regex. :param patterns: list of patterns to be used by thSTRING
HIGH…izers/country_specific/italy/it_passport_recognizer.py0recognizes italian identity card number using case-insensitive regex. :param patterns: list of patterns to be used by thSTRING
HIGH…/country_specific/italy/it_identity_card_recognizer.py0recognizes italian identity card number using case-insensitive regex. :param patterns: list of patterns to be used by thSTRING
HIGH…nizers/country_specific/singapore/sg_fin_recognizer.py0recognize email addresses using regex. :param patterns: list of patterns to be used by this recognizer :param context: lSTRING
HIGH…nizers/country_specific/singapore/sg_uen_recognizer.py0recognize email addresses using regex. :param patterns: list of patterns to be used by this recognizer :param context: lSTRING
HIGH…ers/country_specific/philippines/ph_umid_recognizer.py0recognize email addresses using regex. :param patterns: list of patterns to be used by this recognizer :param context: lSTRING
HIGH…yzer/predefined_recognizers/generic/date_recognizer.py0recognize email addresses using regex. :param patterns: list of patterns to be used by this recognizer :param context: lSTRING
HIGH…alyzer/predefined_recognizers/generic/ip_recognizer.py0recognize email addresses using regex. :param patterns: list of patterns to be used by this recognizer :param context: lSTRING
HIGH…zer/predefined_recognizers/generic/email_recognizer.py0recognize email addresses using regex. :param patterns: list of patterns to be used by this recognizer :param context: lSTRING
HIGH…recognizers/nlp_engine_recognizers/spacy_recognizer.py0create explanation for why this result was detected. :param original_score: score given by this recognizer :param explanSTRING
HIGHdocs/samples/python/flair_recognizer.py0create explanation for why this result was detected. :param original_score: score given by this recognizer :param explanSTRING
HIGHdocs/samples/python/span_marker_recognizer.py0create explanation for why this result was detected. :param original_score: score given by this recognizer :param explanSTRING
HIGHdocs/samples/python/streamlit/flair_recognizer.py0create explanation for why this result was detected. :param original_score: score given by this recognizer :param explanSTRING
HIGH…io-analyzer/presidio_analyzer/nlp_engine/nlp_engine.py0return the supported languages for this nlp engine.STRING
HIGH…/presidio_analyzer/nlp_engine/slim_spacy_nlp_engine.py0return the supported languages for this nlp engine.STRING
HIGH…lyzer/presidio_analyzer/nlp_engine/spacy_nlp_engine.py0return the supported languages for this nlp engine.STRING
HIGHdocs/samples/python/flair_recognizer.py0load the model, not used. model is loaded during initialization.STRING
HIGHdocs/samples/python/span_marker_recognizer.py0load the model, not used. model is loaded during initialization.STRING
HIGHdocs/samples/python/streamlit/flair_recognizer.py0load the model, not used. model is loaded during initialization.STRING
HIGHdocs/samples/python/flair_recognizer.py0return supported entities by this model. :return: list of the supported entities.STRING
HIGHdocs/samples/python/span_marker_recognizer.py0return supported entities by this model. :return: list of the supported entities.STRING
HIGHdocs/samples/python/streamlit/flair_recognizer.py0return supported entities by this model. :return: list of the supported entities.STRING
HIGH…thon/transformers_recognizer/transformer_recognizer.py0return supported entities by this model. :return: list of the supported entities.STRING
HIGH…nonymaztion-and-deanonymaztion-best-practices/index.md0anonymize the given text using presidio analyzer and anonymizer enginesSTRING
HIGH…sample_for_presidio_pr/anonymization_toolkit_sample.md0anonymize the given text using presidio analyzer and anonymizer enginesSTRING
HIGH…ces/src/api/services/presidio/http_presidio_service.py0anonymize the given text using presidio analyzer and anonymizer enginesSTRING
HIGH…s/src/api/services/presidio/python_presidio_service.py0anonymize the given text using presidio analyzer and anonymizer enginesSTRING
HIGH…s/src/api/services/presidio/hybrid_presidio_service.py0anonymize the given text using presidio analyzer and anonymizer enginesSTRING
HIGH…nonymaztion-and-deanonymaztion-best-practices/index.md0deanonymize the given text using presidio analyzer and anonymizer enginesSTRING
HIGH…sample_for_presidio_pr/anonymization_toolkit_sample.md0deanonymize the given text using presidio analyzer and anonymizer enginesSTRING
HIGH…ces/src/api/services/presidio/http_presidio_service.py0deanonymize the given text using presidio analyzer and anonymizer enginesSTRING
HIGH…s/src/api/services/presidio/python_presidio_service.py0deanonymize the given text using presidio analyzer and anonymizer enginesSTRING
HIGH…s/src/api/services/presidio/hybrid_presidio_service.py0deanonymize the given text using presidio analyzer and anonymizer enginesSTRING
3 more matches not shown…
Cross-Language Confusion29 hits · 176 pts
SeverityFileLineSnippetContext
HIGH…io-analyzer/tests/test_basic_langextract_recognizer.py666 # When kwargs/language_model_params are null, explicit kwargs are emptyCOMMENT
HIGH⚡e2e-tests/tests/test_api_analyzer.py19 {"entity_type": "PERSON", "start": 0, "end": 10, "score": 0.85, "analysis_explanation":null},CODE
HIGH⚡e2e-tests/tests/test_api_analyzer.py20 {"entity_type": "US_DRIVER_LICENSE", "start": 30, "end": 38, "score": 0.6499999999999999, "analysis_explanation"CODE
HIGH⚡e2e-tests/tests/test_api_analyzer.py190 {"entity_type": "PERSON", "start": 0, "end": 10, "score": 0.85, "analysis_explanation": null},CODE
HIGH⚡e2e-tests/tests/test_api_analyzer.py191 {"entity_type": "US_DRIVER_LICENSE", "start": 30, "end": 38, "score": 0.6499999999999999, "analysis_explanation"CODE
HIGH⚡e2e-tests/tests/test_api_analyzer.py386 {"entity_type": "PERSON", "start": 0, "end": 10, "score": 0.85, "analysis_explanation":null},CODE
HIGH⚡e2e-tests/tests/test_api_analyzer.py387 {"entity_type": "US_DRIVER_LICENSE", "start": 30, "end": 38, "score": 0.6499999999999999, "analysis_explanationCODE
HIGH⚡e2e-tests/tests/test_api_analyzer.py388 {"entity_type": "ZIP", "start": 50, "end": 55, "score": 0.01, "analysis_explanation":null}CODE
HIGH⚡e2e-tests/tests/test_api_analyzer.py457 {"entity_type": "PERSON", "start": 0, "end": 10, "score": 0.85, "analysis_explanation":null},CODE
HIGH⚡e2e-tests/tests/test_api_analyzer.py458 {"entity_type": "US_DRIVER_LICENSE", "start": 30, "end": 38, "score": 0.6499999999999999, "analysis_explanationCODE
HIGH⚡e2e-tests/tests/test_api_analyzer.py459 {"entity_type": "ZIP", "start": 50, "end": 55, "score": 0.4, "analysis_explanation":null}CODE
HIGH⚡e2e-tests/tests/test_api_analyzer.py495 {"entity_type": "PERSON", "start": 4, "end": 14, "score": 0.85, "analysis_explanation":null},CODE
HIGH⚡e2e-tests/tests/test_api_analyzer.py496 {"entity_type": "US_DRIVER_LICENSE", "start": 36, "end": 44, "score": 0.6499999999999999, "analysis_explanationCODE
HIGH⚡e2e-tests/tests/test_api_analyzer.py497 {"entity_type": "MR_TITLE", "start": 0, "end": 3, "score": 1.0, "analysis_explanation":null}CODE
HIGH⚡e2e-tests/tests/test_api_analyzer.py614 {"entity_type": "PERSON", "start": 0, "end": 10, "score": 0.85, "analysis_explanation":null},CODE
HIGH⚡e2e-tests/tests/test_api_analyzer.py615 {"entity_type": "US_DRIVER_LICENSE", "start": 30, "end": 38, "score": 0.6499999999999999, "analysis_explanatCODE
HIGH⚡e2e-tests/tests/test_api_analyzer.py618 {"entity_type": "PERSON", "start": 0, "end": 10, "score": 0.85, "analysis_explanation":null},CODE
HIGH⚡e2e-tests/tests/test_api_analyzer.py619 {"entity_type": "US_DRIVER_LICENSE", "start": 30, "end": 38, "score": 0.6499999999999999, "analysis_explanatCODE
HIGHe2e-tests/tests/test_api_analyzer.py129 {"entity_type": "IBAN_CODE", "start": 38, "end": 65, "score": 1.0, "analysis_explanation": null}CODE
HIGHe2e-tests/tests/test_api_analyzer.py213 "recognizer": "SpacyRecognizer", "pattern_name": null, "pattern": null, "original_score": 0.85, "score": 0.8CODE
HIGHe2e-tests/tests/test_api_analyzer.py222 "original_score": 0.3, "score": 0.6499999999999999, "textual_explanation": null,CODE
HIGHe2e-tests/tests/test_api_analyzer.py248 "pattern": null,CODE
HIGHe2e-tests/tests/test_api_analyzer.py249 "pattern_name": null,CODE
HIGHe2e-tests/tests/test_api_analyzer.py271 "textual_explanation": null,CODE
HIGHe2e-tests/tests/test_api_analyzer.py563 {"entity_type": "EMAIL_ADDRESS", "start": 7, "end": 23, "score": 0.85, "analysis_explanation":null}CODE
HIGHe2e-tests/tests/test_api_analyzer.py589 {"entity_type": "EMAIL_ADDRESS", "start": 7, "end": 23, "score": 0.85, "analysis_explanation":null}CODE
HIGH⚡e2e-tests/tests/test_api_anonymizer.py149 expected_response = """{"text": "text_for_encryption", "items": [{"start": 0, "end": 19, "operator":"decrypt", "textSTRING
HIGHe2e-tests/tests/test_api_e2e_integration_flows.py78 {"entity_type": "PERSON", "start": 0, "end": 10, "score": 0.85, "analysis_explanation": null}CODE
HIGHe2e-tests/tests/test_api_e2e_integration_flows.py124 {"entity_type": "PERSON", "start": 0, "end": 10, "score": 0.85, "analysis_explanation": null}CODE
Fake / Example Data74 hits · 82 pts
SeverityFileLineSnippetContext
LOW…yzer/tests/test_azure_openai_langextract_recognizer.py477 mock_extraction.extraction_text = "John Doe"CODE
LOWpresidio-analyzer/tests/test_gliner_recognizer.py155 if "Jane Doe" in text:CODE
LOWpresidio-analyzer/tests/test_gliner_recognizer.py156 start = text.find("Jane Doe")CODE
LOWpresidio-analyzer/tests/test_gliner_recognizer.py181 assert text[results[1].start:results[1].end] == "Jane Doe"CODE
LOW⚡presidio-analyzer/tests/test_examples_loader.py137 "text": "John Doe",CODE
LOW⚡presidio-analyzer/tests/test_examples_loader.py139 {"extraction_class": "PERSON", "extraction_text": "John Doe", "attributes": {}}CODE
LOWpresidio-analyzer/tests/test_examples_loader.py22 extraction_text: "John Doe"CODE
LOWpresidio-analyzer/tests/test_examples_loader.py114 "extraction_text": "John Doe",CODE
LOWpresidio-analyzer/tests/test_examples_loader.py153 assert result[0].text == "John Doe"CODE
LOWpresidio-analyzer/tests/test_examples_loader.py231 extraction_text: "John Doe"CODE
LOW…io-analyzer/tests/test_basic_langextract_recognizer.py246 mock_extraction.extraction_text = "John Doe"CODE
LOW…io-analyzer/tests/test_basic_langextract_recognizer.py272 person_extraction.extraction_text = "John Doe"CODE
LOW…io-analyzer/tests/test_basic_langextract_recognizer.py286 phone_extraction.extraction_text = "555-1234"CODE
LOW…io-analyzer/tests/test_basic_langextract_recognizer.py547 mock_extraction.extraction_text = "John Doe"CODE
LOW…conf/langextract_prompts/default_pii_phi_examples.yaml9 extraction_text: "John Doe"CODE
LOW…conf/langextract_prompts/default_pii_phi_examples.yaml62 extraction_text: "Acme Corp"CODE
LOW⚡presidio-anonymizer/tests/test_ahds_surrogate.py295 MockRecognizerResult('PERSON', 0, 8, 'John Doe', 0.9),CODE
LOW⚡presidio-anonymizer/tests/test_ahds_surrogate.py310 {'entity_type': 'PERSON', 'start': 0, 'end': 8, 'text': 'John Doe', 'score': 0.9}CODE
LOWpresidio-anonymizer/tests/test_ahds_surrogate.py202 'text': 'John Doe',CODE
LOWpresidio-anonymizer/tests/test_ahds_surrogate.py267 'text': 'John Doe',CODE
LOW⚡…-anonymizer/tests/integration/test_anonymize_engine.py196 # Verify that "Jane Doe" was hashed to the same valueCOMMENT
LOW⚡…-anonymizer/tests/integration/test_anonymize_engine.py207 RecognizerResult(start=11, end=19, score=0.8, entity_type="NAME"), # First "Jane Doe"CODE
LOW⚡…-anonymizer/tests/integration/test_anonymize_engine.py208 RecognizerResult(start=24, end=32, score=0.8, entity_type="NAME"), # Second "Jane Doe"CODE
LOW⚡…-anonymizer/tests/integration/test_anonymize_engine.py229 RecognizerResult(start=11, end=19, score=0.8, entity_type="NAME"), # First "Jane Doe"CODE
LOW⚡…-anonymizer/tests/integration/test_anonymize_engine.py230 RecognizerResult(start=24, end=32, score=0.8, entity_type="NAME"), # Second "Jane Doe"CODE
LOW…-anonymizer/tests/integration/test_anonymize_engine.py297 "Jane Doe",CODE
LOWpresidio-structured/README.md31sample_df = pd.DataFrame({'name': ['John Doe', 'Jane Smith'], 'email': ['john.doe@example.com', 'jane.smith@example.com'CODE
LOWpresidio-structured/tests/conftest.py13 "name": ["John Doe", "Jane Doe", "John Smith"],CODE
LOWpresidio-structured/tests/conftest.py13 "name": ["John Doe", "Jane Doe", "John Smith"],CODE
LOWpresidio-structured/tests/conftest.py27 "name": ["John Doe", "Jane Smith", "Alice Johnson"],CODE
LOWpresidio-structured/tests/conftest.py41 "name": "John Doe",CODE
LOWpresidio-structured/tests/conftest.py44 "street": "123 Main St",CODE
LOWpresidio-structured/tests/conftest.py57 {"id": 1, "name": "John Doe"},CODE
LOWpresidio-structured/tests/conftest.py58 {"id": 2, "name": "Jane Doe"},CODE
LOW⚡presidio-structured/tests/test_data_reader.py30 path.write_text(json.dumps({"name": "John Doe", "id": 1}), encoding="ascii")CODE
LOW⚡presidio-structured/tests/test_data_reader.py82 assert data == {"name": "John Doe", "id": 1}CODE
LOW⚡…esidio-structured/tests/data/test_data_transformers.py36 "Full Name": ["John Doe", "Jane Doe"],CODE
LOW⚡…esidio-structured/tests/data/test_data_transformers.py36 "Full Name": ["John Doe", "Jane Doe"],CODE
LOWdocs/tutorial/11_custom_anonymization.md17def fake_name(x):CODE
LOWdocs/tutorial/11_custom_anonymization.md22operators = {"PERSON": OperatorConfig("custom", {"lambda": fake_name})}CODE
LOWdocs/tutorial/11_custom_anonymization.md37def fake_name(x):CODE
LOWdocs/tutorial/11_custom_anonymization.md42operators = {"PERSON": OperatorConfig("custom", {"lambda": fake_name})}CODE
LOWdocs/samples/python/streamlit/presidio_streamlit.py329 fake_data = create_fake_data(CODE
LOWdocs/samples/python/streamlit/presidio_streamlit.py334 st.text_area(label="Synthetic data", value=fake_data, height=400)CODE
LOW⚡docs/samples/python/streamlit/presidio_helpers.py230 fake_data = call_completion_model(CODE
LOW⚡docs/samples/python/streamlit/presidio_helpers.py233 return fake_dataCODE
LOWdocs/samples/python/sample_data/test_structured.json3 "name": "John Doe",CODE
LOWdocs/samples/python/sample_data/test_structured.json6 "street": "123 Main St",CODE
LOW…amples/python/sample_data/test_structured_complex.json5 "name": "John Doe",CODE
LOW…amples/python/sample_data/test_structured_complex.json8 "street": "123 Main St",CODE
LOWdocs/structured/index.md39sample_df = pd.DataFrame({'name': ['John Doe', 'Jane Smith'], 'email': ['john.doe@example.com', 'jane.smith@example.com'CODE
LOWdocs/structured/index.md70 "name": "John Doe",CODE
LOWdocs/structured/index.md92 {"name": "John Doe", "email": "john.doe@example.com"},CODE
LOWdocs/anonymizer/index.md297# Both "John Doe" instances will have the same hashCOMMENT
LOWdocs/getting_started/getting_started_structured.md22sample_df = pd.DataFrame({'name': ['John Doe', 'Jane Smith'], 'email': ['john.doe@example.com', 'jane.smith@example.com'CODE
LOWe2e-tests/tests/test_api_anonymizer.py227 text_for_encryption = "Lorem Ipsum is a Software Engineer"STRING
LOWe2e-tests/tests/test_api_anonymizer.py302 {"operator": "keep", "entity_type": "NAME", "start": 24, "end": 32, "text":"Jane Doe", "score": 0.8}CODE
LOW⚡…image-redactor/tests/test_document_intelligence_ocr.py100 DocumentIntelligenceOCR(key="fake_key", endpoint="fake_endpoint", model_id="fake_model_id")CODE
LOW⚡…image-redactor/tests/test_document_intelligence_ocr.py105 DocumentIntelligenceOCR(key="fake_key", endpoint="fake_endpoint", model_id="prebuilt-document")CODE
LOW⚡…image-redactor/tests/test_document_intelligence_ocr.py111 DocumentIntelligenceOCR(key="fake_key", endpoint="fake_endpoint")CODE
14 more matches not shown…
Self-Referential Comments21 hits · 70 pts
SeverityFileLineSnippetContext
MEDIUMpresidio-analyzer/tests/test_recognizer_registry.py182 # Create an empty recognizer registryCOMMENT
MEDIUMpresidio-analyzer/tests/test_recognizer_registry.py199 # Create an empty recognizer registryCOMMENT
MEDIUM⚡…esidio-analyzer/tests/test_recognizers_loader_utils.py303 # Create a dummy file with invalid YAMLCOMMENT
MEDIUM…esidio-analyzer/tests/test_analyzer_engine_provider.py506 # Create a temporary file with invalid YAMLCOMMENT
MEDIUM…io-analyzer/tests/test_lemma_context_aware_enhancer.py126 # Create a recognizer with 'lic' as context word (similar to US_DRIVER_LICENSE)COMMENT
MEDIUM…io-analyzer/tests/test_lemma_context_aware_enhancer.py170 # Create a recognizer with 'lic' as context wordCOMMENT
MEDIUM…io-analyzer/tests/test_lemma_context_aware_enhancer.py254 # Create a recognizer with 'passport' as context wordCOMMENT
MEDIUM…ers/third_party/azure_openai_langextract_recognizer.py112 # Initialize parent class (loads config, sets self.model_id from config)COMMENT
MEDIUM…yzer/presidio_analyzer/nlp_engine/stanza_nlp_engine.py187 # Create an empty config skeletonCOMMENT
MEDIUM…-anonymizer/tests/integration/test_anonymize_engine.py326 # Create a simple analyzer result for the entire textCOMMENT
MEDIUM…cs/samples/deployments/k8s/deployment/run-with-kind.sh16# Create a KIND cluster into which we will deploy PresidioCOMMENT
MEDIUM…cs/samples/deployments/k8s/deployment/run-with-kind.sh19# Create a namespaceCOMMENT
MEDIUM⚡…dio-image-redactor/tests/test_image_analyzer_engine.py380 # Create a dummy recognizer. It's necessary at least one recognizer to use the AnalyzerEngineCOMMENT
MEDIUM⚡…dio-image-redactor/tests/test_image_analyzer_engine.py385 # Create an AnalyzerEngine to suport another languageCOMMENT
MEDIUM⚡…ctor/tests/integration/test_image_processing_engine.py19 # Create an instance of BilateralFilterCOMMENT
MEDIUM⚡…ctor/tests/integration/test_image_processing_engine.py22 # Create a dummy PIL image for testingCOMMENT
MEDIUM…ctor/tests/integration/test_image_processing_engine.py50 # Create an instance of SegmentedAdaptiveThresholdCOMMENT
MEDIUM…ctor/tests/integration/test_image_processing_engine.py79 # Create an instance of SegmentedAdaptiveThresholdCOMMENT
MEDIUM…ctor/tests/integration/test_image_processing_engine.py113 # Create a mock PIL imageCOMMENT
MEDIUM…ctor/tests/integration/test_image_processing_engine.py128 # Create a mock numpy arrayCOMMENT
MEDIUM…presidio_image_redactor/dicom_image_redactor_engine.py536 # Create the output dir manually if working with a single fileCOMMENT
Excessive Try-Catch Wrapping60 hits · 61 pts
SeverityFileLineSnippetContext
LOWpresidio-analyzer/app.py127 except Exception as e:CODE
LOWpresidio-analyzer/app.py142 except Exception as e:CODE
LOWpresidio-analyzer/app.py156 except Exception as e:CODE
LOW…yzer/tests/test_azure_openai_langextract_recognizer.py183 except Exception:CODE
LOW…yzer/tests/test_azure_openai_langextract_recognizer.py211 except Exception:CODE
LOW…yzer/tests/test_azure_openai_langextract_recognizer.py239 except Exception:CODE
LOW…esidio-analyzer/tests/test_recognizers_loader_utils.py709 except Exception: # noqa: BLE001 - reported by the resolve testCODE
LOW…analyzer/presidio_analyzer/analyzer_engine_provider.py69 except Exception:CODE
LOW…alyzer/recognizer_registry/recognizers_loader_utils.py629 except Exception: # pragma: no cover — defensive: third-party subclassesCODE
LOW…alyzer/recognizer_registry/recognizers_loader_utils.py784 except Exception as e:CODE
LOW…io_analyzer/recognizer_registry/recognizer_registry.py286 except Exception: # pragma: no cover — defensiveCODE
MEDIUM…io_analyzer/recognizer_registry/recognizer_registry.py383 print(f"Error reading file {yml_path}")STRING
LOW…edefined_recognizers/ner/huggingface_ner_recognizer.py297 except Exception:CODE
LOW…edefined_recognizers/ner/huggingface_ner_recognizer.py337 except Exception as e:CODE
LOW…ined_recognizers/third_party/langextract_recognizer.py173 except Exception:CODE
LOW…/predefined_recognizers/third_party/ahds_recognizer.py87 except Exception:CODE
LOW…fined_recognizers/third_party/azure_openai_provider.py198 except Exception as e: # pragma: no coverCODE
LOW…alyzer/presidio_analyzer/nlp_engine/device_detector.py74 except Exception as e:CODE
LOW…lyzer/presidio_analyzer/nlp_engine/spacy_nlp_engine.py60 except Exception as e:CODE
LOW…ymizer/presidio_anonymizer/operators/ahds_surrogate.py283 except Exception as e:CODE
LOW⚡presidio-anonymizer/tests/test_ahds_surrogate.py137 except Exception as e:CODE
LOWpresidio-anonymizer/tests/test_ahds_surrogate.py80 except Exception as e:CODE
LOWpresidio-anonymizer/tests/test_ahds_surrogate.py183 except Exception as e:CODE
LOWpresidio-anonymizer/tests/test_ahds_surrogate.py233 except Exception as e:CODE
LOWpresidio-anonymizer/tests/test_ahds_surrogate.py388 except Exception as e:CODE
LOWpresidio-anonymizer/tests/test_ahds_surrogate.py438 except Exception as e:CODE
LOW…-anonymizer/tests/integration/test_anonymize_engine.py439 except Exception as e:CODE
LOW…-anonymizer/tests/integration/test_anonymize_engine.py458 except Exception as e:CODE
LOWpresidio-cli/presidio_cli/config.py91 except Exception as e:CODE
LOWpresidio-cli/presidio_cli/config.py128 except Exception as e:CODE
LOWpresidio-cli/presidio_cli/config.py152 except Exception:CODE
LOWpresidio-cli/presidio_cli/cli.py286 except Exception:CODE
LOWdocs/samples/python/streamlit/presidio_streamlit.py371except Exception as e:CODE
LOWdocs/samples/python/ahds/example_ahds_surrogate.py59 except Exception as e:CODE
MEDIUMdocs/samples/python/ahds/example_ahds_surrogate.py60 print(f"Error: {e}")CODE
LOW…deployments/redacting-telemetry/app/presidio_client.py30 except Exception as e:CODE
MEDIUM…deployments/redacting-telemetry/app/presidio_client.py31 print(f"Error calling Presidio Analyzer: {e}")CODE
LOW…deployments/redacting-telemetry/app/presidio_client.py54 except Exception as e:CODE
MEDIUM…deployments/redacting-telemetry/app/presidio_client.py55 print(f"Error calling Presidio Anonymizer: {e}")CODE
LOW…cs/samples/deployments/redacting-telemetry/app/main.py87 except Exception as e:CODE
LOW…cs/samples/deployments/redacting-telemetry/app/main.py203 except Exception as e:CODE
LOW…nonymaztion-and-deanonymaztion-best-practices/index.md116 except Exception as e:CODE
LOW…nonymaztion-and-deanonymaztion-best-practices/index.md145 except Exception as e:CODE
LOW…sample_for_presidio_pr/anonymization_toolkit_sample.md96 except Exception as e:CODE
LOW…sample_for_presidio_pr/anonymization_toolkit_sample.md125 except Exception as e:CODE
LOW…tion-and-deanonymaztion-best-practices/src/api/main.py62 except Exception as e:CODE
LOW…tion-and-deanonymaztion-best-practices/src/api/main.py83 except Exception as e:CODE
LOW…ion-best-practices/src/api/services/toolkit_service.py37 except Exception as e:CODE
LOW…ion-best-practices/src/api/services/toolkit_service.py56 except Exception as e:CODE
LOW…ces/src/api/services/presidio/http_presidio_service.py57 except Exception as e:CODE
LOW…ces/src/api/services/presidio/http_presidio_service.py77 except Exception as e:CODE
LOW…s/src/api/services/presidio/python_presidio_service.py66 except Exception as e:CODE
LOW…s/src/api/services/presidio/python_presidio_service.py91 except Exception as e:CODE
LOW…s/src/api/services/presidio/hybrid_presidio_service.py62 except Exception as e:CODE
LOW…s/src/api/services/presidio/hybrid_presidio_service.py87 except Exception as e:CODE
LOWe2e-tests/tests/test_package_e2e_integration_flows.py141 except Exception:CODE
LOW⚡…image-redactor/tests/test_document_intelligence_ocr.py222 except Exception:CODE
LOW⚡…e-redactor/tests/test_dicom_image_pii_verify_engine.py51 except Exception:CODE
LOW…sidio_image_redactor/entities/api_request_convertor.py25 except Exception as e:CODE
LOW…sidio_image_redactor/entities/api_request_convertor.py48 except Exception as e:CODE
Modern Structural Boilerplate57 hits · 58 pts
SeverityFileLineSnippetContext
LOWpresidio-analyzer/presidio_analyzer/__init__.py37__all__ = [CODE
LOW⚡…dio-analyzer/presidio_analyzer/analysis_explanation.py43 def set_improved_score(self, score: float) -> None:CODE
LOW⚡…dio-analyzer/presidio_analyzer/analysis_explanation.py48 def set_supportive_context_word(self, word: str) -> None:CODE
LOW…yzer/presidio_analyzer/recognizer_registry/__init__.py6__all__ = ["RecognizerRegistry", "RecognizerRegistryProvider"]CODE
LOW…nalyzer/presidio_analyzer/input_validation/__init__.py15__all__ = [CODE
LOW…-analyzer/presidio_analyzer/llm_utils/config_loader.py10__all__ = [CODE
LOW…nalyzer/presidio_analyzer/llm_utils/examples_loader.py10__all__ = [CODE
LOW…-analyzer/presidio_analyzer/llm_utils/entity_mapper.py11__all__ = [CODE
LOW…sidio-analyzer/presidio_analyzer/llm_utils/__init__.py33__all__ = [CODE
LOW…yzer/presidio_analyzer/llm_utils/langextract_helper.py22__all__ = [CODE
LOW…-analyzer/presidio_analyzer/llm_utils/prompt_loader.py8__all__ = [CODE
LOW…r/presidio_analyzer/predefined_recognizers/__init__.py224__all__ = [CODE
LOW…esidio_analyzer/predefined_recognizers/ner/__init__.py7__all__ = [CODE
LOW…er/predefined_recognizers/country_specific/__init__.py5__all__ = [CODE
LOW…efined_recognizers/country_specific/poland/__init__.py5__all__ = [CODE
LOW…efined_recognizers/country_specific/sweden/__init__.py6__all__ = [CODE
LOW…predefined_recognizers/country_specific/us/__init__.py23__all__ = [CODE
LOW…defined_recognizers/country_specific/korea/__init__.py9__all__ = [CODE
LOW…efined_recognizers/country_specific/turkey/__init__.py6__all__ = [CODE
LOW…edefined_recognizers/country_specific/thai/__init__.py5__all__ = [CODE
LOW…defined_recognizers/country_specific/spain/__init__.py7__all__ = [CODE
LOW…ned_recognizers/country_specific/australia/__init__.py8__all__ = [CODE
LOW…fined_recognizers/country_specific/nigeria/__init__.py6__all__ = [CODE
LOW…predefined_recognizers/country_specific/uk/__init__.py10__all__ = [CODE
LOW…ned_recognizers/country_specific/singapore/__init__.py6__all__ = [CODE
LOW…_recognizers/country_specific/south_africa/__init__.py16__all__ = [CODE
LOW…defined_recognizers/country_specific/india/__init__.py10__all__ = [CODE
LOW…defined_recognizers/country_specific/italy/__init__.py9__all__ = [CODE
LOW…d_recognizers/country_specific/philippines/__init__.py7__all__ = [CODE
LOW…fined_recognizers/country_specific/finland/__init__.py5__all__ = [CODE
LOW…efined_recognizers/country_specific/canada/__init__.py6__all__ = [CODE
LOW…defined_recognizers/nlp_engine_recognizers/__init__.py7__all__ = [CODE
LOW…nalyzer/predefined_recognizers/third_party/__init__.py8__all__ = [CODE
LOW…io_analyzer/predefined_recognizers/generic/__init__.py13__all__ = [CODE
LOW…/presidio_analyzer/context_aware_enhancers/__init__.py6__all__ = ["ContextAwareEnhancer", "LemmaContextAwareEnhancer"]CODE
LOW…esidio-analyzer/presidio_analyzer/chunkers/__init__.py12__all__ = [CODE
LOW…idio-analyzer/presidio_analyzer/nlp_engine/__init__.py15__all__ = [CODE
LOWpresidio-anonymizer/presidio_anonymizer/__init__.py25__all__ = [CODE
LOW…esidio-anonymizer/presidio_anonymizer/core/__init__.py6__all__ = ["EngineBase", "TextReplaceBuilder"]CODE
LOW…o-anonymizer/presidio_anonymizer/operators/__init__.py25__all__ = [CODE
LOW…io-anonymizer/presidio_anonymizer/entities/__init__.py13__all__ = [CODE
LOW…ymizer/presidio_anonymizer/entities/engine/__init__.py7__all__ = ["PIIEntity", "OperatorConfig", "RecognizerResult"]CODE
LOW…presidio_anonymizer/entities/engine/result/__init__.py6__all__ = [CODE
LOWpresidio-structured/presidio_structured/__init__.py17__all__ = [CODE
LOW…idio-structured/presidio_structured/config/__init__.py5__all__ = [CODE
LOW…esidio-structured/presidio_structured/data/__init__.py6__all__ = [CODE
LOW…structured/presidio_structured/data/data_processors.py159 def _set_nested_value(data: Union[Dict, List], path: List[str], value: Any) -> None:CODE
LOW…cs/samples/deployments/redacting-telemetry/app/main.py50logger = logging.getLogger(__name__)CODE
LOW…tion-and-deanonymaztion-best-practices/src/api/main.py14logger = logging.getLogger(__name__)CODE
LOW…ion-best-practices/src/api/services/toolkit_service.py8logger = logging.getLogger(__name__)CODE
LOW…ractices/src/api/services/state/redis_state_service.py9logger = logging.getLogger(__name__)CODE
LOW…tices/src/api/services/state/inmemory_state_service.py5logger = logging.getLogger(__name__)CODE
LOW…ces/src/api/services/presidio/http_presidio_service.py11logger = logging.getLogger(__name__)CODE
LOW…s/src/api/services/presidio/python_presidio_service.py12logger = logging.getLogger(__name__)CODE
LOW…s/src/api/services/presidio/hybrid_presidio_service.py14logger = logging.getLogger(__name__)CODE
LOW…dio-image-redactor/presidio_image_redactor/__init__.py26__all__ = [CODE
LOW…-redactor/presidio_image_redactor/entities/__init__.py6__all__ = [CODE
Deep Nesting45 hits · 42 pts
SeverityFileLineSnippetContext
LOWpresidio-analyzer/install_nlp_models.py88CODE
LOWpresidio-analyzer/tests/conftest.py31CODE
LOWpresidio-analyzer/tests/conftest.py142CODE
LOWpresidio-analyzer/tests/test_batch_analyzer_engine.py217CODE
LOWpresidio-analyzer/presidio_analyzer/analyzer_engine.py423CODE
LOW…esidio-analyzer/presidio_analyzer/entity_recognizer.py277CODE
LOW…io-analyzer/presidio_analyzer/batch_analyzer_engine.py68CODE
LOW…sidio-analyzer/presidio_analyzer/pattern_recognizer.py193CODE
LOW…io_analyzer/input_validation/yaml_recognizer_models.py531CODE
LOW…io_analyzer/input_validation/yaml_recognizer_models.py623CODE
LOW…-analyzer/presidio_analyzer/llm_utils/config_loader.py102CODE
LOW…y_specific/india/in_vehicle_registration_recognizer.py360CODE
LOW…yzer/predefined_recognizers/generic/iban_recognizer.py95CODE
LOW…yzer/predefined_recognizers/generic/iban_recognizer.py132CODE
LOW…io-analyzer/presidio_analyzer/chunkers/base_chunker.py101CODE
LOW…yzer/presidio_analyzer/nlp_engine/stanza_nlp_engine.py299CODE
LOW…yzer/presidio_analyzer/nlp_engine/stanza_nlp_engine.py420CODE
LOW…/presidio_analyzer/nlp_engine/slim_spacy_nlp_engine.py89CODE
LOW…ymizer/presidio_anonymizer/batch_deanonymize_engine.py54CODE
LOW…io-anonymizer/presidio_anonymizer/anonymizer_engine.py133CODE
LOW…io-anonymizer/presidio_anonymizer/anonymizer_engine.py224CODE
LOW…nymizer/presidio_anonymizer/batch_anonymizer_engine.py48CODE
LOWpresidio-anonymizer/tests/test_ahds_surrogate.py42CODE
LOWpresidio-anonymizer/tests/test_ahds_surrogate.py93CODE
LOWpresidio-anonymizer/tests/test_ahds_surrogate.py159CODE
LOWpresidio-anonymizer/tests/test_ahds_surrogate.py345CODE
LOWpresidio-anonymizer/tests/test_ahds_surrogate.py401CODE
LOWpresidio-cli/presidio_cli/cli.py126CODE
LOWpresidio-cli/presidio_cli/cli.py181CODE
LOWpresidio-cli/presidio_cli/cli.py202CODE
LOW…structured/presidio_structured/data/data_processors.py159CODE
LOW…structured/presidio_structured/data/data_processors.py185CODE
LOWdocs/samples/python/streamlit/presidio_helpers.py35CODE
LOW…s/src/api/services/presidio/python_presidio_service.py95CODE
LOW…s/src/api/services/presidio/hybrid_presidio_service.py91CODE
LOWe2e-tests/common/assertions.py15CODE
LOW…dio-image-redactor/tests/test_image_analyzer_engine.py306CODE
LOW…presidio_image_redactor/dicom_image_redactor_engine.py647CODE
LOW…presidio_image_redactor/dicom_image_redactor_engine.py690CODE
LOW…esidio_image_redactor/dicom_image_pii_verify_engine.py200CODE
LOW…actor/presidio_image_redactor/image_analyzer_engine.py133CODE
LOW…actor/presidio_image_redactor/image_redactor_engine.py118CODE
LOWpresidio-image-redactor/presidio_image_redactor/bbox.py61CODE
LOWscripts/zensical_build.py92CODE
LOWscripts/zensical_build.py96CODE
Empty Error Handlers7 hits · 35 pts
SeverityFileLineSnippetContext
HIGH…yzer/tests/test_azure_openai_langextract_recognizer.py239except Exception:CODE
HIGH…yzer/tests/test_azure_openai_langextract_recognizer.py183except Exception:CODE
HIGH…yzer/tests/test_azure_openai_langextract_recognizer.py211except Exception:CODE
HIGH…io_analyzer/input_validation/yaml_recognizer_models.py619except PredefinedRecognizerNotFoundError:CODE
HIGH…io_analyzer/input_validation/yaml_recognizer_models.py406except PredefinedRecognizerNotFoundError:CODE
HIGH…edefined_recognizers/ner/huggingface_ner_recognizer.py246except (ValueError, IndexError):CODE
HIGH…ers/third_party/azure_openai_langextract_recognizer.py25except ImportError: # pragma: no coverCODE
Redundant / Tautological Comments19 hits · 29 pts
SeverityFileLineSnippetContext
LOW…io-analyzer/tests/test_basic_langextract_recognizer.py352 # Set min_score to 0.5 (default in config)COMMENT
LOW…alyzer/recognizer_registry/recognizers_loader_utils.py762 # Check if registry_configuration has all mandatory keysCOMMENT
LOW…alyzer/recognizer_registry/recognizers_loader_utils.py805 # Check if config_from_file has any invalid keysCOMMENT
LOW⚡…io_analyzer/input_validation/yaml_recognizer_models.py109 # Check if user provided both (before we modify them)COMMENT
LOW…io_analyzer/input_validation/yaml_recognizer_models.py125 # Check if global context is definedCOMMENT
LOW…ecognizers/country_specific/korea/kr_rrn_recognizer.py91 # Check if the sanitized value has the correct length (13 digits)COMMENT
LOW…ecognizers/country_specific/korea/kr_rrn_recognizer.py95 # Check if all characters are digitsCOMMENT
LOW…ecognizers/country_specific/thai/th_tnin_recognizer.py100 # Check if the sanitized value has the correct length (13 digits)COMMENT
LOW…ecognizers/country_specific/thai/th_tnin_recognizer.py104 # Check if all characters are digitsCOMMENT
LOW…nizers/country_specific/singapore/sg_uen_recognizer.py156 # Check if the year of registration is not in the futureCOMMENT
LOW…io-analyzer/presidio_analyzer/chunkers/base_chunker.py123 # Check if same entity type and overlapping positionsCOMMENT
LOW…io-analyzer/presidio_analyzer/chunkers/base_chunker.py137 # Check if overlap exceeds thresholdCOMMENT
LOW…dio-structured/presidio_structured/analysis_builder.py371 # Check if mixed strategy threshold is within the valid rangeCOMMENT
LOW…dio-structured/presidio_structured/analysis_builder.py379 # Check if the highest score is greater than threshold and select accordinglyCOMMENT
LOWdocs/samples/python/ahds/example_ahds_surrogate.py12 # Check if AHDS endpoint is availableCOMMENT
LOW…deanonymaztion-best-practices/infrastructure/deploy.sh3# Check if both tenant ID and subscription ID are providedCOMMENT
LOW…presidio_image_redactor/dicom_image_redactor_engine.py306 # Check if image is grayscale using the Photometric Interpretation elementCOMMENT
LOW…presidio_image_redactor/dicom_image_redactor_engine.py755 # Check if we want the box color to contrast with the backgroundCOMMENT
LOW…actor/presidio_image_redactor/image_analyzer_engine.py343 # Check if we have the same bbox in analyzer resultsCOMMENT
Over-Commented Block23 hits · 21 pts
SeverityFileLineSnippetContext
LOWpresidio-analyzer/tests/test_crypto_recognizer.py21 # fmt: offCOMMENT
LOWpresidio-analyzer/tests/test_recognizer_registry.py621# Constructor ``country_code=`` kwarg — the path for custom recognizersCOMMENT
LOW…esidio-analyzer/tests/test_recognizers_loader_utils.py581 with pytest.raises(ValueError, match="non-empty string"):COMMENT
LOW…esidio-analyzer/tests/test_recognizers_loader_utils.py601# the switch. The tests below construct every one of them.COMMENT
LOWpresidio-analyzer/tests/test_sg_fin_recognizer.py21 ## Medium matchCOMMENT
LOW…esidio-analyzer/tests/test_analyzer_engine_provider.py21COMMENT
LOW…yzer/predefined_recognizers/generic/iban_recognizer.py41COMMENT
LOW…ontext_aware_enhancers/lemma_context_aware_enhancer.py281 tokens,COMMENT
LOW…yzer/presidio_analyzer/conf/default_analyzer_full.yaml41COMMENT
LOW…alyzer/presidio_analyzer/conf/default_recognizers.yaml1supported_languages:COMMENT
LOW…alyzer/presidio_analyzer/conf/default_recognizers.yaml21 # - Use 'class_name' to specify the Python class when using a custom 'name' for display/metadataCOMMENT
LOW…alyzer/presidio_analyzer/conf/example_recognizers.yaml1# Optional top-level field:COMMENT
LOW…r/presidio_analyzer/conf/langextract_config_basic.yaml41 use_schema_constraints: falseCOMMENT
LOWpresidio-cli/presidio_cli/conf/limited.yaml21locale: en_US.UTF-8COMMENT
LOWdocs/requirements-docs.txt1# Dependencies for building the Presidio documentation with Zensical, theCOMMENT
LOWdocs/samples/deployments/spark/notebooks/00_setup.py1# Databricks notebook sourceCOMMENT
LOW…s/deployments/spark/notebooks/01_transform_presidio.py1# Databricks notebook sourceCOMMENT
LOWdocs/analyzer/filtering_by_country.md261# WARNING ... Country filter: no recognizer matched country_code='br'.COMMENT
LOW.github/labeler.yml1# Path-based labels applied automatically by .github/workflows/label-areas.ymlCOMMENT
LOW.github/dependabot.yml1# Security rationale for all ecosystem settings:COMMENT
LOW.github/dependabot.yml21#COMMENT
LOW.github/workflows/codeql-analysis.yml1# For most projects, this workflow file will not need changing; you simply needCOMMENT
LOW.github/workflows/defender-for-devops.yml1# This workflow uses actions that are not certified by GitHub.COMMENT
Magic Placeholder Names4 hits · 20 pts
SeverityFileLineSnippetContext
HIGHpresidio-analyzer/README.md44 api_key="your-api-key"CODE
HIGHpresidio-analyzer/README.md57 api_key="your-api-key"CODE
HIGHdocs/samples/python/langextract/index.md240 api_key="your-api-key-here",CODE
HIGHdocs/samples/python/langextract/index.md264os.environ["AZURE_OPENAI_API_KEY"] = "your-api-key-here"CODE
AI Structural Patterns15 hits · 14 pts
SeverityFileLineSnippetContext
LOW…io-analyzer/tests/test_basic_langextract_recognizer.py7CODE
LOWpresidio-analyzer/presidio_analyzer/analyzer_engine.py169CODE
LOWpresidio-analyzer/presidio_analyzer/lm_recognizer.py30CODE
LOW…sidio-analyzer/presidio_analyzer/pattern_recognizer.py50CODE
LOW…edefined_recognizers/ner/huggingface_ner_recognizer.py107CODE
LOW…r/predefined_recognizers/ner/medical_ner_recognizer.py32CODE
LOW…alyzer/predefined_recognizers/ner/gliner_recognizer.py29CODE
LOW…zer/predefined_recognizers/generic/phone_recognizer.py97CODE
LOW…yzer/predefined_recognizers/generic/iban_recognizer.py69CODE
LOW…yzer/presidio_analyzer/nlp_engine/stanza_nlp_engine.py206CODE
LOW…yzer/presidio_analyzer/nlp_engine/stanza_nlp_engine.py233CODE
LOWpresidio-structured/tests/conftest.py50CODE
LOWpresidio-structured/tests/conftest.py61CODE
LOWdocs/samples/python/streamlit/presidio_helpers.py175CODE
LOW…presidio_image_redactor/dicom_image_redactor_engine.py141CODE
Modern AI Meta-Vocabulary4 hits · 8 pts
SeverityFileLineSnippetContext
MEDIUMdocs/community.md13| [LiteLLM](https://docs.litellm.ai/docs/proxy/guardrails/pii_masking_v2) | Integrate Presidio into LiteLLM |CODE
MEDIUMdocs/community.md14| [Guardrails-ai](https://www.guardrailsai.com/docs/examples/check_for_pii) | Use Presidio as an LLM guardrails using thCODE
MEDIUMdocs/samples/docker/litellm.md5[👉 **Refer to LiteLLM Docs for detailed guide**](https://docs.litellm.ai/docs/proxy/guardrails/pii_masking_v2)CODE
MEDIUMdocs/samples/docker/aisix.md191[AISIX Presidio guardrail documentation](https://docs.api7.ai/ai-gateway/traffic-controls/guardrails/presidio).CODE
Structural Annotation Overuse8 hits · 8 pts
SeverityFileLineSnippetContext
LOW⚡presidio-analyzer/tests/test_config_loader.py259 # Step 1: Load YAMLSTRING
LOW⚡presidio-analyzer/tests/test_config_loader.py262 # Step 2: Extract lm_recognizer configSTRING
LOW⚡presidio-analyzer/tests/test_config_loader.py269 # Step 3: Get model configSTRING
LOW⚡presidio-analyzer/tests/test_examples_loader.py243 # Step 1: Load YAMLSTRING
LOW⚡presidio-analyzer/tests/test_examples_loader.py248 # Step 2: Convert to LangExtract formatSTRING
LOW…ecognizers/country_specific/korea/kr_brn_recognizer.py120 # Step 3: Special handling for the 9th digitCOMMENT
LOWdocs/ahds_integration.md61# Step 1: Detect entities using AHDS recognizerCOMMENT
LOWdocs/ahds_integration.md68# Step 2: Anonymize using AHDS surrogate generationCOMMENT
Synthetic Comment Markers1 hit · 5 pts
SeverityFileLineSnippetContext
HIGH…io-analyzer/presidio_analyzer/batch_analyzer_engine.py106 continue # skip this key as requestedCODE
Verbosity Indicators6 hits · 5 pts
SeverityFileLineSnippetContext
LOW⚡presidio-analyzer/tests/test_config_loader.py259 # Step 1: Load YAMLSTRING
LOW⚡presidio-analyzer/tests/test_config_loader.py262 # Step 2: Extract lm_recognizer configSTRING
LOW⚡presidio-analyzer/tests/test_config_loader.py269 # Step 3: Get model configSTRING
LOW⚡presidio-analyzer/tests/test_examples_loader.py243 # Step 1: Load YAMLSTRING
LOW⚡presidio-analyzer/tests/test_examples_loader.py248 # Step 2: Convert to LangExtract formatSTRING
LOW…ecognizers/country_specific/korea/kr_brn_recognizer.py120 # Step 3: Special handling for the 9th digitCOMMENT
AI Slop Vocabulary1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUM…cs/samples/deployments/k8s/deployment/run-with-kind.sh3# This script utilize KIND (https://github.com/kubernetes-sigs/kind), to install PresidioCOMMENT
Slop Phrases1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUM.github/workflows/codeql-analysis.yml54 # If you are analyzing a compiled language, you can modify the 'build-mode' for that language to customize howCOMMENT