AI Slop Code RIsk Monitor

octodns/octodns

Tools for managing DNS across multiple providers

17.5 Elevated pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for octodns/octodns, a Python project with 3,772 GitHub stars. SynthScan examined 54,706 lines of code across 340 source files, recording 666 pattern matches distributed across 15 syntactic categories. The legacy adjusted pattern signal is 17.5 (Elevated pattern signal); it is not an authorship estimate.

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

17.5
Adjusted Signal
17.5
Raw Pattern Score
100%
Time Factor
2026-10-10
Last Push
3.8K
Stars
Python
Language
54.7K
Lines of Code
340
Files
666
Pattern Hits
2026-10-12
Scan Date
0.20
HC Hit Rate

Risk Review · v3

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

Cognitive Ownership Risk 38.5/100 · MEDIUM

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

Hallucinated Dependency & Supply Chain Risk 1.6/100 · LOW

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

Agent Over-Engineering Ratio 54.1/100 · HIGH

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

PR Review Velocity Impact 62.1/100 · HIGH

Which changes need focused human review? 666 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 68MEDIUM 28LOW 570

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 666 distinct pattern matches across 15 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 Identifiers484 hits · 444 pts
SeverityFileLineSnippetContext
LOWoctodns/record/svcb.py95def validate_svcparam_mandatory(svcparamvalue, validator_id=None):CODE
LOWoctodns/record/svcb.py150def _svcparamvalue_list_from_rdata_text(svcparamvalue):CODE
LOWoctodns/record/tlsa.py337 def certificate_association_data(self):CODE
LOWoctodns/record/tlsa.py341 def certificate_association_data(self, value):CODE
LOWoctodns/record/target.py52def _check_target_trailing_dot(target, _type, key='value', validator_id=None):CODE
LOWoctodns/record/base.py26def _deprecated_parse_rdata_text(value_type, replacement=None):CODE
LOWoctodns/record/base.py53def _value_from_rdata_text_uses_legacy(value_type):CODE
LOWoctodns/record/base.py84def _value_to_rdata_text_uses_legacy(value_type):CODE
LOWoctodns/record/base.py717def _process_value_validators(value_type, values, _type, disabled=None):CODE
LOWoctodns/processor/templating.py74 def process_source_and_target_zones(CODE
LOWoctodns/processor/base.py150 def process_source_and_target_zones(CODE
LOWoctodns/processor/meta.py127 def process_source_and_target_zones(CODE
LOWoctodns/zone/base.py341 def registered_zone_validators(cls):CODE
LOWoctodns/zone/base.py345 def available_zone_validators(cls):CODE
LOWtests/test_octodns_zone.py117 def test_duplicate_context_handling(self):CODE
LOWtests/test_octodns_zone.py233 def test_deprecated__remove_record(self):CODE
LOWtests/test_octodns_zone.py747 def test_validator_registration_methods(self):CODE
LOWtests/test_octodns_zone.py848 def test_not_included_records(self):CODE
LOW⚡tests/test_octodns_zone.py1082 def test_merger_ignores_other_type(self):CODE
LOW⚡tests/test_octodns_zone.py1089 def test_copy_preserves_mergers(self):CODE
LOW⚡tests/test_octodns_zone.py1094 def test_caa_merge_with_best_practice_validators(self):CODE
LOWtests/test_octodns_zone.py1138 def test_caa_merge_still_fails_without_issuewild(self):CODE
LOWtests/test_octodns_zone.py1169 def test_disabled_record_validators(self):CODE
LOWtests/test_octodns_zone.py1188 def test_disabled_zone_validators(self):CODE
LOWtests/test_octodns_zone.py1199 def test_bridge_record_validator_rejected(self):CODE
LOWtests/test_octodns_zone.py1213 def test_bridge_zone_validator_rejected(self):CODE
LOWtests/test_octodns_zone.py1226 def test_copy_propagates_validators_config(self):CODE
LOWtests/test_octodns_zone.py1252 def test_get_filtered_by_type(self):CODE
LOWtests/test_octodns_zone.py1259 def test_get_multiple_types_at_same_name(self):CODE
LOWtests/test_octodns_provider_base.py186 def test_plan_existing_zone_inherits_validators_config(self):CODE
LOWtests/test_octodns_provider_base.py234 def test_plan_with_process_desired_zone_kwarg_fallback(self):CODE
LOWtests/test_octodns_provider_base.py254 def test_plan_with_unsupported_type(self):CODE
LOWtests/test_octodns_provider_base.py279 def test_plan_with_processors(self):CODE
LOWtests/test_octodns_provider_base.py314 def test_plan_passes_lenient_to_processors(self):CODE
LOWtests/test_octodns_provider_base.py334 def test_plan_processor_lenient_fallback(self):CODE
LOWtests/test_octodns_provider_base.py354 def process_source_and_target_zones(CODE
LOWtests/test_octodns_provider_base.py376 def process_source_and_target_zones(CODE
LOWtests/test_octodns_provider_base.py428 def test_plan_order_of_operations(self):CODE
LOWtests/test_octodns_provider_base.py460 def test_process_desired_zone(self):CODE
LOWtests/test_octodns_provider_base.py581 def test_process_existing_zone(self):CODE
LOWtests/test_octodns_provider_base.py617 def test_safe_min_existing_creates(self):CODE
LOWtests/test_octodns_provider_base.py646 def test_safe_updates_min_existing(self):CODE
LOWtests/test_octodns_provider_base.py673 def test_safe_updates_min_existing_pcent(self):CODE
LOWtests/test_octodns_provider_base.py696 def test_safe_deletes_min_existing(self):CODE
LOWtests/test_octodns_provider_base.py723 def test_safe_deletes_min_existing_pcent(self):CODE
LOWtests/test_octodns_provider_base.py746 def test_safe_updates_min_existing_override(self):CODE
LOWtests/test_octodns_provider_base.py774 def test_safe_deletes_min_existing_override(self):CODE
LOWtests/test_octodns_provider_base.py897 def test_supports_warn_or_except(self):CODE
LOWtests/test_octodns_provider_base.py976 def test_supports_root_ns_false_matches(self):CODE
LOWtests/test_octodns_provider_base.py999 def test_supports_root_ns_false_different(self):CODE
LOWtests/test_octodns_provider_base.py1023 def test_supports_root_ns_false_missing(self):CODE
LOWtests/test_octodns_provider_base.py1042 def test_supports_root_ns_false_create_zone(self):CODE
LOWtests/test_octodns_provider_base.py1065 def test_supports_root_ns_false_create_zone_missing(self):CODE
LOWtests/test_octodns_provider_base.py1086 def test_supports_root_ns_true_matches(self):CODE
LOWtests/test_octodns_provider_base.py1103 def test_supports_root_ns_true_different(self):CODE
LOWtests/test_octodns_provider_base.py1126 def test_supports_root_ns_true_missing(self):CODE
LOWtests/test_octodns_provider_base.py1147 def test_supports_root_ns_true_create_zone(self):CODE
LOWtests/test_octodns_provider_base.py1177 def test_supports_root_ns_true_create_zone_missing(self):CODE
LOWtests/test_octodns_record_ptr.py112 def test_best_practice_validator(self):CODE
LOWtests/test_octodns_zone_validators_ns.py138 def test_in_zone_target_no_cname(self):CODE
424 more matches not shown…
Empty Error Handlers48 hits · 240 pts
SeverityFileLineSnippetContext
HIGHoctodns/manager.py577except PackageNotFoundError:CODE
HIGHoctodns/record/geo.py182except KeyError:CODE
HIGHoctodns/record/srv.py312except ValueError:CODE
HIGHoctodns/record/srv.py316except ValueError:CODE
HIGHoctodns/record/srv.py320except ValueError:CODE
HIGHoctodns/record/mx.py223except ValueError:CODE
HIGHoctodns/record/naptr.py234except ValueError:CODE
HIGHoctodns/record/svcb.py338except ValueError:CODE
HIGHoctodns/record/loc.py246except ValueError:CODE
HIGHoctodns/record/loc.py250except ValueError:CODE
HIGHoctodns/record/loc.py254except ValueError:CODE
HIGHoctodns/record/loc.py258except ValueError:CODE
HIGHoctodns/record/loc.py262except ValueError:CODE
HIGHoctodns/record/loc.py266except ValueError:CODE
HIGHoctodns/record/loc.py270except ValueError:CODE
HIGHoctodns/record/loc.py274except ValueError:CODE
HIGHoctodns/record/loc.py278except ValueError:CODE
HIGHoctodns/record/loc.py282except ValueError:CODE
HIGHoctodns/record/tlsa.py276except ValueError:CODE
HIGHoctodns/record/tlsa.py280except ValueError:CODE
HIGHoctodns/record/tlsa.py284except ValueError:CODE
HIGHoctodns/record/dynamic.py125except KeyError:CODE
HIGHoctodns/record/dynamic.py129except KeyError:CODE
HIGHoctodns/record/dynamic.py133except KeyError:CODE
HIGHoctodns/record/dynamic.py303except KeyError:CODE
HIGHoctodns/record/dynamic.py322except KeyError:CODE
HIGHoctodns/record/dynamic.py496except:CODE
HIGHoctodns/record/uri.py174except ValueError:CODE
HIGHoctodns/record/uri.py178except ValueError:CODE
HIGHoctodns/record/sshfp.py256except ValueError:CODE
HIGHoctodns/record/sshfp.py260except ValueError:CODE
HIGHoctodns/record/ds.py339except ValueError:CODE
HIGHoctodns/record/ds.py343except ValueError:CODE
HIGHoctodns/record/ds.py347except ValueError:CODE
HIGHoctodns/record/ds.py272except (KeyError, ValueError, TypeError):CODE
HIGHoctodns/record/ds.py283except (KeyError, ValueError, TypeError):CODE
HIGHoctodns/record/target.py47except ValueError:CODE
HIGHoctodns/record/urlfwd.py133except ValueError:CODE
HIGHoctodns/record/urlfwd.py137except ValueError:CODE
HIGHoctodns/record/urlfwd.py141except ValueError:CODE
HIGHoctodns/record/base.py201except KeyError:CODE
HIGHoctodns/record/base.py363except KeyError:CODE
HIGHoctodns/record/caa.py196except ValueError:CODE
HIGHoctodns/source/tinydns.py20except TypeError:CODE
HIGHoctodns/source/tinydns.py45except IndexError:CODE
HIGHoctodns/secret/environ.py41except ValueError:CODE
HIGHdocs/conf.py127except CalledProcessError:CODE
HIGHdocs/conf.py135except CalledProcessError:CODE
Cross-File Repetition18 hits · 90 pts
SeverityFileLineSnippetContext
HIGHoctodns/record/srv.py0parse one caa rdata presentation string into internal field data. :param str value: caa rdata in dns master-file presentSTRING
HIGHoctodns/record/mx.py0parse one caa rdata presentation string into internal field data. :param str value: caa rdata in dns master-file presentSTRING
HIGHoctodns/record/naptr.py0parse one caa rdata presentation string into internal field data. :param str value: caa rdata in dns master-file presentSTRING
HIGHoctodns/record/loc.py0parse one caa rdata presentation string into internal field data. :param str value: caa rdata in dns master-file presentSTRING
HIGHoctodns/record/tlsa.py0parse one caa rdata presentation string into internal field data. :param str value: caa rdata in dns master-file presentSTRING
HIGHoctodns/record/uri.py0parse one caa rdata presentation string into internal field data. :param str value: caa rdata in dns master-file presentSTRING
HIGHoctodns/record/sshfp.py0parse one caa rdata presentation string into internal field data. :param str value: caa rdata in dns master-file presentSTRING
HIGHoctodns/record/ds.py0parse one caa rdata presentation string into internal field data. :param str value: caa rdata in dns master-file presentSTRING
HIGHoctodns/record/caa.py0parse one caa rdata presentation string into internal field data. :param str value: caa rdata in dns master-file presentSTRING
HIGHoctodns/record/srv.py0render this internal caa value as one rdata presentation string. :returns: caa rdata in dns master-file presentation forSTRING
HIGHoctodns/record/mx.py0render this internal caa value as one rdata presentation string. :returns: caa rdata in dns master-file presentation forSTRING
HIGHoctodns/record/naptr.py0render this internal caa value as one rdata presentation string. :returns: caa rdata in dns master-file presentation forSTRING
HIGHoctodns/record/loc.py0render this internal caa value as one rdata presentation string. :returns: caa rdata in dns master-file presentation forSTRING
HIGHoctodns/record/tlsa.py0render this internal caa value as one rdata presentation string. :returns: caa rdata in dns master-file presentation forSTRING
HIGHoctodns/record/uri.py0render this internal caa value as one rdata presentation string. :returns: caa rdata in dns master-file presentation forSTRING
HIGHoctodns/record/sshfp.py0render this internal caa value as one rdata presentation string. :returns: caa rdata in dns master-file presentation forSTRING
HIGHoctodns/record/ds.py0render this internal caa value as one rdata presentation string. :returns: caa rdata in dns master-file presentation forSTRING
HIGHoctodns/record/caa.py0render this internal caa value as one rdata presentation string. :returns: caa rdata in dns master-file presentation forSTRING
Decorative Section Separators17 hits · 69 pts
SeverityFileLineSnippetContext
MEDIUMoctodns/schema/config.py57# ── Providers / Sources ───────────────────────────────────────────────────────COMMENT
MEDIUMoctodns/schema/config.py98# ── Processors ────────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡octodns/schema/config.py219# ── Mergers ───────────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡octodns/schema/config.py226# ── Secret handlers ───────────────────────────────────────────────────────────COMMENT
MEDIUM⚡octodns/schema/config.py232# ── Plan outputs ──────────────────────────────────────────────────────────────COMMENT
MEDIUMoctodns/schema/config.py260# ── Schema defs ───────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡tests/test_octodns_manager.py361 # ── Zone validator manager wiring tests ──────────────────────────────────COMMENT
MEDIUM⚡tests/test_octodns_config_schema.py41 # ── Top-level structure ───────────────────────────────────────────────────COMMENT
MEDIUM⚡tests/test_octodns_config_schema.py63 # ── manager: ─────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡tests/test_octodns_config_schema.py200 # ── providers: ───────────────────────────────────────────────────────────COMMENT
MEDIUM⚡tests/test_octodns_config_schema.py325 # ── processors: ──────────────────────────────────────────────────────────COMMENT
MEDIUM⚡tests/test_octodns_config_schema.py562 # ── validators: ──────────────────────────────────────────────────────────COMMENT
MEDIUM⚡tests/test_octodns_config_schema.py599 # ── secret_handlers: ─────────────────────────────────────────────────────COMMENT
MEDIUM⚡tests/test_octodns_config_schema.py625 # ── mergers: ──────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡tests/test_octodns_config_schema.py850 # ── CLI ───────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/test_octodns_config_schema.py656 # ── zones: ───────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/test_octodns_config_schema.py833 # ── Round-trip ────────────────────────────────────────────────────────────COMMENT
Deep Nesting54 hits · 52 pts
SeverityFileLineSnippetContext
LOWoctodns/yaml.py70CODE
LOWoctodns/manager.py628CODE
LOWoctodns/manager.py656CODE
LOWoctodns/manager.py702CODE
LOWoctodns/manager.py881CODE
LOWoctodns/manager.py964CODE
LOWoctodns/manager.py1224CODE
LOWoctodns/record/validator.py46CODE
LOWoctodns/record/validator.py79CODE
LOWoctodns/record/validator.py124CODE
LOWoctodns/record/geo.py20CODE
LOWoctodns/record/srv.py198CODE
LOWoctodns/record/mx.py78CODE
LOWoctodns/record/naptr.py97CODE
LOWoctodns/record/svcb.py226CODE
LOWoctodns/record/svcb.py324CODE
LOWoctodns/record/loc.py26CODE
LOWoctodns/record/chunked.py75CODE
LOWoctodns/record/tlsa.py128CODE
LOWoctodns/record/dynamic.py254CODE
LOWoctodns/record/dynamic.py384CODE
LOWoctodns/record/uri.py107CODE
LOWoctodns/record/ip.py17CODE
LOWoctodns/record/sshfp.py32CODE
LOWoctodns/record/sshfp.py123CODE
LOWoctodns/record/ds.py169CODE
LOWoctodns/processor/filter.py491CODE
LOWoctodns/processor/restrict.py62CODE
LOWoctodns/processor/trailing_dots.py24CODE
LOWoctodns/processor/arpa.py41CODE
LOWoctodns/source/tinydns.py389CODE
LOWoctodns/zone/mail.py360CODE
LOWoctodns/zone/mail.py502CODE
LOWoctodns/zone/mail.py537CODE
LOWoctodns/zone/srv.py16CODE
LOWoctodns/zone/srv.py44CODE
LOWoctodns/zone/cname.py15CODE
LOWoctodns/zone/cname.py101CODE
LOWoctodns/zone/cname.py144CODE
LOWoctodns/zone/ns.py25CODE
LOWoctodns/zone/ns.py56CODE
LOWoctodns/zone/base.py482CODE
LOWoctodns/zone/base.py613CODE
LOWoctodns/provider/plan.py259CODE
LOWoctodns/provider/plan.py325CODE
LOWoctodns/provider/yaml.py346CODE
LOWoctodns/provider/base.py120CODE
LOWoctodns/cmds/report.py50CODE
LOWtests/test_octodns_record.py220CODE
LOWtests/test_octodns_manager.py567CODE
LOWtests/test_octodns_manager.py592CODE
LOWtests/test_octodns_manager.py617CODE
LOWtests/test_octodns_manager.py640CODE
LOWtests/test_octodns_record_chunked.py155CODE
AI Slop Vocabulary5 hits · 12 pts
SeverityFileLineSnippetContext
LOWoctodns/source/tinydns.py409 # just use the default belowCOMMENT
MEDIUM⚡tests/test_octodns_zone_validators_caa.py25 """Tests for the comprehensive CAA best-practice validator."""STRING
MEDIUM…cs/examples/migrating-to-octodns/populate/octodns.yaml21 # meet octoDNS's best practices so that we can showCOMMENT
MEDIUM…les/migrating-to-octodns/populate/my-dumpable.com.yaml32 # recommended best practices.COMMENT
MEDIUMdocs/examples/basic/config/my-domain.com.yaml48 # case where you need to omit the `.`, or other enforced best practices, seeCOMMENT
Over-Commented Block11 hits · 11 pts
SeverityFileLineSnippetContext
LOWoctodns/processor/__init__.py1#COMMENT
LOWoctodns/processor/meta.py41COMMENT
LOWoctodns/source/__init__.py1#COMMENT
LOWoctodns/provider/yaml.py21 # Whether or not to enforce sorting order when loading yamlCOMMENT
LOWoctodns/provider/yaml.py41 split_extension: nullCOMMENT
LOWoctodns/cmds/__init__.py1#COMMENT
LOWoctodns/schema/zone.py21from ..record.dynamic import _DynamicMixinCOMMENT
LOWoctodns/secret/__init__.py1#COMMENT
LOWdocs/examples/basic/config/my-domain.com.yaml1---COMMENT
LOWdocs/examples/basic/config/my-domain.com.yaml41# We want www and the APEX to return the same values for A/AAAA queries. WeCOMMENT
LOWdocs/examples/basic/config/octodns.yaml41 # other here and include them in the targets list down below. See theCOMMENT
Self-Referential Comments6 hits · 10 pts
SeverityFileLineSnippetContext
MEDIUMoctodns/record/geo_data.py4# This file is generated usingCOMMENT
MEDIUMoctodns/zone/base.py117 # Create a shallow copySTRING
MEDIUMtests/test_octodns_manager.py917 # Create an empty unit.test zone configCOMMENT
MEDIUMtests/test_octodns_provider_yaml.py246 # Create a provider with ignore_missing_zones disabled (default)STRING
MEDIUMtests/test_octodns_provider_yaml.py259 # Create a provider with ignore_missing_zones enabledSTRING
MEDIUMtests/test_octodns_provider_yaml.py280 # Create a second directory without the zone fileSTRING
Unused Imports7 hits · 7 pts
SeverityFileLineSnippetContext
LOWoctodns/merge/__init__.py6CODE
LOWoctodns/merge/__init__.py6CODE
LOWoctodns/merge/__init__.py6CODE
LOWoctodns/merge/__init__.py7CODE
LOWoctodns/merge/__init__.py7CODE
LOWoctodns/schema/__init__.py5CODE
LOWoctodns/schema/__init__.py6CODE
Fake / Example Data6 hits · 6 pts
SeverityFileLineSnippetContext
LOWtests/test_octodns_record_txt.py76 '"Lorem ipsum dolor sit amet, consectetur adipiscing 'CODE
LOWtests/test_octodns_record_txt.py76 '"Lorem ipsum dolor sit amet, consectetur adipiscing 'CODE
LOWtests/test_octodns_record_txt.py87 'Lorem ipsum dolor sit amet, consectetur adipiscing 'CODE
LOWtests/test_octodns_record_txt.py87 'Lorem ipsum dolor sit amet, consectetur adipiscing 'CODE
LOWtests/test_octodns_record_txt.py118 '"Lorem ipsum dolor sit amet, consectetur 'CODE
LOWtests/test_octodns_record_txt.py118 '"Lorem ipsum dolor sit amet, consectetur 'CODE
Cross-Language Confusion2 hits · 5 pts
SeverityFileLineSnippetContext
HIGHoctodns/provider/yaml.py39 # (optional, default null, "." is the recommended best practice whenSTRING
HIGHoctodns/provider/yaml.py56 # (optional, default null)STRING
Excessive Try-Catch Wrapping3 hits · 4 pts
SeverityFileLineSnippetContext
LOWoctodns/record/ip.py35 except Exception:CODE
LOWoctodns/cmds/report.py136 except Exception:CODE
MEDIUMoctodns/cmds/report.py148 print(f'Error: No valid resolver specified ({", ".join(servers)})')CODE
AI Structural Patterns2 hits · 2 pts
SeverityFileLineSnippetContext
LOWoctodns/record/dynamic.py169CODE
LOWoctodns/provider/yaml.py196CODE
Modern Structural Boilerplate2 hits · 2 pts
SeverityFileLineSnippetContext
LOWoctodns/merge/__init__.py9__all__ = ['BaseMerger', 'CaaMerger', 'MergerRegistry', 'REGISTRY', 'TxtMerger']CODE
LOWoctodns/schema/__init__.py8__all__ = ['build_config_schema', 'build_zone_schema']CODE
Redundant / Tautological Comments1 hit · 2 pts
SeverityFileLineSnippetContext
LOWoctodns/zone/ns.py32 # Check if address records exist at this targetCOMMENT