{"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": "CORE_NO_TESTS", "name": "No test files found in a documentation, catalog, or template-heavy repository", "shortDescription": {"text": "No test files found in a documentation, catalog, or template-heavy repository"}, "fullDescription": {"text": "If this repository ships runnable code, add focused tests for those examples or templates. If it is documentation/catalog content only, mark the finding as accepted or add a .repobilityignore note."}, "properties": {"scanner": "repobility-core", "category": "testing", "severity": "info", "confidence": 0.35, "cwe": "", "owasp": ""}}, {"id": "MINED115", "name": "Action `actions/github-script` pinned to mutable ref `@v8`", "shortDescription": {"text": "Action `actions/github-script` pinned to mutable ref `@v8`"}, "fullDescription": {"text": "`uses: actions/github-script@v8` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"scanner": "repobility-supply-chain", "category": "dependency", "severity": "high", "confidence": 0.9, "cwe": "", "owasp": ""}}]}}, "automationDetails": {"id": "repobility/925"}, "properties": {"repository": "firstcontributions/first-contributions", "repoUrl": "https://github.com/firstcontributions/first-contributions", "branch": "main"}, "results": [{"ruleId": "CORE_NO_TESTS", "level": "none", "message": {"text": "No test files found in a documentation, catalog, or template-heavy repository"}, "properties": {"repobilityId": 86873, "scanner": "repobility-core", "fingerprint": "69cfb3536a8ccff500ccafcd681fc8d4bc9f4eda6689da02ddec81654bd9fd15", "category": "testing", "severity": "info", "confidence": 0.35, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Repository shape is documentation, catalog, skill, or template-heavy rather than a conventional runnable application.", "evidence": {"reason": "Repository shape is documentation, catalog, skill, or template-heavy rather than a conventional runnable application.", "rule_id": "CORE_NO_TESTS", "scanner": "repobility-core", "confidence": 0.35, "correlation_key": "repo|testing|core_no_tests"}}}, {"ruleId": "MINED115", "level": "error", "message": {"text": "Action `actions/github-script` pinned to mutable ref `@v8`"}, "properties": {"repobilityId": 86877, "scanner": "repobility-supply-chain", "fingerprint": "60ba86fc134638091f16a9083b6bd625d62759a7938b02a18412245506ec4eb7", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|60ba86fc134638091f16a9083b6bd625d62759a7938b02a18412245506ec4eb7"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/auto-pr-merge.yml"}, "region": {"startLine": 189}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "Action `actions/github-script` pinned to mutable ref `@v8`"}, "properties": {"repobilityId": 86876, "scanner": "repobility-supply-chain", "fingerprint": "3676cfc196dbf6f8a056c3dce57d9fb279f0e5a30e58cc2c35d4fe97f5b0c085", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|3676cfc196dbf6f8a056c3dce57d9fb279f0e5a30e58cc2c35d4fe97f5b0c085"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/auto-pr-merge.yml"}, "region": {"startLine": 60}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "Action `actions/github-script` pinned to mutable ref `@v8`"}, "properties": {"repobilityId": 86875, "scanner": "repobility-supply-chain", "fingerprint": "c9964a9afc01e80e23b2daa8463a8a4af15e5f8dabedf42206182a5509f4c5c5", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|c9964a9afc01e80e23b2daa8463a8a4af15e5f8dabedf42206182a5509f4c5c5"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/auto-pr-merge.yml"}, "region": {"startLine": 26}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "Action `actions/checkout` pinned to mutable ref `@v6`"}, "properties": {"repobilityId": 86874, "scanner": "repobility-supply-chain", "fingerprint": "4c7c6fe5152f3e4fca6047d83d7b45433d0be52447a313468945e031d0b33dfb", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|4c7c6fe5152f3e4fca6047d83d7b45433d0be52447a313468945e031d0b33dfb"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/auto-pr-merge.yml"}, "region": {"startLine": 19}}}]}]}]}