{"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-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-8da4e7a302002039", "name": "Insecure pattern 'direct_innerhtml_assignment' in automation/index.html:535", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in automation/index.html:535"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-eac6632fe6647b52", "name": "Insecure pattern 'direct_innerhtml_assignment' in self-service-analytics/index.html:838", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in self-service-analytics/index.html:838"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a9f1532d013f61da", "name": "Insecure pattern 'direct_innerhtml_assignment' in healthcare-starter/index.html:506", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in healthcare-starter/index.html:506"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8c604e178ff7b340", "name": "Insecure pattern 'direct_innerhtml_assignment' in admin-governance/index.html:675", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in admin-governance/index.html:675"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3e62406d4e71a3eb", "name": "Insecure pattern 'direct_innerhtml_assignment' in build-your-ontology/index.html:553", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in build-your-ontology/index.html:553"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-52e0490392a06496", "name": "Insecure pattern 'direct_innerhtml_assignment' in sales-gtm/index.html:479", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in sales-gtm/index.html:479"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7abdaf3337479340", "name": "Insecure pattern 'direct_innerhtml_assignment' in finance-teams/index.html:502", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in finance-teams/index.html:502"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-48abbf5dedac133d", "name": "Insecure pattern 'direct_innerhtml_assignment' in vpc-deployment/index.html:460", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in vpc-deployment/index.html:460"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d430afd9e8112fd1", "name": "Insecure pattern 'direct_innerhtml_assignment' in bi-migration/index.html:413", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in bi-migration/index.html:413"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-864b58fe5ffb30f3", "name": "Insecure pattern 'direct_innerhtml_assignment' in embed-textql/index.html:458", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in embed-textql/index.html:458"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a3b51747dce1d3f2", "name": "Insecure pattern 'direct_innerhtml_assignment' in connect-your-data/index.html:620", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in connect-your-data/index.html:620"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-587370c4d769e77f", "name": "Insecure pattern 'direct_innerhtml_assignment' in ontology-operations/index.html:461", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in ontology-operations/index.html:461"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-48a28828f028530b", "name": "Insecure pattern 'direct_innerhtml_assignment' in developer/index.html:480", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in developer/index.html:480"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6bd5939ebcd611be", "name": "Insecure pattern 'direct_innerhtml_assignment' in customer-success/index.html:389", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in customer-success/index.html:389"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-796c130c4e8f0c66", "name": "Insecure pattern 'direct_innerhtml_assignment' in context-stack/index.html:746", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in context-stack/index.html:746"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f82a9da8ba08d82f", "name": "Insecure pattern 'direct_innerhtml_assignment' in dashboards-reporting/index.html:609", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in dashboards-reporting/index.html:609"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-98674d4afd4eb8cb", "name": "Insecure pattern 'direct_innerhtml_assignment' in data-quality/index.html:434", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in data-quality/index.html:434"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ae99384cf146baf8", "name": "Insecure pattern 'direct_innerhtml_assignment' in executives/index.html:316", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in executives/index.html:316"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-89be43e07f69b469", "name": "Insecure pattern 'direct_innerhtml_assignment' in poc-in-a-week/index.html:395", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in poc-in-a-week/index.html:395"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4601e3ad3bb28677", "name": "No CI/CD pipelines detected", "shortDescription": {"text": "No CI/CD pipelines detected"}, "fullDescription": {"text": "No GitHub Actions, GitLab CI, or CircleCI configs found. Without CI you can't gate deploys on tests/lints."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "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}}]}}, "automationDetails": {"id": "repobility/21014"}, "properties": {"repository": "TextQLLabs/workshops", "repoUrl": "https://github.com/TextQLLabs/workshops", "branch": "main"}, "results": [{"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-8da4e7a302002039", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in automation/index.html:535"}, "properties": {"repobilityId": "39efcb9b35ac8a65", "scanner": "scanner-primary", "fingerprint": "8da4e7a302002039", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "automation/index.html"}, "region": {"startLine": 535}}}]}, {"ruleId": "scanner-eac6632fe6647b52", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in self-service-analytics/index.html:838"}, "properties": {"repobilityId": "ddfbd227942c0115", "scanner": "scanner-primary", "fingerprint": "eac6632fe6647b52", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "self-service-analytics/index.html"}, "region": {"startLine": 838}}}]}, {"ruleId": "scanner-a9f1532d013f61da", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in healthcare-starter/index.html:506"}, "properties": {"repobilityId": "b53c5e7e90994b37", "scanner": "scanner-primary", "fingerprint": "a9f1532d013f61da", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "healthcare-starter/index.html"}, "region": {"startLine": 506}}}]}, {"ruleId": "scanner-8c604e178ff7b340", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in admin-governance/index.html:675"}, "properties": {"repobilityId": "a5dffee0a4bf56d5", "scanner": "scanner-primary", "fingerprint": "8c604e178ff7b340", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "admin-governance/index.html"}, "region": {"startLine": 675}}}]}, {"ruleId": "scanner-3e62406d4e71a3eb", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in build-your-ontology/index.html:553"}, "properties": {"repobilityId": "7fe661faa9cc407a", "scanner": "scanner-primary", "fingerprint": "3e62406d4e71a3eb", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "build-your-ontology/index.html"}, "region": {"startLine": 553}}}]}, {"ruleId": "scanner-52e0490392a06496", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in sales-gtm/index.html:479"}, "properties": {"repobilityId": "291a5c07cb5f3041", "scanner": "scanner-primary", "fingerprint": "52e0490392a06496", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "sales-gtm/index.html"}, "region": {"startLine": 479}}}]}, {"ruleId": "scanner-7abdaf3337479340", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in finance-teams/index.html:502"}, "properties": {"repobilityId": "2dee18571b3faf64", "scanner": "scanner-primary", "fingerprint": "7abdaf3337479340", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "finance-teams/index.html"}, "region": {"startLine": 502}}}]}, {"ruleId": "scanner-48abbf5dedac133d", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in vpc-deployment/index.html:460"}, "properties": {"repobilityId": "db0fd18f85174805", "scanner": "scanner-primary", "fingerprint": "48abbf5dedac133d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "vpc-deployment/index.html"}, "region": {"startLine": 460}}}]}, {"ruleId": "scanner-d430afd9e8112fd1", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in bi-migration/index.html:413"}, "properties": {"repobilityId": "61ed40d2839bbc77", "scanner": "scanner-primary", "fingerprint": "d430afd9e8112fd1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "bi-migration/index.html"}, "region": {"startLine": 413}}}]}, {"ruleId": "scanner-864b58fe5ffb30f3", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in embed-textql/index.html:458"}, "properties": {"repobilityId": "78b8f715c7f9db5e", "scanner": "scanner-primary", "fingerprint": "864b58fe5ffb30f3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "embed-textql/index.html"}, "region": {"startLine": 458}}}]}, {"ruleId": "scanner-a3b51747dce1d3f2", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in connect-your-data/index.html:620"}, "properties": {"repobilityId": "bd62b942e7b7d788", "scanner": "scanner-primary", "fingerprint": "a3b51747dce1d3f2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "connect-your-data/index.html"}, "region": {"startLine": 620}}}]}, {"ruleId": "scanner-587370c4d769e77f", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in ontology-operations/index.html:461"}, "properties": {"repobilityId": "037dd1ad8bc320b5", "scanner": "scanner-primary", "fingerprint": "587370c4d769e77f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "ontology-operations/index.html"}, "region": {"startLine": 461}}}]}, {"ruleId": "scanner-48a28828f028530b", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in developer/index.html:480"}, "properties": {"repobilityId": "19a708abf25e6233", "scanner": "scanner-primary", "fingerprint": "48a28828f028530b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "developer/index.html"}, "region": {"startLine": 480}}}]}, {"ruleId": "scanner-6bd5939ebcd611be", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in customer-success/index.html:389"}, "properties": {"repobilityId": "0bc4fd2f2c0be9dc", "scanner": "scanner-primary", "fingerprint": "6bd5939ebcd611be", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "customer-success/index.html"}, "region": {"startLine": 389}}}]}, {"ruleId": "scanner-796c130c4e8f0c66", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in context-stack/index.html:746"}, "properties": {"repobilityId": "e3a57cb429a24e9b", "scanner": "scanner-primary", "fingerprint": "796c130c4e8f0c66", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "context-stack/index.html"}, "region": {"startLine": 746}}}]}, {"ruleId": "scanner-f82a9da8ba08d82f", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in dashboards-reporting/index.html:609"}, "properties": {"repobilityId": "0c5cc91ce7916103", "scanner": "scanner-primary", "fingerprint": "f82a9da8ba08d82f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "dashboards-reporting/index.html"}, "region": {"startLine": 609}}}]}, {"ruleId": "scanner-98674d4afd4eb8cb", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in data-quality/index.html:434"}, "properties": {"repobilityId": "d8029ca8417ed68f", "scanner": "scanner-primary", "fingerprint": "98674d4afd4eb8cb", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "data-quality/index.html"}, "region": {"startLine": 434}}}]}, {"ruleId": "scanner-ae99384cf146baf8", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in executives/index.html:316"}, "properties": {"repobilityId": "d1226a90dd9e61e0", "scanner": "scanner-primary", "fingerprint": "ae99384cf146baf8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "executives/index.html"}, "region": {"startLine": 316}}}]}, {"ruleId": "scanner-89be43e07f69b469", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in poc-in-a-week/index.html:395"}, "properties": {"repobilityId": "0545cf57a82e3548", "scanner": "scanner-primary", "fingerprint": "89be43e07f69b469", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "poc-in-a-week/index.html"}, "region": {"startLine": 395}}}]}, {"ruleId": "scanner-4601e3ad3bb28677", "level": "warning", "message": {"text": "No CI/CD pipelines detected"}, "properties": {"repobilityId": "c3ee439bce2bc51e", "scanner": "scanner-primary", "fingerprint": "4601e3ad3bb28677", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "cc5f1faf5ce4d8c8", "scanner": "scanner-primary", "fingerprint": "ea8f3013f588db25", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}]}]}