{"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": "CFG006", "name": "[CFG006] Missing .gitignore: No .gitignore file. Risk of committing secrets and build artifacts.", "shortDescription": {"text": "[CFG006] Missing .gitignore: No .gitignore file. Risk of committing secrets and build artifacts."}, "fullDescription": {"text": "Add a .gitignore appropriate for your language/framework."}, "properties": {"scanner": "repobility-threat-engine", "category": "practices", "severity": "medium", "confidence": 1.0, "cwe": "", "owasp": ""}}, {"id": "MINED111", "name": "Bare except continues silently", "shortDescription": {"text": "Bare except continues silently"}, "fullDescription": {"text": "Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"scanner": "repobility-ast-engine", "category": "quality", "severity": "medium", "confidence": 1.0, "cwe": "", "owasp": ""}}, {"id": "CORE_LARGE_FILES", "name": "Average file size is 736 lines (recommend <300)", "shortDescription": {"text": "Average file size is 736 lines (recommend <300)"}, "fullDescription": {"text": "Refactor large files by extracting related functions into separate modules. Target files with 300+ lines first. Use the Single Responsibility Principle \u2014 each module should have one clear purpose."}, "properties": {"scanner": "repobility-core", "category": "quality", "severity": "medium", "confidence": null, "cwe": "", "owasp": ""}}, {"id": "CORE_NO_CI", "name": "No CI/CD configuration found", "shortDescription": {"text": "No CI/CD configuration found"}, "fullDescription": {"text": "Add a CI/CD pipeline: create .github/workflows/ci.yml for GitHub Actions with steps to lint, test, and build on every push and pull request."}, "properties": {"scanner": "repobility-core", "category": "practices", "severity": "info", "confidence": 0.35, "cwe": "", "owasp": ""}}, {"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": "MINED108", "name": "`self.show_error` used but never assigned in __init__", "shortDescription": {"text": "`self.show_error` used but never assigned in __init__"}, "fullDescription": {"text": "Method `_start_kobold` of class `OCRApp` reads `self.show_error`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"scanner": "repobility-ast-engine", "category": "quality", "severity": "high", "confidence": 1.0, "cwe": "", "owasp": ""}}]}}, "automationDetails": {"id": "repobility/625"}, "properties": {"repository": "ADG-AUDISIS/OCR-IA", "repoUrl": "https://github.com/ADG-AUDISIS/OCR-IA.git", "branch": "main"}, "results": [{"ruleId": "CFG006", "level": "warning", "message": {"text": "[CFG006] Missing .gitignore: No .gitignore file. Risk of committing secrets and build artifacts."}, "properties": {"repobilityId": 44129, "scanner": "repobility-threat-engine", "fingerprint": "c65fc71ce58c37a0e07837c0fe294108b731c43ef16027a2f0971c757bbe9a16", "category": "practices", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "No .gitignore file found in repository root", "evidence": {"reason": "No .gitignore file found in repository root", "rule_id": "CFG006", "scanner": "repobility-threat-engine", "confidence": 1.0, "correlation_key": "repo|practices|cfg006"}}}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "Bare except continues silently"}, "properties": {"repobilityId": 44128, "scanner": "repobility-ast-engine", "fingerprint": "b0b61e89c1cd23fb7bc56265c5c57f2c783c4f0392de53ac6484ec1cf9d8525a", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|b0b61e89c1cd23fb7bc56265c5c57f2c783c4f0392de53ac6484ec1cf9d8525a"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 297}}}]}, {"ruleId": "CORE_LARGE_FILES", "level": "warning", "message": {"text": "Average file size is 736 lines (recommend <300)"}, "properties": {"repobilityId": 44102, "scanner": "repobility-core", "fingerprint": "8ce812de72ac572deaf23b4d2cec97d79e9ba8a887c4112dce224b2196825e49", "category": "quality", "severity": "medium", "confidence": null, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"rule_id": "CORE_LARGE_FILES", "scanner": "repobility-core", "correlation_key": "fp|8ce812de72ac572deaf23b4d2cec97d79e9ba8a887c4112dce224b2196825e49"}}}, {"ruleId": "CORE_NO_CI", "level": "none", "message": {"text": "No CI/CD configuration found"}, "properties": {"repobilityId": 44101, "scanner": "repobility-core", "fingerprint": "ca5da3551af97272c4f099fc472740148135a15816b81b90bd862e8f91ec66ce", "category": "practices", "severity": "info", "confidence": 0.35, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Repository shape is documentation, catalog, skill, or template-heavy.", "evidence": {"reason": "Repository shape is documentation, catalog, skill, or template-heavy.", "rule_id": "CORE_NO_CI", "scanner": "repobility-core", "confidence": 0.35, "correlation_key": "repo|practices|core_no_ci"}}}, {"ruleId": "CORE_NO_TESTS", "level": "none", "message": {"text": "No test files found in a documentation, catalog, or template-heavy repository"}, "properties": {"repobilityId": 44100, "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": "MINED108", "level": "error", "message": {"text": "`self.show_error` used but never assigned in __init__"}, "properties": {"repobilityId": 44127, "scanner": "repobility-ast-engine", "fingerprint": "0489e1bb739d2b4c70364f20b8d3f186eca29b3c7c8d865af2c7cfcfc063849e", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|0489e1bb739d2b4c70364f20b8d3f186eca29b3c7c8d865af2c7cfcfc063849e"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 298}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.log` used but never assigned in __init__"}, "properties": {"repobilityId": 44126, "scanner": "repobility-ast-engine", "fingerprint": "7519115dee8763694ee8d5855c91031393111d296cc42c1b5ce7080520c5a216", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|7519115dee8763694ee8d5855c91031393111d296cc42c1b5ce7080520c5a216"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 294}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.update_status` used but never assigned in __init__"}, "properties": {"repobilityId": 44125, "scanner": "repobility-ast-engine", "fingerprint": "9b0eae11eb537293216ec027581961dbf2d5ad7f2fac16186b2f26685b08de1c", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|9b0eae11eb537293216ec027581961dbf2d5ad7f2fac16186b2f26685b08de1c"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 274}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.log` used but never assigned in __init__"}, "properties": {"repobilityId": 44124, "scanner": "repobility-ast-engine", "fingerprint": "9b8ca10a4ea9e243e2e8a80e3a39c88fe208ddeb4244b2a38a8294e386c41e93", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|9b8ca10a4ea9e243e2e8a80e3a39c88fe208ddeb4244b2a38a8294e386c41e93"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 273}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.show_error` used but never assigned in __init__"}, "properties": {"repobilityId": 44123, "scanner": "repobility-ast-engine", "fingerprint": "d868f53f453b410b27fa92eea599521bef698bd90b3f405b6688cb5d19e75e2e", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|d868f53f453b410b27fa92eea599521bef698bd90b3f405b6688cb5d19e75e2e"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 261}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.show_error` used but never assigned in __init__"}, "properties": {"repobilityId": 44122, "scanner": "repobility-ast-engine", "fingerprint": "828e88ed90c3c46f39f9789654991f89a259e45c16df1cb57b3704952410dca4", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|828e88ed90c3c46f39f9789654991f89a259e45c16df1cb57b3704952410dca4"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 253}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.show_error` used but never assigned in __init__"}, "properties": {"repobilityId": 44121, "scanner": "repobility-ast-engine", "fingerprint": "44023ddcd94e79942d455489534bdc1190269b91fc066e25b2b6ce55f17b7cec", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|44023ddcd94e79942d455489534bdc1190269b91fc066e25b2b6ce55f17b7cec"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 317}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self._stop_kobold` used but never assigned in __init__"}, "properties": {"repobilityId": 44120, "scanner": "repobility-ast-engine", "fingerprint": "db39ea791734ffbcf4d261d37b8b152393e617619d63e5bd3447477907c91c18", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|db39ea791734ffbcf4d261d37b8b152393e617619d63e5bd3447477907c91c18"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 316}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self._kill_previous_kobold` used but never assigned in __init__"}, "properties": {"repobilityId": 44119, "scanner": "repobility-ast-engine", "fingerprint": "a7589b52819e93af171ddd97ca16a9457059294c56a9a36c5eca01556f82e16b", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|a7589b52819e93af171ddd97ca16a9457059294c56a9a36c5eca01556f82e16b"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 264}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.log` used but never assigned in __init__"}, "properties": {"repobilityId": 44118, "scanner": "repobility-ast-engine", "fingerprint": "13e0450a883811865d6aaec2ad7ce10ea5666475f4f222cb357ff301d6fb9cb0", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|13e0450a883811865d6aaec2ad7ce10ea5666475f4f222cb357ff301d6fb9cb0"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 222}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.log` used but never assigned in __init__"}, "properties": {"repobilityId": 44117, "scanner": "repobility-ast-engine", "fingerprint": "a4100e9c27fec07efcef612d9ff7fa11d550846a82cf4e7fdf61886ea3dabfbf", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|a4100e9c27fec07efcef612d9ff7fa11d550846a82cf4e7fdf61886ea3dabfbf"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 219}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.log` used but never assigned in __init__"}, "properties": {"repobilityId": 44116, "scanner": "repobility-ast-engine", "fingerprint": "6060ab9fca43c625f9e16ea4a8b9971761688d2154dc568024e659663525f546", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|6060ab9fca43c625f9e16ea4a8b9971761688d2154dc568024e659663525f546"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 229}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.log` used but never assigned in __init__"}, "properties": {"repobilityId": 44115, "scanner": "repobility-ast-engine", "fingerprint": "2c648a6b42a9ee8807b8317b09e7336184233037197c0209bbe64cadf423ed1b", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|2c648a6b42a9ee8807b8317b09e7336184233037197c0209bbe64cadf423ed1b"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 209}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self._stop_kobold` used but never assigned in __init__"}, "properties": {"repobilityId": 44114, "scanner": "repobility-ast-engine", "fingerprint": "f587d652cd9eff18d576a0b5fb37bb5fc1c63ded72d7270430f0a0e8f28f9043", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|f587d652cd9eff18d576a0b5fb37bb5fc1c63ded72d7270430f0a0e8f28f9043"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 200}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.log` used but never assigned in __init__"}, "properties": {"repobilityId": 44113, "scanner": "repobility-ast-engine", "fingerprint": "06ac47f0ac7f9096eb69e0256b4727e7d8bf17443971872a01d7e7257b87a789", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|06ac47f0ac7f9096eb69e0256b4727e7d8bf17443971872a01d7e7257b87a789"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 197}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.log` used but never assigned in __init__"}, "properties": {"repobilityId": 44112, "scanner": "repobility-ast-engine", "fingerprint": "0474c8e629cfa6319857dd167bb5c1156bb44c7b367976393a9738972baaef2c", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|0474c8e629cfa6319857dd167bb5c1156bb44c7b367976393a9738972baaef2c"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 192}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.log_text` used but never assigned in __init__"}, "properties": {"repobilityId": 44111, "scanner": "repobility-ast-engine", "fingerprint": "20d3f61f7ff0179283560080fe13372dc44fe159de93bf3d8647c01a3f33efb1", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|20d3f61f7ff0179283560080fe13372dc44fe159de93bf3d8647c01a3f33efb1"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 175}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.log_text` used but never assigned in __init__"}, "properties": {"repobilityId": 44110, "scanner": "repobility-ast-engine", "fingerprint": "6911006c4adb7cb11ff581ccd6c26e3414d611e935c3a6a2d3dc16d752c50b02", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|6911006c4adb7cb11ff581ccd6c26e3414d611e935c3a6a2d3dc16d752c50b02"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 173}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.log_text` used but never assigned in __init__"}, "properties": {"repobilityId": 44109, "scanner": "repobility-ast-engine", "fingerprint": "9e1fe7e2242181f11af97303abe702ce9857459c573ce5f38f40bb59bbf38536", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|9e1fe7e2242181f11af97303abe702ce9857459c573ce5f38f40bb59bbf38536"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 177}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.log_text` used but never assigned in __init__"}, "properties": {"repobilityId": 44108, "scanner": "repobility-ast-engine", "fingerprint": "1c8206f36755a1a79883a8b04237bb6253618dec9475bce305324424111aeac0", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|1c8206f36755a1a79883a8b04237bb6253618dec9475bce305324424111aeac0"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 176}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.log_text` used but never assigned in __init__"}, "properties": {"repobilityId": 44107, "scanner": "repobility-ast-engine", "fingerprint": "f6507e57d3f5f72a4ff2e5e4b71d183f979d6e195da479d10a8d54537d5a7053", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|f6507e57d3f5f72a4ff2e5e4b71d183f979d6e195da479d10a8d54537d5a7053"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 171}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.status_var` used but never assigned in __init__"}, "properties": {"repobilityId": 44106, "scanner": "repobility-ast-engine", "fingerprint": "a713873c7afe3936d7959114ddd4343a41396610434efb98ff939e996e9415cf", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|a713873c7afe3936d7959114ddd4343a41396610434efb98ff939e996e9415cf"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 164}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self.progress` used but never assigned in __init__"}, "properties": {"repobilityId": 44105, "scanner": "repobility-ast-engine", "fingerprint": "3a5fce961e63ae63e01d260213eff6720b65e7d6fa00fac2045525935ee4a77e", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|3a5fce961e63ae63e01d260213eff6720b65e7d6fa00fac2045525935ee4a77e"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 162}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self._unsafe_log` used but never assigned in __init__"}, "properties": {"repobilityId": 44104, "scanner": "repobility-ast-engine", "fingerprint": "6e1eda6e4091853b4b4c771017415d8613deedbf193bdebfb2394a83eed85015", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|6e1eda6e4091853b4b4c771017415d8613deedbf193bdebfb2394a83eed85015"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 160}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "`self._process_ui_queue` used but never assigned in __init__"}, "properties": {"repobilityId": 44103, "scanner": "repobility-ast-engine", "fingerprint": "7d73bb3e37cc88936c91ec06ee54f542a7de2431a83ed3086ff31908976ce404", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|7d73bb3e37cc88936c91ec06ee54f542a7de2431a83ed3086ff31908976ce404"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "OCR-IA.py"}, "region": {"startLine": 167}}}]}]}]}