{"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: UmaisNisar/InvestAdvisor", "shortDescription": {"text": "Foundry mined unresolved feedback: UmaisNisar/InvestAdvisor"}, "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: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#5\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: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#5\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#5\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 5\nGraph consistency label: needs_more_evidence\nNodes: 9\nEdges: 11\nNode types: {'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "medium", "confidence": 0.7, "cwe": "", "owasp": ""}}, {"id": "foundry_assumption_check", "name": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor", "shortDescription": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "fullDescription": {"text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#9\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_weak_supervision\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#9\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'ui_workflow_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-48417159ab9e222b\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"ui_workflow_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/9\",\n    \"text\": \"GitHub feedback: ui_workflow_gap\\nPolarity: bad\\"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "medium", "confidence": 0.62, "cwe": "", "owasp": ""}}, {"id": "foundry_test_ci_gap", "name": "Foundry mined test ci gap after feedback: UmaisNisar/InvestAdvisor", "shortDescription": {"text": "Foundry mined test ci gap after feedback: UmaisNisar/InvestAdvisor"}, "fullDescription": {"text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#8\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#8\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#8\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 8\nGraph consistency label: supported_by_verification_signal\nNodes: 14\nEdges: 16\nNode types: {'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_"}, "properties": {"scanner": "foundry_dataset", "category": "testing", "severity": "high", "confidence": 0.78, "cwe": "", "owasp": ""}}, {"id": "foundry_schema_ui_api_gap", "name": "Foundry mined schema ui api mismatch: UmaisNisar/InvestAdvisor", "shortDescription": {"text": "Foundry mined schema ui api mismatch: UmaisNisar/InvestAdvisor"}, "fullDescription": {"text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: supported_by_verification_signal\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#50\nEvidence:\nGraph motif: Schema, UI, and API evidence do not line up\nMotif id: schema_ui_api_mismatch\nPolarity: bad\nTraining usage: assumption_check\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#50\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#50\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 50\nGraph consistency label: supported_by_verification_signal\nNodes: 44\nEdges: 70\nNode types: {'pr_file': 30, 'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, "}, "properties": {"scanner": "foundry_dataset", "category": "quality", "severity": "high", "confidence": 0.76, "cwe": "", "owasp": ""}}, {"id": "foundry_bad_chain", "name": "Foundry mined bad chains: UmaisNisar/InvestAdvisor", "shortDescription": {"text": "Foundry mined bad chains: UmaisNisar/InvestAdvisor"}, "fullDescription": {"text": "Comment chain pattern product: bad_chains\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#3\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, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#3\nRepo: UmaisNisar/InvestAdvisor\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: 0\nLabels: {'api_integration_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-689b8eb6a6e05cb4\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/3\",\n    \"text\": \"GitHub feed"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "high", "confidence": 0.84, "cwe": "", "owasp": ""}}, {"id": "foundry_auth_guardrail_gap", "name": "Foundry mined security auth guardrail gaps: UmaisNisar/InvestAdvisor", "shortDescription": {"text": "Foundry mined security auth guardrail gaps: UmaisNisar/InvestAdvisor"}, "fullDescription": {"text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#6\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#6\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#6\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 6\nGraph consistency label: weak_supervision_needs_review\nNodes: 14\nEdges: 16\nNode types: {'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_"}, "properties": {"scanner": "foundry_dataset", "category": "auth", "severity": "critical", "confidence": 0.78, "cwe": "", "owasp": ""}}, {"id": "foundry_fake_real_gap", "name": "Foundry mined mock as real or placeholder: UmaisNisar/InvestAdvisor", "shortDescription": {"text": "Foundry mined mock as real or placeholder: UmaisNisar/InvestAdvisor"}, "fullDescription": {"text": "Graph query export: Mock, sample, placeholder, or self-attested behavior treated as real\nQuery id: mock_as_real_or_placeholder\nQuery type: motif_query\nIntent: Hard negatives for fake completeness and missing real data paths.\nMotif: mock_as_real_or_placeholder\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#27\nEvidence:\nGraph motif: Mock, sample, placeholder, or self-attested behavior treated as real\nMotif id: mock_as_real_or_placeholder\nPolarity: bad\nTraining usage: hard_negative\nSeverity: critical\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#27\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#27\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 27\nGraph consistency label: supported_by_high_confidence_link\nNodes: 14\nEdges: 16\nNode types: {'commit': 5, 'link_quality': 3, 'thread': 1"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "critical", "confidence": 0.82, "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-28c4a04bd807da0c", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "actions/setup-dotnet@v4 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": "low", "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": "actions/setup-dotnet@v4 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": "low", "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-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-11825279136b53a3", "name": "CI is configured but no tests are detected", "shortDescription": {"text": "CI is configured but no tests are detected"}, "fullDescription": {"text": "A CI pipeline exists, but the scan found no test files to gate. Opus labeled this generated-code pattern as config theater: release machinery exists, but it has little behavioral signal."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "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, 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": "low", "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/21870"}, "properties": {"repository": "UmaisNisar/InvestAdvisor", "repoUrl": "https://github.com/UmaisNisar/InvestAdvisor", "branch": "main"}, "results": [{"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 361795, "scanner": "foundry_dataset", "fingerprint": "8f6f18a85ad8735185b4854277d431dfccebbaaf0b2415034dba925b409bf745", "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": {"human_feedback_general": 1, "unlinked_human_feedback": 1, "thread_needs_classification": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 3}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"ambiguous_needs_more_evidence": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 11, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 9, "node_types": {"repo": 1, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#5", "issue_number": "5", "quality_tiers": {"unresolved": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-a783e73946913b57", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {}}, "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: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#5\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: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#5\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#5\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 5\nGraph consistency label: needs_more_evidence\nNodes: 9\nEdges: 11\nNode types: {'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'ambiguous_needs_more_evidence': 3, 'thread_needs_classification': 2, 'issue_or_pull_request_thread': 1, 'human_feedback_general': 1, 'unlinked_human_feedback': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 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/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-4c34e47c5c42dd5f", "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": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 361794, "scanner": "foundry_dataset", "fingerprint": "4759401660409ceefda8b7a82a89ae02fdceeb444413903fd92329b14616555d", "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_integration_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": 11, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 9, "node_types": {"repo": 1, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#3", "issue_number": "3", "quality_tiers": {"unresolved": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-59fa4b7c697fa664", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {}}, "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: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#3\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: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#3\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#3\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 3\nGraph consistency label: needs_more_evidence\nNodes: 9\nEdges: 11\nNode types: {'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 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/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-5f40459f2c89b160", "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": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 361793, "scanner": "foundry_dataset", "fingerprint": "5b1b3040ccbc218f7e7f1c1cf6282c144fb6ecbb437abf3a4e5c3f65e0200bc1", "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": {"test_ci_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": 11, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 9, "node_types": {"repo": 1, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#1", "issue_number": "1", "quality_tiers": {"unresolved": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-02f812111ee301e1", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {}}, "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: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#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: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#1\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#1\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 1\nGraph consistency label: needs_more_evidence\nNodes: 9\nEdges: 11\nNode types: {'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 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/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-19f09f31b8218c74", "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": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301234, "scanner": "foundry_dataset", "fingerprint": "f784ac2edf36a6f79a3ff185fc6249b30b6832e26d9bf82888477d336a93b2ed", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#9", "human_labels": ["ui_workflow_gap"], "issue_number": "9", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.59, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-fd26e38d91efef8a", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 3, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_weak_supervision"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#9\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_weak_supervision\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#9\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'ui_workflow_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-48417159ab9e222b\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"ui_workflow_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/9\",\n    \"text\": \"GitHub feedback: ui_workflow_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/9\\nTitle: Merge mobile follow-ups + holding detail chart into main\\nBody:\\nBrings the work that's accumulated on `feature/ios-mobile-ui` since PR #6 into `main`:\\n\\n- **#7 Mobile follow-ups** \u2014 dashboard loading skeleton, PNG app icon, full-width detail drawer on mobile.\\n- **#8 Holding detail drawer with price-history chart** \u2014 click a holding to open a detail drawer with metrics + an interactive price chart (Line default, Candles toggle, 1M/3M/6M/1Y), dark tooltip, display rounding.\\n\\nBoth were already reviewed/merged into `feature/ios-mobile-ui`; this rolls them up to `main`.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\\n\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-96337825b07b0512\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: UmaisNisar/InvestAdvisor\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 1, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 1, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 1}\nHelicopter views: {}\nBundle labels: {\"source_backed_security_guardrail_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-e619b9a7a90bce3e", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301233, "scanner": "foundry_dataset", "fingerprint": "e1ef6ef61ca078d537f80c78f41ec6997959b4faf0cedcd06e34425f3579f921", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#6", "human_labels": ["security_auth_secret"], "issue_number": "6", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-ce5e6f2f3f5edeea", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#6\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#6\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-537be48495cb2daa\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/6\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/6\\nTitle: Native iOS feel on mobile: bottom tab bar, stacked cards, PWA\\nBody:\\n## Why\\n\\nOn a phone the app read like a website, not an app \u2014 hamburger + side drawer navigation, wide scrolling data tables, browser chrome. This reworks the **mobile** experience around native iOS patterns. The desktop layout is untouched (everything is gated below the `md` breakpoint or behind zero-valued `env()` insets).\\n\\n## What changed\\n\\n**Navigation**\\n- New `BottomNav.razor`: thumb-reachable bottom tab bar \u2014 Home / Invest / Screener / Watchlist + **More**. Shown only on phones (`d-md-none`).\\n- \\\"More\\\" opens the existing `NavMenu` drawer (Advice feed, Settings, etc.); the hamburger is hidden below `md`.\\n\\n**Tables \u2192 cards**\\n- Dashboard holdings, Watchlist, Settings holdings, and Advice feed tables stack into labeled cards on phones via MudTable `Breakpoint=\\\"Breakpoint.Sm\\\"` + per-cell `DataLabel`.\\n- Top movers stays a compact 3-column table (fits 390px without scroll).\\n\\n**Installable PWA**\\n- `manifest.webmanifest` + Apple\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-a5b8b78050961d1c\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: UmaisNisar/InvestAdvisor\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 1, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 1, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 1}\nHelicopter views: {}\nBundle labels: {\"source_backed_security_guardrail_bundle\": 1}\nCo-occurrence label\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-a2c9d386d1a1c0fa", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301232, "scanner": "foundry_dataset", "fingerprint": "1b44058c5a5e93f2b00c565fe649cdd44f6534cbf8fe15595a33d36c36d01841", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#54", "human_labels": ["test_ci_gap", "ui_or_frontend"], "issue_number": "54", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.912, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-dfb4cd5e0f374b1f", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 1, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"ui_or_frontend": 1}, "linked_commit_count": 3, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 1, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#54\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#54\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 1\nLinked CI labels: {'ci_pending_or_incomplete': 1}\nChanged file count: 1\nLabels: {'test_ci_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-29e9b757370ffcde\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/54\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/54\\nTitle: fix(portfolio): pin value-chart endpoint to live total; anchor 1D baseline to prev close\\nBody:\\n## What\\nThe portfolio value chart and the period-change figures didn't compose cleanly across timelines:\\n\\n- **Endpoint drift:** the line is reconstructed from per-ticker history fetched separately from the live quote, so its right edge (the last candle) could disagree with the displayed hero total \u2014 and the longer-range period change (1W/1M/\u2026) was measured *to that stale endpoint*.\\n- **1D baseline:** the dashed reference line sat at the first intraday bar, not previous close, so it didn't match the headline \\\"Today\\\" (live vs previous close) figure.\\n\\n## Change (all in `PortfolioValueCard.razor`)\\n- Pin the final chart point to the live total whenever the chart covers the whole book (nothing in `MissingTickers`), so **every range ends on the same hero value** the user sees. Falls back to the last candle when holdings are excluded (can't form the charted subset's live value).\\n- Anchor the **1D** dashed baseli\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-410b0037c01c0ffe\",\n    \"filename\": \"InvestAdvisor.Ui/Components/PortfolioValueCard.razor\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 29,\n    \"deletions\": 3,\n    \"changes\": 32,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/24d3a376493810b533ca780c05917c021d8a4504/InvestAdvisor.Ui%2FComponents%2FPortfolioValueCard.razor\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-4f4ab36d8e3d3004\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: UmaisNisar/InvestAdvisor\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_re\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-8780d5acd8974294", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301231, "scanner": "foundry_dataset", "fingerprint": "a22ef2a4c9f67c5dfdedf95a7e5a7a938a2df60372039cb89418d858c3e05a9c", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#53", "human_labels": ["test_ci_gap", "ui_or_frontend"], "issue_number": "53", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.86, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-c4d38c11447af65f", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"ui_or_frontend": 2}, "linked_commit_count": 4, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#53\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#53\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 4\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'test_ci_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-b87aadd285b96b7d\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/53\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/53\\nTitle: fix: notification popover clipped inside the glass rail\\nBody:\\n## The bug\\n\\nThe notification panel rendered as a thin, clipped sliver inside the rail (see report). Root cause: the rail and app bar use `backdrop-filter` for the glass look, and `backdrop-filter` establishes a **containing block for `position: fixed`** descendants \u2014 so the custom fixed popover from #51 anchored in the rail couldn't escape the 64px chrome and got clipped to it.\\n\\n## The fix\\n\\nRender the panel through **MudPopover** (its content lives in the root popover provider, outside the glass) while still driving `Open` ourselves, so the iOS-style open **and** close animation from #51 is preserved (mount \u2192 enter \u2192 exit \u2192 unmount before unmounting).\\n\\n- The default glass popover surface is stripped via `.mud-popover:has(> .ia-pop)` so only our card shows (PopoverClass lands on a holder, not the positioned element).\\n- Click-away is a `position: fixed` backdrop rendered **inside** the popover content (root provider = no glass ancestor \u2192 \"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-edae698007f00ddb\",\n    \"filename\": \"InvestAdvisor.Ui/Components/NotificationBell.razor\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 31,\n    \"deletions\": 26,\n    \"changes\": 57,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/0ec7c6efeb350dd339a239f0c3598b05ba731f2e/InvestAdvisor.Ui%2FComponents%2FNotificationBell.razor\"\n  },\n  {\n    \"id\": \"github-pr-file-file-b47a82d393a51cab\",\n    \"filename\": \"InvestAdvisor.Ui/wwwroot/css/app.css\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 23,\n    \"deletions\": 9,\n    \"changes\": 32,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/0ec7c6efeb350dd339a239f0c3\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-bf2329f2f12e6693", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301230, "scanner": "foundry_dataset", "fingerprint": "8ffba0c0f7f1468fe820c0c7a4294335b789b75bf1bd9c92d335df486a8d7772", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#51", "human_labels": ["test_ci_gap", "ui_or_frontend"], "issue_number": "51", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.777, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-98fe71bf78c9b8a0", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"ui_or_frontend": 2}, "linked_commit_count": 3, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#51\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#51\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'test_ci_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-a05c0d3025ac3160\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/51\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/51\\nTitle: feat: animated close for the notification bell (custom popover)\\nBody:\\n## Why\\n\\nThe bell could animate **open** but not **closed** \u2014 MudMenu parks its popover off-screen the instant you dismiss it, so there's no element left to animate out. Follow-up to #49.\\n\\n## What\\n\\nReplace MudMenu with a small **self-managed popover** that owns its unmount lifecycle:\\n\\n- mounts **closed** \u2192 flips to open on the next frame (enter transition) \u2192 on dismiss, removes the open class to play the **exit** transition, then unmounts `ExitMs` later.\\n- Result: a real iOS-style open **and** close \u2014 scale + fade from the bell corner (`transform-origin` tracks the anchor: bottom for the rail, top for the mobile bar).\\n\\nUses `position: fixed` (viewport-relative \u2014 the chrome has no `transform`/`filter` ancestors) to escape the rail's overflow clipping **with no JS**, so it works on both the Server and MAUI hosts. A transparent fixed backdrop handles click-away; notification rows mark-read, close, then navigate.\\n\\n## Verification\\n\\nSe\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-ca9a7703927b3ba2\",\n    \"filename\": \"InvestAdvisor.Ui/Components/NotificationBell.razor\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 65,\n    \"deletions\": 10,\n    \"changes\": 75,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/c7b823fab20dd3090acda235d42774d10d32cef2/InvestAdvisor.Ui%2FComponents%2FNotificationBell.razor\"\n  },\n  {\n    \"id\": \"github-pr-file-file-6350ac3df6dda6d7\",\n    \"filename\": \"InvestAdvisor.Ui/wwwroot/css/app.css\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 30,\n    \"deletions\": 22,\n    \"changes\": 52,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/c7b823fab20dd3090a\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-44686a73873aa632", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301229, "scanner": "foundry_dataset", "fingerprint": "571b5954a2ff011d37a7c9f64e70c5f97abb20d34add27666468bcc2d679b96c", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#5", "human_labels": ["human_feedback_general"], "issue_number": "5", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-7d597e2165c5c148", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 0, "helicopter_view_count": 0, "source_artifact_count": 1, "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: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#5\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#5\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'human_feedback_general': 1}\nPolarities: {'neutral': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-f18ed1e909583910\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/5\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/5\\nTitle: fix: correct dashboard \\\"Today %\\\" (Yahoo daily change)\\nBody:\\n-\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-6da5bbe7fb79d78b\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: UmaisNisar/InvestAdvisor\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 1, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 1, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 1}\nHelicopter views: {}\nBundle labels: {\"source_backed_security_guardrail_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-8651a17be6283741", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301228, "scanner": "foundry_dataset", "fingerprint": "d822a568764688268045d98342a41ef4191260b80bda1eddfc70afb4476ba738", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#49", "human_labels": ["ui_or_frontend", "ui_workflow_gap"], "issue_number": "49", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.777, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-4f65d5f83785b108", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"ui_or_frontend": 2}, "linked_commit_count": 4, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_weak_supervision"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#49\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_weak_supervision\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#49\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 4\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'ui_workflow_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-094fb58198701bdb\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"ui_workflow_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/49\",\n    \"text\": \"GitHub feedback: ui_workflow_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/49\\nTitle: feat: iOS-style open animation for the notification bell\\nBody:\\n## Why\\n\\nThe notification bell's MudMenu opened with a plain opacity fade \u2014 it appeared rather than animating in. This gives it the iOS Stocks/Wallet feel.\\n\\n## What\\n\\n- A `PopoverClass` hook on the MudMenu (`ia-notif-pop`, plus an `ia-notif-up` modifier when the rail-footer bell opens upward) lets CSS scale + fade the card **from the bell corner** with a slight spring overshoot (`cubic-bezier(.2,.85,.25,1.06)`, ~260ms).\\n- `transform-origin` tracks the anchor: bottom-left for the upward rail menu, top-right for the downward mobile bar.\\n- `prefers-reduced-motion` honoured.\\n\\nScope note (route A, by design): MudBlazor parks the popover off-screen on close, so the **open** animates nicely while the **close** stays a quick fade. A true animated close would require replacing MudMenu with a custom popover \u2014 deferred.\\n\\n## Verification\\n\\nRan the Blazor Server host against a fresh DB:\\n- Popover carries `ia-notif-pop` + `ia-notif-up`; computed `t\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-76917e11c9ef7654\",\n    \"filename\": \"InvestAdvisor.Ui/Components/NotificationBell.razor\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 1,\n    \"deletions\": 0,\n    \"changes\": 1,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/1ad11a2c73189456e8908f810666b19713d81e6a/InvestAdvisor.Ui%2FComponents%2FNotificationBell.razor\"\n  },\n  {\n    \"id\": \"github-pr-file-file-c603bdc150010e68\",\n    \"filename\": \"InvestAdvisor.Ui/wwwroot/css/app.css\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 24,\n    \"deletions\": 0,\n    \"changes\": 24,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/1ad11a2c73189456e8908f810666b19713d81e6a/Inves\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-d1dcefdc59a0f206", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301227, "scanner": "foundry_dataset", "fingerprint": "bf4ee294cf874320e07590d723de33a05a09c58ad9e3653ce828f3fcd998bc27", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#48", "human_labels": ["agent_instruction_gap", "source_or_other"], "issue_number": "48", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.912, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-c7c84939839f2c3c", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"source_or_other": 2}, "linked_commit_count": 2, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_high_confidence"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#48\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#48\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 2\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-24a0bbfcc891b095\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/48\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/48\\nTitle: fix: record Wealthsimple sells with negative quantity in activity import\\nBody:\\n## Problem\\nThe Wealthsimple Activity export signs the `quantity` column by direction, so SELL rows arrive with a **negative** quantity (e.g. `-12.0452`, `-20`, `-1`). The importer dropped any row with `qty <= 0`, so every sell was skipped and the upload recorded **0 realized lots** (\\\"0 realized, 0 on file\\\").\\n\\nThis wasn't caught because the existing test fixtures used positive sell quantities, which never occurs in the real export.\\n\\n## Fix\\nTake the magnitude of the parsed quantity and only skip a true zero. Test fixtures updated to use negative sell quantities to match the real export, locking in the regression.\\n\\nVerified against the user's `activities-export-2026-06-16.csv` (MU, ELMT, MUU sells), which now records correctly. All 4 `ActivityImportServiceTests` pass.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\\n\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-e4984ac2e4d6a23b\",\n    \"filename\": \"InvestAdvisor.Data/Services/ActivityImportService.cs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 4,\n    \"deletions\": 1,\n    \"changes\": 5,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/35f38543fb195205a5d8948ba9a6af51ded642c9/InvestAdvisor.Data%2FServices%2FActivityImportService.cs\"\n  },\n  {\n    \"id\": \"github-pr-file-file-42970b36a775b0a9\",\n    \"filename\": \"InvestAdvisor.Test/Services/ActivityImportServiceTests.cs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 3,\n    \"changes\": 6,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/35f38543fb195205a5d8948ba9a6af51ded642c9/InvestAdvisor.Test%2FServices%2FActivityImportService\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-d34d59a1b8561e33", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301226, "scanner": "foundry_dataset", "fingerprint": "e7c108c206dd34587cd1f3a66e1b4bcb761571128ea5fda3cc908abf4df22167", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#45", "human_labels": ["data_schema_persistence", "schema_or_data", "source_or_other", "ui_or_frontend"], "issue_number": "45", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.76, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-a350f29b035203b6", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 12, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"schema_or_data": 3, "ui_or_frontend": 1, "source_or_other": 8}, "linked_commit_count": 5, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#45\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#45\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 12\nLabels: {'data_schema_persistence': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 8, 'schema_or_data': 3, 'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-262efcf92ebd2854\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"data_schema_persistence\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/45\",\n    \"text\": \"GitHub feedback: data_schema_persistence\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/45\\nTitle: Conviction tag on swing setups (oversold A vs MA-bounce B)\\nBody:\\n## Why\\nRisk levels are nested (a name shows at every level loose enough to include it), and Medium/High mix two setup types \u2014 so it wasn't obvious which ideas in a list are high-conviction vs the looser ones. This tags each setup with the trigger that fired.\\n\\n## What\\n- **Deep-oversold (\\\"Oversold \u00b7 A\\\")** \u2014 RSI(3) at/below the oversold threshold; the stronger mean-reversion signal.\\n- **MA-bounce (\\\"MA bounce \u00b7 B\\\")** \u2014 gentler pullback to the rising 50-day MA; looser, only surfaced at Medium/High.\\n\\nThe kind is computed in the signal builder, persisted on `PaperTrade`, and shown as a chip on the setup card \u2014 **filled = higher conviction, outlined = lower** (fill weight, not colour, to keep the monochrome palette). Migration adds `PaperTrade.Kind`.\\n\\n232 tests pass.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-37ec86fbb084071b\",\n    \"filename\": \"InvestAdvisor.Core/Abstractions/ISwingQueries.cs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 1,\n    \"deletions\": 0,\n    \"changes\": 1,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/d57cb560b781c312ff3ab4513b75dbabb6f5adc0/InvestAdvisor.Core%2FAbstractions%2FISwingQueries.cs\"\n  },\n  {\n    \"id\": \"github-pr-file-file-86256df738b0ae05\",\n    \"filename\": \"InvestAdvisor.Core/Entities/PaperTrade.cs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 5,\n    \"deletions\": 0,\n    \"changes\": 5,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/d57cb560b781c312ff3ab4513b75dbabb6f5adc0/InvestAdvi\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-1519a17d74837cee", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301225, "scanner": "foundry_dataset", "fingerprint": "f27569c936d353ce358876dbd4dbaef70762d706ef6de5baae47259a106e41c5", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#44", "human_labels": ["schema_or_data", "source_or_other", "ui_or_frontend", "ui_workflow_gap"], "issue_number": "44", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.777, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-1c31908434d86595", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 19, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"schema_or_data": 3, "ui_or_frontend": 1, "source_or_other": 15}, "linked_commit_count": 5, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_weak_supervision"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#44\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_weak_supervision\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#44\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 19\nLabels: {'ui_workflow_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 15, 'schema_or_data': 3, 'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-592f13134419ad36\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"ui_workflow_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/44\",\n    \"text\": \"GitHub feedback: ui_workflow_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/44\\nTitle: Swing risk dial (Low/Medium/High) + bigger universe + watchlist\\nBody:\\n## Why\\n\\\"With your no-risk approach it'll never suggest a stock\\\" \u2014 fair. It's *defined-risk*, not no-risk, but the real bottleneck was a tiny 50-name universe and a single strict trigger, so dry days were common. This adds the **Low/Medium/High dial** you asked for and fixes the frequency problem without abandoning discipline.\\n\\n## What\\n- **Risk dial** (Low/Medium/High), persisted and selectable on `/swing`. One knob moving four things together:\\n  | | oversold trigger | MA-bounce setup | risk/trade | names shown |\\n  |---|---|---|---|---|\\n  | Low | RSI(3) \u2264 15 | off | 0.5% | 3 |\\n  | Medium | \u2264 25 | on | 1.0% | 5 |\\n  | High | \u2264 35 | on | 1.5% | 8 |\\n- **Second setup type** (pullback to the rising 50-day MA) for shallower dips, on at Medium/High.\\n- **Universe expanded ~50 \u2192 ~140** liquid US + TSX names \u2014 the main lever for \\\"always have something.\\\"\\n- **Watchlist**: every scan persists the closest-to-triggering names, so the page is\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-1ea31f282f0fd18b\",\n    \"filename\": \"InvestAdvisor.Core/Abstractions/ISwingQueries.cs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 15,\n    \"deletions\": 2,\n    \"changes\": 17,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/d07b9ba3b4c02e760eeca0513c91312aecf51fc2/InvestAdvisor.Core%2FAbstractions%2FISwingQueries.cs\"\n  },\n  {\n    \"id\": \"github-pr-file-file-892e13eb7785606b\",\n    \"filename\": \"InvestAdvisor.Core/Entities/RuntimeSettings.cs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 5,\n    \"deletions\": 0,\n    \"changes\": 5,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestA\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-3982d8ce781447b1", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301224, "scanner": "foundry_dataset", "fingerprint": "b03ccdaabd9e6b58305608a295f456634ac5cf5f73dd96cac003236cb5f63a1a", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#43", "human_labels": ["agent_instruction_gap", "schema_or_data", "source_or_other", "ui_or_frontend"], "issue_number": "43", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.82, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-d345f3ae1d937e4f", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 17, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"schema_or_data": 3, "ui_or_frontend": 1, "source_or_other": 13}, "linked_commit_count": 4, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_high_confidence"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#43\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#43\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 4\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 17\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 13, 'schema_or_data': 3, 'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-1feb1e1efd01bc5c\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/43\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/43\\nTitle: Rework swing strategy: regime-filtered mean reversion (break-even \u2192 real edge)\\nBody:\\n## Why\\nYou asked whether the algorithm is doing TA well enough to net a profit. It wasn't. The old logic **chased strength** \u2014 uptrend + 5-day momentum + breakouts, RSI(14)\u224860. On a 2\u20133 day hold that's backwards: you're buying extension, which mean-reverts against you. The backtest proved it \u2014 **PF 1.02, +0.008R/trade, 47.5R drawdown** = break-even noise.\\n\\n## What\\nReplace it with the well-established short-horizon edge: **buy pullbacks, not strength.**\\n- **Regime filter** \u2014 only go long when price is above its **200-day SMA** (confirmed up-trend).\\n- **Entry** \u2014 short-term oversold, **RSI(3) \u2264 20** (Connors-style): a dip to buy.\\n- **Risk** \u2014 wider **2.5\u00d7 ATR stop** (mean reversion needs room) + a modest **1.5\u00d7 ATR** bounce target.\\n- Factors re-ranked for the thesis (oversold + regime lead; pullback depth, volume, sentiment confirm). Fetches **2 years** of bars (needed for the 200-day SMA + a real test win\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-653435e6a76c2ff9\",\n    \"filename\": \"InvestAdvisor.Core/Entities/PaperTrade.cs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 7,\n    \"deletions\": 0,\n    \"changes\": 7,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/a44218b5ede2c40a59bc9e722a3e6950019de232/InvestAdvisor.Core%2FEntities%2FPaperTrade.cs\"\n  },\n  {\n    \"id\": \"github-pr-file-file-63aee62ae92d295f\",\n    \"filename\": \"InvestAdvisor.Core/Enums/HistoryRange.cs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 2,\n    \"deletions\": 0,\n    \"changes\": 2,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/a44218b5ede\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-3f26d7b41a3b95c9", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301223, "scanner": "foundry_dataset", "fingerprint": "6aef07ff505e2f47820d4eb13699da8b84f741df95e06010f01bb1378c6c0347", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#42", "human_labels": ["source_or_other", "ui_or_frontend", "ui_workflow_gap"], "issue_number": "42", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.742, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-b24611caf76e65b3", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 3, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"ui_or_frontend": 1, "source_or_other": 2}, "linked_commit_count": 5, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_weak_supervision"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#42\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_weak_supervision\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#42\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 3\nLabels: {'ui_workflow_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 2, 'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-5ed71c2e9a0d241c\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"ui_workflow_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/42\",\n    \"text\": \"GitHub feedback: ui_workflow_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/42\\nTitle: Don't label a break-even backtest as a validated edge\\nBody:\\n## Why\\nLive verification ran the real pipeline (50-name US+TSX universe, real Yahoo bars). It works \u2014 it produced 5 sensible risk-bounded setups (INTC/AMD/IWM/SMH/MU). But the backtest came back **+0.008R/trade, profit factor 1.02** \u2014 statistically break-even \u2014 and the old gate (`expectancy > 0`, \u226530 trades) still lit up **\\\"Validated \u2014 positive edge\\\"**. That undercuts the module's whole honest-framing contract.\\n\\n## What\\nTighten `HasEdge` to require a meaningful sample **and** results clear of break-even noise: **\u226550 trades, expectancy \u2265 0.05R, profit factor \u2265 1.10**. Marginal/noise backtests now correctly stay *\\\"paper only \u2014 not yet validated\\\"*. Updates the page copy and adds tests pinning the exact break-even case from the live run and a real-edge case.\\n\\nFull suite: **225 passed, 0 failed**.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-9a1183b06cb5de4d\",\n    \"filename\": \"InvestAdvisor.Core/Swing/SwingBacktester.cs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 7,\n    \"deletions\": 3,\n    \"changes\": 10,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/1227fa4589d7773191b2669fa42774ca441bdfd7/InvestAdvisor.Core%2FSwing%2FSwingBacktester.cs\"\n  },\n  {\n    \"id\": \"github-pr-file-file-bde7de443e939bb4\",\n    \"filename\": \"InvestAdvisor.Test/Swing/SwingBacktesterTests.cs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 24,\n    \"deletions\": 0,\n    \"changes\": 24,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/1227fa4589d7773191b2669fa42774ca441bdfd7/InvestAdvisor.Test%2FSwing%2FSwingBacktesterTests.cs\"\n  },\n  {\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-1cab789e185a0f2e", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301222, "scanner": "foundry_dataset", "fingerprint": "0ad8a612df662ed49730b2dd0cbadf1eea0168329672661aa1d635d3fdd0d258", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#40", "human_labels": ["data_schema_persistence", "schema_or_data", "source_or_other", "ui_or_frontend"], "issue_number": "40", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.777, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-071f0b6c7b4f6ed6", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 21, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"schema_or_data": 3, "ui_or_frontend": 3, "source_or_other": 15}, "linked_commit_count": 5, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#40\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#40\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 21\nLabels: {'data_schema_persistence': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 15, 'schema_or_data': 3, 'ui_or_frontend': 3}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-ae13bffbd973baad\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"data_schema_persistence\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/40\",\n    \"text\": \"GitHub feedback: data_schema_persistence\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/40\\nTitle: Track realized gains from sold positions via Activity import\\nBody:\\n## Problem\\nSelling a position on Wealthsimple and re-uploading the holdings CSV erased its locked-in profit (e.g. MU, ELMT). Holdings only model what you currently own; the manual import runs in replace mode (absent positions are deleted); and there was no realized-gains concept anywhere.\\n\\n## Fix\\nA permanent `RealizedLot` ledger, fed by a **new Wealthsimple Activity (transactions) importer** \u2014 kept entirely separate from the holdings CSV so the two never double-count.\\n\\n- **Entity/data:** `RealizedLot` + EF config + migration `AddRealizedLot`; `DbSet` on the context.\\n- **Importer:** `ActivityImportService` parses the real export layout (`transaction_date, activity_type/activity_sub_type, symbol, currency, quantity, unit_price, net_cash_amount`). Only **SELL** rows become lots; cost basis is reconstructed from the **running average of the file's BUY rows** (the export has no per-trade return column). Rows de-dupe on a sta\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-d9b38451764e310c\",\n    \"filename\": \"InvestAdvisor.Core/Abstractions/IActivityImportService.cs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 22,\n    \"deletions\": 0,\n    \"changes\": 22,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/e372a6e1c5acd1623cc46c7ad5247b07859a4f76/InvestAdvisor.Core%2FAbstractions%2FIActivityImportService.cs\"\n  },\n  {\n    \"id\": \"github-pr-file-file-ae2c88115dc94a1c\",\n    \"filename\": \"InvestAdvisor.Core/Abstractions/IPortfolioQueries.cs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 0,\n    \"changes\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-9ecf59734a7ee0d9", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301221, "scanner": "foundry_dataset", "fingerprint": "1f35c05a776e2aa304576a63f0bc521f852bd46ddea08ae99559b0a9f5eb9373", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#37", "human_labels": ["docs_or_claims", "runtime_failure", "source_or_other", "test_or_ci", "ui_or_frontend"], "issue_number": "37", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.812, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-85e3a07bc46df3ce", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 26, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"test_or_ci": 1, "docs_or_claims": 1, "ui_or_frontend": 2, "source_or_other": 22}, "linked_commit_count": 5, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#37\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#37\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 26\nLabels: {'runtime_failure': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'test_or_ci': 1, 'source_or_other': 22, 'ui_or_frontend': 2, 'docs_or_claims': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-901f1486246e6deb\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"runtime_failure\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/37\",\n    \"text\": \"GitHub feedback: runtime_failure\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/37\\nTitle: feat: replace broken Photino desktop host with MAUI Blazor Hybrid\\nBody:\\n## What\\n\\nConverts the desktop app from Photino.Blazor (broken on .NET 10) to a **.NET MAUI Blazor Hybrid** host, `InvestAdvisor.Maui`, as phase 1 of the mobile-app roadmap.\\n\\n- **Same engine, new shell**: `MauiProgram` reuses the exact composition the Photino host had \u2014 `AddInvestAdvisor`, MudBlazor, user-secrets/env config, migrate-then-start `IHostedService` workers (`EngineRunner` drives the lifecycle around the window, since MAUI has no generic host).\\n- **Multi-tenancy seam fixed for desktop**: the Photino host predated multi-tenancy and never registered an `ICurrentUserAccessor`; the new `LocalUserAccessor` supplies a configurable single-user identity (`LocalUser:Email`, default `local@desktop`) so `TenantContext` auto-provisions on first run.\\n- **Targets**: Windows now (unpackaged WinExe, WebView2); Mac Catalyst TFM + platform files are wired and activate when built on macOS. iOS/Android are deliberately deferred \u2014 th\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-c00608f6c50bf420\",\n    \"filename\": \".github/workflows/ci.yml\",\n    \"label\": \"test_or_ci\",\n    \"status\": \"modified\",\n    \"additions\": 26,\n    \"deletions\": 3,\n    \"changes\": 29,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/c0f002ed9fb2081f168f126d365bea76dbafe3e8/.github%2Fworkflows%2Fci.yml\"\n  },\n  {\n    \"id\": \"github-pr-file-file-6273ce87d472daec\",\n    \"filename\": \"Directory.Packages.props\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 4,\n    \"deletions\": 2,\n    \"changes\": 6,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/c0f002ed9fb2081f168f126d3\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-380233a2df58b016", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301220, "scanner": "foundry_dataset", "fingerprint": "bd6907a9c2666e6c1733c44346de3f611eccc4582b6e21cca4df3c13531ee2fc", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#35", "human_labels": ["agent_instruction_gap", "source_or_other", "ui_or_frontend"], "issue_number": "35", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.805, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-e25a777827d92aa1", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 4, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"ui_or_frontend": 1, "source_or_other": 3}, "linked_commit_count": 5, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_high_confidence"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#35\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#35\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 4\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 3, 'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-21ce6277f9fe1cf8\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/35\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/35\\nTitle: style: monochrome primary tint, the Apple Stocks/Wallet look\\nBody:\\n## What\\nTeal didn't land either, so this adopts what Apple's own finance apps (Stocks, Wallet/Apple Card) actually do: a **monochrome tint** \u2014 near-black (`#1C1C1E`) controls in light mode that invert to near-white (`#F2F2F7`, black contrast text) in dark mode. The green/red market data becomes the only color on screen.\\n\\n- `AppTheme`: monochrome Primary pair (contrast text flips per mode); teal moves to the unused Secondary slot\\n- Nav active highlight becomes a neutral fill derived from the label color (`color-mix` on text-primary) so it adapts to both modes\\n- Boot-splash spinner: near-black on the light splash, near-white on the dark one (wired into the existing `ia-theme-*` / OS-scheme fallback rules)\\n- Reconnect overlay (always a dark glass box): accents go near-white\\n- Loading-bar fallback, `favicon.svg`, and a regenerated graphite `apple-touch-icon.png`\\n\\n## Testing\\nBuild clean; screenshot-verified the dashboard in **\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-e45e70d92ec7de35\",\n    \"filename\": \"InvestAdvisor.Ui/Theme/AppTheme.cs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 11,\n    \"deletions\": 11,\n    \"changes\": 22,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/a16017109a2cba565611575776a97ee8c8d64783/InvestAdvisor.Ui%2FTheme%2FAppTheme.cs\"\n  },\n  {\n    \"id\": \"github-pr-file-file-6b731e0718b47634\",\n    \"filename\": \"InvestAdvisor.Ui/wwwroot/apple-touch-icon.png\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 0,\n    \"deletions\": 0,\n    \"changes\": 0,\n    \"blob_url\": \"https://github.com/UmaisNisar/InvestAdvisor/blob/a16017109a2cba565611575776a97ee8c8d647\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-842e4a35ce17230c", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301219, "scanner": "foundry_dataset", "fingerprint": "683630f6dfe3f1c576149a0c2cb29eba9f601a5756a0f90abe4f9308017cdd27", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#34", "human_labels": ["ui_workflow_gap"], "issue_number": "34", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.76, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-7fd1611f43ef12bc", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 3, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_weak_supervision"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#34\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_weak_supervision\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#34\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'ui_workflow_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-aeb95e5d3d29e4b5\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"ui_workflow_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/34\",\n    \"text\": \"GitHub feedback: ui_workflow_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/34\\nTitle: style: switch the primary tint from purple to iOS systemTeal\\nBody:\\n## What\\nReplaces the purple systemIndigo tint with **iOS systemTeal** (user's pick from the proposed options):\\n\\n- `AppTheme`: Primary `#00C3D0` light / `#40C8E0` dark; indigo moves to the (unused) Secondary slot so the palette stays paired\\n- All hardcoded purples swept: nav active highlight, route-change loading-bar fallback, boot-splash spinner, reconnect-overlay spinner/link\\n- `favicon.svg` and a regenerated `apple-touch-icon.png` (180\u00d7180, full-bleed teal \u2014 iOS masks its own corners)\\n\\n## Testing\\nBuild clean; screenshot-verified the dashboard and settings \u2014 buttons, nav highlight, links, selected segments and the brand mark all render teal, no purple remnants (repo-wide grep for the old hexes is clean).\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\\n\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-2f7c3f1bb4693f3b\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: UmaisNisar/InvestAdvisor\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 1, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 1, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 1}\nHelicopter views: {}\nBundle labels: {\"source_backed_security_guardrail_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-811b8dfc03d3c353", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301218, "scanner": "foundry_dataset", "fingerprint": "3a5c55b6a2e8430b3284cff02e7ec307354e2850d6e5a8cac9d87551160dadb7", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#33", "human_labels": ["test_ci_gap"], "issue_number": "33", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.895, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-797771a0362892fb", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#33\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#33\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'test_ci_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-47fa5adaf78ee444\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/33\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/33\\nTitle: fix: stamp the saved theme on <html> server-side for the boot splash\\nBody:\\n## Why\\nPR #32's localStorage mirror only helps from the **second** visit onward \u2014 a fresh browser, incognito, or the first load after a deploy still fell back to `prefers-color-scheme` and booted black on a dark-mode OS (the \\\"still black\\\" report).\\n\\n## What\\nThe host page (`App.razor`) is server-rendered per request, so it now reads the saved `DarkMode` from the in-memory-cached settings store and emits the `ia-theme-*` class on `<html>` **in the response itself**. The splash is correctly tinted on every load, first-ever visits included. The localStorage head script stays as a fallback for a failed DB read and skips itself when the server class is present.\\n\\n## Testing\\nPlaywright, dark OS, **completely fresh context** (no localStorage): served HTML arrives with `html.ia-theme-light` before any JS runs. Build clean.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\\n\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-e2f63d6d09fa2b5a\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: UmaisNisar/InvestAdvisor\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 1, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 1, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 1}\nHelicopter views: {}\nBundle labels: {\"source_backed_security_guardrail_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-0c6ae8ef8db92422", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301217, "scanner": "foundry_dataset", "fingerprint": "15fa1d9688cc52793e654b51d518876724b0e3ed96d270c02e58cfe65cd47ed0", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#32", "human_labels": ["test_ci_gap"], "issue_number": "32", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.9, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-51cbeba8c2fe4f23", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#32\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#32\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'test_ci_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-4253bce27a924276\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/32\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/32\\nTitle: fix: boot splash follows the saved app theme, not the OS scheme\\nBody:\\n## Why\\nThe boot splash showed black on a dark-mode OS even when the in-app theme is light. It'\\\\''s static HTML painted before the circuit connects, and its colors keyed off `prefers-color-scheme` \u2014 the app'\\\\''s saved theme (server DB) was unreachable that early.\\n\\n## What\\n- `Root` mirrors the theme into `localStorage` (`ia-theme`) on first render and on every toggle\\n- A tiny head script in App.razor applies it as an `html.ia-theme-*` class **before first paint**; CSS gives those classes priority over the OS-scheme fallback\\n- First-ever visits (nothing saved yet) still follow the OS scheme\\n\\n## Testing\\nPlaywright with `colorScheme: '\\\\''dark'\\\\''` (dark OS): after one app load mirrors `ia-theme=light`, a reload shows the splash at `rgb(242,242,247)` \u2014 light, matching the app \u2014 instead of black.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-32d74f009e3e93df\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: UmaisNisar/InvestAdvisor\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 1, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 1, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 1}\nHelicopter views: {}\nBundle labels: {\"source_backed_security_guardrail_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-d44988bcdecb52c6", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301216, "scanner": "foundry_dataset", "fingerprint": "ea1253c70717ab80ee9f082e629a3c964e5404b147c04be5fc2ec9974d075048", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#30", "human_labels": ["agent_instruction_gap"], "issue_number": "30", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.86, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-2ac3811e0b597964", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 3, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_high_confidence"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#30\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#30\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-5d3819ce95656e22\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/30\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/30\\nTitle: style: breathing room below the segmented tab bar\\nBody:\\nOne CSS rule: 16px margin below the segmented tab capsule, so it no longer sits flush against the panel content (Settings, Screener \u2014 anywhere MudTabs renders). Verified with a screenshot of /settings/profile.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-d284ea293a4fb986\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: UmaisNisar/InvestAdvisor\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 1, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 1, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 1}\nHelicopter views: {}\nBundle labels: {\"source_backed_security_guardrail_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-c05369351fa250ff", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301215, "scanner": "foundry_dataset", "fingerprint": "c2ed712ece7061ef19779cd703d8ac9b92af2ec8e07078eaebb47279b549a7b8", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#23", "human_labels": ["security_auth_secret"], "issue_number": "23", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.795, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-36ea26dbca966e19", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#23\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#23\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-21ffc138bcc6e44b\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/23\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/23\\nTitle: Free-by-default AI: Gemini free tier + provider switching in Settings\\nBody:\\n## What\\n\\nMakes the app **free to run by default**. The Anthropic Claude API was the only recurring cost; the LLM layer is now provider-neutral, defaults to **Google Gemini's free tier**, and the provider/model is **switchable at runtime in Settings \u2192 AI Provider** (no restart).\\n\\n## How\\n\\n- **`ILlmClient`** replaces `IAnthropicClient` (same 4 calls, optional `model` on each). **`LlmClientRouter`** is the DI-registered implementation: it reads `RuntimeSettings` per call and dispatches to either client.\\n- **`OpenAiCompatibleClient`** \u2014 one new client covering Gemini's OpenAI-compatible endpoint (default) **and** any other OpenAI-compatible API (Groq / OpenRouter / Ollama) via a per-call endpoint. Forces the `emit_*` function with `tool_choice`, mirroring the Anthropic flow; tool schemas are rewrapped by `OpenAiToolConverter` (strips `additionalProperties` for Gemini).\\n- **Shared parsing** (`LlmResponseParsing`) \u2014 the \"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-5766233237fd75ca\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: UmaisNisar/InvestAdvisor\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 1, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 1, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 1}\nHelicopter views: {}\nBundle labels: {\"source_backed_security_guardrail_bundle\": 1}\nCo-occurrence labels: {\"fak\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-85fe8384b8ceecdb", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301214, "scanner": "foundry_dataset", "fingerprint": "58f7fa90ec2ff8c187c0a600ff1f16e81a92210735f75cefd915c97937efda16", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#20", "human_labels": ["agent_instruction_gap"], "issue_number": "20", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.825, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-d2697ba795a01cd6", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 2, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_high_confidence"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#20\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#20\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 2\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-732c853971c7d537\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/20\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/20\\nTitle: fix: regenerate apple-touch-icon with iOS 26 systemIndigo background\\nBody:\\n## Summary\\n- Re-render the 180x180 `apple-touch-icon.png` from the favicon.svg geometry (white trend-line arrow, full-bleed background) so its background matches the `#6155F5` systemIndigo tint adopted in #18\\n\\n## Test plan\\n- [x] Visual check: icon renders identically to the previous one apart from the updated background color\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-ba61c160256f4fe5\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: UmaisNisar/InvestAdvisor\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 1, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 1, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 1}\nHelicopter views: {}\nBundle labels: {\"source_backed_security_guardrail_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-2f63f9bf5b2f2ca7", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301213, "scanner": "foundry_dataset", "fingerprint": "ffd7c9ed2278a3b4d0a218da2804e82d4951184827040f3be39b42e31f451298", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#2", "human_labels": ["agent_instruction_gap"], "issue_number": "2", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.607, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-8c661c7e84642431", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 2, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_weak_supervision"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#2\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_weak_supervision\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#2\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 2\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-58ed3f510c86deb4\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/2\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/2\\nTitle: test: broaden coverage (FX, routing, CSV import, positions) + fix import currency casing\\nBody:\\nFills the test gaps from this session's features and fixes one real bug the new tests surfaced.\\n\\n## New tests (54 \u2192 74)\\n- **YahooQuoteProvider.ToYahooSymbol** \u2014 `IDIV.B.TO`\u2192`IDIV-B.TO`, `BRK.B`\u2192`BRK-B`, exchange suffixes kept.\\n- **CompositeMarketDataProvider** \u2014 routing (US\u2192Finnhub, `.`\u2192Yahoo, crypto\u2192CoinGecko with the 24h\u2192prev-close math, Finnhub-empty\u2192Yahoo fallback) + `CryptoIds` mapping.\\n- **HoldingsImportService** \u2014 the Wealthsimple CSV: exchange-suffix tickers, per-row currency, crypto cost FX-converted to USD, `\\\"As of \u2026\\\"` footer skipped, non-destructive re-import (no dupes).\\n- **AnthropicClient** \u2014 `positions[]` parsing (stance + conviction; ticker upper-cased; missing array \u2192 empty not null).\\n- **ContextAssembler** \u2014 CAD\u2192USD conversion (native price kept, value/P&L converted).\\n\\n## Bug fixed (caught by the new CSV test)\\n`HoldingsImportService` stored the currency **lower-case** (`\\\"usd\\\"`).\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-55fe423b5ae2b48a\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: UmaisNisar/InvestAdvisor\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 1, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 1, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 1}\nHelicopter views: {}\nBundle labels: {\"source_backed_security_guardrail_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-a081e054f0fb1a3a", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301212, "scanner": "foundry_dataset", "fingerprint": "aa13dc06d9e24bd2f0cff5bcabd80339e6892f6758b9fbed55420510a80203a6", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#14", "human_labels": ["test_ci_gap"], "issue_number": "14", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.76, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-0f19f1806ab1c966", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#14\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#14\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'test_ci_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-1025b287d4e4daa7\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/14\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/14\\nTitle: Liquid-glass chrome + boot splash, loading bar, haptics\\nBody:\\n## Summary\\n\\n**Liquid Glass chrome** (both phone and desktop): one shared glass system \u2014 24px blur + 180% saturation, specular top edge, faint top-down sheen \u2014 applied to fixed chrome only: phone app bar, bottom tab bar, desktop nav rail, overlay drawers, dialogs (radius bumped to 16px) and popover menus. Palette-driven via color-mix on MudBlazor vars so light/dark adapt automatically; content cards and tables stay opaque for readability. Opaque fallbacks for browsers without backdrop-filter and for prefers-reduced-transparency.\\n\\n**App polish**: static boot splash until the interactive circuit connects, a thin indeterminate top loading bar on route changes, and subtle mobile haptics (touch taps + snackbar outcomes, Android/Chromium only, localStorage opt-out).\\n\\n## Verification\\n\\nDrove the running Blazor Server host with Playwright at desktop (1440x900) and iPhone (390x844) viewports, light and dark: content visibly blurs through the phone\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-a2a8786be6515dc5\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: UmaisNisar/InvestAdvisor\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 1, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 1, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 1}\nHelicopter views: {}\nBundle labels: {\"source_backed_security_guardrail_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-f0501fa61de67be2", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301211, "scanner": "foundry_dataset", "fingerprint": "664ac19f48300656dd3dad5bd044af0bb0f2c582e1e7aea1d7fac005ebf5fdaa", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#13", "human_labels": ["ui_workflow_gap"], "issue_number": "13", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.825, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-e456d5d08be470ad", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 4, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_high_confidence"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#13\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#13\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 4\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'ui_workflow_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-e2942c5e1674fa8f\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"ui_workflow_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/13\",\n    \"text\": \"GitHub feedback: ui_workflow_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/13\\nTitle: Fix first-click Run now and double drawer scrollbar\\nBody:\\n## Summary\\nTwo small UI fixes:\\n\\n1. **First-click \\\"Run now\\\" / sidebar jump** \u2014 disable prerender on the interactive root (`App.razor`). Prerendering served a static, non-interactive snapshot, so the first click was dropped and the rail jumped open as the circuit hydrated. The page is now interactive on first paint.\\n2. **Double scrollbar in detail drawers** \u2014 lock document scroll while a temporary drawer is open (`app.css`, `html:has(.mud-drawer-temporary.mud-drawer--open)`), leaving a single scrollbar (the drawer's). The desktop mini rail isn't temporary, so it's unaffected.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-c2afbe153351e0de\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: UmaisNisar/InvestAdvisor\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 1, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 1, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 1}\nHelicopter views: {}\nBundle labels: {\"source_backed_security_guardrail_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-7d346cb6e7253d2b", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301210, "scanner": "foundry_dataset", "fingerprint": "551fc57acd2824bd0324a55a768cc56ca48b3298634e3c04f546da4a2403b345", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#12", "human_labels": ["security_auth_secret"], "issue_number": "12", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.76, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-29c8e2a4aa5f3514", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 3, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#12\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#12\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-656386b33dd84331\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/12\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/12\\nTitle: News & social-media sentiment signal (+ desktop nav rail)\\nBody:\\n## Summary\\nMerges two ready features to main:\\n\\n1. **News & social-media sentiment as a scored screener signal** \u2014 sentiment is now the 7th composite factor (not just raw headlines the LLM reads):\\n   - LLM batch scoring on the Haiku routine model, gated by pause + daily budget, tracked via `SentimentRun` in `CostService`.\\n   - `ISocialFeedProvider`s: **StockTwits, Reddit, Bluesky, Hacker News** \u2014 each opt-in/self-disabling; `SocialRefreshService` fans out for universe + tracked tickers, persisting unscored posts.\\n   - `ScreenerScoringService` Sentiment factor (`WeightSentiment`) across equities/ETFs/crypto; `ContextAssembler` per-ticker digest into the agent + daily recommendation.\\n   - EF migration `AddNewsSentiment`; Settings weight slider; Screener factor bar.\\n\\n2. **Desktop nav rail** (pre-existing commits on this branch).\\n\\n## Provider access notes\\n- StockTwits / Bluesky / Hacker News: free, opt-in via config.\\n- Reddit: nee\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-31498b8f717b2de4\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: UmaisNisar/InvestAdvisor\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 1, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 1, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 1}\nHelicopter views: {}\nBundle labels: {\"source_backed_security_guardrail_bundle\": 1}\nCo-occurrence labels:\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-9c50173bae15db05", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 301209, "scanner": "foundry_dataset", "fingerprint": "c70be115a00bc2adb21f1bab321bc388189c67188eb73d206c9562854060d4eb", "category": "practices", "severity": "medium", "confidence": 0.62, "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": "comment_chain_pattern_product", "source": "comment_chain_pattern_miner", "product": "assumption_checks", "synthetic": false, "thread_key": "UmaisNisar/InvestAdvisor#10", "human_labels": ["security_auth_secret"], "issue_number": "10", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-75681434df184cbc", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#10\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#10\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-cae60d7ebb22cbb2\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/10\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/10\\nTitle: AI cost controls: throttle, budget cap, model routing, cost history\\nBody:\\n## Why\\nThe agent loop burned through the Anthropic credit balance quickly. This bounds and reduces AI spend across several levers, and adds visibility so it can't happen silently again.\\n\\n## Changes\\n\\n**Volume / frequency**\\n- Lower default run frequency: `MaxRunsPerDay` 24\u219212, `MinSecondsBetweenRuns` 900\u21921800 (entity defaults + seed + migration).\\n- Gate the credit-spending workers (agent loop + screener) behind `Scheduler:WorkerEnabled`, defaulting **off in Development** so a local `dotnet run` no longer burns credits. The holdings importer (no LLM cost) still always runs.\\n- Runtime **Agent Pause** kill switch (`RuntimeSettings.AgentPaused`), checked each worker tick.\\n\\n**Per-call cost**\\n- Serialize all LLM request payloads compact (`WriteIndented=false`) \u2014 indentation was billed whitespace (~15\u201330% input).\\n- Route worker-triggered runs to a cheaper `RoutineModel` (Haiku, ~3\u00d7 cheaper); manual \\\"Run now\\\" and replays stay\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-4daa1d53e2a28506\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: UmaisNisar/InvestAdvisor\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 1, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 1, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 1}\nHelicopter views: {}\nBundle labels: {\"source_backed_security_guardrail_bundle\": 1}\nCo-occurrence labels:\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-assumption_checks-739b5465fc023741", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 336867, "scanner": "foundry_dataset", "fingerprint": "a94c940b57bc6d0a4cd54be5b802e780d47c307e10f850e215ed8279be871db3", "category": "testing", "severity": "high", "confidence": 0.78, "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": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 3, "test_ci_gap": 1, "verification_or_tests": 2, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 14, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#8", "issue_number": "8", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-1ae8931b30ccd343", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#8\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#8\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#8\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 8\nGraph consistency label: supported_by_verification_signal\nNodes: 14\nEdges: 16\nNode types: {'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 5, '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: {'bug_fix': 3, 'claimed_resolved_with_verification_signal': 3, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-b88dd6d60bbe3636", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 336866, "scanner": "foundry_dataset", "fingerprint": "82a63ca22dfc121ee5371cb12a18a2b255ebc5ac26d6f4c13257ce057fe98524", "category": "testing", "severity": "high", "confidence": 0.78, "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": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 3, "test_ci_gap": 1, "ui_or_frontend": 1, "ci_pending_or_incomplete": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 18, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 1, "comment_chain_has_ci": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 3, "comment_chain_touches_file": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 14, "node_types": {"repo": 1, "commit": 3, "thread": 1, "comment": 1, "pr_file": 1, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#54", "issue_number": "54", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-764f3abf20556f93", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"ui_or_frontend": 4}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#54\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#54\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#54\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 54\nGraph consistency label: supported_by_high_confidence_link\nNodes: 14\nEdges: 18\nNode types: {'commit': 3, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'pr_file': 1, 'comment_chain': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 3, 'chain_has_link_quality': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_touches_file': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_has_ci': 1, 'comment_chain_touches_file': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'issue_chain_touches_file': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'bug_fix': 3, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'ui_or_frontend': 1, 'human_reported_issue_then_fix_attempt': 1, 'ci_pending_or_incomplete': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {'ci_pending_or_incomplete': 2}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-3209ed7f99bf83cc", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 336865, "scanner": "foundry_dataset", "fingerprint": "bf3186c539a90dd6c0be7c53b1be30af52de1db37501b3421bd07fe1a0d99d22", "category": "testing", "severity": "high", "confidence": 0.78, "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": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 4, "test_ci_gap": 1, "ui_or_frontend": 2, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 2, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 2, "thread_has_comment_chain": 1, "comment_chain_links_commit": 4, "comment_chain_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 15, "node_types": {"repo": 1, "commit": 4, "thread": 1, "comment": 1, "pr_file": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#53", "issue_number": "53", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-d39a96feb3f279ae", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"ui_or_frontend": 8}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#53\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#53\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#53\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 53\nGraph consistency label: supported_by_high_confidence_link\nNodes: 15\nEdges: 21\nNode types: {'commit': 4, 'link_quality': 3, 'pr_file': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 4, 'chain_has_link_quality': 3, 'thread_touches_file': 2, 'comment_chain_touches_file': 2, 'issue_chain_touches_file': 2, '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: {'bug_fix': 4, 'claimed_resolved_unverified': 3, 'ui_or_frontend': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_fix_attempt': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-11a4d87b82494367", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 336864, "scanner": "foundry_dataset", "fingerprint": "118b154b8d4e2d3ca1bdd3ea4896a7648cecb5ac04e599ce3f0bdc74ca19ceab", "category": "testing", "severity": "high", "confidence": 0.78, "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": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 2, "feature": 1, "test_ci_gap": 1, "ui_or_frontend": 2, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 20, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 2, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 2, "thread_has_comment_chain": 1, "comment_chain_links_commit": 3, "comment_chain_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 14, "node_types": {"repo": 1, "commit": 3, "thread": 1, "comment": 1, "pr_file": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#51", "issue_number": "51", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-1f31c09df767d213", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"ui_or_frontend": 8}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: weak_supervision_needs_review\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#51\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#51\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#51\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 51\nGraph consistency label: weak_supervision_needs_review\nNodes: 14\nEdges: 20\nNode types: {'commit': 3, 'link_quality': 3, 'pr_file': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 3, 'chain_has_link_quality': 3, 'thread_touches_file': 2, 'comment_chain_touches_file': 2, 'issue_chain_touches_file': 2, '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: {'claimed_resolved_unverified': 3, 'ui_or_frontend': 2, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'feature': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-9f84897a8ccf5f93", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 336863, "scanner": "foundry_dataset", "fingerprint": "7f07126ef1e251d86a994fe5fd199ec326d35030b3e656cf5d4f7ce4ac4e4703", "category": "testing", "severity": "high", "confidence": 0.78, "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": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 1, "test_ci_gap": 1, "verification_or_tests": 4, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 14, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#4", "issue_number": "4", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-68c163708f074b5a", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#4\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#4\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#4\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 4\nGraph consistency label: supported_by_verification_signal\nNodes: 14\nEdges: 16\nNode types: {'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 5, '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: {'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-170d0d899684e81e", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 336862, "scanner": "foundry_dataset", "fingerprint": "03b095386798a4c0d874d0e82683fe56975c152362550c70b4d05ac402b167a8", "category": "testing", "severity": "high", "confidence": 0.78, "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": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 2, "test_ci_gap": 1, "ui_or_frontend": 5, "verification_or_tests": 3, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 31, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 5, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 5, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "comment_chain_touches_file": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 19, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 5, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#38", "issue_number": "38", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-e3311ab61beea39a", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"ui_or_frontend": 20}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#38\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#38\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#38\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 38\nGraph consistency label: supported_by_verification_signal\nNodes: 19\nEdges: 31\nNode types: {'pr_file': 5, 'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 5, 'comment_chain_links_commit': 5, 'comment_chain_touches_file': 5, 'issue_chain_touches_file': 5, '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': 5, 'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-108a02485efa81b6", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 336861, "scanner": "foundry_dataset", "fingerprint": "9b67eb6e4b40407b95839dd140ea95aa3bcbfe8b878c2eb869a1f432e3bc64de", "category": "testing", "severity": "high", "confidence": 0.78, "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": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 5, "test_ci_gap": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 14, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#33", "issue_number": "33", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-e52290c15ad9fb64", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#33\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#33\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#33\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 33\nGraph consistency label: supported_by_high_confidence_link\nNodes: 14\nEdges: 16\nNode types: {'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 5, '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: {'bug_fix': 5, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_fix_attempt': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-5943cfde2da2d3c6", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 336860, "scanner": "foundry_dataset", "fingerprint": "f38f02f752e2df905898b2cac6d8151c1a4f3a7edd9ccecbbee63146c48bfbdb", "category": "testing", "severity": "high", "confidence": 0.78, "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": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 5, "test_ci_gap": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 14, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#32", "issue_number": "32", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-013075cd3bd4b834", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#32\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#32\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#32\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 32\nGraph consistency label: supported_by_high_confidence_link\nNodes: 14\nEdges: 16\nNode types: {'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 5, '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: {'bug_fix': 5, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_fix_attempt': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-6887659ecb4653ed", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 336859, "scanner": "foundry_dataset", "fingerprint": "50ce104d3670ec0784e530a359ad6aae99ea526f0fb6062551f5fad666855ea9", "category": "testing", "severity": "high", "confidence": 0.78, "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": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 2, "feature": 1, "test_ci_gap": 1, "verification_or_tests": 2, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 14, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#31", "issue_number": "31", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-1a16543ca5a64628", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#31\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#31\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#31\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 31\nGraph consistency label: supported_by_verification_signal\nNodes: 14\nEdges: 16\nNode types: {'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 5, '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: {'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'feature': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-0bef5c609a5e8c52", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 336858, "scanner": "foundry_dataset", "fingerprint": "b7ec6cffc56a8a5ef224409a24c80b607147049ae393d2ec5e88f596a005db80", "category": "testing", "severity": "high", "confidence": 0.78, "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": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 3, "feature": 1, "test_ci_gap": 1, "verification_or_tests": 1, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 14, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#24", "issue_number": "24", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-31bfb849ee5c9681", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#24\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#24\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#24\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 24\nGraph consistency label: supported_by_verification_signal\nNodes: 14\nEdges: 16\nNode types: {'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 5, '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: {'bug_fix': 3, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'feature': 1, 'verification_or_tests': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-7859228cd56953f0", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 336857, "scanner": "foundry_dataset", "fingerprint": "c273859f34ec69fdbc3626367dfca0ee8b2b85bf65825ff3df582f1652388145", "category": "testing", "severity": "high", "confidence": 0.78, "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": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 3, "feature": 1, "test_ci_gap": 1, "verification_or_tests": 1, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 14, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#22", "issue_number": "22", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-b0efeac3c45a7846", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#22\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#22\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#22\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 22\nGraph consistency label: supported_by_verification_signal\nNodes: 14\nEdges: 16\nNode types: {'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 5, '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: {'bug_fix': 3, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'feature': 1, 'verification_or_tests': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-a13a3366d2dc5329", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 336856, "scanner": "foundry_dataset", "fingerprint": "fc52f6f3b9af867b5b0b75a06f91692c3275b69dbfeeee42181e21d460ed693f", "category": "testing", "severity": "high", "confidence": 0.78, "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": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 3, "feature": 1, "test_ci_gap": 1, "verification_or_tests": 1, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 14, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#15", "issue_number": "15", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-dd9bb09fe1ebaee3", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#15\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#15\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#15\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 15\nGraph consistency label: supported_by_verification_signal\nNodes: 14\nEdges: 16\nNode types: {'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 5, '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: {'bug_fix': 3, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'feature': 1, 'verification_or_tests': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-6313597c8740e571", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 336855, "scanner": "foundry_dataset", "fingerprint": "540a9d7ede6bcd1491dd0639c50172c64f4af9ad31162b46795516b5d3a58923", "category": "testing", "severity": "high", "confidence": 0.78, "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": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 4, "feature": 1, "test_ci_gap": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 14, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#14", "issue_number": "14", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-743500b1bbcdc4dd", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: weak_supervision_needs_review\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#14\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#14\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#14\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 14\nGraph consistency label: weak_supervision_needs_review\nNodes: 14\nEdges: 16\nNode types: {'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 5, '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: {'bug_fix': 4, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'feature': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-cc8a3415a009b96d", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 336854, "scanner": "foundry_dataset", "fingerprint": "18bdc8f405dccb8aea75979ffe619044efa70f27760f863cdb75d63b3ccdaf18", "category": "testing", "severity": "high", "confidence": 0.78, "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": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"test_ci_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": "test_ci_gap_after_feedback", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 11, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 9, "node_types": {"repo": 1, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#1", "issue_number": "1", "quality_tiers": {"unresolved": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-a1812f9380a03d97", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: needs_more_evidence\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#1\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#1\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#1\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 1\nGraph consistency label: needs_more_evidence\nNodes: 9\nEdges: 11\nNode types: {'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_no_linked_fix': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-f6fce6cdfdbb3a09", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_schema_ui_api_gap", "level": "error", "message": {"text": "Foundry mined schema ui api mismatch: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 328450, "scanner": "foundry_dataset", "fingerprint": "cfec94ca2997fd1f3ada4755ab2bfb7e8a8ecc2e49c58b0c96cd685074a75ef1", "category": "quality", "severity": "high", "confidence": 0.76, "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": "Schema, UI, and API mismatch", "intent": "Assumption-check examples for data-path consistency across layers.", "labels": {"bug_fix": 1, "feature": 1, "data_schema": 1, "api_or_backend": 1, "schema_or_data": 3, "ui_or_frontend": 2, "source_or_other": 24, "verification_or_tests": 2, "data_schema_persistence": 1, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 70, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 30, "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_links_commit": 5, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 44, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 30, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#50", "issue_number": "50", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-54bdd996e566dcd9", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"api_or_backend": 4, "schema_or_data": 12, "ui_or_frontend": 8, "source_or_other": 96}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: supported_by_verification_signal\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#50\nEvidence:\nGraph motif: Schema, UI, and API evidence do not line up\nMotif id: schema_ui_api_mismatch\nPolarity: bad\nTraining usage: assumption_check\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#50\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#50\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 50\nGraph consistency label: supported_by_verification_signal\nNodes: 44\nEdges: 70\nNode types: {'pr_file': 30, 'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 30, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 5, '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: {'source_or_other': 24, 'schema_or_data': 3, 'claimed_resolved_with_verification_signal': 3, 'ui_or_frontend': 2, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'api_or_backend': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'feature': 1, 'data_schema': 1, 'bug_fix': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Create schema-to-API-to-UI consistency tasks with migrations and tests.\n- Teach models to verify persistence, route contracts, and UI state together.\nAssumption checks:\n- Do schema changes have matching API and UI handling?\n- Are migrations and tests present for the data path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-b982ea2bd6bc814d", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/schema_ui_api_mismatch/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/schema_ui_api_mismatch", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_schema_ui_api_gap", "level": "error", "message": {"text": "Foundry mined schema ui api mismatch: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 328449, "scanner": "foundry_dataset", "fingerprint": "52bed02a6f3e9225a939d7a3d50d172827277c81cd4476c66b00bd095a7e12c4", "category": "quality", "severity": "high", "confidence": 0.76, "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": "Schema, UI, and API mismatch", "intent": "Assumption-check examples for data-path consistency across layers.", "labels": {"bug_fix": 2, "feature": 1, "data_schema": 1, "schema_or_data": 3, "ui_or_frontend": 4, "source_or_other": 12, "verification_or_tests": 1, "data_schema_persistence": 1, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 59, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 19, "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_links_commit": 5, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 33, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 19, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#47", "issue_number": "47", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-399bf95b4eaed93a", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"schema_or_data": 12, "ui_or_frontend": 16, "source_or_other": 48}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: supported_by_verification_signal\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#47\nEvidence:\nGraph motif: Schema, UI, and API evidence do not line up\nMotif id: schema_ui_api_mismatch\nPolarity: bad\nTraining usage: assumption_check\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#47\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#47\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 47\nGraph consistency label: supported_by_verification_signal\nNodes: 33\nEdges: 59\nNode types: {'pr_file': 19, 'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 19, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 5, '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: {'source_or_other': 12, 'ui_or_frontend': 4, 'schema_or_data': 3, 'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'feature': 1, 'data_schema': 1, 'verification_or_tests': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Create schema-to-API-to-UI consistency tasks with migrations and tests.\n- Teach models to verify persistence, route contracts, and UI state together.\nAssumption checks:\n- Do schema changes have matching API and UI handling?\n- Are migrations and tests present for the data path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-4cc6821a5a673a0a", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/schema_ui_api_mismatch/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/schema_ui_api_mismatch", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_schema_ui_api_gap", "level": "error", "message": {"text": "Foundry mined schema ui api mismatch: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 328448, "scanner": "foundry_dataset", "fingerprint": "e5df97f7c2f83e6ddecf56ee3e212949c86a5483f76eb01d89a52708d9bff0d3", "category": "quality", "severity": "high", "confidence": 0.76, "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": "Schema, UI, and API mismatch", "intent": "Assumption-check examples for data-path consistency across layers.", "labels": {"feature": 1, "schema_or_data": 3, "ui_or_frontend": 1, "source_or_other": 8, "verification_or_tests": 4, "data_schema_persistence": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 3, "comment_has_related_commit_context": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"ambiguous_needs_more_evidence": 6}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 52, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 12, "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_links_commit": 5, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 26, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 12, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#45", "issue_number": "45", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-7c3610a4ba78761b", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"schema_or_data": 12, "ui_or_frontend": 4, "source_or_other": 32}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#45\nEvidence:\nGraph motif: Schema, UI, and API evidence do not line up\nMotif id: schema_ui_api_mismatch\nPolarity: bad\nTraining usage: assumption_check\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#45\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#45\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 45\nGraph consistency label: weak_supervision_needs_review\nNodes: 26\nEdges: 52\nNode types: {'pr_file': 12, 'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 12, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 5, '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: {'source_or_other': 8, 'verification_or_tests': 4, 'schema_or_data': 3, 'ambiguous_needs_more_evidence': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'ui_or_frontend': 1, 'comment_has_related_commit_context': 1, 'feature': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Create schema-to-API-to-UI consistency tasks with migrations and tests.\n- Teach models to verify persistence, route contracts, and UI state together.\nAssumption checks:\n- Do schema changes have matching API and UI handling?\n- Are migrations and tests present for the data path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-489a7a57ffb9411f", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/schema_ui_api_mismatch/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/schema_ui_api_mismatch", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_schema_ui_api_gap", "level": "error", "message": {"text": "Foundry mined schema ui api mismatch: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 328447, "scanner": "foundry_dataset", "fingerprint": "8e4a7644f480542c022166aa94e08f9e2ca024c3395c10d02019d7d42407228e", "category": "quality", "severity": "high", "confidence": 0.76, "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": "Schema, UI, and API mismatch", "intent": "Assumption-check examples for data-path consistency across layers.", "labels": {"feature": 1, "schema_or_data": 3, "ui_or_frontend": 1, "source_or_other": 15, "ui_workflow_gap": 1, "verification_or_tests": 4, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 3, "comment_has_related_commit_context": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"ambiguous_needs_more_evidence": 6}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 59, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 19, "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_links_commit": 5, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 33, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 19, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#44", "issue_number": "44", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-3c09f0f94e5959ef", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"schema_or_data": 12, "ui_or_frontend": 4, "source_or_other": 60}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#44\nEvidence:\nGraph motif: Schema, UI, and API evidence do not line up\nMotif id: schema_ui_api_mismatch\nPolarity: bad\nTraining usage: assumption_check\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#44\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#44\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 44\nGraph consistency label: weak_supervision_needs_review\nNodes: 33\nEdges: 59\nNode types: {'pr_file': 19, 'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 19, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 5, '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: {'source_or_other': 15, 'verification_or_tests': 4, 'schema_or_data': 3, 'ambiguous_needs_more_evidence': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'ui_workflow_gap': 1, 'ui_or_frontend': 1, 'comment_has_related_commit_context': 1, 'feature': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Create schema-to-API-to-UI consistency tasks with migrations and tests.\n- Teach models to verify persistence, route contracts, and UI state together.\nAssumption checks:\n- Do schema changes have matching API and UI handling?\n- Are migrations and tests present for the data path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-f823990e97ff34d1", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/schema_ui_api_mismatch/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/schema_ui_api_mismatch", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_schema_ui_api_gap", "level": "error", "message": {"text": "Foundry mined schema ui api mismatch: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 328446, "scanner": "foundry_dataset", "fingerprint": "2212a3c2cfda683b18afe1c322db0328b952d151fa57ed515e086c19e993ddc4", "category": "quality", "severity": "high", "confidence": 0.76, "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": "Schema, UI, and API mismatch", "intent": "Assumption-check examples for data-path consistency across layers.", "labels": {"bug_fix": 2, "feature": 1, "schema_or_data": 3, "ui_or_frontend": 1, "source_or_other": 13, "generated_provenance": 1, "agent_instruction_gap": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 56, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 17, "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_links_commit": 4, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 30, "node_types": {"repo": 1, "commit": 4, "thread": 1, "comment": 1, "pr_file": 17, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#43", "issue_number": "43", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-f00f8cca25ac6b01", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"schema_or_data": 12, "ui_or_frontend": 4, "source_or_other": 52}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: supported_by_high_confidence_link\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#43\nEvidence:\nGraph motif: Schema, UI, and API evidence do not line up\nMotif id: schema_ui_api_mismatch\nPolarity: bad\nTraining usage: assumption_check\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#43\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#43\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 43\nGraph consistency label: supported_by_high_confidence_link\nNodes: 30\nEdges: 56\nNode types: {'pr_file': 17, 'commit': 4, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 17, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 4, '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: {'source_or_other': 13, 'schema_or_data': 3, 'claimed_resolved_unverified': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'ui_or_frontend': 1, 'human_reported_issue_then_fix_attempt': 1, 'feature': 1, 'generated_provenance': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {}\nCurriculum targets:\n- Create schema-to-API-to-UI consistency tasks with migrations and tests.\n- Teach models to verify persistence, route contracts, and UI state together.\nAssumption checks:\n- Do schema changes have matching API and UI handling?\n- Are migrations and tests present for the data path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-0f0c677d0a99b8a6", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/schema_ui_api_mismatch/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/schema_ui_api_mismatch", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_schema_ui_api_gap", "level": "error", "message": {"text": "Foundry mined schema ui api mismatch: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 328445, "scanner": "foundry_dataset", "fingerprint": "199a4587f548cc48a0c51bcb60bf0e08fe39d964a718dd967732f83adfab872d", "category": "quality", "severity": "high", "confidence": 0.76, "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": "Schema, UI, and API mismatch", "intent": "Assumption-check examples for data-path consistency across layers.", "labels": {"feature": 1, "schema_or_data": 3, "ui_or_frontend": 3, "source_or_other": 15, "verification_or_tests": 4, "data_schema_persistence": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 3, "comment_has_related_commit_context": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"ambiguous_needs_more_evidence": 6}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 61, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 21, "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_links_commit": 5, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 35, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 21, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#40", "issue_number": "40", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-33058e112362580c", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"schema_or_data": 12, "ui_or_frontend": 12, "source_or_other": 60}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#40\nEvidence:\nGraph motif: Schema, UI, and API evidence do not line up\nMotif id: schema_ui_api_mismatch\nPolarity: bad\nTraining usage: assumption_check\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#40\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#40\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 40\nGraph consistency label: weak_supervision_needs_review\nNodes: 35\nEdges: 61\nNode types: {'pr_file': 21, 'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 21, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 5, '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: {'source_or_other': 15, 'verification_or_tests': 4, 'schema_or_data': 3, 'ui_or_frontend': 3, 'ambiguous_needs_more_evidence': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'comment_has_related_commit_context': 1, 'feature': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Create schema-to-API-to-UI consistency tasks with migrations and tests.\n- Teach models to verify persistence, route contracts, and UI state together.\nAssumption checks:\n- Do schema changes have matching API and UI handling?\n- Are migrations and tests present for the data path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-9621e2bd1e1089fc", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/schema_ui_api_mismatch/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/schema_ui_api_mismatch", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_schema_ui_api_gap", "level": "error", "message": {"text": "Foundry mined schema ui api mismatch: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 328444, "scanner": "foundry_dataset", "fingerprint": "f2355c7073a6e64157af1f11e6d85dfcaa61055180c1b7e80d7147e6b75da881", "category": "quality", "severity": "high", "confidence": 0.76, "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": "Schema, UI, and API mismatch", "intent": "Assumption-check examples for data-path consistency across layers.", "labels": {"feature": 1, "data_schema": 1, "ui_workflow": 1, "api_or_backend": 1, "schema_or_data": 3, "ui_or_frontend": 3, "source_or_other": 25, "ui_workflow_gap": 1, "verification_or_tests": 2, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 72, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 32, "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_links_commit": 5, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 46, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 32, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#39", "issue_number": "39", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-14edbda4962f240e", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"api_or_backend": 4, "schema_or_data": 12, "ui_or_frontend": 12, "source_or_other": 100}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: supported_by_verification_signal\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#39\nEvidence:\nGraph motif: Schema, UI, and API evidence do not line up\nMotif id: schema_ui_api_mismatch\nPolarity: bad\nTraining usage: assumption_check\nSeverity: high\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#39\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#39\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 39\nGraph consistency label: supported_by_verification_signal\nNodes: 46\nEdges: 72\nNode types: {'pr_file': 32, 'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 32, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 5, '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: {'source_or_other': 25, 'schema_or_data': 3, 'ui_or_frontend': 3, 'claimed_resolved_with_verification_signal': 3, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'ui_workflow_gap': 1, 'api_or_backend': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'feature': 1, 'data_schema': 1, 'ui_workflow': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {}\nCurriculum targets:\n- Create schema-to-API-to-UI consistency tasks with migrations and tests.\n- Teach models to verify persistence, route contracts, and UI state together.\nAssumption checks:\n- Do schema changes have matching API and UI handling?\n- Are migrations and tests present for the data path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-8fc4875e0ff3e886", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/schema_ui_api_mismatch/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/schema_ui_api_mismatch", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 316690, "scanner": "foundry_dataset", "fingerprint": "43989bdc29bccffcbe1994a5a8b4065bf9bd1b89249ba6e6f340901e367a34bb", "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": "UmaisNisar/InvestAdvisor#3", "human_labels": ["api_integration_gap"], "issue_number": "3", "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": "UmaisNisar/InvestAdvisor", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-eee7212e67f93022", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 0, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_unresolved", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: bad_chains\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#3\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, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#3\nRepo: UmaisNisar/InvestAdvisor\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: 0\nLabels: {'api_integration_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-689b8eb6a6e05cb4\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/3\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/3\\nTitle: fix: fingerprint app.css to bust stale browser cache (reconnect overlay)\\nBody:\\nFixes the unstyled white \\\"reload the page\\\" text at the bottom of the page. It was a **stale cached `app.css`** \u2014 the browser had the new reconnect-modal markup but an old stylesheet missing `#components-reconnect-modal { display: none; }`, so the modal showed in the page flow.\\n\\nSwitches the `app.css` link to the fingerprinted `@Assets[\u2026]` URL (renders as `app.{hash}.css`), so any CSS change produces a new URL and browsers always fetch the current file. No more stale-CSS bugs.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-ff9141aae1bc83ec\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: UmaisNisar/InvestAdvisor\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 1, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 1, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 1}\nHelicopter views: {}\nBundle labels: {\"source_backed_security_guardrail_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-bad_chains-7c38415b92fc451a", "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": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 316689, "scanner": "foundry_dataset", "fingerprint": "d6cc3d168f2adc1bc8b6dd87e1a5b0f99359fd90804ee8b9df42a0f5250dc72f", "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": "UmaisNisar/InvestAdvisor#27", "human_labels": ["mock_placeholder"], "issue_number": "27", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.877, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-5e075646fc8541d3", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: bad_chains\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#27\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#27\nRepo: UmaisNisar/InvestAdvisor\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'mock_placeholder': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-921a8ab6b9192ed2\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"mock_placeholder\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/27\",\n    \"text\": \"GitHub feedback: mock_placeholder\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/27\\nTitle: feat: chart loading skeleton + draw-in reveal\\nBody:\\n## Why\\nChart slots sat as a blank canvas while loading \u2014 a flat gray rectangle on the dashboard hero, a bare progress bar over empty space in the holding drawer \u2014 and the drawn chart then popped in with no transition.\\n\\n## What\\n- **`ChartSkeleton`**: a muted sparkline placeholder that repeatedly draws itself in with a shimmer sweep while real chart data loads. Used in the dashboard page skeleton, the portfolio value card, and the holding detail drawer.\\n- **`.ia-chart-reveal`**: once data lands, the real chart enters with a ~0.7s left-to-right clip-path reveal instead of popping in. The `@key` recreation on range/currency/ticker/view switches replays it. `clip-path` ends fully open, so tooltips and interaction are unaffected.\\n- `prefers-reduced-motion` disables both animations.\\n- ApexCharts'\\\\'' own intro animations stay off (they leave a half-drawn frame on first paint \u2014 see existing comment in `HoldingDetailDrawer`); the reveal happens purely\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-5dc81b6d1a9b2a49\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: UmaisNisar/InvestAdvisor\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 1, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 1, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 1}\nHelicopter views: {}\nBundle labels: {\"source_backed_security_guardrail_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-bad_chains-08ace34b0159d024", "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": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 316688, "scanner": "foundry_dataset", "fingerprint": "e63a30afa78fa4f137bc5cd961986b490651bb3eb840cdaa2e66f47c6a30ed37", "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": "UmaisNisar/InvestAdvisor#1", "human_labels": ["test_ci_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": "UmaisNisar/InvestAdvisor", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-73a8b10eb65922bc", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 0, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_unresolved", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: bad_chains\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#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, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: UmaisNisar/InvestAdvisor#1\nRepo: UmaisNisar/InvestAdvisor\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: 0\nLabels: {'test_ci_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-d327a18606236a56\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/UmaisNisar/InvestAdvisor/pull/1\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: UmaisNisar/InvestAdvisor\\nAuthor: UmaisNisar (User)\\nURL: https://github.com/UmaisNisar/InvestAdvisor/pull/1\\nTitle: ci: PR-gated build/test + auto-deploy to Oracle\\nBody:\\nSets up the workflow you asked for: **I open a PR \u2192 you review & merge \u2192 it auto-deploys.**\\n\\n## What this adds\\n- **`.github/workflows/ci.yml`** \u2014 runs on every PR into `main`: restore, build, and test the solution. A green check here gates the merge.\\n- **`.github/workflows/deploy.yml`** \u2014 runs on every push to `main` (i.e. after you merge): publishes `linux-x64`, ships to the Oracle box over SSH (tar stream), restarts the service, and health-checks `http://127.0.0.1:5174/`.\\n\\n## How it reaches the box\\nUses two repo secrets (already configured):\\n- `DEPLOY_SSH_KEY` \u2014 a **dedicated** CI deploy key (separate from your personal `~/.ssh/invest`, so you can revoke CI access independently). Its public half is authorized on the box.\\n- `DEPLOY_HOST` \u2014 the box IP.\\n\\n## After you merge this\\nThe deploy workflow becomes active. From then on every change ships only after your approval+merge. No more deploying from a laptop.\\n\\n\ud83e\udd16 Generated with [Claude Code](https:\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-1ef17446ed8c9627\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: UmaisNisar/InvestAdvisor\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 1, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 1, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 1}\nHelicopter views: {}\nBundle labels: {\"source_backed_security_guardrail_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "comment-chain-pattern-bad_chains-448a8af009995406", "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": "UmaisNisar/InvestAdvisor", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_auth_guardrail_gap", "level": "error", "message": {"text": "Foundry mined security auth guardrail gaps: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 332250, "scanner": "foundry_dataset", "fingerprint": "4c380ac1c123cb2d7337383bdfa0d486617035d1084105dcfb4df786cdb47b37", "category": "auth", "severity": "critical", "confidence": 0.78, "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": "Security/auth changes without enough guardrails", "intent": "Assumption-check security/auth examples requiring stronger tests or CI.", "labels": {"bug_fix": 5, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 14, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#6", "issue_number": "6", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-913a4685a83a31e8", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#6\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#6\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#6\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 6\nGraph consistency label: weak_supervision_needs_review\nNodes: 14\nEdges: 16\nNode types: {'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 5, '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: {'bug_fix': 5, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'human_reported_issue_then_fix_attempt': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Train auth boundary repair with tests, permission matrices, and secret-handling checks.\n- Keep risky auth changes separate from ordinary bug-fix examples.\nAssumption checks:\n- Are auth/permission paths covered by tests?\n- Are secrets, CORS, or access rules verified rather than summarized?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-0bf5f2647811af17", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/security_auth_guardrail_gaps/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/security_auth_guardrail_gaps", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_auth_guardrail_gap", "level": "error", "message": {"text": "Foundry mined security auth guardrail gaps: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 332249, "scanner": "foundry_dataset", "fingerprint": "5da7b4960ae70bdeacb8172156095cfa7a923cf873b0a9381f2a70db2462326b", "category": "auth", "severity": "critical", "confidence": 0.78, "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": "Security/auth changes without enough guardrails", "intent": "Assumption-check security/auth examples requiring stronger tests or CI.", "labels": {"bug_fix": 4, "feature": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 14, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#23", "issue_number": "23", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-5f0b775ab21f6883", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#23\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#23\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#23\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 23\nGraph consistency label: weak_supervision_needs_review\nNodes: 14\nEdges: 16\nNode types: {'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 5, '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: {'bug_fix': 4, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'human_reported_issue_then_fix_attempt': 1, 'feature': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Train auth boundary repair with tests, permission matrices, and secret-handling checks.\n- Keep risky auth changes separate from ordinary bug-fix examples.\nAssumption checks:\n- Are auth/permission paths covered by tests?\n- Are secrets, CORS, or access rules verified rather than summarized?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-3db334d4b1930ca1", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/security_auth_guardrail_gaps/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/security_auth_guardrail_gaps", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_auth_guardrail_gap", "level": "error", "message": {"text": "Foundry mined security auth guardrail gaps: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 332248, "scanner": "foundry_dataset", "fingerprint": "641b3c883bd4bc9bf7137c58ba036d3cc01bac254056e22596b6f33633ce334d", "category": "auth", "severity": "critical", "confidence": 0.78, "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": "Security/auth changes without enough guardrails", "intent": "Assumption-check security/auth examples requiring stronger tests or CI.", "labels": {"bug_fix": 2, "feature": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 14, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 3, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 12, "node_types": {"repo": 1, "commit": 3, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#12", "issue_number": "12", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-1032f003e3eb2d31", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#12\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#12\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#12\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 12\nGraph consistency label: weak_supervision_needs_review\nNodes: 12\nEdges: 14\nNode types: {'commit': 3, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 3, '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: {'claimed_resolved_unverified': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'human_reported_issue_then_fix_attempt': 1, 'feature': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Train auth boundary repair with tests, permission matrices, and secret-handling checks.\n- Keep risky auth changes separate from ordinary bug-fix examples.\nAssumption checks:\n- Are auth/permission paths covered by tests?\n- Are secrets, CORS, or access rules verified rather than summarized?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-53d52d3893dbfc9d", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/security_auth_guardrail_gaps/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/security_auth_guardrail_gaps", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_auth_guardrail_gap", "level": "error", "message": {"text": "Foundry mined security auth guardrail gaps: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 332247, "scanner": "foundry_dataset", "fingerprint": "b366dcecb882d48ec7a88fec1e8609b14c7217fb0111c6b1cb8b20fa44e0f9c7", "category": "auth", "severity": "critical", "confidence": 0.78, "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": "Security/auth changes without enough guardrails", "intent": "Assumption-check security/auth examples requiring stronger tests or CI.", "labels": {"bug_fix": 5, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 14, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#10", "issue_number": "10", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-ea813e98d61a98e3", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#10\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#10\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#10\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 10\nGraph consistency label: weak_supervision_needs_review\nNodes: 14\nEdges: 16\nNode types: {'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 5, '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: {'bug_fix': 5, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'human_reported_issue_then_fix_attempt': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Train auth boundary repair with tests, permission matrices, and secret-handling checks.\n- Keep risky auth changes separate from ordinary bug-fix examples.\nAssumption checks:\n- Are auth/permission paths covered by tests?\n- Are secrets, CORS, or access rules verified rather than summarized?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-8616e26949f1f867", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/security_auth_guardrail_gaps/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/security_auth_guardrail_gaps", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_fake_real_gap", "level": "error", "message": {"text": "Foundry mined mock as real or placeholder: UmaisNisar/InvestAdvisor"}, "properties": {"repobilityId": 324970, "scanner": "foundry_dataset", "fingerprint": "08ef56ab044b8920f9736f96cbb922c8cb6cc078da0d5d30d712ebb12bad159e", "category": "practices", "severity": "critical", "confidence": 0.82, "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": "graph_query_record", "title": "Mock, sample, placeholder, or self-attested behavior treated as real", "intent": "Hard negatives for fake completeness and missing real data paths.", "labels": {"bug_fix": 3, "feature": 1, "data_schema": 1, "mock_placeholder": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 14, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "UmaisNisar/InvestAdvisor#27", "issue_number": "27", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "UmaisNisar/InvestAdvisor", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-ba2ce757a3e69a6c", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {}}, "text": "Graph query export: Mock, sample, placeholder, or self-attested behavior treated as real\nQuery id: mock_as_real_or_placeholder\nQuery type: motif_query\nIntent: Hard negatives for fake completeness and missing real data paths.\nMotif: mock_as_real_or_placeholder\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#27\nEvidence:\nGraph motif: Mock, sample, placeholder, or self-attested behavior treated as real\nMotif id: mock_as_real_or_placeholder\nPolarity: bad\nTraining usage: hard_negative\nSeverity: critical\nRepo: UmaisNisar/InvestAdvisor\nThread: UmaisNisar/InvestAdvisor#27\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: UmaisNisar/InvestAdvisor#27\nRepo: UmaisNisar/InvestAdvisor\nIssue/PR number: 27\nGraph consistency label: supported_by_high_confidence_link\nNodes: 14\nEdges: 16\nNode types: {'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 5, '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: {'bug_fix': 3, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'human_reported_issue_then_fix_attempt': 1, 'feature': 1, 'data_schema': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {}\nCurriculum targets:\n- Train real-data plumbing and mock-removal tasks from source to UI.\n- Use as hard negatives for dashboards or apps claiming real runs without provenance.\nAssumption checks:\n- Is user-visible behavior backed by real storage/API/CI artifacts?\n- Are placeholders, sample data, or generated claims still in a production path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/UmaisNisar/InvestAdvisor", "source_id": "graph-query-motif_query-1cf2d869e04bb2b5", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/mock_as_real_or_placeholder/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "UmaisNisar/InvestAdvisor", "source_dataset": "graph_queries/mock_as_real_or_placeholder", "training_usage": "hard_negative"}}}, {"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-28c4a04bd807da0c", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "80444389b808ecdb", "scanner": "scanner-primary", "fingerprint": "28c4a04bd807da0c", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy.yml"}, "region": {"startLine": 24}}}]}, {"ruleId": "scanner-27924aa79fa4a517", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "55193ff05b5bb291", "scanner": "scanner-primary", "fingerprint": "27924aa79fa4a517", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/ci.yml"}, "region": {"startLine": 16}}}]}, {"ruleId": "scanner-27924aa79fa4a517", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "55193ff05b5bb291", "scanner": "scanner-primary", "fingerprint": "27924aa79fa4a517", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/ci.yml"}, "region": {"startLine": 42}}}]}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "8235808b07318113", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "7ab8ce65f8100189", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-11825279136b53a3", "level": "warning", "message": {"text": "CI is configured but no tests are detected"}, "properties": {"repobilityId": "bf0f594764e308ee", "scanner": "scanner-primary", "fingerprint": "11825279136b53a3", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["tests", "ci", "config-theater", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-b9088664ace7f748", "level": "note", "message": {"text": "Composite production-readiness gap"}, "properties": {"repobilityId": "d8a00546ad850324", "scanner": "scanner-primary", "fingerprint": "b9088664ace7f748", "layer": "quality", "severity": "low", "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": "e4e545727d4d1e55", "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": "b60f3347b7ecc550", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}]}]}