{"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-378441d45eae600d", "name": "Possibly dead Python function: sort_key", "shortDescription": {"text": "Possibly dead Python function: sort_key"}, "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-772d36bf12fa72c1", "name": "Possibly dead Python function: row_source", "shortDescription": {"text": "Possibly dead Python function: row_source"}, "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-f7b1ff2322b25798", "name": "Possibly dead Python function: unique_by_sha", "shortDescription": {"text": "Possibly dead Python function: unique_by_sha"}, "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-e272abc877cd2989", "name": "Possibly dead Python function: initialize", "shortDescription": {"text": "Possibly dead Python function: initialize"}, "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-ce69e83b5d13f942", "name": "Possibly dead Python function: detect_Command", "shortDescription": {"text": "Possibly dead Python function: detect_Command"}, "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-200d9d9659dbc00b", "name": "Possibly dead Python function: detect_Data", "shortDescription": {"text": "Possibly dead Python function: detect_Data"}, "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-938dbfa513216b20", "name": "Possibly dead Python function: detect_Output", "shortDescription": {"text": "Possibly dead Python function: detect_Output"}, "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-28c749af8dcaeb7b", "name": "Possibly dead Python function: detect_Tool", "shortDescription": {"text": "Possibly dead Python function: detect_Tool"}, "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-aec782a3062bea84", "name": "Possibly dead Python function: detect_Requirement", "shortDescription": {"text": "Possibly dead Python function: detect_Requirement"}, "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-85c6ea7f0dd1fa89", "name": "Possibly dead Python function: detect_Help", "shortDescription": {"text": "Possibly dead Python function: detect_Help"}, "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-11c377e183e9a464", "name": "Possibly dead Python function: detect_Tool", "shortDescription": {"text": "Possibly dead Python function: detect_Tool"}, "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-9710c8d059e53154", "name": "No frontend routes/components detected", "shortDescription": {"text": "No frontend routes/components detected"}, "fullDescription": {"text": "No React/Vue/Next routes were found. This is fine for backend-only repos."}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-27924aa79fa4a517", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "astral-sh/setup-uv@v7 can move without a code change in this repo. Pin third-party actions to a reviewed 40-character commit SHA."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-af50acd4bc59bdfe", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "astral-sh/setup-uv@v7 can move without a code change in this repo. Pin third-party actions to a reviewed 40-character commit SHA."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-fee3aa21fae52ede", "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-46c644c6227e4d4a", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "astral-sh/setup-uv@v7 can move without a code change in this repo. Pin third-party actions to a reviewed 40-character commit SHA."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1838a141491ce38c", "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-cb2b382d24fcc60f", "name": "Very large file: galaxy-tool-refactor-cli/tests/test_cli.py (1230 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-refactor-cli/tests/test_cli.py (1230 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-c9ad955ed4783aa2", "name": "Very large file: galaxy-tool-refactor-cli/src/galaxy_tool_refactor_cli/cli.py (1449 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-refactor-cli/src/galaxy_tool_refactor_cli/cli.py (1449 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-ec684477265e558f", "name": "Very large file: scripts/measure.py (9069 lines)", "shortDescription": {"text": "Very large file: scripts/measure.py (9069 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-96352777c5ad517e", "name": "Very large file: scripts/corpus_check.py (4380 lines)", "shortDescription": {"text": "Very large file: scripts/corpus_check.py (4380 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-ddd2256e44fc0ce7", "name": "Very large file: galaxy-tool-source/tests/test_measure.py (2621 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/tests/test_measure.py (2621 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-29c858e5a234a58e", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v20_09/galaxy.py (6950 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v20_09/galaxy.py (6950 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-2710d50209950164", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v25_0/galaxy.py (11437 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v25_0/galaxy.py (11437 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-7a767c12dccac31f", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v24_2/galaxy.py (11327 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v24_2/galaxy.py (11327 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-1aa922323eda2e0c", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v24_0/galaxy.py (9460 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v24_0/galaxy.py (9460 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-fa79a432a00750ab", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v20_05/galaxy.py (6875 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v20_05/galaxy.py (6875 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-5374a87675c702d5", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v19_09/galaxy.py (6779 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v19_09/galaxy.py (6779 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-7f6081dc7c261fc2", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v22_05/galaxy.py (8737 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v22_05/galaxy.py (8737 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-16330c022e3bd18d", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v18_05/galaxy.py (5996 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v18_05/galaxy.py (5996 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-940ae948f67241b3", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v26_0/galaxy.py (11678 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v26_0/galaxy.py (11678 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-a3d5014be29eead3", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v17_01/galaxy.py (5692 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v17_01/galaxy.py (5692 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-b4d63cd5f81ba418", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v21_09/galaxy.py (7620 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v21_09/galaxy.py (7620 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-ce93812185867af1", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v21_05/galaxy.py (7419 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v21_05/galaxy.py (7419 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-756fb98eb3880b36", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v23_0/galaxy.py (8807 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v23_0/galaxy.py (8807 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-a01ebd726cb5de41", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v23_2/galaxy.py (9248 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v23_2/galaxy.py (9248 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-09583908f4356c70", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v21_01/galaxy.py (7380 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v21_01/galaxy.py (7380 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-ec66ea12405fd499", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v18_09/galaxy.py (6044 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v18_09/galaxy.py (6044 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-9ae26709e0de7652", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v16_10/galaxy.py (5576 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v16_10/galaxy.py (5576 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-3e86d7e7533ffba6", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v24_1/galaxy.py (9985 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v24_1/galaxy.py (9985 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-29712c7bb24189e0", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v23_1/galaxy.py (9078 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v23_1/galaxy.py (9078 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-5e95a27a98732f50", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v17_05/galaxy.py (5793 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v17_05/galaxy.py (5793 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-dd3d9f493dc673eb", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v18_01/galaxy.py (5965 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v18_01/galaxy.py (5965 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-191584b228009631", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v19_01/galaxy.py (6120 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v19_01/galaxy.py (6120 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-5c60f2664bbbd441", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v22_01/galaxy.py (8605 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v22_01/galaxy.py (8605 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-7db6089850d8cae9", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v26_1/galaxy.py (11805 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v26_1/galaxy.py (11805 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-a87625bf6e818e86", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v20_01/galaxy.py (6839 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v20_01/galaxy.py (6839 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-e471f6729ce551c1", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v25_1/galaxy.py (11686 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v25_1/galaxy.py (11686 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-31083ac73dfe80a2", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v17_09/galaxy.py (5878 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v17_09/galaxy.py (5878 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-6de61303f6d4a736", "name": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v19_05/galaxy.py (6526 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v19_05/galaxy.py (6526 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-248d835003c98464", "name": "Very large file: galaxy-tool-refactor-registry/tests/test_facade.py (1273 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-refactor-registry/tests/test_facade.py (1273 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-3a283378262d41ea", "name": "Very large file: galaxy-tool-lint/tests/test_checks.py (1236 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-lint/tests/test_checks.py (1236 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-527fedfb542b3af8", "name": "Very large file: galaxy-tool-lint/src/galaxy_tool_lint/checks/inputs.py (1298 lines)", "shortDescription": {"text": "Very large file: galaxy-tool-lint/src/galaxy_tool_lint/checks/inputs.py (1298 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 498 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 93 placeholder/mock markers across 42 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-9d79c4077342a7d0", "name": "Runtime service client appears to use placeholder configuration", "shortDescription": {"text": "Runtime service client appears to use placeholder configuration"}, "fullDescription": {"text": "A runtime source file appears to wire Supabase/Firebase/AI/payment-style clients to placeholder URLs, keys, or fallback values. In the Fable corpus this often means the UI/API shape is present while the backend service is not actually configured."}, "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-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-122f91b7f2906dc4", "name": "Agent authority lacks a verifier contract: .claude/settings.json", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/settings.json"}, "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-8a87e52cef7ddda2", "name": "Agent authority lacks a verifier contract: .claude/skills/ship-pr/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/ship-pr/SKILL.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-35d2defc44c1cfe4", "name": "Agent instruction/config may expose a secret: .claude/skills/dignified-python/dignified-python-core.md", "shortDescription": {"text": "Agent instruction/config may expose a secret: .claude/skills/dignified-python/dignified-python-core.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-18a7e747878f3915", "name": "Agent authority lacks a verifier contract: .claude/skills/dignified-python/cli-patterns.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/dignified-python/cli-patterns.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-58ecd81f72f19eaf", "name": "Agent authority lacks a verifier contract: .claude/skills/dignified-python/SKILL.md", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/skills/dignified-python/SKILL.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-83d6374c7ec5986a", "name": "Agent instruction/config may expose a secret: .claude/skills/dignified-python/versions/python-3.10.md", "shortDescription": {"text": "Agent instruction/config may expose a secret: .claude/skills/dignified-python/versions/python-3.10.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-283e4b2f3010126c", "name": "Legacy-named symbol `make_backup` in galaxy-tool-fmt/tests/test_cli.py:11", "shortDescription": {"text": "Legacy-named symbol `make_backup` in galaxy-tool-fmt/tests/test_cli.py:11"}, "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-dc9c7a248050acdd", "name": "Legacy-named symbol `make_backup` in galaxy-tool-fmt/src/galaxy_tool_fmt/cli_support.py:67", "shortDescription": {"text": "Legacy-named symbol `make_backup` in galaxy-tool-fmt/src/galaxy_tool_fmt/cli_support.py:67"}, "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-8511c09d78ca626d", "name": "Commented-code block (7 lines) in galaxy-tool-fmt/src/galaxy_tool_fmt/cli_support.py:200", "shortDescription": {"text": "Commented-code block (7 lines) in galaxy-tool-fmt/src/galaxy_tool_fmt/cli_support.py:200"}, "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-3ead3b574cda0383", "name": "Commented-code block (6 lines) in galaxy-tool-fmt/src/galaxy_tool_fmt/rule_empty_element.py:62", "shortDescription": {"text": "Commented-code block (6 lines) in galaxy-tool-fmt/src/galaxy_tool_fmt/rule_empty_element.py:62"}, "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-e366db75567a2809", "name": "Legacy-named symbol `test_check_makes_no_backup` in galaxy-tool-refactor-cli/tests/test_cli.py:929", "shortDescription": {"text": "Legacy-named symbol `test_check_makes_no_backup` in galaxy-tool-refactor-cli/tests/test_cli.py:929"}, "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-abaa6c254a2dcbc8", "name": "Network/subprocess call without timeout or try/except \u2014 galaxy-tool-refactor-cli/src/galaxy_tool_refactor_cli/gate_sugge", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 galaxy-tool-refactor-cli/src/galaxy_tool_refactor_cli/gate_suggest.py:114"}, "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-3bacf6b6d0f8551f", "name": "Legacy-named symbol `make_backup` in galaxy-tool-refactor-cli/src/galaxy_tool_refactor_cli/cli.py:70", "shortDescription": {"text": "Legacy-named symbol `make_backup` in galaxy-tool-refactor-cli/src/galaxy_tool_refactor_cli/cli.py:70"}, "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-9200ab84c0e80788", "name": "Commented-code block (5 lines) in galaxy-tool-refactor-cli/src/galaxy_tool_refactor_cli/cli.py:579", "shortDescription": {"text": "Commented-code block (5 lines) in galaxy-tool-refactor-cli/src/galaxy_tool_refactor_cli/cli.py:579"}, "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-836cd38fb0b4365b", "name": "Commented-code block (6 lines) in scripts/measure.py:814", "shortDescription": {"text": "Commented-code block (6 lines) in scripts/measure.py:814"}, "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-dd115ea05ddc848c", "name": "Commented-code block (5 lines) in scripts/corpus_check.py:819", "shortDescription": {"text": "Commented-code block (5 lines) in scripts/corpus_check.py:819"}, "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-91ffcce46d21fad2", "name": "Network/subprocess call without timeout or try/except \u2014 scripts/corpus_check.py:166", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/corpus_check.py:166"}, "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-a93a71493bacaf9e", "name": "Network/subprocess call without timeout or try/except \u2014 scripts/fetch_toolshed.py:111", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/fetch_toolshed.py:111"}, "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-2018dc2d3bf9b20d", "name": "Network/subprocess call without timeout or try/except \u2014 scripts/forward_gate.py:56", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/forward_gate.py:56"}, "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-324a300eb8b61d6b", "name": "Legacy-named symbol `galru_deprecated` in scripts/_shared.py:72", "shortDescription": {"text": "Legacy-named symbol `galru_deprecated` in scripts/_shared.py:72"}, "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-4a31a40fd9c0970e", "name": "Network/subprocess call without timeout or try/except \u2014 scripts/fetch_iuc_prs.py:87", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/fetch_iuc_prs.py:87"}, "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-60131d44aa0e41c8", "name": "Legacy-named symbol `_no_live_old` in galaxy-tool-source/tests/test_cheetah_rename.py:33", "shortDescription": {"text": "Legacy-named symbol `_no_live_old` in galaxy-tool-source/tests/test_cheetah_rename.py:33"}, "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-a5dd2fdef76cc63b", "name": "Legacy-named symbol `galru_deprecated` in galaxy-tool-source/tests/test_shared.py:22", "shortDescription": {"text": "Legacy-named symbol `galru_deprecated` in galaxy-tool-source/tests/test_shared.py:22"}, "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-f54d20eb468c97de", "name": "Commented-code block (6 lines) in galaxy-tool-source/tests/test_schema_content.py:28", "shortDescription": {"text": "Commented-code block (6 lines) in galaxy-tool-source/tests/test_schema_content.py:28"}, "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-22d7452779c5eaf6", "name": "Commented-code block (7 lines) in galaxy-tool-source/tests/test_command_vars.py:172", "shortDescription": {"text": "Commented-code block (7 lines) in galaxy-tool-source/tests/test_command_vars.py:172"}, "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-a6cfbdf3d57f3d7e", "name": "Commented-code block (11 lines) in galaxy-tool-source/src/galaxy_tool_source/command_vars.py:49", "shortDescription": {"text": "Commented-code block (11 lines) in galaxy-tool-source/src/galaxy_tool_source/command_vars.py:49"}, "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-db1d3e6549b06b12", "name": "Legacy-named symbol `_references_old` in galaxy-tool-source/src/galaxy_tool_source/cheetah_rename.py:217", "shortDescription": {"text": "Legacy-named symbol `_references_old` in galaxy-tool-source/src/galaxy_tool_source/cheetah_rename.py:217"}, "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-5428f709131b46dd", "name": "Commented-code block (5 lines) in galaxy-tool-source/src/galaxy_tool_source/cheetah_rename.py:478", "shortDescription": {"text": "Commented-code block (5 lines) in galaxy-tool-source/src/galaxy_tool_source/cheetah_rename.py:478"}, "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-c2a1763b8c91096f", "name": "Network/subprocess call without timeout or try/except \u2014 galaxy-tool-source/src/galaxy_tool_source/_codegen.py:81", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 galaxy-tool-source/src/galaxy_tool_source/_codegen.py:81"}, "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-714ca4602cfb0d31", "name": "Commented-code block (5 lines) in galaxy-tool-source/src/galaxy_tool_source/cheetah_cdm.py:42", "shortDescription": {"text": "Commented-code block (5 lines) in galaxy-tool-source/src/galaxy_tool_source/cheetah_cdm.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-4ec7247204294449", "name": "Commented-code block (6 lines) in galaxy-tool-source/src/galaxy_tool_source/profiles.py:28", "shortDescription": {"text": "Commented-code block (6 lines) in galaxy-tool-source/src/galaxy_tool_source/profiles.py:28"}, "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-32938fb4998de61b", "name": "Commented-code block (6 lines) in galaxy-tool-refactor-registry/tests/test_ruleset_membership.py:20", "shortDescription": {"text": "Commented-code block (6 lines) in galaxy-tool-refactor-registry/tests/test_ruleset_membership.py:20"}, "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-d876b59465470b0c", "name": "Commented-code block (5 lines) in galaxy-tool-refactor-registry/tests/test_stat_artifact_coverage.py:86", "shortDescription": {"text": "Commented-code block (5 lines) in galaxy-tool-refactor-registry/tests/test_stat_artifact_coverage.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-a302f18b798ecca5", "name": "Legacy-named symbol `make_backup` in galaxy-tool-refactor-registry/tests/test_serializer_allowlist.py:51", "shortDescription": {"text": "Legacy-named symbol `make_backup` in galaxy-tool-refactor-registry/tests/test_serializer_allowlist.py:51"}, "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-aafc24a72c5538e9", "name": "Commented-code block (6 lines) in galaxy-tool-refactor-registry/tests/test_rulesets_resolve.py:17", "shortDescription": {"text": "Commented-code block (6 lines) in galaxy-tool-refactor-registry/tests/test_rulesets_resolve.py:17"}, "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-156e954e68e6a047", "name": "Legacy-named symbol `make_backup` in galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/macro_datatype.py:3", "shortDescription": {"text": "Legacy-named symbol `make_backup` in galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/macro_datatype.py:32"}, "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-ecda7385dfd9a3e4", "name": "Legacy-named symbol `make_backup` in galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/bundle_rename.py:41", "shortDescription": {"text": "Legacy-named symbol `make_backup` in galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/bundle_rename.py:41"}, "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-6e67ee23884b2ae4", "name": "Commented-code block (9 lines) in galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/adapters.py:142", "shortDescription": {"text": "Commented-code block (9 lines) in galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/adapters.py:142"}, "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-4565dda959662378", "name": "Legacy-named symbol `make_backup` in galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/macro_profile.py:34", "shortDescription": {"text": "Legacy-named symbol `make_backup` in galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/macro_profile.py:34"}, "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-7b1e3ddfa4a709fb", "name": "Commented-code block (5 lines) in galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/facade.py:551", "shortDescription": {"text": "Commented-code block (5 lines) in galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/facade.py:551"}, "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-6aa5bc1b3c846667", "name": "Commented-code block (7 lines) in galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/lint_skip.py:86", "shortDescription": {"text": "Commented-code block (7 lines) in galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/lint_skip.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-1326fe904ae56a70", "name": "Commented-code block (6 lines) in galaxy-tool-codemod/tests/test_fix_interpreter.py:46", "shortDescription": {"text": "Commented-code block (6 lines) in galaxy-tool-codemod/tests/test_fix_interpreter.py:46"}, "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-5eab1bb3a97b32ae", "name": "Commented-code block (5 lines) in galaxy-tool-codemod/tests/test_single_quote_command_vars.py:181", "shortDescription": {"text": "Commented-code block (5 lines) in galaxy-tool-codemod/tests/test_single_quote_command_vars.py:181"}, "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-01e8b52c84e5aa3f", "name": "Commented-code block (8 lines) in galaxy-tool-codemod/tests/test_upgrade_24_0.py:50", "shortDescription": {"text": "Commented-code block (8 lines) in galaxy-tool-codemod/tests/test_upgrade_24_0.py:50"}, "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-93ee0fbaac257510", "name": "Legacy-named symbol `test_rename_attribute_rejects_absent_old` in galaxy-tool-codemod/tests/test_cursor.py:274", "shortDescription": {"text": "Legacy-named symbol `test_rename_attribute_rejects_absent_old` in galaxy-tool-codemod/tests/test_cursor.py:274"}, "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-d1a0c03f51d9c643", "name": "Commented-code block (5 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/profile_semantics.py:364", "shortDescription": {"text": "Commented-code block (5 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/profile_semantics.py:364"}, "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-0f83af7f890c3572", "name": "Commented-code block (5 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/test_case_check.py:57", "shortDescription": {"text": "Commented-code block (5 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/test_case_check.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-4d4dd21fcd543a80", "name": "Commented-code block (5 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/upgrades.py:113", "shortDescription": {"text": "Commented-code block (5 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/upgrades.py:113"}, "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-efb30ecc560b779f", "name": "Commented-code block (7 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/behavior_gate.py:53", "shortDescription": {"text": "Commented-code block (7 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/behavior_gate.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-606161adddc653ea", "name": "Commented-code block (5 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/replace_output_element.py:94", "shortDescription": {"text": "Commented-code block (5 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/replace_output_element.py:94"}, "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-457cebd17b8ae59d", "name": "Commented-code block (5 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/single_quote_command_vars.py:126", "shortDescription": {"text": "Commented-code block (5 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/single_quote_command_vars.py:126"}, "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-151a23bad226e8ec", "name": "Legacy-named symbol `CommandInterpreterDeprecated` in galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/fix_interpret", "shortDescription": {"text": "Legacy-named symbol `CommandInterpreterDeprecated` in galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/fix_interpreter.py:81"}, "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-cb35a83f2d5371db", "name": "Commented-code block (6 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/fix_interpreter.py:89", "shortDescription": {"text": "Commented-code block (6 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/fix_interpreter.py:89"}, "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-2de7d8e87657a8a4", "name": "Legacy-named symbol `test_gtr064_select_options_not_deprecated` in galaxy-tool-lint/tests/test_checks.py:446", "shortDescription": {"text": "Legacy-named symbol `test_gtr064_select_options_not_deprecated` in galaxy-tool-lint/tests/test_checks.py:446"}, "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-4ed1dac8715dd1be", "name": "Legacy-named symbol `SelectOptionsNotDeprecated` in galaxy-tool-lint/src/galaxy_tool_lint/detect.py:41", "shortDescription": {"text": "Legacy-named symbol `SelectOptionsNotDeprecated` in galaxy-tool-lint/src/galaxy_tool_lint/detect.py:41"}, "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-26cdf432ecc21947", "name": "Legacy-named symbol `SelectOptionsNotDeprecated` in galaxy-tool-lint/src/galaxy_tool_lint/checks/inputs.py:559", "shortDescription": {"text": "Legacy-named symbol `SelectOptionsNotDeprecated` in galaxy-tool-lint/src/galaxy_tool_lint/checks/inputs.py:559"}, "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-4a260e984cc4ee38", "name": "Legacy-named symbol `StdIOAbsenceLegacy` in galaxy-tool-lint/src/galaxy_tool_lint/checks/tool.py:195", "shortDescription": {"text": "Legacy-named symbol `StdIOAbsenceLegacy` in galaxy-tool-lint/src/galaxy_tool_lint/checks/tool.py:195"}, "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-05050b57687e9ad5", "name": "Commented-code block (6 lines) in galaxy-tool-lint/src/galaxy_tool_lint/checks/outputs.py:168", "shortDescription": {"text": "Commented-code block (6 lines) in galaxy-tool-lint/src/galaxy_tool_lint/checks/outputs.py:168"}, "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:\ngalaxy-tool-refactor-cli/src/galaxy_tool_refactor_cli/cli.py:format_command, galaxy-tool-refactor-cli/src/galaxy_tool_refactor_cli/cli.py:upgrade_command\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-0d32ef4b8a679ae8", "name": "Near-duplicate function bodies in 24 places", "shortDescription": {"text": "Near-duplicate function bodies in 24 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nscripts/measure.py:pct, scripts/measure.py:pct, scripts/measure.py:pct, scripts/measure.py:pct\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:\ngalaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/adapters.py:detect, galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/adapters.py:detect, galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/adapters.py:detect\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/18121"}, "properties": {"repository": "richard-burhans/galaxy-tool-refactor", "repoUrl": "https://github.com/richard-burhans/galaxy-tool-refactor", "branch": "main"}, "results": [{"ruleId": "scanner-378441d45eae600d", "level": "note", "message": {"text": "Possibly dead Python function: sort_key"}, "properties": {"repobilityId": "ac2a4181eae38738", "scanner": "scanner-primary", "fingerprint": "378441d45eae600d", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/measure.py:5043"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-772d36bf12fa72c1", "level": "note", "message": {"text": "Possibly dead Python function: row_source"}, "properties": {"repobilityId": "a2e71513bdbee34b", "scanner": "scanner-primary", "fingerprint": "772d36bf12fa72c1", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/_shared.py:33"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f7b1ff2322b25798", "level": "note", "message": {"text": "Possibly dead Python function: unique_by_sha"}, "properties": {"repobilityId": "ee2c66fa91e01feb", "scanner": "scanner-primary", "fingerprint": "f7b1ff2322b25798", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/_shared.py:40"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-e272abc877cd2989", "level": "note", "message": {"text": "Possibly dead Python function: initialize"}, "properties": {"repobilityId": "024b267ec08e6038", "scanner": "scanner-primary", "fingerprint": "e272abc877cd2989", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "galaxy-tool-source/hatch_build.py:27"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ce69e83b5d13f942", "level": "note", "message": {"text": "Possibly dead Python function: detect_Command"}, "properties": {"repobilityId": "0f1b13fe0213c1af", "scanner": "scanner-primary", "fingerprint": "ce69e83b5d13f942", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/wrap_command_cdata.py:39"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-200d9d9659dbc00b", "level": "note", "message": {"text": "Possibly dead Python function: detect_Data"}, "properties": {"repobilityId": "2efdf52a7220d139", "scanner": "scanner-primary", "fingerprint": "200d9d9659dbc00b", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/fix_from_work_dir_whitespace.py:47"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-938dbfa513216b20", "level": "note", "message": {"text": "Possibly dead Python function: detect_Output"}, "properties": {"repobilityId": "05ec371219dd40d9", "scanner": "scanner-primary", "fingerprint": "938dbfa513216b20", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/replace_output_element.py:89"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-28c749af8dcaeb7b", "level": "note", "message": {"text": "Possibly dead Python function: detect_Tool"}, "properties": {"repobilityId": "dfd9cc38c7ca7cba", "scanner": "scanner-primary", "fingerprint": "28c749af8dcaeb7b", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/reorder_tool_attributes.py:44"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-aec782a3062bea84", "level": "note", "message": {"text": "Possibly dead Python function: detect_Requirement"}, "properties": {"repobilityId": "b787b7916cdfa56b", "scanner": "scanner-primary", "fingerprint": "aec782a3062bea84", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/trim_attribute_whitespace.py:70"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-85c6ea7f0dd1fa89", "level": "note", "message": {"text": "Possibly dead Python function: detect_Help"}, "properties": {"repobilityId": "cc3e6966f32c6824", "scanner": "scanner-primary", "fingerprint": "85c6ea7f0dd1fa89", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/wrap_help_cdata.py:39"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-11c377e183e9a464", "level": "note", "message": {"text": "Possibly dead Python function: detect_Tool"}, "properties": {"repobilityId": "dfd9cc38c7ca7cba", "scanner": "scanner-primary", "fingerprint": "11c377e183e9a464", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/reorder_tool_children.py:78"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9710c8d059e53154", "level": "none", "message": {"text": "No frontend routes/components detected"}, "properties": {"repobilityId": "44ca61485762e494", "scanner": "scanner-primary", "fingerprint": "9710c8d059e53154", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-27924aa79fa4a517", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "ef7e6ef84bc585df", "scanner": "scanner-primary", "fingerprint": "27924aa79fa4a517", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/ci.yml"}, "region": {"startLine": 33}}}]}, {"ruleId": "scanner-af50acd4bc59bdfe", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "52361dd39d8f5546", "scanner": "scanner-primary", "fingerprint": "af50acd4bc59bdfe", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/corpus-stats.yml"}, "region": {"startLine": 41}}}]}, {"ruleId": "scanner-af50acd4bc59bdfe", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "986c2167b3201b01", "scanner": "scanner-primary", "fingerprint": "af50acd4bc59bdfe", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/corpus-stats.yml"}, "region": {"startLine": 65}}}]}, {"ruleId": "scanner-fee3aa21fae52ede", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "f18f95980dde27b4", "scanner": "scanner-primary", "fingerprint": "fee3aa21fae52ede", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/corpus-stats.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-46c644c6227e4d4a", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "d9ed7aadf99d8f76", "scanner": "scanner-primary", "fingerprint": "46c644c6227e4d4a", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/release.yml"}, "region": {"startLine": 66}}}]}, {"ruleId": "scanner-46c644c6227e4d4a", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "40de0ea74eab3ee8", "scanner": "scanner-primary", "fingerprint": "46c644c6227e4d4a", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/release.yml"}, "region": {"startLine": 118}}}]}, {"ruleId": "scanner-46c644c6227e4d4a", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "1051a99633356d7b", "scanner": "scanner-primary", "fingerprint": "46c644c6227e4d4a", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/release.yml"}, "region": {"startLine": 131}}}]}, {"ruleId": "scanner-46c644c6227e4d4a", "level": "warning", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "8eb96fb1706184f3", "scanner": "scanner-primary", "fingerprint": "46c644c6227e4d4a", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/release.yml"}, "region": {"startLine": 141}}}]}, {"ruleId": "scanner-1838a141491ce38c", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "b8fd4f5048f96576", "scanner": "scanner-primary", "fingerprint": "1838a141491ce38c", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/release.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-cb2b382d24fcc60f", "level": "note", "message": {"text": "Very large file: galaxy-tool-refactor-cli/tests/test_cli.py (1230 lines)"}, "properties": {"repobilityId": "28ab4363bcf0871c", "scanner": "scanner-primary", "fingerprint": "cb2b382d24fcc60f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-c9ad955ed4783aa2", "level": "note", "message": {"text": "Very large file: galaxy-tool-refactor-cli/src/galaxy_tool_refactor_cli/cli.py (1449 lines)"}, "properties": {"repobilityId": "842cdf0ad439e42c", "scanner": "scanner-primary", "fingerprint": "c9ad955ed4783aa2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ec684477265e558f", "level": "note", "message": {"text": "Very large file: scripts/measure.py (9069 lines)"}, "properties": {"repobilityId": "893c87b0a251d3df", "scanner": "scanner-primary", "fingerprint": "ec684477265e558f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-96352777c5ad517e", "level": "note", "message": {"text": "Very large file: scripts/corpus_check.py (4380 lines)"}, "properties": {"repobilityId": "404ff44ac3a6a6b6", "scanner": "scanner-primary", "fingerprint": "96352777c5ad517e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ddd2256e44fc0ce7", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/tests/test_measure.py (2621 lines)"}, "properties": {"repobilityId": "72ba467445cef2b4", "scanner": "scanner-primary", "fingerprint": "ddd2256e44fc0ce7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-29c858e5a234a58e", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v20_09/galaxy.py (6950 lines)"}, "properties": {"repobilityId": "070cef3385756907", "scanner": "scanner-primary", "fingerprint": "29c858e5a234a58e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-2710d50209950164", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v25_0/galaxy.py (11437 lines)"}, "properties": {"repobilityId": "c8fba04a661c2350", "scanner": "scanner-primary", "fingerprint": "2710d50209950164", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7a767c12dccac31f", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v24_2/galaxy.py (11327 lines)"}, "properties": {"repobilityId": "c9bcc1c80d25b365", "scanner": "scanner-primary", "fingerprint": "7a767c12dccac31f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-1aa922323eda2e0c", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v24_0/galaxy.py (9460 lines)"}, "properties": {"repobilityId": "471e765bf98d83f2", "scanner": "scanner-primary", "fingerprint": "1aa922323eda2e0c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-fa79a432a00750ab", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v20_05/galaxy.py (6875 lines)"}, "properties": {"repobilityId": "e86f1c7278d17c46", "scanner": "scanner-primary", "fingerprint": "fa79a432a00750ab", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5374a87675c702d5", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v19_09/galaxy.py (6779 lines)"}, "properties": {"repobilityId": "340a6b366eec25cb", "scanner": "scanner-primary", "fingerprint": "5374a87675c702d5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7f6081dc7c261fc2", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v22_05/galaxy.py (8737 lines)"}, "properties": {"repobilityId": "704e76424a5d5123", "scanner": "scanner-primary", "fingerprint": "7f6081dc7c261fc2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-16330c022e3bd18d", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v18_05/galaxy.py (5996 lines)"}, "properties": {"repobilityId": "5a022eddcee9a21e", "scanner": "scanner-primary", "fingerprint": "16330c022e3bd18d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-940ae948f67241b3", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v26_0/galaxy.py (11678 lines)"}, "properties": {"repobilityId": "77ebcada8f73c701", "scanner": "scanner-primary", "fingerprint": "940ae948f67241b3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a3d5014be29eead3", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v17_01/galaxy.py (5692 lines)"}, "properties": {"repobilityId": "ee10895a30d548b9", "scanner": "scanner-primary", "fingerprint": "a3d5014be29eead3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b4d63cd5f81ba418", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v21_09/galaxy.py (7620 lines)"}, "properties": {"repobilityId": "dd82908068891707", "scanner": "scanner-primary", "fingerprint": "b4d63cd5f81ba418", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ce93812185867af1", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v21_05/galaxy.py (7419 lines)"}, "properties": {"repobilityId": "94ef9ce06c97746c", "scanner": "scanner-primary", "fingerprint": "ce93812185867af1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-756fb98eb3880b36", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v23_0/galaxy.py (8807 lines)"}, "properties": {"repobilityId": "026be2e697893b45", "scanner": "scanner-primary", "fingerprint": "756fb98eb3880b36", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a01ebd726cb5de41", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v23_2/galaxy.py (9248 lines)"}, "properties": {"repobilityId": "be80b4bfb23b44e7", "scanner": "scanner-primary", "fingerprint": "a01ebd726cb5de41", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-09583908f4356c70", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v21_01/galaxy.py (7380 lines)"}, "properties": {"repobilityId": "4679f15a443f8de2", "scanner": "scanner-primary", "fingerprint": "09583908f4356c70", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ec66ea12405fd499", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v18_09/galaxy.py (6044 lines)"}, "properties": {"repobilityId": "83b2d65cc121be61", "scanner": "scanner-primary", "fingerprint": "ec66ea12405fd499", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9ae26709e0de7652", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v16_10/galaxy.py (5576 lines)"}, "properties": {"repobilityId": "d0d5d2269afeeec2", "scanner": "scanner-primary", "fingerprint": "9ae26709e0de7652", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3e86d7e7533ffba6", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v24_1/galaxy.py (9985 lines)"}, "properties": {"repobilityId": "b489619fb2b19bda", "scanner": "scanner-primary", "fingerprint": "3e86d7e7533ffba6", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-29712c7bb24189e0", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v23_1/galaxy.py (9078 lines)"}, "properties": {"repobilityId": "dd2effbaba4b1ba9", "scanner": "scanner-primary", "fingerprint": "29712c7bb24189e0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5e95a27a98732f50", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v17_05/galaxy.py (5793 lines)"}, "properties": {"repobilityId": "6e675fd0c3d2d4a9", "scanner": "scanner-primary", "fingerprint": "5e95a27a98732f50", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-dd3d9f493dc673eb", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v18_01/galaxy.py (5965 lines)"}, "properties": {"repobilityId": "7e55e77923d7121c", "scanner": "scanner-primary", "fingerprint": "dd3d9f493dc673eb", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-191584b228009631", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v19_01/galaxy.py (6120 lines)"}, "properties": {"repobilityId": "9a0c6436137e5c55", "scanner": "scanner-primary", "fingerprint": "191584b228009631", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-5c60f2664bbbd441", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v22_01/galaxy.py (8605 lines)"}, "properties": {"repobilityId": "3661a3f19075f49d", "scanner": "scanner-primary", "fingerprint": "5c60f2664bbbd441", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7db6089850d8cae9", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v26_1/galaxy.py (11805 lines)"}, "properties": {"repobilityId": "14ecd8a918f8b9e1", "scanner": "scanner-primary", "fingerprint": "7db6089850d8cae9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a87625bf6e818e86", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v20_01/galaxy.py (6839 lines)"}, "properties": {"repobilityId": "a6d126fc143ce135", "scanner": "scanner-primary", "fingerprint": "a87625bf6e818e86", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e471f6729ce551c1", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v25_1/galaxy.py (11686 lines)"}, "properties": {"repobilityId": "ee3fce52d125ffbf", "scanner": "scanner-primary", "fingerprint": "e471f6729ce551c1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-31083ac73dfe80a2", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v17_09/galaxy.py (5878 lines)"}, "properties": {"repobilityId": "11de2da2f2a52084", "scanner": "scanner-primary", "fingerprint": "31083ac73dfe80a2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6de61303f6d4a736", "level": "note", "message": {"text": "Very large file: galaxy-tool-source/src/galaxy_tool_source/models/v19_05/galaxy.py (6526 lines)"}, "properties": {"repobilityId": "b1565ce86f798f78", "scanner": "scanner-primary", "fingerprint": "6de61303f6d4a736", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-248d835003c98464", "level": "note", "message": {"text": "Very large file: galaxy-tool-refactor-registry/tests/test_facade.py (1273 lines)"}, "properties": {"repobilityId": "39ed5c7e6d57034f", "scanner": "scanner-primary", "fingerprint": "248d835003c98464", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-3a283378262d41ea", "level": "note", "message": {"text": "Very large file: galaxy-tool-lint/tests/test_checks.py (1236 lines)"}, "properties": {"repobilityId": "37f258c1d456d0f3", "scanner": "scanner-primary", "fingerprint": "3a283378262d41ea", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-527fedfb542b3af8", "level": "note", "message": {"text": "Very large file: galaxy-tool-lint/src/galaxy_tool_lint/checks/inputs.py (1298 lines)"}, "properties": {"repobilityId": "9f0b0d5dd05768e5", "scanner": "scanner-primary", "fingerprint": "527fedfb542b3af8", "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": "0acfb85434cc57d4", "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": "6d5fb0a18b470755", "scanner": "scanner-primary", "fingerprint": "72b2a6250083a784", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "incomplete", "generated-repo-pattern"]}}, {"ruleId": "scanner-9d79c4077342a7d0", "level": "warning", "message": {"text": "Runtime service client appears to use placeholder configuration"}, "properties": {"repobilityId": "f5ae7f128b2ebda0", "scanner": "scanner-primary", "fingerprint": "9d79c4077342a7d0", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "runtime-config", "service-client", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "121c57c875805f03", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "20383febc74db4cb", "scanner": "scanner-primary", "fingerprint": "ea8f3013f588db25", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-8424db9c75e04ba4", "level": "none", "message": {"text": "Very short observed git history"}, "properties": {"repobilityId": "b0db74622386eafa", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-122f91b7f2906dc4", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/settings.json"}, "properties": {"repobilityId": "a2967269048b6a9d", "scanner": "scanner-primary", "fingerprint": "122f91b7f2906dc4", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/settings.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-8a87e52cef7ddda2", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/ship-pr/SKILL.md"}, "properties": {"repobilityId": "b7ce8b9a7f39e981", "scanner": "scanner-primary", "fingerprint": "8a87e52cef7ddda2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/ship-pr/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-35d2defc44c1cfe4", "level": "error", "message": {"text": "Agent instruction/config may expose a secret: .claude/skills/dignified-python/dignified-python-core.md"}, "properties": {"repobilityId": "3846340805f0f443", "scanner": "scanner-primary", "fingerprint": "35d2defc44c1cfe4", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["agent-instructions", "secrets", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/dignified-python/dignified-python-core.md"}, "region": {"startLine": 70}}}]}, {"ruleId": "scanner-18a7e747878f3915", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/dignified-python/cli-patterns.md"}, "properties": {"repobilityId": "bb80b2e0c76ca1c6", "scanner": "scanner-primary", "fingerprint": "18a7e747878f3915", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/dignified-python/cli-patterns.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-58ecd81f72f19eaf", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/skills/dignified-python/SKILL.md"}, "properties": {"repobilityId": "e24036a376cc9d5f", "scanner": "scanner-primary", "fingerprint": "58ecd81f72f19eaf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/dignified-python/SKILL.md"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-83d6374c7ec5986a", "level": "error", "message": {"text": "Agent instruction/config may expose a secret: .claude/skills/dignified-python/versions/python-3.10.md"}, "properties": {"repobilityId": "1d951d561b1b21b2", "scanner": "scanner-primary", "fingerprint": "83d6374c7ec5986a", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["agent-instructions", "secrets", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/skills/dignified-python/versions/python-3.10.md"}, "region": {"startLine": 368}}}]}, {"ruleId": "scanner-283e4b2f3010126c", "level": "note", "message": {"text": "Legacy-named symbol `make_backup` in galaxy-tool-fmt/tests/test_cli.py:11"}, "properties": {"repobilityId": "d7bbe8789b99b271", "scanner": "scanner-primary", "fingerprint": "283e4b2f3010126c", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-dc9c7a248050acdd", "level": "note", "message": {"text": "Legacy-named symbol `make_backup` in galaxy-tool-fmt/src/galaxy_tool_fmt/cli_support.py:67"}, "properties": {"repobilityId": "d8c94c21aea48f49", "scanner": "scanner-primary", "fingerprint": "dc9c7a248050acdd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-8511c09d78ca626d", "level": "none", "message": {"text": "Commented-code block (7 lines) in galaxy-tool-fmt/src/galaxy_tool_fmt/cli_support.py:200"}, "properties": {"repobilityId": "8b61b1253605c15d", "scanner": "scanner-primary", "fingerprint": "8511c09d78ca626d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3ead3b574cda0383", "level": "none", "message": {"text": "Commented-code block (6 lines) in galaxy-tool-fmt/src/galaxy_tool_fmt/rule_empty_element.py:62"}, "properties": {"repobilityId": "72967f24c7a48da7", "scanner": "scanner-primary", "fingerprint": "3ead3b574cda0383", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e366db75567a2809", "level": "note", "message": {"text": "Legacy-named symbol `test_check_makes_no_backup` in galaxy-tool-refactor-cli/tests/test_cli.py:929"}, "properties": {"repobilityId": "01a9f99486888df7", "scanner": "scanner-primary", "fingerprint": "e366db75567a2809", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-abaa6c254a2dcbc8", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 galaxy-tool-refactor-cli/src/galaxy_tool_refactor_cli/gate_suggest.py:114"}, "properties": {"repobilityId": "7945a0dd049e9208", "scanner": "scanner-primary", "fingerprint": "abaa6c254a2dcbc8", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3bacf6b6d0f8551f", "level": "note", "message": {"text": "Legacy-named symbol `make_backup` in galaxy-tool-refactor-cli/src/galaxy_tool_refactor_cli/cli.py:70"}, "properties": {"repobilityId": "86cfa03d82940c1d", "scanner": "scanner-primary", "fingerprint": "3bacf6b6d0f8551f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-9200ab84c0e80788", "level": "none", "message": {"text": "Commented-code block (5 lines) in galaxy-tool-refactor-cli/src/galaxy_tool_refactor_cli/cli.py:579"}, "properties": {"repobilityId": "7779a08807567ce7", "scanner": "scanner-primary", "fingerprint": "9200ab84c0e80788", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-836cd38fb0b4365b", "level": "none", "message": {"text": "Commented-code block (6 lines) in scripts/measure.py:814"}, "properties": {"repobilityId": "b17dc139a40d3c55", "scanner": "scanner-primary", "fingerprint": "836cd38fb0b4365b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dd115ea05ddc848c", "level": "none", "message": {"text": "Commented-code block (5 lines) in scripts/corpus_check.py:819"}, "properties": {"repobilityId": "81860b4d2a19730c", "scanner": "scanner-primary", "fingerprint": "dd115ea05ddc848c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-91ffcce46d21fad2", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/corpus_check.py:166"}, "properties": {"repobilityId": "0f784e45b454af85", "scanner": "scanner-primary", "fingerprint": "91ffcce46d21fad2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a93a71493bacaf9e", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/fetch_toolshed.py:111"}, "properties": {"repobilityId": "19c513deede1d0c6", "scanner": "scanner-primary", "fingerprint": "a93a71493bacaf9e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2018dc2d3bf9b20d", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/forward_gate.py:56"}, "properties": {"repobilityId": "1ba76090811cdfbc", "scanner": "scanner-primary", "fingerprint": "2018dc2d3bf9b20d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-324a300eb8b61d6b", "level": "note", "message": {"text": "Legacy-named symbol `galru_deprecated` in scripts/_shared.py:72"}, "properties": {"repobilityId": "41116a0b951adbe5", "scanner": "scanner-primary", "fingerprint": "324a300eb8b61d6b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4a31a40fd9c0970e", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/fetch_iuc_prs.py:87"}, "properties": {"repobilityId": "ef361b61fe56d307", "scanner": "scanner-primary", "fingerprint": "4a31a40fd9c0970e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-60131d44aa0e41c8", "level": "note", "message": {"text": "Legacy-named symbol `_no_live_old` in galaxy-tool-source/tests/test_cheetah_rename.py:33"}, "properties": {"repobilityId": "fd3533b82aabd5f0", "scanner": "scanner-primary", "fingerprint": "60131d44aa0e41c8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-a5dd2fdef76cc63b", "level": "note", "message": {"text": "Legacy-named symbol `galru_deprecated` in galaxy-tool-source/tests/test_shared.py:22"}, "properties": {"repobilityId": "00bca2b0e19956c5", "scanner": "scanner-primary", "fingerprint": "a5dd2fdef76cc63b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-f54d20eb468c97de", "level": "none", "message": {"text": "Commented-code block (6 lines) in galaxy-tool-source/tests/test_schema_content.py:28"}, "properties": {"repobilityId": "c9a816de1b401fb1", "scanner": "scanner-primary", "fingerprint": "f54d20eb468c97de", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-22d7452779c5eaf6", "level": "none", "message": {"text": "Commented-code block (7 lines) in galaxy-tool-source/tests/test_command_vars.py:172"}, "properties": {"repobilityId": "495b5b80e6b21bd1", "scanner": "scanner-primary", "fingerprint": "22d7452779c5eaf6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a6cfbdf3d57f3d7e", "level": "none", "message": {"text": "Commented-code block (11 lines) in galaxy-tool-source/src/galaxy_tool_source/command_vars.py:49"}, "properties": {"repobilityId": "19de566e4bb5cf70", "scanner": "scanner-primary", "fingerprint": "a6cfbdf3d57f3d7e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-db1d3e6549b06b12", "level": "note", "message": {"text": "Legacy-named symbol `_references_old` in galaxy-tool-source/src/galaxy_tool_source/cheetah_rename.py:217"}, "properties": {"repobilityId": "b6f996494fd966f2", "scanner": "scanner-primary", "fingerprint": "db1d3e6549b06b12", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-5428f709131b46dd", "level": "none", "message": {"text": "Commented-code block (5 lines) in galaxy-tool-source/src/galaxy_tool_source/cheetah_rename.py:478"}, "properties": {"repobilityId": "36ff0d684b514c1e", "scanner": "scanner-primary", "fingerprint": "5428f709131b46dd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c2a1763b8c91096f", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 galaxy-tool-source/src/galaxy_tool_source/_codegen.py:81"}, "properties": {"repobilityId": "e4292f11845af919", "scanner": "scanner-primary", "fingerprint": "c2a1763b8c91096f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-714ca4602cfb0d31", "level": "none", "message": {"text": "Commented-code block (5 lines) in galaxy-tool-source/src/galaxy_tool_source/cheetah_cdm.py:42"}, "properties": {"repobilityId": "c08d48f739d663c1", "scanner": "scanner-primary", "fingerprint": "714ca4602cfb0d31", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4ec7247204294449", "level": "none", "message": {"text": "Commented-code block (6 lines) in galaxy-tool-source/src/galaxy_tool_source/profiles.py:28"}, "properties": {"repobilityId": "f3b9be0aa2e3413a", "scanner": "scanner-primary", "fingerprint": "4ec7247204294449", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-32938fb4998de61b", "level": "none", "message": {"text": "Commented-code block (6 lines) in galaxy-tool-refactor-registry/tests/test_ruleset_membership.py:20"}, "properties": {"repobilityId": "861b3f7c3d977f2f", "scanner": "scanner-primary", "fingerprint": "32938fb4998de61b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d876b59465470b0c", "level": "none", "message": {"text": "Commented-code block (5 lines) in galaxy-tool-refactor-registry/tests/test_stat_artifact_coverage.py:86"}, "properties": {"repobilityId": "efd90dc471ac3aab", "scanner": "scanner-primary", "fingerprint": "d876b59465470b0c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a302f18b798ecca5", "level": "note", "message": {"text": "Legacy-named symbol `make_backup` in galaxy-tool-refactor-registry/tests/test_serializer_allowlist.py:51"}, "properties": {"repobilityId": "b46ee7a74f86af89", "scanner": "scanner-primary", "fingerprint": "a302f18b798ecca5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-aafc24a72c5538e9", "level": "none", "message": {"text": "Commented-code block (6 lines) in galaxy-tool-refactor-registry/tests/test_rulesets_resolve.py:17"}, "properties": {"repobilityId": "6524ee4cc3017cf9", "scanner": "scanner-primary", "fingerprint": "aafc24a72c5538e9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-156e954e68e6a047", "level": "note", "message": {"text": "Legacy-named symbol `make_backup` in galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/macro_datatype.py:32"}, "properties": {"repobilityId": "025619532fc11051", "scanner": "scanner-primary", "fingerprint": "156e954e68e6a047", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-ecda7385dfd9a3e4", "level": "note", "message": {"text": "Legacy-named symbol `make_backup` in galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/bundle_rename.py:41"}, "properties": {"repobilityId": "168192712d3068f2", "scanner": "scanner-primary", "fingerprint": "ecda7385dfd9a3e4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6e67ee23884b2ae4", "level": "none", "message": {"text": "Commented-code block (9 lines) in galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/adapters.py:142"}, "properties": {"repobilityId": "f3c9e5e3fdb235bc", "scanner": "scanner-primary", "fingerprint": "6e67ee23884b2ae4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4565dda959662378", "level": "note", "message": {"text": "Legacy-named symbol `make_backup` in galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/macro_profile.py:34"}, "properties": {"repobilityId": "fe7ada2f873b005b", "scanner": "scanner-primary", "fingerprint": "4565dda959662378", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-7b1e3ddfa4a709fb", "level": "none", "message": {"text": "Commented-code block (5 lines) in galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/facade.py:551"}, "properties": {"repobilityId": "7edcd8fba283d55d", "scanner": "scanner-primary", "fingerprint": "7b1e3ddfa4a709fb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6aa5bc1b3c846667", "level": "none", "message": {"text": "Commented-code block (7 lines) in galaxy-tool-refactor-registry/src/galaxy_tool_refactor_registry/lint_skip.py:86"}, "properties": {"repobilityId": "6c557f3b34c6c1f9", "scanner": "scanner-primary", "fingerprint": "6aa5bc1b3c846667", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1326fe904ae56a70", "level": "none", "message": {"text": "Commented-code block (6 lines) in galaxy-tool-codemod/tests/test_fix_interpreter.py:46"}, "properties": {"repobilityId": "68a5100729c28165", "scanner": "scanner-primary", "fingerprint": "1326fe904ae56a70", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5eab1bb3a97b32ae", "level": "none", "message": {"text": "Commented-code block (5 lines) in galaxy-tool-codemod/tests/test_single_quote_command_vars.py:181"}, "properties": {"repobilityId": "a3ae54f0ffad623d", "scanner": "scanner-primary", "fingerprint": "5eab1bb3a97b32ae", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-01e8b52c84e5aa3f", "level": "none", "message": {"text": "Commented-code block (8 lines) in galaxy-tool-codemod/tests/test_upgrade_24_0.py:50"}, "properties": {"repobilityId": "68103724e7e03777", "scanner": "scanner-primary", "fingerprint": "01e8b52c84e5aa3f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-93ee0fbaac257510", "level": "note", "message": {"text": "Legacy-named symbol `test_rename_attribute_rejects_absent_old` in galaxy-tool-codemod/tests/test_cursor.py:274"}, "properties": {"repobilityId": "e7c8c39c930b369f", "scanner": "scanner-primary", "fingerprint": "93ee0fbaac257510", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d1a0c03f51d9c643", "level": "none", "message": {"text": "Commented-code block (5 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/profile_semantics.py:364"}, "properties": {"repobilityId": "2a4ee17bacd93aed", "scanner": "scanner-primary", "fingerprint": "d1a0c03f51d9c643", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0f83af7f890c3572", "level": "none", "message": {"text": "Commented-code block (5 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/test_case_check.py:57"}, "properties": {"repobilityId": "940837ad8586e3a1", "scanner": "scanner-primary", "fingerprint": "0f83af7f890c3572", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4d4dd21fcd543a80", "level": "none", "message": {"text": "Commented-code block (5 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/upgrades.py:113"}, "properties": {"repobilityId": "3f108e1adece5d2a", "scanner": "scanner-primary", "fingerprint": "4d4dd21fcd543a80", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-efb30ecc560b779f", "level": "none", "message": {"text": "Commented-code block (7 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/behavior_gate.py:53"}, "properties": {"repobilityId": "18acaede6518d08b", "scanner": "scanner-primary", "fingerprint": "efb30ecc560b779f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-606161adddc653ea", "level": "none", "message": {"text": "Commented-code block (5 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/replace_output_element.py:94"}, "properties": {"repobilityId": "ce8ec9e32b0ce3b2", "scanner": "scanner-primary", "fingerprint": "606161adddc653ea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-457cebd17b8ae59d", "level": "none", "message": {"text": "Commented-code block (5 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/single_quote_command_vars.py:126"}, "properties": {"repobilityId": "4a39594b1048ae22", "scanner": "scanner-primary", "fingerprint": "457cebd17b8ae59d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-151a23bad226e8ec", "level": "note", "message": {"text": "Legacy-named symbol `CommandInterpreterDeprecated` in galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/fix_interpreter.py:81"}, "properties": {"repobilityId": "1a3b099b40c2baa7", "scanner": "scanner-primary", "fingerprint": "151a23bad226e8ec", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-cb35a83f2d5371db", "level": "none", "message": {"text": "Commented-code block (6 lines) in galaxy-tool-codemod/src/galaxy_tool_codemod/codemods/fix_interpreter.py:89"}, "properties": {"repobilityId": "7b4c99a7ec2b3580", "scanner": "scanner-primary", "fingerprint": "cb35a83f2d5371db", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2de7d8e87657a8a4", "level": "note", "message": {"text": "Legacy-named symbol `test_gtr064_select_options_not_deprecated` in galaxy-tool-lint/tests/test_checks.py:446"}, "properties": {"repobilityId": "b1328f87b5107d36", "scanner": "scanner-primary", "fingerprint": "2de7d8e87657a8a4", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4ed1dac8715dd1be", "level": "note", "message": {"text": "Legacy-named symbol `SelectOptionsNotDeprecated` in galaxy-tool-lint/src/galaxy_tool_lint/detect.py:41"}, "properties": {"repobilityId": "9173e571a235787c", "scanner": "scanner-primary", "fingerprint": "4ed1dac8715dd1be", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-26cdf432ecc21947", "level": "note", "message": {"text": "Legacy-named symbol `SelectOptionsNotDeprecated` in galaxy-tool-lint/src/galaxy_tool_lint/checks/inputs.py:559"}, "properties": {"repobilityId": "092b7f4cdce2d632", "scanner": "scanner-primary", "fingerprint": "26cdf432ecc21947", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-4a260e984cc4ee38", "level": "note", "message": {"text": "Legacy-named symbol `StdIOAbsenceLegacy` in galaxy-tool-lint/src/galaxy_tool_lint/checks/tool.py:195"}, "properties": {"repobilityId": "c0dce45c5793a48a", "scanner": "scanner-primary", "fingerprint": "4a260e984cc4ee38", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-05050b57687e9ad5", "level": "none", "message": {"text": "Commented-code block (6 lines) in galaxy-tool-lint/src/galaxy_tool_lint/checks/outputs.py:168"}, "properties": {"repobilityId": "f0080e73ae337541", "scanner": "scanner-primary", "fingerprint": "05050b57687e9ad5", "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": "67eb3458e5958180", "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": "eab536b88f269add", "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": "5b2a6d5e046b5cce", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-0d32ef4b8a679ae8", "level": "note", "message": {"text": "Near-duplicate function bodies in 24 places"}, "properties": {"repobilityId": "c5c43d03c757d938", "scanner": "scanner-primary", "fingerprint": "0d32ef4b8a679ae8", "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": "520558d07200587e", "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": "27bb7cc6bed70eb4", "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": "f3395c3c3dfe5d13", "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": "8c7c149ac83a6c5e", "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": "362f2cbbbd9e97bf", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "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": "b060d35f0aa5446e", "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": "d22c54d705eb3849", "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": "f356931510d20c11", "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": "5a74bde6624af72a", "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": "6bc9aa6edbac4215", "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": "5c3383e9645a292c", "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": "c83ccf4e807864c7", "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": "3d94e6fb51586905", "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": "ae41893174b81313", "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": "ce64679f785fb33e", "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": "d2cc921df11e0c0f", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}]}]}