{"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": "foundry_unresolved_feedback", "name": "Foundry mined unresolved feedback: rafaelhofstatterdev/Domus-PluginEletrico", "shortDescription": {"text": "Foundry mined unresolved feedback: rafaelhofstatterdev/Domus-PluginEletrico"}, "fullDescription": {"text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: needs_more_evidence\nRepo: rafaelhofstatterdev/Domus-PluginEletrico\nThread: rafaelhofstatterdev/Domus-PluginEletrico#1\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: rafaelhofstatterdev/Domus-PluginEletrico\nThread: rafaelhofstatterdev/Domus-PluginEletrico#1\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: rafaelhofstatterdev/Domus-PluginEletrico#1\nRepo: rafaelhofstatterdev/Domus-PluginEletrico\nIssue/PR number: 1\nGraph consistency label: needs_more_evidence\nNodes: 31\nEdges: 57\nNode types: {'pr_file': 22, 'link"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "medium", "confidence": 0.7, "cwe": "", "owasp": ""}}, {"id": "foundry_bad_chain", "name": "Foundry mined bad chains: rafaelhofstatterdev/Domus-PluginEletrico", "shortDescription": {"text": "Foundry mined bad chains: rafaelhofstatterdev/Domus-PluginEletrico"}, "fullDescription": {"text": "Comment chain pattern product: bad_chains\nRepo: rafaelhofstatterdev/Domus-PluginEletrico\nThread: rafaelhofstatterdev/Domus-PluginEletrico#1\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: rafaelhofstatterdev/Domus-PluginEletrico#1\nRepo: rafaelhofstatterdev/Domus-PluginEletrico\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 22\nLabels: {'ui_workflow_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'docs_or_claims': 1, 'ui_or_frontend': 20, 'api_or_backend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-c9fb25b2baa9f00c\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"ui_workflow_gap\",\n    \"polarity\": \"bad\",\n  "}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "high", "confidence": 0.84, "cwe": "", "owasp": ""}}, {"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-6372cebde0220094", "name": "No auth library detected", "shortDescription": {"text": "No auth library detected"}, "fullDescription": {"text": "The scanner did not find any standard auth library (JWT, OAuth, NextAuth, Auth0, etc.). The repo has auth/admin/session surface indicators, so auth may live in custom code, in a separate service, or be missing."}, "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-141b30a41e03817b", "name": "No license file detected", "shortDescription": {"text": "No license file detected"}, "fullDescription": {"text": "No LICENSE/COPYING/NOTICE file was found. Generated repositories often omit licensing, which blocks reuse and automated intake."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b9088664ace7f748", "name": "Composite production-readiness gap", "shortDescription": {"text": "Composite production-readiness gap"}, "fullDescription": {"text": "Multiple low-cost hardening controls are missing together: license, ci, tests. Opus verification showed these co-occurring gaps are a better readiness signal than reading each flag in isolation."}, "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}}]}}, "automationDetails": {"id": "repobility/17715"}, "properties": {"repository": "rafaelhofstatterdev/Domus-PluginEletrico", "repoUrl": "https://github.com/rafaelhofstatterdev/Domus-PluginEletrico", "branch": "main"}, "results": [{"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: rafaelhofstatterdev/Domus-PluginEletrico"}, "properties": {"repobilityId": 369380, "scanner": "foundry_dataset", "fingerprint": "09d90c89c2e3d3f4a3eeace2b4afdb3ec96d2d7939e725ac1a3fa18165f321d4", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"api_or_backend": 1, "docs_or_claims": 1, "ui_or_frontend": 20, "ui_workflow_gap": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 57, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 22, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 1, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 31, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 22, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "rafaelhofstatterdev/Domus-PluginEletrico#1", "issue_number": "1", "quality_tiers": {"unresolved": 3}, "repo_full_name": "rafaelhofstatterdev/Domus-PluginEletrico", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-2a4da0bd5576cc84", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {"api_or_backend": 4, "docs_or_claims": 4, "ui_or_frontend": 80}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: needs_more_evidence\nRepo: rafaelhofstatterdev/Domus-PluginEletrico\nThread: rafaelhofstatterdev/Domus-PluginEletrico#1\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: rafaelhofstatterdev/Domus-PluginEletrico\nThread: rafaelhofstatterdev/Domus-PluginEletrico#1\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: rafaelhofstatterdev/Domus-PluginEletrico#1\nRepo: rafaelhofstatterdev/Domus-PluginEletrico\nIssue/PR number: 1\nGraph consistency label: needs_more_evidence\nNodes: 31\nEdges: 57\nNode types: {'pr_file': 22, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 22, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'chain_has_link_quality': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 20, 'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'ui_workflow_gap': 1, 'docs_or_claims': 1, 'api_or_backend': 1, 'human_reported_issue_no_linked_fix': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/rafaelhofstatterdev/Domus-PluginEletrico", "source_id": "graph-query-motif_query-dd8554977afd7ac7", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/unresolved_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "rafaelhofstatterdev/Domus-PluginEletrico", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: rafaelhofstatterdev/Domus-PluginEletrico"}, "properties": {"repobilityId": 322281, "scanner": "foundry_dataset", "fingerprint": "a2b68fcd01ee4a48b42bbcea8e6eaff4efcf57d5666c592a98f5bf643155ac73", "category": "practices", "severity": "high", "confidence": 0.84, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "bad_chains", "synthetic": false, "thread_key": "rafaelhofstatterdev/Domus-PluginEletrico#1", "human_labels": ["api_or_backend", "docs_or_claims", "ui_or_frontend", "ui_workflow_gap"], "issue_number": "1", "thread_label": "thread_has_human_issue_without_fix_context", "outcome_label": "not_resolved_or_not_observed", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "rafaelhofstatterdev/Domus-PluginEletrico", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-0efd866d99aefaa9", "helicopter_views": {}, "artifact_families": {"docs": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 22, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"api_or_backend": 1, "docs_or_claims": 1, "ui_or_frontend": 20}, "linked_commit_count": 0, "helicopter_view_count": 0, "source_artifact_count": 2, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: bad_chains\nRepo: rafaelhofstatterdev/Domus-PluginEletrico\nThread: rafaelhofstatterdev/Domus-PluginEletrico#1\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: rafaelhofstatterdev/Domus-PluginEletrico#1\nRepo: rafaelhofstatterdev/Domus-PluginEletrico\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 22\nLabels: {'ui_workflow_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'docs_or_claims': 1, 'ui_or_frontend': 20, 'api_or_backend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-c9fb25b2baa9f00c\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"ui_workflow_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/rafaelhofstatterdev/Domus-PluginEletrico/pull/1\",\n    \"text\": \"GitHub feedback: ui_workflow_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: rafaelhofstatterdev/Domus-PluginEletrico\\nAuthor: rafaelhofstatterdev (User)\\nURL: https://github.com/rafaelhofstatterdev/Domus-PluginEletrico/pull/1\\nTitle: Roteamento de condu\u00edtes (menor caminho + conex\u00f5es v\u00e1lidas) e nova UI/UX do Conduit Builder\\nBody:\\nResolve as tr\u00eas dores do roteamento \u2014 n\u00e3o pega o menor caminho, n\u00e3o conecta e\\r\\ncria conex\u00f5es inv\u00e1lidas/\\\"de outro lugar\\\" \u2014 e moderniza a UI/UX do Conduit Builder.\\r\\n\\r\\n## Bloco A \u2014 Roteamento\\r\\n1. Menor caminho real (\u00e1rvore pesa o comprimento roteado, n\u00e3o a linha reta)\\r\\n2. Melhor forma do \\\"L\\\" (menos curvas)\\r\\n3. Conex\u00e3o garantida (stub axial nunca abandonado) + falhas vis\u00edveis\\r\\n4. Atribui\u00e7\u00e3o global de conectores por n\u00f3\\r\\n5. Jun\u00e7\u00f5es endurecidas (sem fitting/conex\u00e3o inv\u00e1lida)\\r\\n6. Reparo + valida\u00e7\u00e3o; pontas soltas destacadas na vista\\r\\n\\r\\n## Bloco B \u2014 UI/UX\\r\\n7. Tema compartilhado (UI/Themes/DmTheme.xaml) em todas as janelas\\r\\n8. Resultado clic\u00e1vel (zoom nas pontas soltas) no lugar do TaskDialog\\r\\n9. Sele\u00e7\u00e3o de circuitos + pr\u00e9via dry-run antes de aplicar\\r\\n10. Progresso cancel\u00e1vel com rollback\\r\\n\\r\\n\u26a0\ufe0f N\u00e3o compilado no ambiente de dev (sem .NET SDK). Validar com\\r\\n`dotnet build\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-52beebd02e51a129\",\n    \"filename\": \"PLANO-ROTEAMENTO-UX.md\",\n    \"label\": \"docs_or_claims\",\n    \"status\": \"added\",\n    \"additions\": 139,\n    \"deletions\": 0,\n    \"changes\": 139,\n    \"blob_url\": \"https://github.com/rafaelhofstatterdev/Domus-PluginEletrico/blob/1694e5d85c454fbed60c49b31ec7e2c2e221dcb8/PLANO-ROTEAMENTO-UX.md\"\n  },\n  {\n    \"id\": \"github-pr-file-file-d313a17bda66e4e7\",\n    \"filename\": \"src/DmEletrico/Commands/DmConduitBuilderCommand.cs\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 108,\n    \"deletions\": 42,\n    \"changes\":\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/rafaelhofstatterdev/Domus-PluginEletrico", "source_id": "comment-chain-pattern-bad_chains-ce493eb43a612889", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "rafaelhofstatterdev/Domus-PluginEletrico", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"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-6372cebde0220094", "level": "warning", "message": {"text": "No auth library detected"}, "properties": {"repobilityId": "a5b6035a5bbf8054", "scanner": "scanner-primary", "fingerprint": "6372cebde0220094", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["coverage", "auth"]}}, {"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-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "d50715dcf5f24b0d", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-b9088664ace7f748", "level": "warning", "message": {"text": "Composite production-readiness gap"}, "properties": {"repobilityId": "78507378c6302f87", "scanner": "scanner-primary", "fingerprint": "b9088664ace7f748", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["production-readiness", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "763f317af370e81c", "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": "eb424ce09eea94f8", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}]}]}