{"version": "2.1.0", "$schema": "https://json.schemastore.org/sarif-2.1.0.json", "runs": [{"tool": {"driver": {"name": "Repobility", "informationUri": "https://repobility.com", "rules": [{"id": "scanner-51917c3dc257b54f", "name": "Possibly dead Python function: patched_sections", "shortDescription": {"text": "Possibly dead Python function: patched_sections"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-79b456d7378b0a81", "name": "Possibly dead Python function: traced_parse", "shortDescription": {"text": "Possibly dead Python function: traced_parse"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6938270025341aea", "name": "Possibly dead Python function: setup_minio", "shortDescription": {"text": "Possibly dead Python function: setup_minio"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4edae6f8d9536e4e", "name": "Possibly dead Python function: setup_s3", "shortDescription": {"text": "Possibly dead Python function: setup_s3"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8268112fa2976d75", "name": "Possibly dead Python function: setup_r2", "shortDescription": {"text": "Possibly dead Python function: setup_r2"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-dc43e1458deac2df", "name": "Possibly dead Python function: sample_and_test", "shortDescription": {"text": "Possibly dead Python function: sample_and_test"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-78f87d8ca976cfd1", "name": "Possibly dead Python function: compare_filing", "shortDescription": {"text": "Possibly dead Python function: compare_filing"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e4274439a0ee0e45", "name": "Possibly dead Python function: benchmark_filing", "shortDescription": {"text": "Possibly dead Python function: benchmark_filing"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9f4923f57636ed47", "name": "Possibly dead Python function: check_regression", "shortDescription": {"text": "Possibly dead Python function: check_regression"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7af172446edc3936", "name": "Possibly dead Python function: check_file_numbers", "shortDescription": {"text": "Possibly dead Python function: check_file_numbers"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9fbbf7634f83d543", "name": "Possibly dead Python function: show_income_statement", "shortDescription": {"text": "Possibly dead Python function: show_income_statement"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-644c417cf9186a45", "name": "Possibly dead Python function: show_balance_sheet", "shortDescription": {"text": "Possibly dead Python function: show_balance_sheet"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-77d13ff74155e288", "name": "Possibly dead Python function: investigate_empty_periods", "shortDescription": {"text": "Possibly dead Python function: investigate_empty_periods"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4791d5b55683f0c7", "name": "Possibly dead Python function: investigate_xbrl_parsing", "shortDescription": {"text": "Possibly dead Python function: investigate_xbrl_parsing"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-746975c1142cfdd8", "name": "Possibly dead Python function: investigate_entity_facts", "shortDescription": {"text": "Possibly dead Python function: investigate_entity_facts"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d4203ee201a94409", "name": "Possibly dead Python function: investigate_custom_pattern", "shortDescription": {"text": "Possibly dead Python function: investigate_custom_pattern"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f12062b3f80d32a2", "name": "Possibly dead Python function: inspect_cashflow", "shortDescription": {"text": "Possibly dead Python function: inspect_cashflow"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-84bb9cbb78243c80", "name": "Possibly dead Python function: inspect_income", "shortDescription": {"text": "Possibly dead Python function: inspect_income"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e15626ed9f8d030e", "name": "Possibly dead Python function: inspect_balance", "shortDescription": {"text": "Possibly dead Python function: inspect_balance"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-db00ac7fcd466354", "name": "Possibly dead Python function: test_facts_caching", "shortDescription": {"text": "Possibly dead Python function: test_facts_caching"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f1751ff9aefbf2f4", "name": "Possibly dead Python function: test_specific_financial_concepts", "shortDescription": {"text": "Possibly dead Python function: test_specific_financial_concepts"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c39a090495d2aacb", "name": "Possibly dead Python function: test_element_mapping", "shortDescription": {"text": "Possibly dead Python function: test_element_mapping"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e8a3f84ebd2c1479", "name": "Possibly dead Python function: test_context_handling", "shortDescription": {"text": "Possibly dead Python function: test_context_handling"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4820256d3c1fa2db", "name": "Possibly dead Python function: compare_with_working_filing", "shortDescription": {"text": "Possibly dead Python function: compare_with_working_filing"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0627b85a8506f219", "name": "Possibly dead Python function: test_multiple_filings", "shortDescription": {"text": "Possibly dead Python function: test_multiple_filings"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bff85d48faabd790", "name": "Privileged port 29 in use", "shortDescription": {"text": "Privileged port 29 in use"}, "fullDescription": {"text": "Port 29 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b8943edeecad1f86", "name": "Privileged port 26 in use", "shortDescription": {"text": "Privileged port 26 in use"}, "fullDescription": {"text": "Port 26 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-69e6cc8406d2a058", "name": "Privileged port 33 in use", "shortDescription": {"text": "Privileged port 33 in use"}, "fullDescription": {"text": "Port 33 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b2b5b4e278df8787", "name": "Privileged port 69 in use", "shortDescription": {"text": "Privileged port 69 in use"}, "fullDescription": {"text": "Port 69 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a80ef281c2aa4239", "name": "Dockerfile runs as root: scripts/vhs/Dockerfile", "shortDescription": {"text": "Dockerfile runs as root: scripts/vhs/Dockerfile"}, "fullDescription": {"text": "No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0f8068749d53540f", "name": "Docker base image uses a mutable or implicit tag: ghcr.io/charmbracelet/vhs:latest", "shortDescription": {"text": "Docker base image uses a mutable or implicit tag: ghcr.io/charmbracelet/vhs:latest"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-219a92aa9477515f", "name": "Insecure pattern 'tls_verify_false' in scripts/diagnose_ssl.py:275", "shortDescription": {"text": "Insecure pattern 'tls_verify_false' in scripts/diagnose_ssl.py:275"}, "fullDescription": {"text": "Found a known-risky pattern (tls_verify_false). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d33e41bb35c87e38", "name": "Insecure pattern 'eval_used' in scripts/capture_finding_companies.py:67", "shortDescription": {"text": "Insecure pattern 'eval_used' in scripts/capture_finding_companies.py:67"}, "fullDescription": {"text": "Found a known-risky pattern (eval_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-b83690d7f0f9639f", "name": "Insecure pattern 'exec_used' in scripts/capture_finding_companies.py:63", "shortDescription": {"text": "Insecure pattern 'exec_used' in scripts/capture_finding_companies.py:63"}, "fullDescription": {"text": "Found a known-risky pattern (exec_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2b784c735809f06f", "name": "Insecure pattern 'tls_verify_false' in scripts/check_diagnostic_states.py:9", "shortDescription": {"text": "Insecure pattern 'tls_verify_false' in scripts/check_diagnostic_states.py:9"}, "fullDescription": {"text": "Found a known-risky pattern (tls_verify_false). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-dc77f9eb352e8d63", "name": "Insecure pattern 'tls_verify_false' in edgar/filesystem.py:213", "shortDescription": {"text": "Insecure pattern 'tls_verify_false' in edgar/filesystem.py:213"}, "fullDescription": {"text": "Found a known-risky pattern (tls_verify_false). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-55b2beffa5b9d892", "name": "Insecure pattern 'eval_used' in edgar/attachments.py:618", "shortDescription": {"text": "Insecure pattern 'eval_used' in edgar/attachments.py:618"}, "fullDescription": {"text": "Found a known-risky pattern (eval_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-0f86e18c216de0ab", "name": "Insecure pattern 'exec_used' in edgar/ai/evaluation/evaluators.py:175", "shortDescription": {"text": "Insecure pattern 'exec_used' in edgar/ai/evaluation/evaluators.py:175"}, "fullDescription": {"text": "Found a known-risky pattern (exec_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-fa818bceb4783e93", "name": "GitHub Actions workflow grants broad write permissions", "shortDescription": {"text": "GitHub Actions workflow grants broad write permissions"}, "fullDescription": {"text": "CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7cc697571ab8297e", "name": "Very large file: tests/test_entity_facts.py (1447 lines)", "shortDescription": {"text": "Very large file: tests/test_entity_facts.py (1447 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e526a6a8614d8d89", "name": "Very large file: tests/test_ttm.py (1869 lines)", "shortDescription": {"text": "Very large file: tests/test_ttm.py (1869 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-97c0f7b0bfaa15c0", "name": "Very large file: edgar/_filings.py (2776 lines)", "shortDescription": {"text": "Very large file: edgar/_filings.py (2776 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6ef2540b3f831787", "name": "Very large file: edgar/earnings.py (1918 lines)", "shortDescription": {"text": "Very large file: edgar/earnings.py (1918 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0771e757e8995f93", "name": "Very large file: edgar/xbrl/facts.py (1812 lines)", "shortDescription": {"text": "Very large file: edgar/xbrl/facts.py (1812 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-24c17fb34a05fb2a", "name": "Very large file: edgar/xbrl/statements.py (3592 lines)", "shortDescription": {"text": "Very large file: edgar/xbrl/statements.py (3592 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2678827f5d414a8c", "name": "Very large file: edgar/xbrl/statement_resolver.py (1306 lines)", "shortDescription": {"text": "Very large file: edgar/xbrl/statement_resolver.py (1306 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b8b673824e56c4eb", "name": "Very large file: edgar/xbrl/xbrl.py (2899 lines)", "shortDescription": {"text": "Very large file: edgar/xbrl/xbrl.py (2899 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5c41c3a3e575b238", "name": "Very large file: edgar/xbrl/rendering.py (2202 lines)", "shortDescription": {"text": "Very large file: edgar/xbrl/rendering.py (2202 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-453633fae4690293", "name": "Very large file: edgar/xbrl/analysis/ratios.py (1351 lines)", "shortDescription": {"text": "Very large file: edgar/xbrl/analysis/ratios.py (1351 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3ecaed29417f1347", "name": "Very large file: edgar/proxy/core.py (1282 lines)", "shortDescription": {"text": "Very large file: edgar/proxy/core.py (1282 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4d4cf34acc79fcc7", "name": "Very large file: edgar/proxy/html_extractor.py (1363 lines)", "shortDescription": {"text": "Very large file: edgar/proxy/html_extractor.py (1363 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a5027ada9094112c", "name": "Very large file: edgar/files/html.py (1770 lines)", "shortDescription": {"text": "Very large file: edgar/files/html.py (1770 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-cc3a0c25760a9450", "name": "Very large file: edgar/entity/core.py (1788 lines)", "shortDescription": {"text": "Very large file: edgar/entity/core.py (1788 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-973058bd91a37acc", "name": "Very large file: edgar/entity/entity_facts.py (2601 lines)", "shortDescription": {"text": "Very large file: edgar/entity/entity_facts.py (2601 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-997ba3bc82b8ee63", "name": "Very large file: edgar/entity/enhanced_statement.py (3025 lines)", "shortDescription": {"text": "Very large file: edgar/entity/enhanced_statement.py (3025 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5be07c5745ee24af", "name": "Very large file: edgar/entity/training/run_learning.py (1221 lines)", "shortDescription": {"text": "Very large file: edgar/entity/training/run_learning.py (1221 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-077faad5b8158928", "name": "Very large file: edgar/funds/reports.py (1662 lines)", "shortDescription": {"text": "Very large file: edgar/funds/reports.py (1662 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3648716baa296457", "name": "Very large file: edgar/offerings/formc.py (1240 lines)", "shortDescription": {"text": "Very large file: edgar/offerings/formc.py (1240 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8718b4ac966cc4bc", "name": "Very large file: edgar/offerings/prospectus.py (1785 lines)", "shortDescription": {"text": "Very large file: edgar/offerings/prospectus.py (1785 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-71d024489c0fbb62", "name": "Very large file: edgar/ai/evaluation/test_cases.py (1451 lines)", "shortDescription": {"text": "Very large file: edgar/ai/evaluation/test_cases.py (1451 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5359e6aabc066970", "name": "Very large file: edgar/documents/utils/toc_analyzer.py (1545 lines)", "shortDescription": {"text": "Very large file: edgar/documents/utils/toc_analyzer.py (1545 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b7b5df25d91dfe8a", "name": "Very large file: edgar/documents/extractors/pattern_section_extractor.py (1326 lines)", "shortDescription": {"text": "Very large file: edgar/documents/extractors/pattern_section_extractor.py (1326 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d54b61fbbd419155", "name": "Very large file: edgar/thirteenf/models.py (1445 lines)", "shortDescription": {"text": "Very large file: edgar/thirteenf/models.py (1445 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 2893 console/debugger/print-style debug statements in non-test source. This is a common fast-generation residue before production cleanup."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-72b2a6250083a784", "name": "Placeholder or mock-heavy implementation detected", "shortDescription": {"text": "Placeholder or mock-heavy implementation detected"}, "fullDescription": {"text": "Found 37 placeholder/mock markers across 23 source files. This often means the repo looks complete while core flows still use generated scaffolding or fake data."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2d0c7b7ab8f8aacf", "name": "Critical user flow still appears backed by mock or placeholder data", "shortDescription": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "fullDescription": {"text": "A payment/auth/admin/order/billing-style flow contains mock, fake, TODO, dummy, or placeholder markers in runtime source. In the Fable corpus this is a high-leverage completeness smell: the app can look finished while the money, identity, or tenant flow is still scaffolded."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-37409d5d6004692f", "name": "Agent authority lacks a verifier contract: .claude/agents/test-specialist.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/agents/test-specialist.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-15a423213a0328fe", "name": "Agent authority lacks a verifier contract: .claude/agents/release-specialist.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/agents/release-specialist.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5586d1d57726a492", "name": "Agent authority lacks a verifier contract: .claude/agents/notebook-writer.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/agents/notebook-writer.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c82df4dab4e4daca", "name": "Agent authority lacks a verifier contract: .claude/agents/docs-writer.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/agents/docs-writer.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-13fd6e6d65be3690", "name": "Agent authority lacks a verifier contract: .claude/commands/task.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/commands/task.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1b6f17dd5ed53e5b", "name": "Agent authority lacks a verifier contract: .claude/commands/triage.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/commands/triage.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-864aed499ba5c768", "name": "Agent authority lacks a verifier contract: .claude/commands/implement.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/commands/implement.md"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e970e18fd31eee09", "name": "Agent instruction/config may expose a secret: edgar/xbrl/CLAUDE.md", "shortDescription": {"text": "Agent instruction/config may expose a secret: edgar/xbrl/CLAUDE.md"}, "fullDescription": {"text": "Agent-facing files are routinely pasted into LLM/tool contexts. Move literal tokens, keys, and passwords into a secret manager or document them as placeholders only."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-af0b6f6787041034", "name": "Commented-code block (6 lines) in tests/test_toc_analyzer_form_aware_bare_item.py:58", "shortDescription": {"text": "Commented-code block (6 lines) in tests/test_toc_analyzer_form_aware_bare_item.py:58"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1ecc723ba96d05a1", "name": "Commented-code block (5 lines) in tests/test_xbrl_stitching.py:505", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_xbrl_stitching.py:505"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-153d30f07a0a13be", "name": "Legacy-named symbol `only_old` in tests/test_section_detection_comparison.py:110", "shortDescription": {"text": "Legacy-named symbol `only_old` in tests/test_section_detection_comparison.py:110"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ebb6b12281d14afe", "name": "Legacy-named symbol `test_get_known_returns_copy` in tests/test_abstract_detection.py:79", "shortDescription": {"text": "Legacy-named symbol `test_get_known_returns_copy` in tests/test_abstract_detection.py:79"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-619cd49ac7b208da", "name": "Commented-code block (5 lines) in tests/test_documents.py:272", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_documents.py:272"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-59981fb7dd3e6e77", "name": "Legacy-named symbol `filings_copy` in tests/test_filing.py:499", "shortDescription": {"text": "Legacy-named symbol `filings_copy` in tests/test_filing.py:499"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3a669eae08f7286d", "name": "Commented-code block (5 lines) in tests/test_feat004_enhanced_validation.py:296", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_feat004_enhanced_validation.py:296"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-67290cdc71cf6c7f", "name": "Commented-code block (6 lines) in tests/test_section_tables_toc_fix.py:57", "shortDescription": {"text": "Commented-code block (6 lines) in tests/test_section_tables_toc_fix.py:57"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-81a76b49ffe28461", "name": "Legacy-named symbol `test_company_text_deprecated` in tests/test_ai_text_methods.py:116", "shortDescription": {"text": "Legacy-named symbol `test_company_text_deprecated` in tests/test_ai_text_methods.py:116"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6be02e4c5e47325e", "name": "Legacy-named symbol `original_path_backup` in tests/test_storage_management.py:414", "shortDescription": {"text": "Legacy-named symbol `original_path_backup` in tests/test_storage_management.py:414"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-749cb309701598e0", "name": "Legacy-named symbol `test_install_skill_fallback_to_copy` in tests/test_ai_skill_export.py:597", "shortDescription": {"text": "Legacy-named symbol `test_install_skill_fallback_to_copy` in tests/test_ai_skill_export.py:597"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-eb80b1cc27108b0e", "name": "Commented-code block (5 lines) in tests/test_thirteenf.py:36", "shortDescription": {"text": "Commented-code block (5 lines) in tests/test_thirteenf.py:36"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-aa03ccdc505e6051", "name": "Legacy-named symbol `filings_10k_copy` in tests/test_entity_filings.py:24", "shortDescription": {"text": "Legacy-named symbol `filings_10k_copy` in tests/test_entity_filings.py:24"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bc17d0dd72dea4df", "name": "Legacy-named symbol `test_units_returns_copy` in tests/test_earnings.py:165", "shortDescription": {"text": "Legacy-named symbol `test_units_returns_copy` in tests/test_earnings.py:165"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-09e427150fa564fd", "name": "Legacy-named symbol `df_old` in tests/test_statement_view.py:83", "shortDescription": {"text": "Legacy-named symbol `df_old` in tests/test_statement_view.py:83"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-31555e97f3213a93", "name": "Commented-code block (6 lines) in tests/test_markdown_page_breaks.py:227", "shortDescription": {"text": "Commented-code block (6 lines) in tests/test_markdown_page_breaks.py:227"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b10b555fa68bb959", "name": "Commented-code block (6 lines) in tests/issues/_templates/data-quality-template.py:88", "shortDescription": {"text": "Commented-code block (6 lines) in tests/issues/_templates/data-quality-template.py:88"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1a257dff05c14956", "name": "Commented-code block (6 lines) in tests/issues/_templates/filing-access-template.py:99", "shortDescription": {"text": "Commented-code block (6 lines) in tests/issues/_templates/filing-access-template.py:99"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a1448bcbe3bd45e1", "name": "Legacy-named symbol `text_legacy` in tests/issues/regression/test_issue_462_legacy_8k_items.py:86", "shortDescription": {"text": "Legacy-named symbol `text_legacy` in tests/issues/regression/test_issue_462_legacy_8k_items.py:86"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8aeccea59417e356", "name": "Legacy-named symbol `test_cover_page_other_managers_deprecated` in tests/issues/regression/test_issue_523_13f_other_mana", "shortDescription": {"text": "Legacy-named symbol `test_cover_page_other_managers_deprecated` in tests/issues/regression/test_issue_523_13f_other_managers_summary_page.py:111"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-91da24161242b973", "name": "Commented-code block (6 lines) in tests/issues/regression/test_issue_780.py:22", "shortDescription": {"text": "Commented-code block (6 lines) in tests/issues/regression/test_issue_780.py:22"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ec3fec268e58a761", "name": "Commented-code block (7 lines) in tests/fixtures/parser_corpus/build_corpus.py:41", "shortDescription": {"text": "Commented-code block (7 lines) in tests/fixtures/parser_corpus/build_corpus.py:41"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fde9315ec74de093", "name": "Commented-code block (5 lines) in scripts/research_8k_parser.py:60", "shortDescription": {"text": "Commented-code block (5 lines) in scripts/research_8k_parser.py:60"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-af147e02cb53f8a0", "name": "Network/subprocess call without timeout or try/except \u2014 scripts/capture_finding_companies.py:28", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/capture_finding_companies.py:28"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-74928b26395bdbe4", "name": "Network/subprocess call without timeout or try/except \u2014 scripts/capture_sec_viewer.py:36", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/capture_sec_viewer.py:36"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a0f348268f615590", "name": "Legacy-named symbol `parse_with_old` in scripts/manual/check_parser_comparison.py:80", "shortDescription": {"text": "Legacy-named symbol `parse_with_old` in scripts/manual/check_parser_comparison.py:80"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5a3519a090f8bcd1", "name": "Legacy-named symbol `only_old` in scripts/manual/compare_section_detection.py:139", "shortDescription": {"text": "Legacy-named symbol `only_old` in scripts/manual/compare_section_detection.py:139"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-33506b152345294c", "name": "Commented-code block (5 lines) in scripts/batch/batch_entity_facts.py:53", "shortDescription": {"text": "Commented-code block (5 lines) in scripts/batch/batch_entity_facts.py:53"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-bf88521c754fbda4", "name": "Commented-code block (5 lines) in docs/examples/crowdfunding.py:146", "shortDescription": {"text": "Commented-code block (5 lines) in docs/examples/crowdfunding.py:146"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-85a7e628f55f9e9d", "name": "Legacy-named symbol `filings_old` in docs/examples/formtype_demo_examples.py:39", "shortDescription": {"text": "Legacy-named symbol `filings_old` in docs/examples/formtype_demo_examples.py:39"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-607423fc643bf9cc", "name": "Commented-code block (5 lines) in edgar/filtering.py:16", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/filtering.py:16"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-409bde2252c95cb9", "name": "Legacy-named symbol `days_old` in edgar/_filings.py:646", "shortDescription": {"text": "Legacy-named symbol `days_old` in edgar/_filings.py:646"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f7ee5faf32c0e5d1", "name": "Commented-code block (5 lines) in edgar/__init__.py:107", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/__init__.py:107"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3475078e040bd64a", "name": "Commented-code block (5 lines) in edgar/financials.py:218", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/financials.py:218"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ef40490d21c704cd", "name": "Legacy-named symbol `table_soup_copy` in edgar/markdown.py:631", "shortDescription": {"text": "Legacy-named symbol `table_soup_copy` in edgar/markdown.py:631"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6a7a9dc3fade6a92", "name": "Commented-code block (6 lines) in edgar/attachments.py:1029", "shortDescription": {"text": "Commented-code block (6 lines) in edgar/attachments.py:1029"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7c436cc02156632c", "name": "Commented-code block (5 lines) in edgar/httpclient.py:8", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/httpclient.py:8"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fd47570ae8106900", "name": "Commented-code block (7 lines) in edgar/xbrl/models.py:203", "shortDescription": {"text": "Commented-code block (7 lines) in edgar/xbrl/models.py:203"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1cdea0811c4a97d6", "name": "Commented-code block (6 lines) in edgar/xbrl/statements.py:734", "shortDescription": {"text": "Commented-code block (6 lines) in edgar/xbrl/statements.py:734"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7772da02cd791cd8", "name": "Commented-code block (5 lines) in edgar/xbrl/statement_resolver.py:1178", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/xbrl/statement_resolver.py:1178"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-80d3fffc43235e83", "name": "Commented-code block (6 lines) in edgar/xbrl/xbrl.py:629", "shortDescription": {"text": "Commented-code block (6 lines) in edgar/xbrl/xbrl.py:629"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-27f6bcacc7eea3c2", "name": "Commented-code block (5 lines) in edgar/xbrl/rendering.py:1339", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/xbrl/rendering.py:1339"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-72476dac327d3892", "name": "Legacy-named symbol `is_deprecated` in edgar/xbrl/standardization/reverse_index.py:45", "shortDescription": {"text": "Legacy-named symbol `is_deprecated` in edgar/xbrl/standardization/reverse_index.py:45"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f66f5558a0d1a0ef", "name": "Legacy-named symbol `period_copy` in edgar/xbrl/stitching/periods.py:252", "shortDescription": {"text": "Legacy-named symbol `period_copy` in edgar/xbrl/stitching/periods.py:252"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2896870dee19e097", "name": "Commented-code block (7 lines) in edgar/xbrl/stitching/core.py:429", "shortDescription": {"text": "Commented-code block (7 lines) in edgar/xbrl/stitching/core.py:429"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b777779cde5f7cf0", "name": "Commented-code block (7 lines) in edgar/xbrl/parsers/presentation.py:242", "shortDescription": {"text": "Commented-code block (7 lines) in edgar/xbrl/parsers/presentation.py:242"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9ec5b6a2d9810cf9", "name": "Commented-code block (6 lines) in edgar/xbrl/parsers/concepts.py:19", "shortDescription": {"text": "Commented-code block (6 lines) in edgar/xbrl/parsers/concepts.py:19"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9549dfdfd3bd2884", "name": "Commented-code block (5 lines) in edgar/proxy/contests.py:226", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/proxy/contests.py:226"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a762809a5b14796a", "name": "Commented-code block (6 lines) in edgar/reference/tickers.py:571", "shortDescription": {"text": "Commented-code block (6 lines) in edgar/reference/tickers.py:571"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b0e4d4dd1f012948", "name": "Commented-code block (5 lines) in edgar/files/_deprecation.py:18", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/files/_deprecation.py:18"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5381195ead332afd", "name": "Commented-code block (6 lines) in edgar/abs/ten_d.py:42", "shortDescription": {"text": "Commented-code block (6 lines) in edgar/abs/ten_d.py:42"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-eb3d154d8aad86ba", "name": "Commented-code block (7 lines) in edgar/ttm/calculator.py:258", "shortDescription": {"text": "Commented-code block (7 lines) in edgar/ttm/calculator.py:258"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f5217c1cee59afaf", "name": "Legacy-named symbol `demo_company_card_v2` in edgar/display/demo.py:86", "shortDescription": {"text": "Legacy-named symbol `demo_company_card_v2` in edgar/display/demo.py:86"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-499f9f2c536608af", "name": "Legacy-named symbol `statement_mappings_v1` in edgar/entity/mappings_loader.py:28", "shortDescription": {"text": "Legacy-named symbol `statement_mappings_v1` in edgar/entity/mappings_loader.py:28"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b5e9c7398a4b83da", "name": "Commented-code block (5 lines) in edgar/entity/data.py:419", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/entity/data.py:419"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4642d75f39e94c73", "name": "Legacy-named symbol `normalize_unit_legacy` in edgar/entity/unit_handling.py:445", "shortDescription": {"text": "Legacy-named symbol `normalize_unit_legacy` in edgar/entity/unit_handling.py:445"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-58f55ec4cbf90884", "name": "Commented-code block (6 lines) in edgar/entity/entity_facts.py:1472", "shortDescription": {"text": "Commented-code block (6 lines) in edgar/entity/entity_facts.py:1472"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0babf7b1a6395685", "name": "Commented-code block (5 lines) in edgar/entity/enhanced_statement.py:1440", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/entity/enhanced_statement.py:1440"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e96ee7f7b29462d3", "name": "Legacy-named symbol `statement_mappings_v1` in edgar/entity/training/run_learning.py:936", "shortDescription": {"text": "Legacy-named symbol `statement_mappings_v1` in edgar/entity/training/run_learning.py:936"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-08f0cc1f31cbcb04", "name": "Commented-code block (5 lines) in edgar/entity/training/__init__.py:36", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/entity/training/__init__.py:36"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e7323d962f5086d2", "name": "Legacy-named symbol `statement_mappings_v1` in edgar/entity/training/view.py:466", "shortDescription": {"text": "Legacy-named symbol `statement_mappings_v1` in edgar/entity/training/view.py:466"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ffdcb5bd321374c4", "name": "Legacy-named symbol `is_v2` in edgar/funds/nmfp3.py:531", "shortDescription": {"text": "Legacy-named symbol `is_v2` in edgar/funds/nmfp3.py:531"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ea6801ebb4a283ab", "name": "Commented-code block (5 lines) in edgar/bdc/nonaccrual.py:629", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/bdc/nonaccrual.py:629"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5c7da715d5aba2c6", "name": "Commented-code block (5 lines) in edgar/offerings/prospectus.py:1522", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/offerings/prospectus.py:1522"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-558885f1897fcc7a", "name": "Stub function `get_part` (body is just `pass`/`return`) \u2014 edgar/company_reports/_structures.py:33", "shortDescription": {"text": "Stub function `get_part` (body is just `pass`/`return`) \u2014 edgar/company_reports/_structures.py:33"}, "fullDescription": {"text": "Likely an AI scaffold that was never filled in. Remove or implement."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-dbf869b1bcf07901", "name": "Commented-code block (6 lines) in edgar/company_reports/current_report.py:84", "shortDescription": {"text": "Commented-code block (6 lines) in edgar/company_reports/current_report.py:84"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-07e017d981b43134", "name": "Commented-code block (9 lines) in edgar/sgml/concept_extractor.py:572", "shortDescription": {"text": "Commented-code block (9 lines) in edgar/sgml/concept_extractor.py:572"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cfa5763333fda775", "name": "Commented-code block (5 lines) in edgar/documents/form_schema.py:66", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/documents/form_schema.py:66"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5f3130105508f96b", "name": "Commented-code block (6 lines) in edgar/documents/document.py:216", "shortDescription": {"text": "Commented-code block (6 lines) in edgar/documents/document.py:216"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3642b86d22c08736", "name": "Commented-code block (7 lines) in edgar/documents/utils/toc_analyzer.py:104", "shortDescription": {"text": "Commented-code block (7 lines) in edgar/documents/utils/toc_analyzer.py:104"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d6a5171bb7530d1e", "name": "Commented-code block (7 lines) in edgar/documents/utils/streaming.py:86", "shortDescription": {"text": "Commented-code block (7 lines) in edgar/documents/utils/streaming.py:86"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-76f5223ff18c4202", "name": "Commented-code block (5 lines) in edgar/documents/strategies/table_processing.py:631", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/documents/strategies/table_processing.py:631"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9e830a1f87a4b5ff", "name": "Commented-code block (5 lines) in edgar/documents/extractors/hybrid_section_detector.py:54", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/documents/extractors/hybrid_section_detector.py:54"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-48dc6e6bb1633624", "name": "Commented-code block (5 lines) in edgar/documents/extractors/pattern_section_extractor.py:988", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/documents/extractors/pattern_section_extractor.py:988"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7178d8d101f02681", "name": "Commented-code block (5 lines) in edgar/documents/extractors/toc_section_extractor.py:524", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/documents/extractors/toc_section_extractor.py:524"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9077973745d5a775", "name": "Commented-code block (9 lines) in edgar/thirteenf/models.py:29", "shortDescription": {"text": "Commented-code block (9 lines) in edgar/thirteenf/models.py:29"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1e06e2a329f594fc", "name": "Commented-code block (5 lines) in edgar/thirteenf/parsers/infotable_txt/format_multiline.py:192", "shortDescription": {"text": "Commented-code block (5 lines) in edgar/thirteenf/parsers/infotable_txt/format_multiline.py:192"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2c04133e54348533", "name": "Near-duplicate function bodies in 2 places", "shortDescription": {"text": "Near-duplicate function bodies in 2 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nscripts/manual/check_entity_facts.py:load_entity_facts, scripts/batch/batch_entity_facts.py:load_entity_facts\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-49c98f7cedd9c977", "name": "Near-duplicate function bodies in 4 places", "shortDescription": {"text": "Near-duplicate function bodies in 4 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nscripts/harness/models.py:to_dict, scripts/harness/models.py:to_dict, scripts/harness/models.py:to_dict, scripts/harness/models.py:to_dict\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-02525d39071dd2c7", "name": "Near-duplicate function bodies in 5 places", "shortDescription": {"text": "Near-duplicate function bodies in 5 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nscripts/harness/runner.py:run_tests, scripts/harness/runner.py:run, scripts/harness/runner.py:run, scripts/harness/runner.py:run\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-be46ea126aa5d8dc", "name": "Near-duplicate function bodies in 3 places", "shortDescription": {"text": "Near-duplicate function bodies in 3 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nedgar/form144.py:to_dict, edgar/form144.py:to_dict, edgar/form144.py:to_dict\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-89915ea02f2b6005", "name": "Near-duplicate function bodies in 23 places", "shortDescription": {"text": "Near-duplicate function bodies in 23 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nedgar/form144.py:to_context, edgar/muniadvisors.py:to_context, edgar/effect.py:to_context, edgar/xbrl/statements.py:to_context\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/25375"}, "properties": {"repository": "dgunning/edgartools", "repoUrl": "https://github.com/dgunning/edgartools", "branch": "main"}, "results": [{"ruleId": "scanner-51917c3dc257b54f", "level": "note", "message": {"text": "Possibly dead Python function: patched_sections"}, "properties": {"repobilityId": "9f948791694c95d8", "scanner": "scanner-primary", "fingerprint": "51917c3dc257b54f", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/debug_toc_detector_exception.py:23"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-79b456d7378b0a81", "level": "note", "message": {"text": "Possibly dead Python function: traced_parse"}, "properties": {"repobilityId": "e5ab0def9df726db", "scanner": "scanner-primary", "fingerprint": "79b456d7378b0a81", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/trace_htmlparser_hang.py:49"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-6938270025341aea", "level": "note", "message": {"text": "Possibly dead Python function: setup_minio"}, "properties": {"repobilityId": "8ccdb4cb30d45b4b", "scanner": "scanner-primary", "fingerprint": "6938270025341aea", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/check_cloud_storage.py:28"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4edae6f8d9536e4e", "level": "note", "message": {"text": "Possibly dead Python function: setup_s3"}, "properties": {"repobilityId": "37a72a3211465ecd", "scanner": "scanner-primary", "fingerprint": "4edae6f8d9536e4e", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/check_cloud_storage.py:42"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-8268112fa2976d75", "level": "note", "message": {"text": "Possibly dead Python function: setup_r2"}, "properties": {"repobilityId": "d36c82ceaa0cc84d", "scanner": "scanner-primary", "fingerprint": "8268112fa2976d75", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/check_cloud_storage.py:50"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-dc43e1458deac2df", "level": "note", "message": {"text": "Possibly dead Python function: sample_and_test"}, "properties": {"repobilityId": "991b8fa6db17e653", "scanner": "scanner-primary", "fingerprint": "dc43e1458deac2df", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/manual/insider_html.com.py:6"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-78f87d8ca976cfd1", "level": "note", "message": {"text": "Possibly dead Python function: compare_filing"}, "properties": {"repobilityId": "1de4398e10d4f24b", "scanner": "scanner-primary", "fingerprint": "78f87d8ca976cfd1", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/harness/runner.py:108"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e4274439a0ee0e45", "level": "note", "message": {"text": "Possibly dead Python function: benchmark_filing"}, "properties": {"repobilityId": "0181cca9e67117b8", "scanner": "scanner-primary", "fingerprint": "e4274439a0ee0e45", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/harness/runner.py:263"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9f4923f57636ed47", "level": "note", "message": {"text": "Possibly dead Python function: check_regression"}, "properties": {"repobilityId": "de5be21c3a9f9e04", "scanner": "scanner-primary", "fingerprint": "9f4923f57636ed47", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/harness/runner.py:346"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-7af172446edc3936", "level": "note", "message": {"text": "Possibly dead Python function: check_file_numbers"}, "properties": {"repobilityId": "619f6fe8a984b164", "scanner": "scanner-primary", "fingerprint": "7af172446edc3936", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/batch/perf_header.py:21"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9fbbf7634f83d543", "level": "note", "message": {"text": "Possibly dead Python function: show_income_statement"}, "properties": {"repobilityId": "48775da5eaaa6b45", "scanner": "scanner-primary", "fingerprint": "9fbbf7634f83d543", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/batch/perf_financials.py:17"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-644c417cf9186a45", "level": "note", "message": {"text": "Possibly dead Python function: show_balance_sheet"}, "properties": {"repobilityId": "63fec1fd4547dcb6", "scanner": "scanner-primary", "fingerprint": "644c417cf9186a45", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/batch/perf_financials.py:24"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-77d13ff74155e288", "level": "note", "message": {"text": "Possibly dead Python function: investigate_empty_periods"}, "properties": {"repobilityId": "aecd409294560289", "scanner": "scanner-primary", "fingerprint": "77d13ff74155e288", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/quick_investigate.py:33"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4791d5b55683f0c7", "level": "note", "message": {"text": "Possibly dead Python function: investigate_xbrl_parsing"}, "properties": {"repobilityId": "08180dfd1de9fbf3", "scanner": "scanner-primary", "fingerprint": "4791d5b55683f0c7", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/quick_investigate.py:96"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-746975c1142cfdd8", "level": "note", "message": {"text": "Possibly dead Python function: investigate_entity_facts"}, "properties": {"repobilityId": "c37fe11d1ae96748", "scanner": "scanner-primary", "fingerprint": "746975c1142cfdd8", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/quick_investigate.py:133"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d4203ee201a94409", "level": "note", "message": {"text": "Possibly dead Python function: investigate_custom_pattern"}, "properties": {"repobilityId": "bee77bd530acb9da", "scanner": "scanner-primary", "fingerprint": "d4203ee201a94409", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/quick_investigate.py:169"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f12062b3f80d32a2", "level": "note", "message": {"text": "Possibly dead Python function: inspect_cashflow"}, "properties": {"repobilityId": "188149a0b8be6f06", "scanner": "scanner-primary", "fingerprint": "f12062b3f80d32a2", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/visual_inspector.py:633"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-84bb9cbb78243c80", "level": "note", "message": {"text": "Possibly dead Python function: inspect_income"}, "properties": {"repobilityId": "9e005b8a8a18cd9e", "scanner": "scanner-primary", "fingerprint": "84bb9cbb78243c80", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/visual_inspector.py:637"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e15626ed9f8d030e", "level": "note", "message": {"text": "Possibly dead Python function: inspect_balance"}, "properties": {"repobilityId": "b33db24380a2f0d7", "scanner": "scanner-primary", "fingerprint": "e15626ed9f8d030e", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/visual_inspector.py:641"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-db00ac7fcd466354", "level": "note", "message": {"text": "Possibly dead Python function: test_facts_caching"}, "properties": {"repobilityId": "1cbb4814b7176ded", "scanner": "scanner-primary", "fingerprint": "db00ac7fcd466354", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/templates/entity_facts_reproduction.py:194"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f1751ff9aefbf2f4", "level": "note", "message": {"text": "Possibly dead Python function: test_specific_financial_concepts"}, "properties": {"repobilityId": "bd6983ddf1871b42", "scanner": "scanner-primary", "fingerprint": "f1751ff9aefbf2f4", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/templates/entity_facts_reproduction.py:222"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c39a090495d2aacb", "level": "note", "message": {"text": "Possibly dead Python function: test_element_mapping"}, "properties": {"repobilityId": "f968071835a91e5f", "scanner": "scanner-primary", "fingerprint": "c39a090495d2aacb", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/templates/xbrl_parsing_reproduction.py:142"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e8a3f84ebd2c1479", "level": "note", "message": {"text": "Possibly dead Python function: test_context_handling"}, "properties": {"repobilityId": "f057764021941834", "scanner": "scanner-primary", "fingerprint": "e8a3f84ebd2c1479", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/templates/xbrl_parsing_reproduction.py:174"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4820256d3c1fa2db", "level": "note", "message": {"text": "Possibly dead Python function: compare_with_working_filing"}, "properties": {"repobilityId": "e77e1026bb300d66", "scanner": "scanner-primary", "fingerprint": "4820256d3c1fa2db", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/templates/xbrl_parsing_reproduction.py:207"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-0627b85a8506f219", "level": "note", "message": {"text": "Possibly dead Python function: test_multiple_filings"}, "properties": {"repobilityId": "bcc034c9e28054dc", "scanner": "scanner-primary", "fingerprint": "0627b85a8506f219", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tools/templates/empty_periods_reproduction.py:117"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-bff85d48faabd790", "level": "warning", "message": {"text": "Privileged port 29 in use"}, "properties": {"repobilityId": "f09242400239b5a3", "scanner": "scanner-primary", "fingerprint": "bff85d48faabd790", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tests/cassettes/test_warren_buffett.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b8943edeecad1f86", "level": "warning", "message": {"text": "Privileged port 26 in use"}, "properties": {"repobilityId": "9c5e4d9c5edd9bd2", "scanner": "scanner-primary", "fingerprint": "b8943edeecad1f86", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tests/cassettes/test_warren_buffett.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-69e6cc8406d2a058", "level": "warning", "message": {"text": "Privileged port 33 in use"}, "properties": {"repobilityId": "f08e29b4b53f7301", "scanner": "scanner-primary", "fingerprint": "69e6cc8406d2a058", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tests/cassettes/test_warren_buffett.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b2b5b4e278df8787", "level": "warning", "message": {"text": "Privileged port 69 in use"}, "properties": {"repobilityId": "1effa2e6319f4133", "scanner": "scanner-primary", "fingerprint": "b2b5b4e278df8787", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "tests/cassettes/test_ticker_icon.yaml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-a80ef281c2aa4239", "level": "warning", "message": {"text": "Dockerfile runs as root: scripts/vhs/Dockerfile"}, "properties": {"repobilityId": "b54a64c26d89ce6d", "scanner": "scanner-primary", "fingerprint": "a80ef281c2aa4239", "layer": "hardware", "severity": "medium", "confidence": 1.0, "tags": ["security", "container"]}}, {"ruleId": "scanner-0f8068749d53540f", "level": "warning", "message": {"text": "Docker base image uses a mutable or implicit tag: ghcr.io/charmbracelet/vhs:latest"}, "properties": {"repobilityId": "3589cee1ad03b645", "scanner": "scanner-primary", "fingerprint": "0f8068749d53540f", "layer": "hardware", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/vhs/Dockerfile"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-219a92aa9477515f", "level": "error", "message": {"text": "Insecure pattern 'tls_verify_false' in scripts/diagnose_ssl.py:275"}, "properties": {"repobilityId": "79e56411162d693e", "scanner": "scanner-primary", "fingerprint": "219a92aa9477515f", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "tls_verify_false"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/diagnose_ssl.py"}, "region": {"startLine": 275}}}]}, {"ruleId": "scanner-d33e41bb35c87e38", "level": "error", "message": {"text": "Insecure pattern 'eval_used' in scripts/capture_finding_companies.py:67"}, "properties": {"repobilityId": "ff45c2f9e7b11e4e", "scanner": "scanner-primary", "fingerprint": "d33e41bb35c87e38", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "eval_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/capture_finding_companies.py"}, "region": {"startLine": 67}}}]}, {"ruleId": "scanner-b83690d7f0f9639f", "level": "error", "message": {"text": "Insecure pattern 'exec_used' in scripts/capture_finding_companies.py:63"}, "properties": {"repobilityId": "68b3c6da1a75e95a", "scanner": "scanner-primary", "fingerprint": "b83690d7f0f9639f", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "exec_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/capture_finding_companies.py"}, "region": {"startLine": 63}}}]}, {"ruleId": "scanner-2b784c735809f06f", "level": "error", "message": {"text": "Insecure pattern 'tls_verify_false' in scripts/check_diagnostic_states.py:9"}, "properties": {"repobilityId": "1dd20cef53a04f4f", "scanner": "scanner-primary", "fingerprint": "2b784c735809f06f", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "tls_verify_false"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/check_diagnostic_states.py"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-dc77f9eb352e8d63", "level": "error", "message": {"text": "Insecure pattern 'tls_verify_false' in edgar/filesystem.py:213"}, "properties": {"repobilityId": "f851cd2bf514fbf8", "scanner": "scanner-primary", "fingerprint": "dc77f9eb352e8d63", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "tls_verify_false"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "edgar/filesystem.py"}, "region": {"startLine": 213}}}]}, {"ruleId": "scanner-55b2beffa5b9d892", "level": "error", "message": {"text": "Insecure pattern 'eval_used' in edgar/attachments.py:618"}, "properties": {"repobilityId": "9b549e53976131a1", "scanner": "scanner-primary", "fingerprint": "55b2beffa5b9d892", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "eval_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "edgar/attachments.py"}, "region": {"startLine": 618}}}]}, {"ruleId": "scanner-0f86e18c216de0ab", "level": "error", "message": {"text": "Insecure pattern 'exec_used' in edgar/ai/evaluation/evaluators.py:175"}, "properties": {"repobilityId": "a69dc68dbc158471", "scanner": "scanner-primary", "fingerprint": "0f86e18c216de0ab", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "exec_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "edgar/ai/evaluation/evaluators.py"}, "region": {"startLine": 175}}}]}, {"ruleId": "scanner-fa818bceb4783e93", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "feb8ab741f258e6c", "scanner": "scanner-primary", "fingerprint": "fa818bceb4783e93", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/release-publish.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-7cc697571ab8297e", "level": "note", "message": {"text": "Very large file: tests/test_entity_facts.py (1447 lines)"}, "properties": {"repobilityId": "7794c8dcd9300b2a", "scanner": "scanner-primary", "fingerprint": "7cc697571ab8297e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e526a6a8614d8d89", "level": "note", "message": {"text": "Very large file: tests/test_ttm.py (1869 lines)"}, "properties": {"repobilityId": "ad9d0892af8ae1a8", "scanner": "scanner-primary", "fingerprint": "e526a6a8614d8d89", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-97c0f7b0bfaa15c0", "level": "note", "message": {"text": "Very large file: edgar/_filings.py (2776 lines)"}, "properties": {"repobilityId": "3166c43ca00a9661", "scanner": "scanner-primary", "fingerprint": "97c0f7b0bfaa15c0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6ef2540b3f831787", "level": "note", "message": {"text": "Very large file: edgar/earnings.py (1918 lines)"}, "properties": {"repobilityId": "53eefe2b532990c6", "scanner": "scanner-primary", "fingerprint": "6ef2540b3f831787", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0771e757e8995f93", "level": "note", "message": {"text": "Very large file: edgar/xbrl/facts.py (1812 lines)"}, "properties": {"repobilityId": "391f732e6e851dd4", "scanner": "scanner-primary", "fingerprint": "0771e757e8995f93", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-24c17fb34a05fb2a", "level": "note", "message": {"text": "Very large file: edgar/xbrl/statements.py (3592 lines)"}, "properties": {"repobilityId": "14b7efbefe06c002", "scanner": "scanner-primary", "fingerprint": "24c17fb34a05fb2a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-2678827f5d414a8c", "level": "note", "message": {"text": "Very large file: edgar/xbrl/statement_resolver.py (1306 lines)"}, "properties": {"repobilityId": "18db0b8c09a7528c", "scanner": "scanner-primary", "fingerprint": "2678827f5d414a8c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b8b673824e56c4eb", "level": "note", "message": {"text": "Very large file: edgar/xbrl/xbrl.py (2899 lines)"}, "properties": {"repobilityId": "942820826f83535b", "scanner": "scanner-primary", "fingerprint": "b8b673824e56c4eb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5c41c3a3e575b238", "level": "note", "message": {"text": "Very large file: edgar/xbrl/rendering.py (2202 lines)"}, "properties": {"repobilityId": "a1d2d4f63ccb2cc8", "scanner": "scanner-primary", "fingerprint": "5c41c3a3e575b238", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-453633fae4690293", "level": "note", "message": {"text": "Very large file: edgar/xbrl/analysis/ratios.py (1351 lines)"}, "properties": {"repobilityId": "d51062228eb3a8a6", "scanner": "scanner-primary", "fingerprint": "453633fae4690293", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3ecaed29417f1347", "level": "note", "message": {"text": "Very large file: edgar/proxy/core.py (1282 lines)"}, "properties": {"repobilityId": "d10b96d19768fa61", "scanner": "scanner-primary", "fingerprint": "3ecaed29417f1347", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-4d4cf34acc79fcc7", "level": "note", "message": {"text": "Very large file: edgar/proxy/html_extractor.py (1363 lines)"}, "properties": {"repobilityId": "8afa3e8c88b510ab", "scanner": "scanner-primary", "fingerprint": "4d4cf34acc79fcc7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a5027ada9094112c", "level": "note", "message": {"text": "Very large file: edgar/files/html.py (1770 lines)"}, "properties": {"repobilityId": "4a76c8fd6e26cbce", "scanner": "scanner-primary", "fingerprint": "a5027ada9094112c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-cc3a0c25760a9450", "level": "note", "message": {"text": "Very large file: edgar/entity/core.py (1788 lines)"}, "properties": {"repobilityId": "1efb71706dec6e5a", "scanner": "scanner-primary", "fingerprint": "cc3a0c25760a9450", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-973058bd91a37acc", "level": "note", "message": {"text": "Very large file: edgar/entity/entity_facts.py (2601 lines)"}, "properties": {"repobilityId": "4c70adebeaacb096", "scanner": "scanner-primary", "fingerprint": "973058bd91a37acc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-997ba3bc82b8ee63", "level": "note", "message": {"text": "Very large file: edgar/entity/enhanced_statement.py (3025 lines)"}, "properties": {"repobilityId": "70a2ddb024ef8c32", "scanner": "scanner-primary", "fingerprint": "997ba3bc82b8ee63", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5be07c5745ee24af", "level": "note", "message": {"text": "Very large file: edgar/entity/training/run_learning.py (1221 lines)"}, "properties": {"repobilityId": "948991fd4b52e01a", "scanner": "scanner-primary", "fingerprint": "5be07c5745ee24af", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-077faad5b8158928", "level": "note", "message": {"text": "Very large file: edgar/funds/reports.py (1662 lines)"}, "properties": {"repobilityId": "52eb50f3f655f3e9", "scanner": "scanner-primary", "fingerprint": "077faad5b8158928", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3648716baa296457", "level": "note", "message": {"text": "Very large file: edgar/offerings/formc.py (1240 lines)"}, "properties": {"repobilityId": "ae115c5cfb619ac5", "scanner": "scanner-primary", "fingerprint": "3648716baa296457", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-8718b4ac966cc4bc", "level": "note", "message": {"text": "Very large file: edgar/offerings/prospectus.py (1785 lines)"}, "properties": {"repobilityId": "67bf64475b4fcafd", "scanner": "scanner-primary", "fingerprint": "8718b4ac966cc4bc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-71d024489c0fbb62", "level": "note", "message": {"text": "Very large file: edgar/ai/evaluation/test_cases.py (1451 lines)"}, "properties": {"repobilityId": "4dee7d2c55cce51e", "scanner": "scanner-primary", "fingerprint": "71d024489c0fbb62", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5359e6aabc066970", "level": "note", "message": {"text": "Very large file: edgar/documents/utils/toc_analyzer.py (1545 lines)"}, "properties": {"repobilityId": "0c68f7127418ebe1", "scanner": "scanner-primary", "fingerprint": "5359e6aabc066970", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b7b5df25d91dfe8a", "level": "note", "message": {"text": "Very large file: edgar/documents/extractors/pattern_section_extractor.py (1326 lines)"}, "properties": {"repobilityId": "4524586afca04ebf", "scanner": "scanner-primary", "fingerprint": "b7b5df25d91dfe8a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d54b61fbbd419155", "level": "note", "message": {"text": "Very large file: edgar/thirteenf/models.py (1445 lines)"}, "properties": {"repobilityId": "c062b886c7c8dbc2", "scanner": "scanner-primary", "fingerprint": "d54b61fbbd419155", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "bf1baca4c885d133", "scanner": "scanner-primary", "fingerprint": "3ab5d313dda8e5f9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["debug", "cleanup", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-72b2a6250083a784", "level": "warning", "message": {"text": "Placeholder or mock-heavy implementation detected"}, "properties": {"repobilityId": "0361088866b30263", "scanner": "scanner-primary", "fingerprint": "72b2a6250083a784", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "incomplete", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "f20e06e6608bca9d", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-37409d5d6004692f", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/agents/test-specialist.md"}, "properties": {"repobilityId": "dfbcfd8e47db8fe6", "scanner": "scanner-primary", "fingerprint": "37409d5d6004692f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/agents/test-specialist.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-15a423213a0328fe", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/agents/release-specialist.md"}, "properties": {"repobilityId": "db47ed35d66e5364", "scanner": "scanner-primary", "fingerprint": "15a423213a0328fe", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/agents/release-specialist.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-5586d1d57726a492", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/agents/notebook-writer.md"}, "properties": {"repobilityId": "a030c58e8a0aac95", "scanner": "scanner-primary", "fingerprint": "5586d1d57726a492", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/agents/notebook-writer.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c82df4dab4e4daca", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/agents/docs-writer.md"}, "properties": {"repobilityId": "87431d6a660d54b6", "scanner": "scanner-primary", "fingerprint": "c82df4dab4e4daca", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/agents/docs-writer.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-13fd6e6d65be3690", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/commands/task.md"}, "properties": {"repobilityId": "075e80392db524bf", "scanner": "scanner-primary", "fingerprint": "13fd6e6d65be3690", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/commands/task.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-1b6f17dd5ed53e5b", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/commands/triage.md"}, "properties": {"repobilityId": "4e658da88f6239e8", "scanner": "scanner-primary", "fingerprint": "1b6f17dd5ed53e5b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/commands/triage.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-864aed499ba5c768", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/commands/implement.md"}, "properties": {"repobilityId": "4a3d58601578c8d3", "scanner": "scanner-primary", "fingerprint": "864aed499ba5c768", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/commands/implement.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e970e18fd31eee09", "level": "error", "message": {"text": "Agent instruction/config may expose a secret: edgar/xbrl/CLAUDE.md"}, "properties": {"repobilityId": "3dab396ae3baa7d2", "scanner": "scanner-primary", "fingerprint": "e970e18fd31eee09", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["agent-instructions", "secrets", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "edgar/xbrl/CLAUDE.md"}, "region": {"startLine": 60}}}]}, {"ruleId": "scanner-af0b6f6787041034", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/test_toc_analyzer_form_aware_bare_item.py:58"}, "properties": {"repobilityId": "2c0d73459ded47fe", "scanner": "scanner-primary", "fingerprint": "af0b6f6787041034", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1ecc723ba96d05a1", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_xbrl_stitching.py:505"}, "properties": {"repobilityId": "24c6109087b5fe24", "scanner": "scanner-primary", "fingerprint": "1ecc723ba96d05a1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-153d30f07a0a13be", "level": "note", "message": {"text": "Legacy-named symbol `only_old` in tests/test_section_detection_comparison.py:110"}, "properties": {"repobilityId": "42dd684048bf8d6a", "scanner": "scanner-primary", "fingerprint": "153d30f07a0a13be", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ebb6b12281d14afe", "level": "note", "message": {"text": "Legacy-named symbol `test_get_known_returns_copy` in tests/test_abstract_detection.py:79"}, "properties": {"repobilityId": "0c6628aa2fb088f7", "scanner": "scanner-primary", "fingerprint": "ebb6b12281d14afe", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-619cd49ac7b208da", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_documents.py:272"}, "properties": {"repobilityId": "126e55697e942094", "scanner": "scanner-primary", "fingerprint": "619cd49ac7b208da", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-59981fb7dd3e6e77", "level": "note", "message": {"text": "Legacy-named symbol `filings_copy` in tests/test_filing.py:499"}, "properties": {"repobilityId": "d3a137ba02695d6d", "scanner": "scanner-primary", "fingerprint": "59981fb7dd3e6e77", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-3a669eae08f7286d", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_feat004_enhanced_validation.py:296"}, "properties": {"repobilityId": "8c51b5d563a70fe0", "scanner": "scanner-primary", "fingerprint": "3a669eae08f7286d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-67290cdc71cf6c7f", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/test_section_tables_toc_fix.py:57"}, "properties": {"repobilityId": "ca0c02759635dc31", "scanner": "scanner-primary", "fingerprint": "67290cdc71cf6c7f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-81a76b49ffe28461", "level": "note", "message": {"text": "Legacy-named symbol `test_company_text_deprecated` in tests/test_ai_text_methods.py:116"}, "properties": {"repobilityId": "69d8d681ea540f25", "scanner": "scanner-primary", "fingerprint": "81a76b49ffe28461", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6be02e4c5e47325e", "level": "note", "message": {"text": "Legacy-named symbol `original_path_backup` in tests/test_storage_management.py:414"}, "properties": {"repobilityId": "347bb2e8e5f2ef87", "scanner": "scanner-primary", "fingerprint": "6be02e4c5e47325e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-749cb309701598e0", "level": "note", "message": {"text": "Legacy-named symbol `test_install_skill_fallback_to_copy` in tests/test_ai_skill_export.py:597"}, "properties": {"repobilityId": "c14ca2e61dcaea85", "scanner": "scanner-primary", "fingerprint": "749cb309701598e0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-eb80b1cc27108b0e", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/test_thirteenf.py:36"}, "properties": {"repobilityId": "4ee43783b995f34b", "scanner": "scanner-primary", "fingerprint": "eb80b1cc27108b0e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aa03ccdc505e6051", "level": "note", "message": {"text": "Legacy-named symbol `filings_10k_copy` in tests/test_entity_filings.py:24"}, "properties": {"repobilityId": "17dd0a68569e5270", "scanner": "scanner-primary", "fingerprint": "aa03ccdc505e6051", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-bc17d0dd72dea4df", "level": "note", "message": {"text": "Legacy-named symbol `test_units_returns_copy` in tests/test_earnings.py:165"}, "properties": {"repobilityId": "f98d987ec2b00c7c", "scanner": "scanner-primary", "fingerprint": "bc17d0dd72dea4df", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-09e427150fa564fd", "level": "note", "message": {"text": "Legacy-named symbol `df_old` in tests/test_statement_view.py:83"}, "properties": {"repobilityId": "f5d209e1f7fad057", "scanner": "scanner-primary", "fingerprint": "09e427150fa564fd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-31555e97f3213a93", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/test_markdown_page_breaks.py:227"}, "properties": {"repobilityId": "4c183d981c2cc072", "scanner": "scanner-primary", "fingerprint": "31555e97f3213a93", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b10b555fa68bb959", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/issues/_templates/data-quality-template.py:88"}, "properties": {"repobilityId": "e4ad91db8ad702e6", "scanner": "scanner-primary", "fingerprint": "b10b555fa68bb959", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1a257dff05c14956", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/issues/_templates/filing-access-template.py:99"}, "properties": {"repobilityId": "980c97939d854b54", "scanner": "scanner-primary", "fingerprint": "1a257dff05c14956", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a1448bcbe3bd45e1", "level": "note", "message": {"text": "Legacy-named symbol `text_legacy` in tests/issues/regression/test_issue_462_legacy_8k_items.py:86"}, "properties": {"repobilityId": "471dece0c861b347", "scanner": "scanner-primary", "fingerprint": "a1448bcbe3bd45e1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8aeccea59417e356", "level": "note", "message": {"text": "Legacy-named symbol `test_cover_page_other_managers_deprecated` in tests/issues/regression/test_issue_523_13f_other_managers_summary_page.py:111"}, "properties": {"repobilityId": "5dca51aa97d7d97d", "scanner": "scanner-primary", "fingerprint": "8aeccea59417e356", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-91da24161242b973", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/issues/regression/test_issue_780.py:22"}, "properties": {"repobilityId": "72d69caf4582ff7d", "scanner": "scanner-primary", "fingerprint": "91da24161242b973", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ec3fec268e58a761", "level": "none", "message": {"text": "Commented-code block (7 lines) in tests/fixtures/parser_corpus/build_corpus.py:41"}, "properties": {"repobilityId": "b2082675f84353ed", "scanner": "scanner-primary", "fingerprint": "ec3fec268e58a761", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fde9315ec74de093", "level": "none", "message": {"text": "Commented-code block (5 lines) in scripts/research_8k_parser.py:60"}, "properties": {"repobilityId": "bf4bd5942b866f48", "scanner": "scanner-primary", "fingerprint": "fde9315ec74de093", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-af147e02cb53f8a0", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/capture_finding_companies.py:28"}, "properties": {"repobilityId": "e4a92ec2416d8692", "scanner": "scanner-primary", "fingerprint": "af147e02cb53f8a0", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-74928b26395bdbe4", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/capture_sec_viewer.py:36"}, "properties": {"repobilityId": "3d3bfae9fcd18e43", "scanner": "scanner-primary", "fingerprint": "74928b26395bdbe4", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a0f348268f615590", "level": "note", "message": {"text": "Legacy-named symbol `parse_with_old` in scripts/manual/check_parser_comparison.py:80"}, "properties": {"repobilityId": "65674013083770d9", "scanner": "scanner-primary", "fingerprint": "a0f348268f615590", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5a3519a090f8bcd1", "level": "note", "message": {"text": "Legacy-named symbol `only_old` in scripts/manual/compare_section_detection.py:139"}, "properties": {"repobilityId": "3eb2d6fa668c9d31", "scanner": "scanner-primary", "fingerprint": "5a3519a090f8bcd1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-33506b152345294c", "level": "none", "message": {"text": "Commented-code block (5 lines) in scripts/batch/batch_entity_facts.py:53"}, "properties": {"repobilityId": "580bfd06666e172f", "scanner": "scanner-primary", "fingerprint": "33506b152345294c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bf88521c754fbda4", "level": "none", "message": {"text": "Commented-code block (5 lines) in docs/examples/crowdfunding.py:146"}, "properties": {"repobilityId": "281a26a78619852a", "scanner": "scanner-primary", "fingerprint": "bf88521c754fbda4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-85a7e628f55f9e9d", "level": "note", "message": {"text": "Legacy-named symbol `filings_old` in docs/examples/formtype_demo_examples.py:39"}, "properties": {"repobilityId": "3432b850ba295806", "scanner": "scanner-primary", "fingerprint": "85a7e628f55f9e9d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-607423fc643bf9cc", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/filtering.py:16"}, "properties": {"repobilityId": "f9340acee66898ca", "scanner": "scanner-primary", "fingerprint": "607423fc643bf9cc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-409bde2252c95cb9", "level": "note", "message": {"text": "Legacy-named symbol `days_old` in edgar/_filings.py:646"}, "properties": {"repobilityId": "5d7964d9d3052ae5", "scanner": "scanner-primary", "fingerprint": "409bde2252c95cb9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f7ee5faf32c0e5d1", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/__init__.py:107"}, "properties": {"repobilityId": "7079ccab746b4dac", "scanner": "scanner-primary", "fingerprint": "f7ee5faf32c0e5d1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3475078e040bd64a", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/financials.py:218"}, "properties": {"repobilityId": "6476ccc4fbbf2222", "scanner": "scanner-primary", "fingerprint": "3475078e040bd64a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ef40490d21c704cd", "level": "note", "message": {"text": "Legacy-named symbol `table_soup_copy` in edgar/markdown.py:631"}, "properties": {"repobilityId": "3c83c46b0843da2a", "scanner": "scanner-primary", "fingerprint": "ef40490d21c704cd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6a7a9dc3fade6a92", "level": "none", "message": {"text": "Commented-code block (6 lines) in edgar/attachments.py:1029"}, "properties": {"repobilityId": "2ce3a769fecdf13f", "scanner": "scanner-primary", "fingerprint": "6a7a9dc3fade6a92", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7c436cc02156632c", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/httpclient.py:8"}, "properties": {"repobilityId": "efb3c25d2c10ceb3", "scanner": "scanner-primary", "fingerprint": "7c436cc02156632c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fd47570ae8106900", "level": "none", "message": {"text": "Commented-code block (7 lines) in edgar/xbrl/models.py:203"}, "properties": {"repobilityId": "4bf4b79f01404a85", "scanner": "scanner-primary", "fingerprint": "fd47570ae8106900", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1cdea0811c4a97d6", "level": "none", "message": {"text": "Commented-code block (6 lines) in edgar/xbrl/statements.py:734"}, "properties": {"repobilityId": "454210915ddda11a", "scanner": "scanner-primary", "fingerprint": "1cdea0811c4a97d6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7772da02cd791cd8", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/xbrl/statement_resolver.py:1178"}, "properties": {"repobilityId": "2d4a55d4d3d4c139", "scanner": "scanner-primary", "fingerprint": "7772da02cd791cd8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-80d3fffc43235e83", "level": "none", "message": {"text": "Commented-code block (6 lines) in edgar/xbrl/xbrl.py:629"}, "properties": {"repobilityId": "7003f85389745b55", "scanner": "scanner-primary", "fingerprint": "80d3fffc43235e83", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-27f6bcacc7eea3c2", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/xbrl/rendering.py:1339"}, "properties": {"repobilityId": "d50d37ecf81e16cb", "scanner": "scanner-primary", "fingerprint": "27f6bcacc7eea3c2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-72476dac327d3892", "level": "note", "message": {"text": "Legacy-named symbol `is_deprecated` in edgar/xbrl/standardization/reverse_index.py:45"}, "properties": {"repobilityId": "300fb79deeb9a705", "scanner": "scanner-primary", "fingerprint": "72476dac327d3892", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f66f5558a0d1a0ef", "level": "note", "message": {"text": "Legacy-named symbol `period_copy` in edgar/xbrl/stitching/periods.py:252"}, "properties": {"repobilityId": "c0ae1e2d6e780b33", "scanner": "scanner-primary", "fingerprint": "f66f5558a0d1a0ef", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-2896870dee19e097", "level": "none", "message": {"text": "Commented-code block (7 lines) in edgar/xbrl/stitching/core.py:429"}, "properties": {"repobilityId": "23a21752256c1b9e", "scanner": "scanner-primary", "fingerprint": "2896870dee19e097", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b777779cde5f7cf0", "level": "none", "message": {"text": "Commented-code block (7 lines) in edgar/xbrl/parsers/presentation.py:242"}, "properties": {"repobilityId": "6c78e3f93acd31a3", "scanner": "scanner-primary", "fingerprint": "b777779cde5f7cf0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9ec5b6a2d9810cf9", "level": "none", "message": {"text": "Commented-code block (6 lines) in edgar/xbrl/parsers/concepts.py:19"}, "properties": {"repobilityId": "60fdd159c115b46f", "scanner": "scanner-primary", "fingerprint": "9ec5b6a2d9810cf9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9549dfdfd3bd2884", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/proxy/contests.py:226"}, "properties": {"repobilityId": "1ee1e0ae2a8ef864", "scanner": "scanner-primary", "fingerprint": "9549dfdfd3bd2884", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a762809a5b14796a", "level": "none", "message": {"text": "Commented-code block (6 lines) in edgar/reference/tickers.py:571"}, "properties": {"repobilityId": "9754313cd0cc1cdc", "scanner": "scanner-primary", "fingerprint": "a762809a5b14796a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b0e4d4dd1f012948", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/files/_deprecation.py:18"}, "properties": {"repobilityId": "d0fd5aef5c64e054", "scanner": "scanner-primary", "fingerprint": "b0e4d4dd1f012948", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5381195ead332afd", "level": "none", "message": {"text": "Commented-code block (6 lines) in edgar/abs/ten_d.py:42"}, "properties": {"repobilityId": "ede7031776f662aa", "scanner": "scanner-primary", "fingerprint": "5381195ead332afd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eb3d154d8aad86ba", "level": "none", "message": {"text": "Commented-code block (7 lines) in edgar/ttm/calculator.py:258"}, "properties": {"repobilityId": "d02f15bffa63a6ba", "scanner": "scanner-primary", "fingerprint": "eb3d154d8aad86ba", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f5217c1cee59afaf", "level": "note", "message": {"text": "Legacy-named symbol `demo_company_card_v2` in edgar/display/demo.py:86"}, "properties": {"repobilityId": "8517a2a930f25bdf", "scanner": "scanner-primary", "fingerprint": "f5217c1cee59afaf", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-499f9f2c536608af", "level": "note", "message": {"text": "Legacy-named symbol `statement_mappings_v1` in edgar/entity/mappings_loader.py:28"}, "properties": {"repobilityId": "c34afa8617320670", "scanner": "scanner-primary", "fingerprint": "499f9f2c536608af", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-b5e9c7398a4b83da", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/entity/data.py:419"}, "properties": {"repobilityId": "a7f958b30fd0d154", "scanner": "scanner-primary", "fingerprint": "b5e9c7398a4b83da", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4642d75f39e94c73", "level": "note", "message": {"text": "Legacy-named symbol `normalize_unit_legacy` in edgar/entity/unit_handling.py:445"}, "properties": {"repobilityId": "70ad67c65d5ffb2d", "scanner": "scanner-primary", "fingerprint": "4642d75f39e94c73", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-58f55ec4cbf90884", "level": "none", "message": {"text": "Commented-code block (6 lines) in edgar/entity/entity_facts.py:1472"}, "properties": {"repobilityId": "aa4ed22797ac8bb4", "scanner": "scanner-primary", "fingerprint": "58f55ec4cbf90884", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0babf7b1a6395685", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/entity/enhanced_statement.py:1440"}, "properties": {"repobilityId": "909f13fc4698f8d5", "scanner": "scanner-primary", "fingerprint": "0babf7b1a6395685", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e96ee7f7b29462d3", "level": "note", "message": {"text": "Legacy-named symbol `statement_mappings_v1` in edgar/entity/training/run_learning.py:936"}, "properties": {"repobilityId": "470797b644b65c68", "scanner": "scanner-primary", "fingerprint": "e96ee7f7b29462d3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-08f0cc1f31cbcb04", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/entity/training/__init__.py:36"}, "properties": {"repobilityId": "b2837239272d2d0e", "scanner": "scanner-primary", "fingerprint": "08f0cc1f31cbcb04", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e7323d962f5086d2", "level": "note", "message": {"text": "Legacy-named symbol `statement_mappings_v1` in edgar/entity/training/view.py:466"}, "properties": {"repobilityId": "178f5c80310d63ee", "scanner": "scanner-primary", "fingerprint": "e7323d962f5086d2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ffdcb5bd321374c4", "level": "note", "message": {"text": "Legacy-named symbol `is_v2` in edgar/funds/nmfp3.py:531"}, "properties": {"repobilityId": "5d494c265da56784", "scanner": "scanner-primary", "fingerprint": "ffdcb5bd321374c4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ea6801ebb4a283ab", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/bdc/nonaccrual.py:629"}, "properties": {"repobilityId": "edc51aeb74e9ad4e", "scanner": "scanner-primary", "fingerprint": "ea6801ebb4a283ab", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5c7da715d5aba2c6", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/offerings/prospectus.py:1522"}, "properties": {"repobilityId": "f2de406d39e69d90", "scanner": "scanner-primary", "fingerprint": "5c7da715d5aba2c6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-558885f1897fcc7a", "level": "note", "message": {"text": "Stub function `get_part` (body is just `pass`/`return`) \u2014 edgar/company_reports/_structures.py:33"}, "properties": {"repobilityId": "b6921dd51066984d", "scanner": "scanner-primary", "fingerprint": "558885f1897fcc7a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "empty-handler", "dead-code"]}}, {"ruleId": "scanner-dbf869b1bcf07901", "level": "none", "message": {"text": "Commented-code block (6 lines) in edgar/company_reports/current_report.py:84"}, "properties": {"repobilityId": "a9a95f5b5ab56c3b", "scanner": "scanner-primary", "fingerprint": "dbf869b1bcf07901", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-07e017d981b43134", "level": "none", "message": {"text": "Commented-code block (9 lines) in edgar/sgml/concept_extractor.py:572"}, "properties": {"repobilityId": "d25384a18dc8419b", "scanner": "scanner-primary", "fingerprint": "07e017d981b43134", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cfa5763333fda775", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/documents/form_schema.py:66"}, "properties": {"repobilityId": "0cae3f9336a0aa68", "scanner": "scanner-primary", "fingerprint": "cfa5763333fda775", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5f3130105508f96b", "level": "none", "message": {"text": "Commented-code block (6 lines) in edgar/documents/document.py:216"}, "properties": {"repobilityId": "f8bb96b854daa418", "scanner": "scanner-primary", "fingerprint": "5f3130105508f96b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3642b86d22c08736", "level": "none", "message": {"text": "Commented-code block (7 lines) in edgar/documents/utils/toc_analyzer.py:104"}, "properties": {"repobilityId": "a3bb699c157a8a9e", "scanner": "scanner-primary", "fingerprint": "3642b86d22c08736", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d6a5171bb7530d1e", "level": "none", "message": {"text": "Commented-code block (7 lines) in edgar/documents/utils/streaming.py:86"}, "properties": {"repobilityId": "a0f55aff2ae75dcb", "scanner": "scanner-primary", "fingerprint": "d6a5171bb7530d1e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-76f5223ff18c4202", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/documents/strategies/table_processing.py:631"}, "properties": {"repobilityId": "8bfa1d9cad7a481e", "scanner": "scanner-primary", "fingerprint": "76f5223ff18c4202", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9e830a1f87a4b5ff", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/documents/extractors/hybrid_section_detector.py:54"}, "properties": {"repobilityId": "5fed95af42a4d7a9", "scanner": "scanner-primary", "fingerprint": "9e830a1f87a4b5ff", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-48dc6e6bb1633624", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/documents/extractors/pattern_section_extractor.py:988"}, "properties": {"repobilityId": "2dc02f80b757605b", "scanner": "scanner-primary", "fingerprint": "48dc6e6bb1633624", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7178d8d101f02681", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/documents/extractors/toc_section_extractor.py:524"}, "properties": {"repobilityId": "028762fbc084175f", "scanner": "scanner-primary", "fingerprint": "7178d8d101f02681", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9077973745d5a775", "level": "none", "message": {"text": "Commented-code block (9 lines) in edgar/thirteenf/models.py:29"}, "properties": {"repobilityId": "ac570afc8a8f26e2", "scanner": "scanner-primary", "fingerprint": "9077973745d5a775", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1e06e2a329f594fc", "level": "none", "message": {"text": "Commented-code block (5 lines) in edgar/thirteenf/parsers/infotable_txt/format_multiline.py:192"}, "properties": {"repobilityId": "440d041130a0ae31", "scanner": "scanner-primary", "fingerprint": "1e06e2a329f594fc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "36dc6324414b6a4f", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-49c98f7cedd9c977", "level": "note", "message": {"text": "Near-duplicate function bodies in 4 places"}, "properties": {"repobilityId": "2185a0756ecfda0d", "scanner": "scanner-primary", "fingerprint": "49c98f7cedd9c977", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-49c98f7cedd9c977", "level": "note", "message": {"text": "Near-duplicate function bodies in 4 places"}, "properties": {"repobilityId": "80b4e40f89f1edd8", "scanner": "scanner-primary", "fingerprint": "49c98f7cedd9c977", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-02525d39071dd2c7", "level": "note", "message": {"text": "Near-duplicate function bodies in 5 places"}, "properties": {"repobilityId": "aca1f6a7b6d4ec3d", "scanner": "scanner-primary", "fingerprint": "02525d39071dd2c7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "7b919bec2a791689", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "b518e3185bb77509", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "f1dc3f54fa55bcb4", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "0de92fa84bd20614", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "26027a8defd65572", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "56945001800612e7", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-49c98f7cedd9c977", "level": "note", "message": {"text": "Near-duplicate function bodies in 4 places"}, "properties": {"repobilityId": "f89c6ca6c72c8ba0", "scanner": "scanner-primary", "fingerprint": "49c98f7cedd9c977", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "8b1229469d242261", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "0225ed74ef0a38bb", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "cd2d2b2641d99e95", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "2e1ff7c6329cd208", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "bde5a5eec0c60544", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "b0c1703121461b93", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-89915ea02f2b6005", "level": "note", "message": {"text": "Near-duplicate function bodies in 23 places"}, "properties": {"repobilityId": "ab7f6f6f426b4645", "scanner": "scanner-primary", "fingerprint": "89915ea02f2b6005", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "be993aa7c9b12092", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "88ae6cfc72baeb5d", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}]}]}