{"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: sport-analytics-org/court-training", "shortDescription": {"text": "Foundry mined unresolved feedback: sport-analytics-org/court-training"}, "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: assumption_check\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#42\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#42\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#42\nRepo: sport-analytics-org/court-training\nIssue/PR number: 42\nGraph consistency label: assumption_check\nNodes: 24\nEdges: 41\nNode types: {'pr_file': 6, 'link_quality': 6, 'alignment': 3, 'blueprint_f"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "medium", "confidence": 0.7, "cwe": "", "owasp": ""}}, {"id": "foundry_blueprint_gap", "name": "Foundry mined blueprint gap alignment: sport-analytics-org/court-training", "shortDescription": {"text": "Foundry mined blueprint gap alignment: sport-analytics-org/court-training"}, "fullDescription": {"text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#5\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#5\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#5\nRepo: sport-analytics-org/court-training\nIssue/PR number: 5\nGraph consistency label: weak_supervision_needs_review\nNodes: 19\nEdges: 24\nNode types: {'link_quality': 6, 'al"}, "properties": {"scanner": "foundry_dataset", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "cwe": "", "owasp": ""}}, {"id": "foundry_assumption_check", "name": "Foundry mined assumption checks: sport-analytics-org/court-training", "shortDescription": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "fullDescription": {"text": "Comment chain pattern product: assumption_checks\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#9\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_weak_supervision\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#9\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 1\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-5be02194101ce4ba\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/9\",\n    \"te"}, "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: sport-analytics-org/court-training", "shortDescription": {"text": "Foundry mined test ci gap after feedback: sport-analytics-org/court-training"}, "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: weak_supervision_needs_review\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#29\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#29\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#29\nRepo: sport-analytics-org/court-training\nIssue/PR number: 29\nGraph consistency label: weak_supervision_needs_review\nNodes: 31\nEdges: 65\nNode types: {'pr_file': 9, 'link_quality': 7, 'alignmen"}, "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: sport-analytics-org/court-training", "shortDescription": {"text": "Foundry mined schema ui api mismatch: sport-analytics-org/court-training"}, "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: assumption_check\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#21\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#21\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#21\nRepo: sport-analytics-org/court-training\nIssue/PR number: 21\nGraph consistency label: assumption_check\nNodes: 18\nEdges: 23\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain"}, "properties": {"scanner": "foundry_dataset", "category": "quality", "severity": "high", "confidence": 0.76, "cwe": "", "owasp": ""}}, {"id": "foundry_bad_chain", "name": "Foundry mined bad chains: sport-analytics-org/court-training", "shortDescription": {"text": "Foundry mined bad chains: sport-analytics-org/court-training"}, "fullDescription": {"text": "Comment chain pattern product: bad_chains\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#42\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: sport-analytics-org/court-training#42\nRepo: sport-analytics-org/court-training\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: 6\nLabels: {'api_integration_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 2, 'api_or_backend': 1, 'ui_or_frontend': 3}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-6627ebe564fbf1b2\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"pol"}, "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: sport-analytics-org/court-training", "shortDescription": {"text": "Foundry mined security auth guardrail gaps: sport-analytics-org/court-training"}, "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: supported_by_high_confidence_link\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#36\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#36\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#36\nRepo: sport-analytics-org/court-training\nIssue/PR number: 36\nGraph consistency label: supported_by_high_confidence_link\nNodes: 13\nEdges: 19\nNode types: {'li"}, "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: sport-analytics-org/court-training", "shortDescription": {"text": "Foundry mined mock as real or placeholder: sport-analytics-org/court-training"}, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#37\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#37\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#37\nRepo: sport-analytics-org/court-training\nIssue/PR number: 37\nGraph consistency label: supported_by_high_confidence_link\nNodes: 21\nEdges:"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "critical", "confidence": 0.82, "cwe": "", "owasp": ""}}, {"id": "scanner-74942af98ad4964e", "name": "Possibly dead Python function: closure", "shortDescription": {"text": "Possibly dead Python function: closure"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f620e0569a453b39", "name": "Possibly dead Python function: collate", "shortDescription": {"text": "Possibly dead Python function: collate"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d9ee51698d15ae5e", "name": "Possibly dead Python function: forward", "shortDescription": {"text": "Possibly dead Python function: forward"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-97eb39db8926fbef", "name": "Possibly dead Python function: forward", "shortDescription": {"text": "Possibly dead Python function: forward"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"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-4601e3ad3bb28677", "name": "No CI/CD pipelines detected", "shortDescription": {"text": "No CI/CD pipelines detected"}, "fullDescription": {"text": "No GitHub Actions, GitLab CI, or CircleCI configs found. Without CI you can't gate deploys on tests/lints."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6893a6c8b0861585", "name": "Very low test-to-source ratio", "shortDescription": {"text": "Very low test-to-source ratio"}, "fullDescription": {"text": "0 test file(s) for 23 source file(s) (ratio 0.00). Consider adding integration or unit tests for critical paths."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-141b30a41e03817b", "name": "No license file detected", "shortDescription": {"text": "No license file detected"}, "fullDescription": {"text": "No LICENSE/COPYING/NOTICE file was found. Generated repositories often omit licensing, which blocks reuse and automated intake."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b9088664ace7f748", "name": "Composite production-readiness gap", "shortDescription": {"text": "Composite production-readiness gap"}, "fullDescription": {"text": "Multiple low-cost hardening controls are missing together: license, ci, tests. Opus verification showed these co-occurring gaps are a better readiness signal than reading each flag in isolation."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2c04133e54348533", "name": "Near-duplicate function bodies in 2 places", "shortDescription": {"text": "Near-duplicate function bodies in 2 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nscripts/segmentation/train_basket.py:set_seed, scripts/detection/train_rfdetr.py:set_seed\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-be46ea126aa5d8dc", "name": "Near-duplicate function bodies in 3 places", "shortDescription": {"text": "Near-duplicate function bodies in 3 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nsrc/court_training/segmentation/model.py:forward, src/court_training/segmentation/model.py:forward, src/court_training/segmentation/model.py:forward\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ddf45157b7bfb1e8", "name": "FastAPI POST `predict` without auth dependency \u2014 src/court_training/api.py:107", "shortDescription": {"text": "FastAPI POST `predict` without auth dependency \u2014 src/court_training/api.py:107"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-25d3af48cd83c9e6", "name": "Unused endpoint: POST /predict", "shortDescription": {"text": "Unused endpoint: POST /predict"}, "fullDescription": {"text": "`src/court_training/api.py` declares `POST /predict` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/20126"}, "properties": {"repository": "sport-analytics-org/court-training", "repoUrl": "https://github.com/sport-analytics-org/court-training", "branch": "main"}, "results": [{"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: sport-analytics-org/court-training"}, "properties": {"repobilityId": 370322, "scanner": "foundry_dataset", "fingerprint": "8b3a43cfad8a646afcf310506d5d85cee7a647dde2b09cc8a5606ca155e04a37", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"api_or_backend": 1, "ui_or_frontend": 3, "source_or_other": 2, "weak blueprint fit": 2, "api_integration_gap": 1, "partial blueprint fit": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 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": 41, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 6, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 6, "thread_has_comment_chain": 1, "comment_chain_touches_file": 6, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 24, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 6, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#42", "issue_number": "42", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-f2b477c1ca869681", "graph_gold_label": "assumption_check", "changed_file_labels": {"api_or_backend": 4, "ui_or_frontend": 12, "source_or_other": 8}}, "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: assumption_check\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#42\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#42\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#42\nRepo: sport-analytics-org/court-training\nIssue/PR number: 42\nGraph consistency label: assumption_check\nNodes: 24\nEdges: 41\nNode types: {'pr_file': 6, 'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 6, 'comment_chain_touches_file': 6, 'chain_has_link_quality': 6, 'issue_chain_touches_file': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 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': 3, 'not_resolved_or_not_observed': 3, 'blueprint_human_gap_alignment': 3, 'source_or_other': 2, 'thread_has_human_issue_without_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'api_or_backend': 1, 'human_reported_issue_no_linked_fix': 1, 'partial blueprint fit': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-db67b5720a9df223", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: sport-analytics-org/court-training"}, "properties": {"repobilityId": 370321, "scanner": "foundry_dataset", "fingerprint": "9bb736f5f75e3a80f17865f5a0a619545ef40bc9829a02877f1a9b824d86d74d", "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": {"ui_or_frontend": 2, "source_or_other": 4, "weak blueprint fit": 2, "api_integration_gap": 1, "partial blueprint fit": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 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": 41, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 6, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 6, "thread_has_comment_chain": 1, "comment_chain_touches_file": 6, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 24, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 6, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#41", "issue_number": "41", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-922d771101a0ddc1", "graph_gold_label": "assumption_check", "changed_file_labels": {"ui_or_frontend": 8, "source_or_other": 16}}, "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: assumption_check\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#41\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#41\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#41\nRepo: sport-analytics-org/court-training\nIssue/PR number: 41\nGraph consistency label: assumption_check\nNodes: 24\nEdges: 41\nNode types: {'pr_file': 6, 'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 6, 'comment_chain_touches_file': 6, 'chain_has_link_quality': 6, 'issue_chain_touches_file': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 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': 4, 'not_resolved_or_not_observed': 3, 'blueprint_human_gap_alignment': 3, 'ui_or_frontend': 2, 'thread_has_human_issue_without_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'human_reported_issue_no_linked_fix': 1, 'partial blueprint fit': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-8d223a85db3c83d8", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: sport-analytics-org/court-training"}, "properties": {"repobilityId": 370320, "scanner": "foundry_dataset", "fingerprint": "733639fdfcb97af048d21ae3dde4511880846f0ef2351073898cff632e41856a", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"api_or_backend": 1, "ui_or_frontend": 4, "source_or_other": 2, "weak blueprint fit": 2, "api_integration_gap": 1, "partial blueprint fit": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 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": 44, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 7, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 7, "thread_has_comment_chain": 1, "comment_chain_touches_file": 7, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 25, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 7, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#40", "issue_number": "40", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-fa69700022c75047", "graph_gold_label": "assumption_check", "changed_file_labels": {"api_or_backend": 4, "ui_or_frontend": 16, "source_or_other": 8}}, "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: assumption_check\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#40\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#40\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#40\nRepo: sport-analytics-org/court-training\nIssue/PR number: 40\nGraph consistency label: assumption_check\nNodes: 25\nEdges: 44\nNode types: {'pr_file': 7, 'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 7, 'comment_chain_touches_file': 7, 'issue_chain_touches_file': 7, 'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 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': 4, 'not_resolved_or_not_observed': 3, 'blueprint_human_gap_alignment': 3, 'source_or_other': 2, 'thread_has_human_issue_without_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'api_or_backend': 1, 'human_reported_issue_no_linked_fix': 1, 'partial blueprint fit': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-244b302a551649f8", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: sport-analytics-org/court-training"}, "properties": {"repobilityId": 370319, "scanner": "foundry_dataset", "fingerprint": "279efc956566dc86936e36350fc55375baef7f8a176673e146b7192078ce390a", "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": "sport-analytics-org/court-training#4", "issue_number": "4", "quality_tiers": {"unresolved": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-277c18d9b8df3cd9", "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#4\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#4\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#4\nRepo: sport-analytics-org/court-training\nIssue/PR number: 4\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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-2c2c2587a3a38f20", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: sport-analytics-org/court-training"}, "properties": {"repobilityId": 370318, "scanner": "foundry_dataset", "fingerprint": "33e0c91918975d866844de99c983306f1b05a11608c9eaf6277e0dbb8a78c526", "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": {"ui_or_frontend": 2, "source_or_other": 2, "generated_provenance": 5, "agent_instruction_gap": 1, "human_feedback_general": 1, "unlinked_human_feedback": 1, "self_attested_unverified": 3, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "thread_has_human_issue_and_fix_context": 2, "self_attested_or_generated_fix_unverified": 1}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"self_attested_unverified": 6, "ambiguous_needs_more_evidence": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 37, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 4, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 4, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "comment_chain_touches_file": 8, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 21, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 4, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#31", "issue_number": "31", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-a72622d329fc85b4", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"ui_or_frontend": 10, "source_or_other": 10}}, "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: weak_supervision_needs_review\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#31\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#31\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#31\nRepo: sport-analytics-org/court-training\nIssue/PR number: 31\nGraph consistency label: weak_supervision_needs_review\nNodes: 21\nEdges: 37\nNode types: {'commit': 5, 'pr_file': 4, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 8, 'comment_chain_links_commit': 5, 'thread_touches_file': 4, 'chain_has_link_quality': 4, 'issue_chain_touches_file': 4, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'generated_provenance': 5, 'self_attested_unverified': 3, 'source_or_other': 2, 'ui_or_frontend': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'human_feedback_general': 1, 'self_attested_or_generated_fix_unverified': 1, 'unlinked_human_feedback': 1, 'ambiguous_needs_more_evidence': 1}\nOutcomes: {'self_attested_unverified': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-4ed85f40f2db274c", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: sport-analytics-org/court-training"}, "properties": {"repobilityId": 370317, "scanner": "foundry_dataset", "fingerprint": "1177ede59c50c39ad0d36e5f56e7d4d76cafab5f61402d1c6de282f835b41906", "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, "docs_or_claims": 1, "ui_or_frontend": 3, "source_or_other": 5, "weak blueprint fit": 2, "dependency_or_build": 1, "partial blueprint fit": 1, "human_feedback_general": 1, "unlinked_human_feedback": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_alignment": 3, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "ambiguous_needs_more_evidence": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 65, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 9, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 7, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 9, "thread_has_comment_chain": 2, "comment_chain_links_commit": 1, "comment_chain_touches_file": 18, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 31, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 2, "pr_file": 9, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 7, "comment_chain": 2, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#29", "issue_number": "29", "quality_tiers": {"unresolved": 1, "assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-ec836893127547da", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"docs_or_claims": 5, "ui_or_frontend": 15, "source_or_other": 25}}, "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: weak_supervision_needs_review\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#29\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#29\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#29\nRepo: sport-analytics-org/court-training\nIssue/PR number: 29\nGraph consistency label: weak_supervision_needs_review\nNodes: 31\nEdges: 65\nNode types: {'pr_file': 9, 'link_quality': 7, 'alignment': 3, 'blueprint_finding': 3, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 18, 'thread_touches_file': 9, 'issue_chain_touches_file': 9, 'chain_has_link_quality': 7, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'comment_chain_links_commit': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'source_or_other': 5, 'ui_or_frontend': 3, 'claimed_resolved_unverified': 3, 'blueprint_human_gap_alignment': 3, 'thread_has_human_issue_and_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_feedback_general': 1, 'docs_or_claims': 1, 'human_reported_issue_then_fix_attempt': 1, 'dependency_or_build': 1, 'unlinked_human_feedback': 1, 'ambiguous_needs_more_evidence': 1, 'partial blueprint fit': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 3, 'unresolved': 1}\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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-fe666037119b9835", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: sport-analytics-org/court-training"}, "properties": {"repobilityId": 370316, "scanner": "foundry_dataset", "fingerprint": "9ff574d89f215cb3649815b6da0c6b47924b29ac5fc1cc60821867aec25497a2", "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": {"ui_or_frontend": 3, "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": 20, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 3, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 3, "thread_has_comment_chain": 1, "comment_chain_touches_file": 3, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 12, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#27", "issue_number": "27", "quality_tiers": {"unresolved": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-9d7e1503cb549aaf", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {"ui_or_frontend": 12}}, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#27\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#27\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#27\nRepo: sport-analytics-org/court-training\nIssue/PR number: 27\nGraph consistency label: needs_more_evidence\nNodes: 12\nEdges: 20\nNode types: {'pr_file': 3, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 3, 'comment_chain_touches_file': 3, 'chain_has_link_quality': 3, 'issue_chain_touches_file': 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': 3, '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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-50ff71fe45d1ea85", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: sport-analytics-org/court-training"}, "properties": {"repobilityId": 370315, "scanner": "foundry_dataset", "fingerprint": "220dbd1fad8a8fc5139adf86244ff63943b5d2df5d571e1c65f9597381d55305", "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": {"ui_or_frontend": 2, "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": 17, "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_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 11, "node_types": {"repo": 1, "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": "sport-analytics-org/court-training#26", "issue_number": "26", "quality_tiers": {"unresolved": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-2fe01ca0ee815d6a", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {"ui_or_frontend": 8}}, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#26\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#26\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#26\nRepo: sport-analytics-org/court-training\nIssue/PR number: 26\nGraph consistency label: needs_more_evidence\nNodes: 11\nEdges: 17\nNode types: {'link_quality': 3, 'pr_file': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'ambiguous_needs_more_evidence': 3, 'ui_or_frontend': 2, '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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-f94d25cbc61696e3", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: sport-analytics-org/court-training"}, "properties": {"repobilityId": 370314, "scanner": "foundry_dataset", "fingerprint": "6acac3d807762a14b8ec4c1cf7f7321608a3996e6b0129c38c3dc7c21435b084", "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, "docs_or_claims": 1, "ui_or_frontend": 9, "source_or_other": 7, "weak blueprint fit": 2, "dependency_or_build": 1, "partial blueprint fit": 1, "human_feedback_general": 1, "unlinked_human_feedback": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_alignment": 3, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "ambiguous_needs_more_evidence": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 82, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 17, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 7, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 1, "comment_chain_touches_file": 24, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 39, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 2, "pr_file": 17, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 7, "comment_chain": 2, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#24", "issue_number": "24", "quality_tiers": {"unresolved": 1, "assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-308404bedd52aa3f", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"docs_or_claims": 5, "ui_or_frontend": 45, "source_or_other": 35}}, "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: weak_supervision_needs_review\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#24\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#24\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#24\nRepo: sport-analytics-org/court-training\nIssue/PR number: 24\nGraph consistency label: weak_supervision_needs_review\nNodes: 39\nEdges: 82\nNode types: {'pr_file': 17, 'link_quality': 7, 'alignment': 3, 'blueprint_finding': 3, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 24, 'thread_touches_file': 17, 'issue_chain_touches_file': 12, 'chain_has_link_quality': 7, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'comment_chain_links_commit': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 9, 'source_or_other': 7, 'claimed_resolved_unverified': 3, 'blueprint_human_gap_alignment': 3, 'thread_has_human_issue_and_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_feedback_general': 1, 'docs_or_claims': 1, 'human_reported_issue_then_fix_attempt': 1, 'dependency_or_build': 1, 'unlinked_human_feedback': 1, 'ambiguous_needs_more_evidence': 1, 'partial blueprint fit': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 3, 'unresolved': 1}\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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-3b5ee88f8114f9aa", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: sport-analytics-org/court-training"}, "properties": {"repobilityId": 370313, "scanner": "foundry_dataset", "fingerprint": "88494a01f25df54994ca49dfea674c6515a098f3fd214dd3182bad4bc5810fbd", "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": {"weak blueprint fit": 2, "partial blueprint fit": 1, "data_schema_persistence": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 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": 23, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 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": 18, "node_types": {"repo": 1, "thread": 1, "comment": 1, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#21", "issue_number": "21", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-344e8bd746cc2fd4", "graph_gold_label": "assumption_check", "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: assumption_check\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#21\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#21\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#21\nRepo: sport-analytics-org/court-training\nIssue/PR number: 21\nGraph consistency label: assumption_check\nNodes: 18\nEdges: 23\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 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, 'blueprint_human_gap_alignment': 3, 'thread_has_human_issue_without_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'human_reported_issue_no_linked_fix': 1, 'partial blueprint fit': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-5d76cb25633d2e17", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: sport-analytics-org/court-training"}, "properties": {"repobilityId": 370312, "scanner": "foundry_dataset", "fingerprint": "91813d7a5b7069cdc12384428e6cee7d5bd48f714c9b1cea7fe9e17e600ba035", "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": {"bug_fix": 1, "ui_workflow_gap": 1, "weak blueprint fit": 2, "partial blueprint fit": 1, "human_feedback_general": 1, "unlinked_human_feedback": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_alignment": 3, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "ambiguous_needs_more_evidence": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 29, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 7, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 22, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 2, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 7, "comment_chain": 2, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#17", "issue_number": "17", "quality_tiers": {"unresolved": 1, "assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-1019b0a641ac78f0", "graph_gold_label": "weak_supervision_needs_review", "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: weak_supervision_needs_review\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#17\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#17\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#17\nRepo: sport-analytics-org/court-training\nIssue/PR number: 17\nGraph consistency label: weak_supervision_needs_review\nNodes: 22\nEdges: 29\nNode types: {'link_quality': 7, 'alignment': 3, 'blueprint_finding': 3, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 7, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'comment_chain_links_commit': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'claimed_resolved_unverified': 3, 'blueprint_human_gap_alignment': 3, 'thread_has_human_issue_and_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'ui_workflow_gap': 1, 'human_feedback_general': 1, 'human_reported_issue_then_fix_attempt': 1, 'bug_fix': 1, 'unlinked_human_feedback': 1, 'ambiguous_needs_more_evidence': 1, 'partial blueprint fit': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 3, 'unresolved': 1}\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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-2ba017d5b5739832", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: sport-analytics-org/court-training"}, "properties": {"repobilityId": 356276, "scanner": "foundry_dataset", "fingerprint": "8153fd2166657d36a0628b6f6195c2e0f97dec79feb1dc7d804e5c1bf247d5db", "category": "tech_debt", "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 aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"bug_fix": 1, "weak blueprint fit": 2, "api_integration_gap": 1, "partial blueprint fit": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 3, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 24, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 19, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 1, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#5", "issue_number": "5", "quality_tiers": {"assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-12c5ee20227acbfb", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#5\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#5\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#5\nRepo: sport-analytics-org/court-training\nIssue/PR number: 5\nGraph consistency label: weak_supervision_needs_review\nNodes: 19\nEdges: 24\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_links_commit': 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, 'blueprint_human_gap_alignment': 3, 'thread_has_human_issue_and_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'bug_fix': 1, 'partial blueprint fit': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-86b455b19618f807", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/blueprint_gap_alignment/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "sport-analytics-org/court-training", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: sport-analytics-org/court-training"}, "properties": {"repobilityId": 356275, "scanner": "foundry_dataset", "fingerprint": "eb9637c2eb13c38c2e813afdd81f32a4485b0c68b9691f213fe642ba3b438d4d", "category": "tech_debt", "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 aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"api_or_backend": 1, "ui_or_frontend": 3, "source_or_other": 2, "weak blueprint fit": 2, "api_integration_gap": 1, "partial blueprint fit": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 41, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 6, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 6, "thread_has_comment_chain": 1, "comment_chain_touches_file": 6, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 24, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 6, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#42", "issue_number": "42", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-312aa664852de196", "graph_gold_label": "assumption_check", "changed_file_labels": {"api_or_backend": 4, "ui_or_frontend": 12, "source_or_other": 8}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: assumption_check\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#42\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#42\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#42\nRepo: sport-analytics-org/court-training\nIssue/PR number: 42\nGraph consistency label: assumption_check\nNodes: 24\nEdges: 41\nNode types: {'pr_file': 6, 'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 6, 'comment_chain_touches_file': 6, 'chain_has_link_quality': 6, 'issue_chain_touches_file': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 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': 3, 'not_resolved_or_not_observed': 3, 'blueprint_human_gap_alignment': 3, 'source_or_other': 2, 'thread_has_human_issue_without_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'api_or_backend': 1, 'human_reported_issue_no_linked_fix': 1, 'partial blueprint fit': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-4aeaa737869a3588", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/blueprint_gap_alignment/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "sport-analytics-org/court-training", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: sport-analytics-org/court-training"}, "properties": {"repobilityId": 356274, "scanner": "foundry_dataset", "fingerprint": "6f4eb6eb5e6e7beca805984c5615208c37553e0f2c999d616c97e2417a73cfc4", "category": "tech_debt", "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 aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"ui_or_frontend": 2, "source_or_other": 4, "weak blueprint fit": 2, "api_integration_gap": 1, "partial blueprint fit": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 41, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 6, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 6, "thread_has_comment_chain": 1, "comment_chain_touches_file": 6, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 24, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 6, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#41", "issue_number": "41", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-463d79215f8fdb84", "graph_gold_label": "assumption_check", "changed_file_labels": {"ui_or_frontend": 8, "source_or_other": 16}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: assumption_check\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#41\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#41\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#41\nRepo: sport-analytics-org/court-training\nIssue/PR number: 41\nGraph consistency label: assumption_check\nNodes: 24\nEdges: 41\nNode types: {'pr_file': 6, 'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 6, 'comment_chain_touches_file': 6, 'chain_has_link_quality': 6, 'issue_chain_touches_file': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 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': 4, 'not_resolved_or_not_observed': 3, 'blueprint_human_gap_alignment': 3, 'ui_or_frontend': 2, 'thread_has_human_issue_without_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'human_reported_issue_no_linked_fix': 1, 'partial blueprint fit': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-acc9f69d6ca6e8bd", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/blueprint_gap_alignment/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "sport-analytics-org/court-training", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: sport-analytics-org/court-training"}, "properties": {"repobilityId": 356273, "scanner": "foundry_dataset", "fingerprint": "6e8c08304a4b58869416cb4a1e3566092159e09ada6294feac896aaab8260a7c", "category": "tech_debt", "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 aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"api_or_backend": 1, "ui_or_frontend": 4, "source_or_other": 2, "weak blueprint fit": 2, "api_integration_gap": 1, "partial blueprint fit": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 44, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 7, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 7, "thread_has_comment_chain": 1, "comment_chain_touches_file": 7, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 25, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 7, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#40", "issue_number": "40", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-9c965f26fc1547a6", "graph_gold_label": "assumption_check", "changed_file_labels": {"api_or_backend": 4, "ui_or_frontend": 16, "source_or_other": 8}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: assumption_check\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#40\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#40\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#40\nRepo: sport-analytics-org/court-training\nIssue/PR number: 40\nGraph consistency label: assumption_check\nNodes: 25\nEdges: 44\nNode types: {'pr_file': 7, 'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 7, 'comment_chain_touches_file': 7, 'issue_chain_touches_file': 7, 'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 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': 4, 'not_resolved_or_not_observed': 3, 'blueprint_human_gap_alignment': 3, 'source_or_other': 2, 'thread_has_human_issue_without_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'api_or_backend': 1, 'human_reported_issue_no_linked_fix': 1, 'partial blueprint fit': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-b4a3429be01d940a", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/blueprint_gap_alignment/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "sport-analytics-org/court-training", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: sport-analytics-org/court-training"}, "properties": {"repobilityId": 356272, "scanner": "foundry_dataset", "fingerprint": "37dc8b29e04d75b0c6e2ceb4a1a52960e2e1ebb4f6e9f4c293a71a97d4756ee2", "category": "tech_debt", "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 aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"api_or_backend": 1, "docs_or_claims": 1, "ui_or_frontend": 3, "source_or_other": 5, "weak blueprint fit": 2, "api_integration_gap": 1, "dependency_or_build": 1, "partial blueprint fit": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 3, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 54, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 10, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 10, "thread_has_comment_chain": 1, "comment_chain_links_commit": 1, "comment_chain_touches_file": 10, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 29, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 1, "pr_file": 10, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#38", "issue_number": "38", "quality_tiers": {"high_confidence": 3, "assumption_check": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-d5a16746e0399744", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"api_or_backend": 4, "docs_or_claims": 4, "ui_or_frontend": 12, "source_or_other": 20}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: supported_by_high_confidence_link\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#38\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#38\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#38\nRepo: sport-analytics-org/court-training\nIssue/PR number: 38\nGraph consistency label: supported_by_high_confidence_link\nNodes: 29\nEdges: 54\nNode types: {'pr_file': 10, 'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 10, 'comment_chain_touches_file': 10, 'issue_chain_touches_file': 10, 'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_links_commit': 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': 5, 'ui_or_frontend': 3, 'claimed_resolved_unverified': 3, 'blueprint_human_gap_alignment': 3, 'thread_has_human_issue_and_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'docs_or_claims': 1, 'api_or_backend': 1, 'human_reported_issue_then_fix_attempt': 1, 'dependency_or_build': 1, 'partial blueprint fit': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-a4684c0493e65a7a", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/blueprint_gap_alignment/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "sport-analytics-org/court-training", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: sport-analytics-org/court-training"}, "properties": {"repobilityId": 356271, "scanner": "foundry_dataset", "fingerprint": "6e5d817bf062265bf86cf42c4e33912435bd200c4b2904376976b91ab434c275", "category": "tech_debt", "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 aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"api_or_backend": 1, "source_or_other": 1, "weak blueprint fit": 2, "api_integration_gap": 1, "generated_provenance": 1, "partial blueprint fit": 1, "self_attested_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 3, "thread_has_human_issue_and_fix_context": 2, "self_attested_or_generated_fix_unverified": 1}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"self_attested_unverified": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 30, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 2, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 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": 1, "comment_chain_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 21, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 1, "pr_file": 2, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#37", "issue_number": "37", "quality_tiers": {"high_confidence": 3, "assumption_check": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-24a032ae2b010972", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"api_or_backend": 4, "source_or_other": 4}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: supported_by_high_confidence_link\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#37\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#37\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#37\nRepo: sport-analytics-org/court-training\nIssue/PR number: 37\nGraph consistency label: supported_by_high_confidence_link\nNodes: 21\nEdges: 30\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'pr_file': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 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, 'comment_chain_links_commit': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'self_attested_unverified': 3, 'blueprint_human_gap_alignment': 3, 'thread_has_human_issue_and_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'api_or_backend': 1, 'source_or_other': 1, 'self_attested_or_generated_fix_unverified': 1, 'generated_provenance': 1, 'partial blueprint fit': 1}\nOutcomes: {'self_attested_unverified': 6}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-d740436a71afcd14", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/blueprint_gap_alignment/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "sport-analytics-org/court-training", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: sport-analytics-org/court-training"}, "properties": {"repobilityId": 356270, "scanner": "foundry_dataset", "fingerprint": "e5619aef5ca218ae1b53079ff17036cbd259e6b85b522d1c8da43da4794c82cb", "category": "tech_debt", "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 aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"test_ci_gap": 1, "docs_or_claims": 1, "ui_or_frontend": 3, "source_or_other": 5, "weak blueprint fit": 2, "dependency_or_build": 1, "partial blueprint fit": 1, "human_feedback_general": 1, "unlinked_human_feedback": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_alignment": 3, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_unverified": 6, "ambiguous_needs_more_evidence": 2}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 65, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 9, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 7, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 9, "thread_has_comment_chain": 2, "comment_chain_links_commit": 1, "comment_chain_touches_file": 18, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 31, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 2, "pr_file": 9, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 7, "comment_chain": 2, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#29", "issue_number": "29", "quality_tiers": {"unresolved": 1, "assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-e861447b3eb4d303", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"docs_or_claims": 5, "ui_or_frontend": 15, "source_or_other": 25}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#29\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#29\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#29\nRepo: sport-analytics-org/court-training\nIssue/PR number: 29\nGraph consistency label: weak_supervision_needs_review\nNodes: 31\nEdges: 65\nNode types: {'pr_file': 9, 'link_quality': 7, 'alignment': 3, 'blueprint_finding': 3, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 18, 'thread_touches_file': 9, 'issue_chain_touches_file': 9, 'chain_has_link_quality': 7, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'comment_chain_links_commit': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'source_or_other': 5, 'ui_or_frontend': 3, 'claimed_resolved_unverified': 3, 'blueprint_human_gap_alignment': 3, 'thread_has_human_issue_and_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_feedback_general': 1, 'docs_or_claims': 1, 'human_reported_issue_then_fix_attempt': 1, 'dependency_or_build': 1, 'unlinked_human_feedback': 1, 'ambiguous_needs_more_evidence': 1, 'partial blueprint fit': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-5d8464d9ea1c1b9b", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/blueprint_gap_alignment/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "sport-analytics-org/court-training", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: sport-analytics-org/court-training"}, "properties": {"repobilityId": 356269, "scanner": "foundry_dataset", "fingerprint": "a06d654fea7d7f1c7b0aa8a46e1795dc7a35472c6fc152fd03c2971d903f4be0", "category": "tech_debt", "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 aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"api_or_backend": 1, "docs_or_claims": 1, "ui_or_frontend": 2, "source_or_other": 4, "weak blueprint fit": 2, "api_integration_gap": 1, "generated_provenance": 1, "partial blueprint fit": 1, "self_attested_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 3, "thread_has_human_issue_and_fix_context": 2, "self_attested_or_generated_fix_unverified": 1}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"self_attested_unverified": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 48, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 8, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 8, "thread_has_comment_chain": 1, "comment_chain_links_commit": 1, "comment_chain_touches_file": 8, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 27, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 1, "pr_file": 8, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#28", "issue_number": "28", "quality_tiers": {"assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-80890416fa3aff6c", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"api_or_backend": 4, "docs_or_claims": 4, "ui_or_frontend": 8, "source_or_other": 16}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#28\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#28\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#28\nRepo: sport-analytics-org/court-training\nIssue/PR number: 28\nGraph consistency label: weak_supervision_needs_review\nNodes: 27\nEdges: 48\nNode types: {'pr_file': 8, 'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 8, 'comment_chain_touches_file': 8, 'issue_chain_touches_file': 8, 'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_links_commit': 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': 4, 'self_attested_unverified': 3, 'blueprint_human_gap_alignment': 3, 'ui_or_frontend': 2, 'thread_has_human_issue_and_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'docs_or_claims': 1, 'api_or_backend': 1, 'self_attested_or_generated_fix_unverified': 1, 'generated_provenance': 1, 'partial blueprint fit': 1}\nOutcomes: {'self_attested_unverified': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-c37afb6204628c46", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/blueprint_gap_alignment/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "sport-analytics-org/court-training", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: sport-analytics-org/court-training"}, "properties": {"repobilityId": 356268, "scanner": "foundry_dataset", "fingerprint": "54ec416ae782febc5f7b5f859c82956dff4b84c4a45ad685f6f418a954497e24", "category": "tech_debt", "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 aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"test_ci_gap": 1, "docs_or_claims": 1, "ui_or_frontend": 9, "source_or_other": 7, "weak blueprint fit": 2, "dependency_or_build": 1, "partial blueprint fit": 1, "human_feedback_general": 1, "unlinked_human_feedback": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_alignment": 3, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_unverified": 6, "ambiguous_needs_more_evidence": 2}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 82, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 17, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 7, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 1, "comment_chain_touches_file": 24, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 39, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 2, "pr_file": 17, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 7, "comment_chain": 2, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#24", "issue_number": "24", "quality_tiers": {"unresolved": 1, "assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-34a9bb2daf9f42bf", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"docs_or_claims": 5, "ui_or_frontend": 45, "source_or_other": 35}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#24\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#24\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#24\nRepo: sport-analytics-org/court-training\nIssue/PR number: 24\nGraph consistency label: weak_supervision_needs_review\nNodes: 39\nEdges: 82\nNode types: {'pr_file': 17, 'link_quality': 7, 'alignment': 3, 'blueprint_finding': 3, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 24, 'thread_touches_file': 17, 'issue_chain_touches_file': 12, 'chain_has_link_quality': 7, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'comment_chain_links_commit': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 9, 'source_or_other': 7, 'claimed_resolved_unverified': 3, 'blueprint_human_gap_alignment': 3, 'thread_has_human_issue_and_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_feedback_general': 1, 'docs_or_claims': 1, 'human_reported_issue_then_fix_attempt': 1, 'dependency_or_build': 1, 'unlinked_human_feedback': 1, 'ambiguous_needs_more_evidence': 1, 'partial blueprint fit': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-a9086a1b7c1636a0", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/blueprint_gap_alignment/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "sport-analytics-org/court-training", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: sport-analytics-org/court-training"}, "properties": {"repobilityId": 356267, "scanner": "foundry_dataset", "fingerprint": "ab39478877df9aee5e1e5f52f014db866d43f71ea9ecbedff2f94edbd8bb1a16", "category": "tech_debt", "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 aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"weak blueprint fit": 2, "partial blueprint fit": 1, "data_schema_persistence": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 23, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 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": 18, "node_types": {"repo": 1, "thread": 1, "comment": 1, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#21", "issue_number": "21", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-4841191bdf20bbfe", "graph_gold_label": "assumption_check", "changed_file_labels": {}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: assumption_check\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#21\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#21\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#21\nRepo: sport-analytics-org/court-training\nIssue/PR number: 21\nGraph consistency label: assumption_check\nNodes: 18\nEdges: 23\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 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, 'blueprint_human_gap_alignment': 3, 'thread_has_human_issue_without_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'human_reported_issue_no_linked_fix': 1, 'partial blueprint fit': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-0de05c1d22b93f01", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/blueprint_gap_alignment/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "sport-analytics-org/court-training", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: sport-analytics-org/court-training"}, "properties": {"repobilityId": 356266, "scanner": "foundry_dataset", "fingerprint": "b1ec0e8fb1b9b9669fc9b210d692955b2ee8340dff3dbdf8f00b51f9f62a1ed3", "category": "tech_debt", "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 aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"bug_fix": 1, "feature": 1, "weak blueprint fit": 2, "api_integration_gap": 1, "partial blueprint fit": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 3, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 20, "node_types": {"repo": 1, "commit": 2, "thread": 1, "comment": 1, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#18", "issue_number": "18", "quality_tiers": {"high_confidence": 3, "assumption_check": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-da752b5b157d0189", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: supported_by_high_confidence_link\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#18\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#18\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#18\nRepo: sport-analytics-org/court-training\nIssue/PR number: 18\nGraph consistency label: supported_by_high_confidence_link\nNodes: 20\nEdges: 25\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'commit': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'comment_chain_links_commit': 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, 'blueprint_human_gap_alignment': 3, 'thread_has_human_issue_and_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'feature': 1, 'bug_fix': 1, 'partial blueprint fit': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-8f472fe97cf376f5", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/blueprint_gap_alignment/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "sport-analytics-org/court-training", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: sport-analytics-org/court-training"}, "properties": {"repobilityId": 356265, "scanner": "foundry_dataset", "fingerprint": "e2569208366395976b807bb9b9edc75c7d4d0aca72092cc9989459262a07e757", "category": "tech_debt", "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 aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"bug_fix": 1, "ui_workflow_gap": 1, "weak blueprint fit": 2, "partial blueprint fit": 1, "human_feedback_general": 1, "unlinked_human_feedback": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_alignment": 3, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_unverified": 6, "ambiguous_needs_more_evidence": 2}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 29, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 7, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 22, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 2, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 7, "comment_chain": 2, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#17", "issue_number": "17", "quality_tiers": {"unresolved": 1, "assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-41899177080ee797", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#17\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#17\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#17\nRepo: sport-analytics-org/court-training\nIssue/PR number: 17\nGraph consistency label: weak_supervision_needs_review\nNodes: 22\nEdges: 29\nNode types: {'link_quality': 7, 'alignment': 3, 'blueprint_finding': 3, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 7, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'comment_chain_links_commit': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'claimed_resolved_unverified': 3, 'blueprint_human_gap_alignment': 3, 'thread_has_human_issue_and_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'ui_workflow_gap': 1, 'human_feedback_general': 1, 'human_reported_issue_then_fix_attempt': 1, 'bug_fix': 1, 'unlinked_human_feedback': 1, 'ambiguous_needs_more_evidence': 1, 'partial blueprint fit': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-2f3b8df1876b3ecc", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/blueprint_gap_alignment/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "sport-analytics-org/court-training", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: sport-analytics-org/court-training"}, "properties": {"repobilityId": 356264, "scanner": "foundry_dataset", "fingerprint": "a0f27878c3df8212943582b02249600b0b90a53c8679d77e9e209ae597e512a9", "category": "tech_debt", "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 aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"bug_fix": 1, "commit_general": 1, "weak blueprint fit": 2, "api_integration_gap": 1, "partial blueprint fit": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 3, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 20, "node_types": {"repo": 1, "commit": 2, "thread": 1, "comment": 1, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#16", "issue_number": "16", "quality_tiers": {"assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-d9cd47f6623df20d", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#16\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#16\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#16\nRepo: sport-analytics-org/court-training\nIssue/PR number: 16\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 25\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'commit': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'comment_chain_links_commit': 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, 'blueprint_human_gap_alignment': 3, 'thread_has_human_issue_and_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'commit_general': 1, 'bug_fix': 1, 'partial blueprint fit': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-f3d989f878d39236", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/blueprint_gap_alignment/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "sport-analytics-org/court-training", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312580, "scanner": "foundry_dataset", "fingerprint": "712a18c940633b6d2e89a00df80e035c3a14612ba32e8f4191d3edfba9e7a5f6", "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": "sport-analytics-org/court-training#9", "human_labels": ["human_feedback_general"], "issue_number": "9", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.599, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-d25a2ca77555a321", "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": 1, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#9\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_weak_supervision\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#9\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 1\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-5be02194101ce4ba\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/9\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/9\\nTitle: Add basketball training CLI\\nBody:\\nAdds the basketball training script on top of the NumPy dataset samples and merged court augmentation pipeline.\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-952393d931205167\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-427068bb872e6187", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312579, "scanner": "foundry_dataset", "fingerprint": "ef1b860577e29c63621b1567568f5703adda7e3a8e9d22b6b68c25a41cc42999", "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": "sport-analytics-org/court-training#8", "human_labels": ["human_feedback_general"], "issue_number": "8", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.823, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-f1d9a0c3eaa734ba", "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": 1, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#8\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_high_confidence\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#8\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 1\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-19719e51b9c05dc3\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/8\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/8\\nTitle: Add court augmentation pipeline\\nBody:\\nAdds the generic Albumentations-based court augmentation pipeline used by basketball training.\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-8190ddce5a81e6af\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-a3a9ad226fddedd8", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312578, "scanner": "foundry_dataset", "fingerprint": "0ee46c29c477614f9820570815243e7dd4390ed064e22f296107061ccf3fd119", "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": "sport-analytics-org/court-training#7", "human_labels": ["human_feedback_general"], "issue_number": "7", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.594, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-6afd87dff37dba58", "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": 1, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#7\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_weak_supervision\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#7\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 1\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-aefea780932fb2d3\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/7\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/7\\nTitle: Add basketball training CLI\\nBody:\\nAdds the basketball training CLI and augmentation pipeline on top of the current dataset and model APIs.\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-30105a18d1b33045\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-97d1e63f791b8f51", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312577, "scanner": "foundry_dataset", "fingerprint": "3a5e005ef058aade8bcea01a0107f7e316e89563d6afb04058cf3f4cd8078529", "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": "sport-analytics-org/court-training#6", "human_labels": ["human_feedback_general"], "issue_number": "6", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.825, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-4d912710891bc527", "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": 1, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#6\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_high_confidence\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#6\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 1\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-80a2fb03ea28a89f\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/6\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/6\\nTitle: Add homography fitting script\\nBody:\\nAdds a standalone basketball homography fitting script for exported court-training datasets.\\\\n\\\\n- reads raster bitfield masks directly from exported basket datasets\\\\n- fits a centered-init homography with LBFGS mask optimization\\\\n- prints initial/final IoU and the fitted 3x3 homography as JSON\\\\n\\\\nVerification:\\\\n- uv run ruff check .\\\\n- uv run python scripts/fit_homography.py /Users/andrea/basket-train borgo 003/u19_a_1a_college_crocetta_02438.jpg\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-71ec9e566af2a3c0\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-7213ab612a96847f", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312576, "scanner": "foundry_dataset", "fingerprint": "66ace90fc370ebcdd426222c3ec460c32bf9d1ef276b6bb5cbc15d6cde579ed1", "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": "sport-analytics-org/court-training#5", "human_labels": ["api_integration_gap"], "issue_number": "5", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.592, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-6f72503bbfea43b7", "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": 1, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#5\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: sport-analytics-org/court-training#5\nRepo: sport-analytics-org/court-training\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 1\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-dbf04d023766a173\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/5\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/5\\nTitle: Add portable inference API\\nBody:\\nAdds a small reusable inference wrapper for loading checkpoints and predicting probabilities, binary masks, or bitfield masks. Reuses the shared DINO model and TTA path instead of duplicating inference code.\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-4090cbe467e6a97a\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-b9b45062aaead4e5", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312575, "scanner": "foundry_dataset", "fingerprint": "01c3de54ac00f6ed9b7b0f243f422a303c4db52612a5bd40805e8fd012734103", "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": "sport-analytics-org/court-training#4", "human_labels": ["human_feedback_general"], "issue_number": "4", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-13b40c07bb1ab177", "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#4\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: sport-analytics-org/court-training#4\nRepo: sport-analytics-org/court-training\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-9aae2bf65fcd4b11\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/4\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/4\\nTitle: Add basketball training CLI\\nBody:\\nAdds the basketball training command, BCE+Dice optimization, validation mIoU tracking, and the augmentation recipe that improved validation: affine/color/blur plus optional random crop and image cutout. The command requires explicit data and output paths.\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-5181f2022560cf29\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-aa2b39ee7e49c858", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312574, "scanner": "foundry_dataset", "fingerprint": "69aaa9836584300c0f83e341de14e46418e09db299526ba8214582821a8a755d", "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": "sport-analytics-org/court-training#39", "human_labels": ["docs_or_claims", "human_feedback_general"], "issue_number": "39", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.737, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-0efd974c69650143", "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": {"docs_or_claims": 1}, "linked_commit_count": 1, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_weak_supervision"], "linked_ci_commit_count": 1, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#39\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_weak_supervision\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#39\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 1\nLinked CI labels: {'ci_pending_or_incomplete': 1}\nChanged file count: 1\nLabels: {'human_feedback_general': 1}\nPolarities: {'neutral': 1}\nChanged file labels: {'docs_or_claims': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-8011a9b9f413a092\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/39\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/39\\nTitle: [codex] Update README dataset names\\nBody:\\n## Summary\\n\\nUpdates the README dataset examples to use the current `nba_*` and `fiba_*` dataset names.\\n\\n## Validation\\n\\n- README-only change\\n\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-ef4b4de0b600970e\",\n    \"filename\": \"README.md\",\n    \"label\": \"docs_or_claims\",\n    \"status\": \"modified\",\n    \"additions\": 6,\n    \"deletions\": 6,\n    \"changes\": 12,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/b1a9dc02fd3938f1b9bcb328d2eccac6ddbf5b35/README.md\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-fbc49e8f1113ed5d\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-fa8e324e0bad8cf0", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312573, "scanner": "foundry_dataset", "fingerprint": "f910510d556788cb12b3019915068e50e98a66c76144fbad0834663dd051ba25", "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": "sport-analytics-org/court-training#38", "human_labels": ["api_integration_gap", "api_or_backend", "docs_or_claims", "source_or_other", "ui_or_frontend"], "issue_number": "38", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.82, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-84a6e4fe117ed8cf", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 10, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"api_or_backend": 1, "docs_or_claims": 1, "ui_or_frontend": 3, "source_or_other": 5}, "linked_commit_count": 1, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#38\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: sport-analytics-org/court-training#38\nRepo: sport-analytics-org/court-training\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 10\nLabels: {'api_integration_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'docs_or_claims': 1, 'source_or_other': 5, 'api_or_backend': 1, 'ui_or_frontend': 3}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-a30655885d747fe9\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/38\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/38\\nTitle: Support final training checkpoints and planar homography masks\\nBody:\\n## Summary\\n- make segmentation and detection checkpoints self-describing via sidecar metadata/config files\\n- allow segmentation and detection training without validation splits, while still saving final checkpoints\\n- switch RF-DETR detection defaults to 640x640 for training/evaluation\\n- fit homographies only against court planar areas\\n\\n## Dependency\\n- Depends on sport-analytics-org/sport-analytics#57 for court.planar_areas().\\n\\n## Checks\\n- PYTHONPATH=/Users/andrea/delf-basket/src uv run ruff check README.md scripts/dataset/fit_homography.py scripts/detection/evaluate_rfdetr.py scripts/detection/train_rfdetr.py scripts/segmentation/predict_and_fit_homography.py scripts/segmentation/train_basket.py src/court_training/homography.py src/court_training/segmentation/inference.py src/court_training/api.py src/court_training/detection/model.py src/court_training/segmentation/model.py\\n- PYTHONPATH=/Users/andrea\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-d25dfa499d4f1a99\",\n    \"filename\": \"README.md\",\n    \"label\": \"docs_or_claims\",\n    \"status\": \"modified\",\n    \"additions\": 4,\n    \"deletions\": 3,\n    \"changes\": 7,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/009cac87a399a11cfc5f9924f02d6bdf4e9bb44f/README.md\"\n  },\n  {\n    \"id\": \"github-pr-file-file-278096a766417efa\",\n    \"filename\": \"scripts/dataset/fit_homography.py\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 7,\n    \"deletions\": 8,\n    \"changes\": 15,\n    \"blob_url\": \"https://github.com/sport\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-e0631aabb2bc7f26", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312572, "scanner": "foundry_dataset", "fingerprint": "287959674785d612d6f37d83330a6035e1ecb0fe3f8d9cff64243516b7c72f8b", "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": "sport-analytics-org/court-training#36", "human_labels": ["api_or_backend", "docs_or_claims", "security_auth_secret"], "issue_number": "36", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-a82058c2d9ff7657", "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": {"api_or_backend": 1, "docs_or_claims": 1}, "linked_commit_count": 2, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#36\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: sport-analytics-org/court-training#36\nRepo: sport-analytics-org/court-training\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: {'security_auth_secret': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'docs_or_claims': 1, 'api_or_backend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-3728360a84e68fb9\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/36\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/36\\nTitle: Match API responses to labeltool schemas\\nBody:\\n## Summary\\n- Replace the ad-hoc JSON responses with pydantic models mirroring labeltool's annotation schemas\\n- Segmentation returns normalized mask polygons (cv2 contours of the thresholded masks) and `{position, visible}` keypoints, both directly usable by labeltool's `MaskEdit`/`Keypoint` models\\n- Detections return pixel `bbox_xyxy` boxes with `category_id`, `score`, `source: rfdetr`, plus a `categories` list, matching labeltool's `DetectionAnnotation`\\n- The response root carries the uploaded image's `width`/`height`\\n- Add CORS for the labeltool Vite dev origin (mirrors labeltool's own backend)\\n\\n## Checks\\n- `uv run ruff check .`\\n- Payloads cross-validated against labeltool's actual pydantic schemas (`PolygonEdit`, `DetectionBox`, `Keypoint`, `HomographyRecord`)\\n- `predict_segmentation` exercised end-to-end with a randomly initialized CourtSegmenter on MPS\\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-6c1167bef7831f7d\",\n    \"filename\": \"README.md\",\n    \"label\": \"docs_or_claims\",\n    \"status\": \"modified\",\n    \"additions\": 4,\n    \"deletions\": 3,\n    \"changes\": 7,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/a2e0863e57100757accae25e235b6e40162a1e08/README.md\"\n  },\n  {\n    \"id\": \"github-pr-file-file-3f3e33614fe0b51d\",\n    \"filename\": \"src/court_training/api.py\",\n    \"label\": \"api_or_backend\",\n    \"status\": \"modified\",\n    \"additions\": 109,\n    \"deletions\": 49,\n    \"changes\": 158,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/a2e0863e57100\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-46048e5f318d4305", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312571, "scanner": "foundry_dataset", "fingerprint": "2713dba1a4187e6091df2a1b0761114b25b336fc5786a6f2db43459adb33b919", "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": "sport-analytics-org/court-training#35", "human_labels": ["runtime_failure", "source_or_other"], "issue_number": "35", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.844, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-ad3179494c70aa4b", "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": {"source_or_other": 1}, "linked_commit_count": 1, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#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, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#35\nRepo: sport-analytics-org/court-training\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 1\nLabels: {'runtime_failure': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-5ce9b8d4a5217c9e\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"runtime_failure\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/35\",\n    \"text\": \"GitHub feedback: runtime_failure\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/35\\nTitle: [codex] fix detection evaluation dataloader fds\\nBody:\\n## Summary\\n\\n- Clone evaluation targets before passing them to TorchMetrics.\\n- Prevent multi-worker DataLoader shared-memory file descriptors from being retained until metric compute.\\n\\n## Root Cause\\n\\nMeanAveragePrecision stores targets until compute(). When validation runs with multiple DataLoader workers, those target tensors can reference worker shared-memory storage. Retaining them across the full validation set caused file descriptors to accumulate and eventually fail in multiprocessing fd passing with `received 0 items of ancdata`.\\n\\n## Validation\\n\\n- `uv run ruff check scripts/detection/train_rfdetr.py`\\n- `uv run python -m py_compile scripts/detection/train_rfdetr.py`\\n- Reproduced the fd growth during metric accumulation on Chioggia.\\n- Verified a 3-epoch Chioggia run with `--num-workers 8` completed successfully through the previous crash point.\\n\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-478dd75a6a881509\",\n    \"filename\": \"scripts/detection/train_rfdetr.py\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 6,\n    \"deletions\": 1,\n    \"changes\": 7,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/20b159fb6c534dbb9fa40e3991b7114bb9a37c29/scripts%2Fdetection%2Ftrain_rfdetr.py\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-928fc5adb0e72b5c\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-734680eadca6a5e0", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312570, "scanner": "foundry_dataset", "fingerprint": "915a4c10d5f61b3347ee8bafa47f56ffba23f35c368dae3704838659193464ba", "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": "sport-analytics-org/court-training#3", "human_labels": ["human_feedback_general"], "issue_number": "3", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.825, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-dc67d582300daed5", "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#3\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_high_confidence\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#3\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 2\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-faa789f2c4265f24\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/3\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/3\\nTitle: Add DINO segmenter inference\\nBody:\\nAdds the DINOv3 segmentation model and multiscale horizontal-flip TTA inference. Training, data augmentation, and CLI wiring are intentionally left to later PRs.\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-fbe4c3da40590313\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-beb13612382c1a2a", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312569, "scanner": "foundry_dataset", "fingerprint": "44bc8cf6925e43523354e4db9480526e80f6fe63f39416123ca61a095f8eb785", "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": "sport-analytics-org/court-training#29", "human_labels": ["docs_or_claims", "human_feedback_general", "source_or_other", "test_ci_gap", "ui_or_frontend"], "issue_number": "29", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.645, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-c3762becfe74edb1", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 9, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"docs_or_claims": 1, "ui_or_frontend": 3, "source_or_other": 5}, "linked_commit_count": 1, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#29\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: sport-analytics-org/court-training#29\nRepo: sport-analytics-org/court-training\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 1\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 9\nLabels: {'test_ci_gap': 1, 'human_feedback_general': 1}\nPolarities: {'bad': 1, 'neutral': 1}\nChanged file labels: {'docs_or_claims': 1, 'source_or_other': 5, 'ui_or_frontend': 3}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-c70209d448c7dd11\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/29\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/29\\nTitle: Add RF-DETR detection training\\nBody:\\n## Summary\\n- add detection dataset utilities for exported NPZ detections and RF-DETR COCO materialization\\n- add RF-DETR Large training and evaluation scripts for basketball detections\\n- keep the detection baseline intentionally narrow: RF-DETR only, square `--resolution`, fixed proven court augmentation, and no EMA\\n- train/evaluate the minimal class set that transfers to validation by default: `ball,player,referee`\\n- preserve the exported normalized top-left `boxes_xywh` convention when writing COCO pixel boxes\\n- document the detection export, training, and evaluation workflow\\n- simplify the detection data/evaluation flow by sharing COCO annotation generation and batched per-class NMS\\n\\n## Notes\\n- Default training resolution is square `704`; `--resolution 640` is available for the faster square model.\\n- Training writes `checkpoint_best_total.pth` as the best regular-model checkpoint because EMA is disabled.\\n- This branch is rebased on the ne\"\n  },\n  {\n    \"id\": \"github-feedback-comment-cc83c0e3026b8e6d\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/29#issuecomment-4685177400\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_comment\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/29#issuecomment-4685177400\\nTitle: \\nBody:\\nSuperseded by the split stacked PRs: #30 dataset utilities, #31 RF-DETR inference,\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-ef97f0c29d1bcdd1", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312568, "scanner": "foundry_dataset", "fingerprint": "8f3a60519095dab39d907467b0459f05c776974ecd5a2bc3b5b6ac0d22d1eb9d", "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": "sport-analytics-org/court-training#27", "human_labels": ["human_feedback_general", "ui_or_frontend"], "issue_number": "27", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-0bdc14525f2ca3e1", "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": 3}, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#27\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: sport-analytics-org/court-training#27\nRepo: sport-analytics-org/court-training\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: 3\nLabels: {'human_feedback_general': 1}\nPolarities: {'neutral': 1}\nChanged file labels: {'ui_or_frontend': 3}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-d20ae85d18909f4e\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/27\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/27\\nTitle: Add batched homography support\\nBody:\\n## Summary\\n- support batched inputs in warp()\\n- support batched fit_homography(), area_weights(), multiply_hom(), and dice_loss()\\n- preserve unbatched behavior for existing callers\\n\\n## Verification\\n- uv run ruff check src/court_training/homography.py src/court_training/warp.py src/court_training/loss.py\\n- equivalence check: batched calls match stacked per-sample calls for warp, multiply_hom, area_weights, dice_loss, and fit_homography\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-63c5d5afbd8157e4\",\n    \"filename\": \"src/court_training/homography.py\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 22,\n    \"deletions\": 18,\n    \"changes\": 40,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/aadc2f45f6c0605bf4a09c50aa2e94c9113bc0cd/src%2Fcourt_training%2Fhomography.py\"\n  },\n  {\n    \"id\": \"github-pr-file-file-3b68a5b09b7de76d\",\n    \"filename\": \"src/court_training/loss.py\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 6,\n    \"deletions\": 6,\n    \"changes\": 12,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/aadc2f45f6c0605bf4a09c50aa2e94c9113bc0cd/src%2Fcourt_training%2Floss.py\"\n  },\n  {\n    \"id\": \"github-pr-file-file-939f8a9f21af2586\",\n    \"filename\": \"src/court_training/warp.py\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 15,\n    \"deletions\": 10,\n    \"changes\": 25,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/aadc2f45f6c0605bf4a09c50aa2e94c9113bc0cd/src%2Fcourt_training%2Fwarp.py\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-341de041a7dac685\"]\nSource g\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-a693b8539b1ebdb6", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312567, "scanner": "foundry_dataset", "fingerprint": "214e4ed0834942c554b814ee0ca8f29d7635b0ebda6f37622a0b9aca81b9fa04", "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": "sport-analytics-org/court-training#26", "human_labels": ["human_feedback_general", "ui_or_frontend"], "issue_number": "26", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-a739eb1210e84f28", "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": 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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#26\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: sport-analytics-org/court-training#26\nRepo: sport-analytics-org/court-training\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: 2\nLabels: {'human_feedback_general': 1}\nPolarities: {'neutral': 1}\nChanged file labels: {'ui_or_frontend': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-284491326ab7d524\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/26\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/26\\nTitle: Default prediction to flip TTA only\\nBody:\\n## Summary\\n- make CourtSegmenter.predict() default to a single 1.0 scale\\n- keep horizontal flip TTA enabled by default\\n- preserve explicit multi-scale TTA for callers that pass scales\\n\\n## Verification\\n- uv run ruff check src/court_training/inference.py src/court_training/model.py\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-e904949e7059e8d2\",\n    \"filename\": \"src/court_training/inference.py\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 1,\n    \"deletions\": 1,\n    \"changes\": 2,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/974b113e5f2c959608816ef4ab0a2c2b0a9043dc/src%2Fcourt_training%2Finference.py\"\n  },\n  {\n    \"id\": \"github-pr-file-file-c8cfafcf6a4c9bf7\",\n    \"filename\": \"src/court_training/model.py\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 2,\n    \"deletions\": 2,\n    \"changes\": 4,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/974b113e5f2c959608816ef4ab0a2c2b0a9043dc/src%2Fcourt_training%2Fmodel.py\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-aa8e6b8f8b5a84ac\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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 fam\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-eafdacdaf2f15839", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312566, "scanner": "foundry_dataset", "fingerprint": "eac366839d6a7c88060adb024c2604d3d54935788c3d11c6cad4cafed624fd71", "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": "sport-analytics-org/court-training#25", "human_labels": ["human_feedback_general", "source_or_other", "ui_or_frontend"], "issue_number": "25", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.725, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-eae466799103ad2e", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 5, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"ui_or_frontend": 3, "source_or_other": 2}, "linked_commit_count": 1, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#25\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_weak_supervision\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#25\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 5\nLabels: {'human_feedback_general': 1}\nPolarities: {'neutral': 1}\nChanged file labels: {'source_or_other': 2, 'ui_or_frontend': 3}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-2ae9f55db7244d08\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/25\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/25\\nTitle: Fit homography during prediction\\nBody:\\n## Summary\\n- add a fit_homography boolean to prediction\\n- fit canonical court masks to predicted mask probabilities\\n- return the fitted warped masks through the existing masks field\\n\\n## Verification\\n- uv run ruff check src/court_training/inference.py src/court_training/model.py\\n- uv run python smoke test for default prediction and fit_homography=True\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-d92a2e95671528a5\",\n    \"filename\": \"scripts/dataset/fit_homography.py\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 1,\n    \"deletions\": 0,\n    \"changes\": 1,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/7d6634a16ef3e3ccf7816f52e187f8e7c2af2f0c/scripts%2Fdataset%2Ffit_homography.py\"\n  },\n  {\n    \"id\": \"github-pr-file-file-4124c3b21ef09938\",\n    \"filename\": \"scripts/predict_and_fit_homography.py\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 2,\n    \"deletions\": 2,\n    \"changes\": 4,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/7d6634a16ef3e3ccf7816f52e187f8e7c2af2f0c/scripts%2Fpredict_and_fit_homography.py\"\n  },\n  {\n    \"id\": \"github-pr-file-file-db594d094cb0e294\",\n    \"filename\": \"src/court_training/homography.py\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 2,\n    \"deletions\": 3,\n    \"changes\": 5,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/7d6634a16ef3e3ccf7816f52e187f8e7c2af2f0c/src%2Fcourt_training%2Fhomography.py\"\n  },\n  {\n    \"id\": \"github-pr-file-file-2995bbad2303008b\",\n    \"filename\": \"src/court_training/inference.py\",\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-3221644d8cc22b7e", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312565, "scanner": "foundry_dataset", "fingerprint": "8d022a89bdfec6d65405c1f6824136d3d15365180cd98acf998fe2f0447c7a92", "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": "sport-analytics-org/court-training#24", "human_labels": ["docs_or_claims", "human_feedback_general", "source_or_other", "test_ci_gap", "ui_or_frontend"], "issue_number": "24", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.645, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-74e39a8d75ce37c2", "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": {"docs_or_claims": 1, "ui_or_frontend": 9, "source_or_other": 7}, "linked_commit_count": 1, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#24\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: sport-analytics-org/court-training#24\nRepo: sport-analytics-org/court-training\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 1\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 17\nLabels: {'test_ci_gap': 1, 'human_feedback_general': 1}\nPolarities: {'bad': 1, 'neutral': 1}\nChanged file labels: {'docs_or_claims': 1, 'source_or_other': 7, 'ui_or_frontend': 9}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-9b63a30fe70843ee\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/24\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/24\\nTitle: Add RF-DETR detection training\\nBody:\\n## Summary\\n- add detection dataset utilities for exported NPZ detections and RF-DETR COCO materialization\\n- add RF-DETR Large training and evaluation scripts for basketball detections\\n- keep the detection baseline intentionally narrow: RF-DETR only, square `--resolution`, fixed proven court augmentation, and no EMA\\n- train/evaluate the minimal class set that transfers to validation by default: `ball,player,referee`\\n- preserve the exported normalized top-left `boxes_xywh` convention when writing COCO pixel boxes\\n- document the detection export, training, and evaluation workflow\\n\\n## Notes\\n- Default training resolution is square `704`; `--resolution 640` is available for the faster square model.\\n- Training writes `checkpoint_best_total.pth` as the best regular-model checkpoint because EMA is disabled.\\n- The PR excludes remote Chioggia setup and generated reports/checkpoints.\\n\\n## Verification\\n- `uv run ruff check README.md scripts/detection src\"\n  },\n  {\n    \"id\": \"github-feedback-comment-4ceb442594fdcacb\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/24#issuecomment-4680691161\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_comment\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/24#issuecomment-4680691161\\nTitle: \\nBody:\\nExperiment update after RF-DETR pipeline improvements:\\n\\n- Full e_bard validat\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-edb681849b999cdc", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312564, "scanner": "foundry_dataset", "fingerprint": "66d0d66d51c663fe8bf0097db8d54e5da95fdacd5eaa05c15dafab8066fba047", "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": "sport-analytics-org/court-training#23", "human_labels": ["docs_or_claims", "human_feedback_general", "source_or_other", "ui_or_frontend"], "issue_number": "23", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.725, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-ac15216748eba5b7", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 10, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"docs_or_claims": 1, "ui_or_frontend": 6, "source_or_other": 3}, "linked_commit_count": 1, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#23\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_weak_supervision\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#23\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 10\nLabels: {'human_feedback_general': 1}\nPolarities: {'neutral': 1}\nChanged file labels: {'docs_or_claims': 1, 'source_or_other': 3, 'ui_or_frontend': 6}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-4a5a8177ea8d6b15\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/23\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/23\\nTitle: Split segmentation modules into subpackage\\nBody:\\n## Summary\\n- move segmentation-specific model, loss, and inference modules into court_training.segmentation\\n- keep dataset, augmentation, and flip helpers at the top level as shared package utilities\\n- move segmentation scripts to scripts/segmentation/\\n- update imports, package metadata, and README sections so dataset export is shared and segmentation is task-specific\\n\\n## Verification\\n- uv run ruff check .\\n- import smoke test for shared modules, homography, and court_training.segmentation modules\\n- CLI help smoke tests for scripts/segmentation/train_basket.py and scripts/segmentation/predict_and_fit_homography.py\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-af2c56ed8dbeccba\",\n    \"filename\": \"README.md\",\n    \"label\": \"docs_or_claims\",\n    \"status\": \"modified\",\n    \"additions\": 19,\n    \"deletions\": 3,\n    \"changes\": 22,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/56bf1153a3010c8b513923e7cafc709417cde1c7/README.md\"\n  },\n  {\n    \"id\": \"github-pr-file-file-fe28209dbc2c432c\",\n    \"filename\": \"pyproject.toml\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 1,\n    \"deletions\": 1,\n    \"changes\": 2,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/56bf1153a3010c8b513923e7cafc709417cde1c7/pyproject.toml\"\n  },\n  {\n    \"id\": \"github-pr-file-file-9dde0ca54727a924\",\n    \"filename\": \"scripts/segmentation/predict_and_fit_homography.py\",\n    \"label\": \"source_or_other\",\n    \"status\": \"renamed\",\n    \"additions\": 1,\n    \"deletions\": 1,\n    \"changes\": 2,\n    \"blob_url\": \"https://github.com/sport-analy\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-d753bb72a826d5f9", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312563, "scanner": "foundry_dataset", "fingerprint": "758473554877c97de6098f04f393ae946a615c39374a3282651df9c1df882c74", "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": "sport-analytics-org/court-training#22", "human_labels": ["human_feedback_general"], "issue_number": "22", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.737, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-0661f0a9993c81b3", "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": 1, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#22\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_weak_supervision\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#22\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 1\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-d17bb505a13b6223\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/22\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/22\\nTitle: Save final training checkpoint\\nBody:\\n## Summary\\n- save final.pt after the last training epoch\\n- keep existing best.pt checkpoint behavior unchanged\\n\\n## Checks\\n- uv run ruff check .\\n- uv run ty check\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-2fd1772e625d5267\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-c21b95ade76846dc", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312562, "scanner": "foundry_dataset", "fingerprint": "a886a4c201f0bbb80aeb6748cafc080b84863da57a649c5a8fa15117776a691d", "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": "sport-analytics-org/court-training#20", "human_labels": ["human_feedback_general"], "issue_number": "20", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.777, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-226052ce02dd4409", "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": 1, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#20\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_weak_supervision\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#20\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 1\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-6e3347fafa87fb8e\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/20\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/20\\nTitle: Decay learning rate over final training epochs\\nBody:\\n## Summary\\n- default basketball training to 40 epochs\\n- keep full learning rate until the final 10% of epochs\\n- linearly decay the optimizer LR during the final training epochs\\n\\n## Validation\\n- trained on Chioggia with 288 train / 12 val\\n- best mIoU 0.9751 at epoch 34\\n\\n## Checks\\n- uv run ruff check .\\n- uv run ty check\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-7ae8e136f92d4037\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-6db278dd3f400554", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312561, "scanner": "foundry_dataset", "fingerprint": "29909f18e6c715af2bbd3158899d2955980a64265fa7b1ad16a29074dd609727", "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": "sport-analytics-org/court-training#2", "human_labels": ["human_feedback_general"], "issue_number": "2", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.807, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-1c30c6b2e88234fd", "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#2\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_high_confidence\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#2\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 2\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-92086600a545ec21\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/2\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/2\\nTitle: Add mask dataset utilities\\nBody:\\nAdds the basketball mask names, left/right channel pairs, image normalization, bitfield decoding, and dataset image/mask pairing. This PR intentionally avoids model and training code.\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-3ce8c83cf04a9c47\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-104ee22119452812", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312560, "scanner": "foundry_dataset", "fingerprint": "2437d6eb87ad696f950ac56666537f45e293ba8c862d80778e43f04fd912282f", "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": "sport-analytics-org/court-training#19", "human_labels": ["human_feedback_general"], "issue_number": "19", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.737, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-c0681011f36ff11b", "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": 1, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#19\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_weak_supervision\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#19\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 1\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-fb1166906033a5ca\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/19\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/19\\nTitle: Export reviewed tar-sharded datasets\\nBody:\\n## Summary\\n- update export_dataset.py for the reviewed tar-sharded dataset layout\\n- export only reviewed images with masks\\n- optionally copy matching keypoints\\n\\n## Checks\\n- uv run ruff check .\\n- uv run ty check\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-67dfb4c98b661a0f\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-bc003c152fdb4498", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312559, "scanner": "foundry_dataset", "fingerprint": "9d47b399e5dc2c0aba3be97be68abc59a01ee4ae3982249df76b4dde0d929996", "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": "sport-analytics-org/court-training#18", "human_labels": ["api_integration_gap"], "issue_number": "18", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.877, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-6c76cefeae894e00", "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", "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#18\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: sport-analytics-org/court-training#18\nRepo: sport-analytics-org/court-training\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: {'api_integration_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-7115c6cb427d9b1d\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/18\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/18\\nTitle: Add reusable homography fitting utilities\\nBody:\\n## Summary\\n- add reusable homography fitting utilities based on source and target masks\\n- add scripts for fitting dataset masks and generating keypoint shards from homographies\\n- update prediction-and-fit report generation to use fitted labels and the current homography API\\n\\n## Checks\\n- uv run ruff check .\\n- uv run ty check\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-26c34ac2313519a9\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-a080cc79f4cf604a", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312558, "scanner": "foundry_dataset", "fingerprint": "b207133a90f27f6ae5960c61fd7f04760a9ec4897af75b69746c7efa18a0f99d", "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": "sport-analytics-org/court-training#17", "human_labels": ["human_feedback_general", "ui_workflow_gap"], "issue_number": "17", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.592, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-be3cbd4bcad4496a", "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": 1, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#17\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: sport-analytics-org/court-training#17\nRepo: sport-analytics-org/court-training\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 1\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'ui_workflow_gap': 1, 'human_feedback_general': 1}\nPolarities: {'bad': 1, 'neutral': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-6c52b87a13b97752\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"ui_workflow_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/17\",\n    \"text\": \"GitHub feedback: ui_workflow_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/17\\nTitle: [codex] Add warmup EMA training\\nBody:\\n## Summary\\n\\nAdds warmup exponential moving average training to `scripts/train_basket.py` and saves the EMA weights as `best.pt`.\\n\\n## Why\\n\\nOn the current keypoint-compatible basketball export with the fixed 12-image e_bard validation split, warmup EMA improved the best validation mIoU slightly:\\n\\n- no EMA: `0.9739`\\n- warmup EMA: `0.9746`\\n\\nA fixed cold-start EMA with decay `0.999` was tested first and was not usable early in training because it lagged near initialization. This PR uses the warmup form that produced the improved result.\\n\\n## Validation\\n\\n- `uv run ruff check .`\\n- `uv run python -m py_compile scripts/train_basket.py`\\n- trained on Chioggia, 90 epochs, `vit_large_patch16_dinov3`, 360x480, batch size 2, seed 79\\n\"\n  },\n  {\n    \"id\": \"github-feedback-comment-d9aa362dde09b610\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/17#issuecomment-4657019479\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_comment\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/17#issuecomment-4657019479\\nTitle: \\nBody:\\nClosing this after comparing against the no-EMA baseline. The gain was too small to justify the added training complexity.\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-11722db24b1c8d3a\", \"evidence-chain-comment_to_commit-535d84c50f5e52ec\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\nGraph label:\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-e11e40a10bee382b", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312557, "scanner": "foundry_dataset", "fingerprint": "bad81036651109dc7a0b33808ebb22130dc90f79dfb4d2e0b791023aebdb4135", "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": "sport-analytics-org/court-training#16", "human_labels": ["api_integration_gap"], "issue_number": "16", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.723, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-28eaf1d3c58302fa", "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", "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#16\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: sport-analytics-org/court-training#16\nRepo: sport-analytics-org/court-training\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: {'api_integration_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-e36ecd42fd250fbe\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/16\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/16\\nTitle: Use progressive mask decoder\\nBody:\\n## Summary\\n- replace the previous two-conv mask decoder with the progressive upsampling decoder that performed best in the head sweep\\n- keep the backbone, keypoint heads, training CLI, and inference API unchanged\\n\\n## Validation\\n- `uv run ruff check .`\\n- smoke-tested `CourtSegmenter` with and without keypoint heads\\n- 40 epoch sweep on chioggia: progressive best mIoU 0.9692 vs baseline 0.9646 on the 12-image validation split\\n- direct TTA comparison: progressive flip-only mIoU 0.9700 vs baseline full-TTA mIoU 0.9646\\n\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-ae40d569f29346a6\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-d4e60a52e8281edb", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312556, "scanner": "foundry_dataset", "fingerprint": "9a961e1385d38c7080973a0338ac78b3f162cbefbbc7572998554ea811a42d04", "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": "sport-analytics-org/court-training#15", "human_labels": ["human_feedback_general"], "issue_number": "15", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.67, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-7d54614580e8ae47", "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#15\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_weak_supervision\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#15\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 2\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-631decbced3a4830\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/15\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/15\\nTitle: Train court segmenter with keypoint supervision\\nBody:\\n## Summary\\n- export keypoint JSON files alongside flat image/mask datasets\\n- load and augment keypoints together with masks and images\\n- add a keypoint coordinate heatmap head supervised only on visible keypoints\\n- add a separate spatial objectness head for keypoint visibility instead of a global pooled classifier\\n- let keypoint/objectness gradients reach the backbone, with a lower default keypoint loss weight so segmentation remains dominant\\n- report keypoint error and visibility accuracy during basketball training\\n\\n## What changed after investigating visibility\\nVisibility labels are exactly the in-frame status of each projected keypoint. The earlier global visibility head was the wrong shape for the problem: it separated visibility from the spatial evidence that localizes the keypoint. The corrected model uses two spatial heads:\\n\\n- coordinate heatmaps: softargmax point prediction, coordinate loss only on vi\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-ad9c01624d788cbc\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-924912bec9a5d3bc", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312555, "scanner": "foundry_dataset", "fingerprint": "2c4c3517d688d7687e554c2e4e344c8f674b8b281826f7d273b49be6bcd91056", "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": "sport-analytics-org/court-training#14", "human_labels": ["human_feedback_general"], "issue_number": "14", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.725, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-2181a6c74325622d", "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#14\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_weak_supervision\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#14\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 2\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-a5e1177fc38539dd\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/14\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/14\\nTitle: Fit homographies with visible mask objective\\nBody:\\n## Summary\\n- remove homography validity penalties from the fitting objective\\n- keep robust projective warp denominator handling\\n- report both macro IoU and area-weighted IoU from the fitting CLI\\n- weight mask loss by sqrt target area with a 1.5x boost for 3pt and painted areas\\n\\n## Validation\\n- uv run ruff format --check scripts/fit_homography.py src/court_training/warp.py\\n- uv run ruff check scripts/fit_homography.py src/court_training/warp.py\\n- uv run ty check scripts/fit_homography.py src/court_training/warp.py\\n- uv run python scripts/fit_homography.py /Users/andrea/basketdata/basketball-imgs/masks/borgo/004/u19_a_1a_gtbd_vado_00109.webp --court fiba\\n\\nLatest no-penalty report: mean area-weighted IoU 0.9858, min area-weighted IoU 0.9675 across 138 fitted masks.\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-0d74d47a6f6d103f\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-8ca870f3419bd9b3", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312554, "scanner": "foundry_dataset", "fingerprint": "9aea6c86bd2f0bbb0344be483930478732bc6c21657f64b8ba065f8dc15f505b", "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": "sport-analytics-org/court-training#13", "human_labels": ["human_feedback_general"], "issue_number": "13", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.795, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-07cb21d4957cb977", "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#13\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_weak_supervision\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#13\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 2\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-7164578d28bdbcb4\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/13\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/13\\nTitle: Export datasets from subdataset roots\\nBody:\\nFixes the dataset export path to read a root containing named subdatasets with `images/` and `masks/` folders, then flatten labelled pairs into train/val outputs.\\n\\nAlso fixes training on the exported data by using an explicit collate function that resizes native-resolution samples to the requested training size before batching. This keeps the exporter faithful to the upstream dataset layout and avoids dataset-specific shape workarounds.\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-a59258de33a52c4b\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-95aedb0238192831", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312553, "scanner": "foundry_dataset", "fingerprint": "0557e24f87713f12edc3b43edff92caee143a3afc705bcea50a60589c8ba9a22", "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": "sport-analytics-org/court-training#12", "human_labels": ["human_feedback_general"], "issue_number": "12", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.744, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-a6c5edf4314f08b3", "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#12\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_weak_supervision\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#12\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 2\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-c5506646c2c150b2\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/12\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/12\\nTitle: Use Tensor directly in type hints\\nBody:\\nImports Tensor from torch and uses it directly in torch and jaxtyping annotations.\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-6ca17428b06e9c99\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-e7313560877fba13", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312552, "scanner": "foundry_dataset", "fingerprint": "1e3b9cbb07512f53b4a98033593a951ca2be94d260da023f421290ea631714e1", "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": "sport-analytics-org/court-training#11", "human_labels": ["human_feedback_general"], "issue_number": "11", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.813, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-19d35502273fef8e", "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": 1, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#11\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_high_confidence\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#11\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 1\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-e997687b0733ec4e\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/11\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/11\\nTitle: Add basketball training CLI\\nBody:\\nAdds the basketball training script on top of the merged package training APIs.\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-97b698c7dee7c720\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-0491fffb4e35d921", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312551, "scanner": "foundry_dataset", "fingerprint": "c4439898e9fd7a2194eed6ed6542479a1aa81a169a5de82845785d6215b2ed44", "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": "sport-analytics-org/court-training#10", "human_labels": ["human_feedback_general"], "issue_number": "10", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.737, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-da340e6083cc355d", "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#10\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_weak_supervision\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#10\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 2\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-b8da89bd7133228e\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/10\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/10\\nTitle: Prepare package APIs for training\\nBody:\\nUpdates the package dataset and model APIs so training scripts can provide mask decoding, mask count, and side-pair mappings from outside the package.\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-a722f1e347b31fea\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-8d96c6fd32679d74", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sport-analytics-org/court-training"}, "properties": {"repobilityId": 312550, "scanner": "foundry_dataset", "fingerprint": "ac6b366e8db143fc20d36004ec694644ced62bda305bfb76e9492b398e8bc61c", "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": "sport-analytics-org/court-training#1", "human_labels": ["human_feedback_general"], "issue_number": "1", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.79, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-0eacaf56e3a08858", "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": 1, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#1\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_weak_supervision\nChain evidence:\nIssue/PR evidence chain: sport-analytics-org/court-training#1\nRepo: sport-analytics-org/court-training\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 1\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-d86c95c681424173\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/1\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/1\\nTitle: Add project scaffold\\nBody:\\nAdds the minimal Python package scaffold, dependency metadata, README, and ignore rules. No model or training logic is included in this PR.\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-de2c85f73f3c6c24\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-assumption_checks-5f649a2a6da0ddce", "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": "sport-analytics-org/court-training", "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: sport-analytics-org/court-training"}, "properties": {"repobilityId": 341065, "scanner": "foundry_dataset", "fingerprint": "cdeac4c3399b25449bd64ad02100cdca53eed5efb19d94d90971467a41cfaca9", "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, "docs_or_claims": 1, "ui_or_frontend": 3, "source_or_other": 5, "weak blueprint fit": 2, "dependency_or_build": 1, "partial blueprint fit": 1, "human_feedback_general": 1, "unlinked_human_feedback": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_alignment": 3, "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, "ambiguous_needs_more_evidence": 2}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 65, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 9, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 7, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 9, "thread_has_comment_chain": 2, "comment_chain_links_commit": 1, "comment_chain_touches_file": 18, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 31, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 2, "pr_file": 9, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 7, "comment_chain": 2, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#29", "issue_number": "29", "quality_tiers": {"unresolved": 1, "assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-983c25c105187fb0", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"docs_or_claims": 5, "ui_or_frontend": 15, "source_or_other": 25}}, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#29\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#29\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#29\nRepo: sport-analytics-org/court-training\nIssue/PR number: 29\nGraph consistency label: weak_supervision_needs_review\nNodes: 31\nEdges: 65\nNode types: {'pr_file': 9, 'link_quality': 7, 'alignment': 3, 'blueprint_finding': 3, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 18, 'thread_touches_file': 9, 'issue_chain_touches_file': 9, 'chain_has_link_quality': 7, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'comment_chain_links_commit': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'source_or_other': 5, 'ui_or_frontend': 3, 'claimed_resolved_unverified': 3, 'blueprint_human_gap_alignment': 3, 'thread_has_human_issue_and_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_feedback_general': 1, 'docs_or_claims': 1, 'human_reported_issue_then_fix_attempt': 1, 'dependency_or_build': 1, 'unlinked_human_feedback': 1, 'ambiguous_needs_more_evidence': 1, 'partial blueprint fit': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 3, 'unresolved': 1}\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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-3290834e1a3a3aad", "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": "sport-analytics-org/court-training", "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: sport-analytics-org/court-training"}, "properties": {"repobilityId": 341064, "scanner": "foundry_dataset", "fingerprint": "af0badf77076088969df546a121785c4a672b61acf3e9598db913c7bc522f50f", "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, "docs_or_claims": 1, "ui_or_frontend": 9, "source_or_other": 7, "weak blueprint fit": 2, "dependency_or_build": 1, "partial blueprint fit": 1, "human_feedback_general": 1, "unlinked_human_feedback": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_alignment": 3, "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, "ambiguous_needs_more_evidence": 2}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 82, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 17, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 7, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 1, "comment_chain_touches_file": 24, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 39, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 2, "pr_file": 17, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 7, "comment_chain": 2, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#24", "issue_number": "24", "quality_tiers": {"unresolved": 1, "assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-d509f7377be622ba", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"docs_or_claims": 5, "ui_or_frontend": 45, "source_or_other": 35}}, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#24\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#24\nRepo: sport-analytics-org/court-training\nIssue/PR number: 24\nGraph consistency label: weak_supervision_needs_review\nNodes: 39\nEdges: 82\nNode types: {'pr_file': 17, 'link_quality': 7, 'alignment': 3, 'blueprint_finding': 3, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 24, 'thread_touches_file': 17, 'issue_chain_touches_file': 12, 'chain_has_link_quality': 7, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'comment_chain_links_commit': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 9, 'source_or_other': 7, 'claimed_resolved_unverified': 3, 'blueprint_human_gap_alignment': 3, 'thread_has_human_issue_and_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_feedback_general': 1, 'docs_or_claims': 1, 'human_reported_issue_then_fix_attempt': 1, 'dependency_or_build': 1, 'unlinked_human_feedback': 1, 'ambiguous_needs_more_evidence': 1, 'partial blueprint fit': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 3, 'unresolved': 1}\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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-d553cf6124af9c34", "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": "sport-analytics-org/court-training", "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: sport-analytics-org/court-training"}, "properties": {"repobilityId": 330987, "scanner": "foundry_dataset", "fingerprint": "82c687f2ec91f79d3fbcc3050848d34d1793983b9afff854fb264a2d8217472d", "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": {"weak blueprint fit": 2, "partial blueprint fit": 1, "data_schema_persistence": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 23, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 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": 18, "node_types": {"repo": 1, "thread": 1, "comment": 1, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#21", "issue_number": "21", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-76898c1a65fff359", "graph_gold_label": "assumption_check", "changed_file_labels": {}}, "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: assumption_check\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#21\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#21\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#21\nRepo: sport-analytics-org/court-training\nIssue/PR number: 21\nGraph consistency label: assumption_check\nNodes: 18\nEdges: 23\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 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, 'blueprint_human_gap_alignment': 3, 'thread_has_human_issue_without_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'human_reported_issue_no_linked_fix': 1, 'partial blueprint fit': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-f0a5d72c1ef3ccb7", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/schema_ui_api_mismatch", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: sport-analytics-org/court-training"}, "properties": {"repobilityId": 322987, "scanner": "foundry_dataset", "fingerprint": "f2f7365fcb4731e24b9443d3914168abecbb07ea58581270fd92218435125135", "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": "sport-analytics-org/court-training#42", "human_labels": ["api_integration_gap", "api_or_backend", "source_or_other", "ui_or_frontend"], "issue_number": "42", "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": "sport-analytics-org/court-training", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-db0369c955bbb836", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 6, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"api_or_backend": 1, "ui_or_frontend": 3, "source_or_other": 2}, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#42\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: sport-analytics-org/court-training#42\nRepo: sport-analytics-org/court-training\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: 6\nLabels: {'api_integration_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 2, 'api_or_backend': 1, 'ui_or_frontend': 3}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-6627ebe564fbf1b2\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/42\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/42\\nTitle: [codex] Update segmentation scripts and API fitting\\nBody:\\n## Summary\\n\\nUpdates the segmentation scripts on top of the new `CourtSegmenter.predict` image API.\\n\\nAlso adds API homography-fitting controls and timing, returns polygons from fitted court masks, writes segmentation training sidecars as `args.json`, and makes the homography report script use current dataset naming and FIBA/NBA selection rules.\\n\\n## Base\\n\\nStacked on #40 (`codex/segmentation-homography-api`).\\n\\n## Validation\\n\\n- `uv run ruff check src/court_training/api.py src/court_training/homography.py scripts/segmentation/train_basket.py scripts/segmentation/predict_and_fit_homography.py`\\n- `uv run python -m compileall src/court_training/api.py src/court_training/homography.py scripts/segmentation`\\n\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-c22ba75d437f142a\",\n    \"filename\": \"scripts/segmentation/predict_and_fit_homography.py\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 6,\n    \"deletions\": 8,\n    \"changes\": 14,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/b81fa74e671e870ae619c9aaed0c9ef787f24359/scripts%2Fsegmentation%2Fpredict_and_fit_homography.py\"\n  },\n  {\n    \"id\": \"github-pr-file-file-285d9367e308e20c\",\n    \"filename\": \"scripts/segmentation/train_basket.py\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 2,\n    \"changes\": 5,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/b81fa74e671e870ae619c9aaed0c9ef787f24359/scripts%2Fsegmentation%2Ftrain_basket.py\"\n  },\n  {\n    \"id\": \"github-pr-f\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-bad_chains-1d6f961ff66991b7", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: sport-analytics-org/court-training"}, "properties": {"repobilityId": 322986, "scanner": "foundry_dataset", "fingerprint": "ccc40937551db31352ef2f9ad34d57e753a6f787baaf134df680c3ba1966a008", "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": "sport-analytics-org/court-training#41", "human_labels": ["api_integration_gap", "source_or_other", "ui_or_frontend"], "issue_number": "41", "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": "sport-analytics-org/court-training", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-31448b664d6bd93e", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 6, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"ui_or_frontend": 2, "source_or_other": 4}, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#41\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: sport-analytics-org/court-training#41\nRepo: sport-analytics-org/court-training\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: 6\nLabels: {'api_integration_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 4, 'ui_or_frontend': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-10c27764458feaa4\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/41\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/41\\nTitle: [codex] Add RF-DETR image inference API\\nBody:\\n## Summary\\n\\nAdds a PIL-image RF-DETR prediction wrapper that handles resizing, optional hflip TTA, merged predictions, and conversion to `supervision.Detections`.\\n\\nUpdates training/evaluation callers for image-size metadata, writes `args.json` sidecars, and keeps checkpoint loading compatible with older `metadata.json` files.\\n\\n## Validation\\n\\n- `uv run ruff check src/court_training/detection/inference.py src/court_training/detection/model.py scripts/detection/train_rfdetr.py scripts/detection/evaluate_rfdetr.py`\\n- `uv run python -m compileall src/court_training/detection scripts/detection`\\n\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-816a14543a5fc885\",\n    \"filename\": \"pyproject.toml\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 1,\n    \"deletions\": 0,\n    \"changes\": 1,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/3d9be60ed9af62797a61cabc475585dd985e92d4/pyproject.toml\"\n  },\n  {\n    \"id\": \"github-pr-file-file-20de3510b1c33e80\",\n    \"filename\": \"scripts/detection/evaluate_rfdetr.py\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 1,\n    \"deletions\": 1,\n    \"changes\": 2,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/3d9be60ed9af62797a61cabc475585dd985e92d4/scripts%2Fdetection%2Fevaluate_rfdetr.py\"\n  },\n  {\n    \"id\": \"github-pr-file-file-34a965775d8fff27\",\n    \"filename\": \"scripts/detection/train_rfdetr.py\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 4,\n    \"deletions\": 4,\n    \"changes\": 8,\n    \"blob_url\": \"https://git\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-bad_chains-637bdd4cfcf4ecd1", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: sport-analytics-org/court-training"}, "properties": {"repobilityId": 322985, "scanner": "foundry_dataset", "fingerprint": "08b106129b29a6ec4426a80276c7d5fc6716d944e3ff04eea1239f24e06907e8", "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": "sport-analytics-org/court-training#40", "human_labels": ["api_integration_gap", "api_or_backend", "source_or_other", "ui_or_frontend"], "issue_number": "40", "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": "sport-analytics-org/court-training", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-674b61009104b86f", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 7, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"api_or_backend": 1, "ui_or_frontend": 4, "source_or_other": 2}, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#40\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: sport-analytics-org/court-training#40\nRepo: sport-analytics-org/court-training\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: 7\nLabels: {'api_integration_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 2, 'api_or_backend': 1, 'ui_or_frontend': 4}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-8fedd5311f09b65e\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/40\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/40\\nTitle: [codex] Make segmenter predict accept images\\nBody:\\n## Summary\\n\\nMakes `CourtSegmenter.predict` the PIL-image prediction API and adds `predict_tensors` for dataloader/evaluation code that already has normalized tensors.\\n\\nThe segmenter now owns image resizing/normalization through its configured checkpoint image size, while existing tensor callers use the explicit tensor method. This removes the need for API/report callers to import the lower-level `image_to_tensor` helper.\\n\\n## Validation\\n\\n- `uv run ruff check src/court_training/api.py src/court_training/segmentation/inference.py src/court_training/segmentation/model.py scripts/segmentation/train_basket.py scripts/segmentation/predict_and_fit_homography.py`\\n- `uv run python -m compileall src/court_training/api.py src/court_training/segmentation scripts/segmentation`\\n\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-675db6286406182b\",\n    \"filename\": \"scripts/segmentation/predict_and_fit_homography.py\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 2,\n    \"deletions\": 6,\n    \"changes\": 8,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/3e12e626a249aba2f47013ee129b9efb32c82f2c/scripts%2Fsegmentation%2Fpredict_and_fit_homography.py\"\n  },\n  {\n    \"id\": \"github-pr-file-file-7ab52f23df14ba14\",\n    \"filename\": \"scripts/segmentation/train_basket.py\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 5,\n    \"deletions\": 3,\n    \"changes\": 8,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/3e12e626a249aba2f47013ee129b9efb32c82f2c/scripts%2Fsegmenta\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-bad_chains-564c38e5986b434a", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: sport-analytics-org/court-training"}, "properties": {"repobilityId": 322984, "scanner": "foundry_dataset", "fingerprint": "52315e231009a65c8e32125187959cc6136bc5ca194e6dfebce0bccaf923eff5", "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": "sport-analytics-org/court-training#37", "human_labels": ["api_integration_gap", "api_or_backend", "source_or_other"], "issue_number": "37", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "self_attested_unverified", "source_backed": true, "max_confidence": 0.82, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-b104f5c38e801dc4", "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": {"api_or_backend": 1, "source_or_other": 1}, "linked_commit_count": 1, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#37\nOutcome: self_attested_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: sport-analytics-org/court-training#37\nRepo: sport-analytics-org/court-training\nThread label: thread_has_human_issue_and_fix_context\nOutcome: self_attested_unverified\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'api_integration_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'api_or_backend': 1, 'source_or_other': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-1a5074e84becaaa6\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/37\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/37\\nTitle: Run detection on MPS with config-driven model loading\\nBody:\\n## Summary\\n- Upgrade torch 2.4.1 \u2192 2.12: torch 2.4's MPS backend silently miscomputes RF-DETR attention (max sigmoid 0.0096 vs 0.91 on CPU, zero detections); on 2.12 MPS matches CPU exactly. Removes the detector CPU pin.\\n- Build models from the checkpoint sidecar configs shipped in [sport-analytics/checkpoints](https://huggingface.co/sport-analytics/checkpoints): `config.json` for the segmenter (backbone, mask/keypoint names), `metadata.json` for the detector (classes, resolution). The API no longer depends on `NbaCourt.areas()`, which grew to 8 areas upstream while the deployed checkpoint predicts 6.\\n\\n## Blocked on\\n- sport-analytics#56 (relax `torch>=2.4,<2.5`). Until it merges, this PR pins sport-analytics to that branch; once merged I'll re-lock against main and mark ready.\\n\\n## Out of scope / follow-up\\n- `scripts/segmentation/predict_and_fit_homography.py` still derives MASK_NAMES from `NbaCourt.areas()` an\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-eb5407b5fe6ed025\",\n    \"filename\": \"src/court_training/api.py\",\n    \"label\": \"api_or_backend\",\n    \"status\": \"modified\",\n    \"additions\": 18,\n    \"deletions\": 18,\n    \"changes\": 36,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/a561bdd876fc2c647fc3efbcddbd8c1b857a1df3/src%2Fcourt_training%2Fapi.py\"\n  },\n  {\n    \"id\": \"github-pr-file-file-aded3010ee2d3af7\",\n    \"filename\": \"uv.lock\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 216,\n    \"deletions\": 72,\n    \"changes\": 288,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/a561bdd\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-bad_chains-824e00e95e841e5d", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: sport-analytics-org/court-training"}, "properties": {"repobilityId": 322983, "scanner": "foundry_dataset", "fingerprint": "342d501c6d554322189f5a38dc95426410133b7c3e5e966341aa46560a3e3a4b", "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": "sport-analytics-org/court-training#34", "human_labels": ["agent_instruction_gap", "source_or_other"], "issue_number": "34", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "self_attested_unverified", "source_backed": true, "max_confidence": 0.825, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-3247022e5efac627", "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": {"source_or_other": 3}, "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: bad_chains\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#34\nOutcome: self_attested_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: sport-analytics-org/court-training#34\nRepo: sport-analytics-org/court-training\nThread label: thread_has_human_issue_and_fix_context\nOutcome: self_attested_unverified\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 3\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 3}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-74370d76fe46382c\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/34\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/34\\nTitle: Use torchmetrics in segmentation evaluation\\nBody:\\n## Summary\\n- replace the hand-rolled intersection/union, keypoint-error, and visibility-accuracy accumulators in `train_basket.py`'s `evaluate` with `MultilabelJaccardIndex`, `MeanMetric`, and `BinaryAccuracy`\\n- declare the `torchmetrics` dependency explicitly (it previously arrived only transitively via `rfdetr[train]`; #32 makes the same one-line change, and the two merge cleanly in either order)\\n- one intentional nuance: `miou` now averages over all classes instead of skipping classes with zero union \u2014 identical whenever every mask class appears in the validation set, which is always the case for our exports\\n\\n## Verification\\n- A/B test on synthetic batches with a stub model: old and new `evaluate` return identical `EvalMetrics` (per-class IoU and mIoU exact, keypoint error within float accumulation order, accuracy exact)\\n- `uv run ruff check` + `ruff format --check`\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.co\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-33c8463207b81cda\",\n    \"filename\": \"pyproject.toml\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 1,\n    \"deletions\": 0,\n    \"changes\": 1,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/4cf41aec50f8a95e66b2641b0f938d79889c4389/pyproject.toml\"\n  },\n  {\n    \"id\": \"github-pr-file-file-9310658e6cc23c42\",\n    \"filename\": \"scripts/segmentation/train_basket.py\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 14,\n    \"deletions\": 24,\n    \"changes\": 38,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/4cf41aec50f8a95e66b2641b0f938d79889c4389/scripts%2Fsegme\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-bad_chains-0046a8d1191ba8af", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: sport-analytics-org/court-training"}, "properties": {"repobilityId": 322982, "scanner": "foundry_dataset", "fingerprint": "8610f5020aef0816bde402220577bd8b2b2864521cda6f7df7a027db14c06b21", "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": "sport-analytics-org/court-training#33", "human_labels": ["agent_instruction_gap", "source_or_other", "ui_or_frontend"], "issue_number": "33", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "self_attested_unverified", "source_backed": true, "max_confidence": 0.825, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-e0550044a31cfd6b", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 8, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"ui_or_frontend": 6, "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_high_confidence"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: bad_chains\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#33\nOutcome: self_attested_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: sport-analytics-org/court-training#33\nRepo: sport-analytics-org/court-training\nThread label: thread_has_human_issue_and_fix_context\nOutcome: self_attested_unverified\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 8\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 2, 'ui_or_frontend': 6}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-8606823aa89f0022\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/33\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/33\\nTitle: Add CourtDetector RF-DETR model wrapper\\nBody:\\n## Summary\\n- add `CourtDetector`, an owned `nn.Module` mirroring `CourtSegmenter`: built from class names and resolution, using rfdetr ONLY for the LWDETR model, the Hungarian-matching criterion, and the postprocessor \u2014 no PyTorch Lightning, no `model.train()` orchestration, no COCO folders\\n- pretrained RF-DETR Large weights load with automatic head trimming to our class count and position-embedding interpolation for non-default resolutions\\n- ONE box format everywhere: normalized top-left xywh, exactly as saved on disk. Samples (`boxes_xywh`), flips, augmentation, and `predict` outputs all use it. Other formats exist only as private adapters where third-party code demands them: albumentations yolo inside `CourtAugment`, criterion cxcywh inside `collate`, torchvision xyxy inside NMS/postprocess\\n- `forward(images)` takes no targets (vestigial in rfdetr's LW-DETR \u2014 Group DETR needs no GT in the forward pass); ground truth en\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-ec8c15ea07eb60a0\",\n    \"filename\": \"pyproject.toml\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 1,\n    \"deletions\": 0,\n    \"changes\": 1,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/738774988f4117798b7c6e3524790cd8cdbf83e5/pyproject.toml\"\n  },\n  {\n    \"id\": \"github-pr-file-file-4956b9dba4ec0b15\",\n    \"filename\": \"src/court_training/augment.py\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 9,\n    \"deletions\": 3,\n    \"changes\": 12,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/738774988f4117798b7c6e3524790cd8cdbf83e5/src%2Fcou\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-bad_chains-f21c98eb5caf5975", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: sport-analytics-org/court-training"}, "properties": {"repobilityId": 322981, "scanner": "foundry_dataset", "fingerprint": "90124d11697abbb2aab12a68d8615d226d3161664173894f928bf1623bbcb4b9", "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": "sport-analytics-org/court-training#32", "human_labels": ["agent_instruction_gap", "docs_or_claims", "source_or_other", "ui_or_frontend"], "issue_number": "32", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "self_attested_unverified", "source_backed": true, "max_confidence": 0.842, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-84c03a9059a75141", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 6, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"docs_or_claims": 1, "ui_or_frontend": 1, "source_or_other": 4}, "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: bad_chains\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#32\nOutcome: self_attested_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: sport-analytics-org/court-training#32\nRepo: sport-analytics-org/court-training\nThread label: thread_has_human_issue_and_fix_context\nOutcome: self_attested_unverified\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 6\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'docs_or_claims': 1, 'source_or_other': 4, 'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-3402d58697d96fa7\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/32\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/32\\nTitle: Add RF-DETR detection training scripts\\nBody:\\n## Summary\\n- rewrite RF-DETR detection training in the `train_basket.py` shape: typer argument constants, `train`/`train_epoch`/`evaluate` split, linear warmup + step LR drop, gradient clipping, torchmetrics mAP each epoch, `best.pt` + `final.pt` checkpoints\\n- training builds the shared `CourtDataset` with `load_bbox=True`, augments with the shared `CourtAugment`, and batches via `dataset.collate`; validation subsampled inline with `torch.utils.data.Subset`\\n- everything stays in the canonical normalized top-left xywh format: predictions and ground truth feed `MeanAveragePrecision(box_format=\\\"xywh\\\")` directly, no coordinate conversion in the scripts\\n- evaluation script runs hflip-TTA inference on original images via `detection.inference.predict` and writes/echoes mAP metrics as JSON\\n- shared `detection/metrics.py` keeps the torchmetrics summary (mAP50:95/50/75 + per-class) identical between training and standalone evaluatio\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-9554acd17324da68\",\n    \"filename\": \"README.md\",\n    \"label\": \"docs_or_claims\",\n    \"status\": \"modified\",\n    \"additions\": 26,\n    \"deletions\": 0,\n    \"changes\": 26,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/047cb34070849da744a9dde67b78ac87f35042e9/README.md\"\n  },\n  {\n    \"id\": \"github-pr-file-file-ea245bb0dfa8c457\",\n    \"filename\": \"pyproject.toml\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 1,\n    \"deletions\": 0,\n    \"changes\": 1,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/047cb34070849da744a9dde67b78ac87f35042e9/pyproject\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-bad_chains-74f5201a770b28f1", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: sport-analytics-org/court-training"}, "properties": {"repobilityId": 322980, "scanner": "foundry_dataset", "fingerprint": "a0cdd750acbddc78fb964e4b7fe6a432e12f9a9ba73f7bbe5539ebc2eebde02e", "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": "sport-analytics-org/court-training#31", "human_labels": ["agent_instruction_gap", "human_feedback_general", "source_or_other", "ui_or_frontend"], "issue_number": "31", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "self_attested_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-b73aca0c6e6f89cb", "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": 2, "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: bad_chains\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#31\nOutcome: self_attested_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: sport-analytics-org/court-training#31\nRepo: sport-analytics-org/court-training\nThread label: thread_has_human_issue_and_fix_context\nOutcome: self_attested_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 4\nLabels: {'agent_instruction_gap': 1, 'human_feedback_general': 1}\nPolarities: {'bad': 1, 'neutral': 1}\nChanged file labels: {'source_or_other': 2, 'ui_or_frontend': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-3cbd08168713f29a\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/31\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/31\\nTitle: Add CourtDetector RF-DETR model wrapper\\nBody:\\n## Summary\\n- add `CourtDetector`, an owned `nn.Module` mirroring `CourtSegmenter`: built from class names and resolution, using rfdetr ONLY for the LWDETR model, the Hungarian-matching criterion, and the postprocessor \u2014 no PyTorch Lightning, no `model.train()` orchestration, no COCO folders\\n- pretrained RF-DETR Large weights load with automatic head trimming to our class count and position-embedding interpolation for non-default resolutions\\n- `predict` filters the untrained no-object column; `param_groups` exposes the fine-tuning LR structure (encoder LR with ViT layer decay, decoder component decay)\\n- own TTA inference: batched hflip variants, per-class NMS via `torchvision.ops.batched_nms`, thresholding \u2014 on plain tensors instead of rfdetr's high-level predict\\n- add `rfdetr[train]` dependency\\n\\n## Verification\\n- `uv run ruff check src`\\n- smoke test on synthetic data: param groups cover all trainable params, train step (f\"\n  },\n  {\n    \"id\": \"github-feedback-comment-56b7ab5e90525d29\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/31#issuecomment-4685826774\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_comment\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/31#issuecomment-4685826774\\nTitle: \\nBody:\\nSuperseded by #33 \u2014 GitHub auto-closed this PR when #30's branch was deleted on merge and closed PRs can't be retargeted. Same bran\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-bad_chains-89b3e1deaadf4d49", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: sport-analytics-org/court-training"}, "properties": {"repobilityId": 322979, "scanner": "foundry_dataset", "fingerprint": "1e8cc5d043106196050cf427b2771a2ab0cd7eb7f130f4405bb10504dbb165df", "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": "sport-analytics-org/court-training#30", "human_labels": ["agent_instruction_gap", "docs_or_claims", "source_or_other", "ui_or_frontend"], "issue_number": "30", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "self_attested_unverified", "source_backed": true, "max_confidence": 0.807, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-5b02de9bf9b9a41c", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 8, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"docs_or_claims": 1, "ui_or_frontend": 3, "source_or_other": 4}, "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: bad_chains\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#30\nOutcome: self_attested_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: sport-analytics-org/court-training#30\nRepo: sport-analytics-org/court-training\nThread label: thread_has_human_issue_and_fix_context\nOutcome: self_attested_unverified\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 8\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'docs_or_claims': 1, 'source_or_other': 4, 'ui_or_frontend': 3}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-c18e3458bc3a50fc\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/30\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/30\\nTitle: Add detection dataset utilities\\nBody:\\n## Summary\\n- one `CourtDataset` shared between segmentation and detection over the flat export layout, with everything needed to read it defined in `dataset.py`: mask bitfield decoding, keypoint reading, detection reading+encoding (`read_detections` returns `boxes_cxcywh` + integer `labels` in one step), and the basketball mask/keypoint/class vocabulary \u2014 nothing is injected from scripts\\n- every modality is a plain boolean: `load_masks`, `load_keypoints`, `load_bbox` (all classes); `__getitem__` is load \u2192 transform \u2192 `to_tensor`\\n- one `CourtAugment` shared as well: it transforms whatever modalities the sample carries \u2014 boxes ride the same albumentations compose (yolo bbox params) and the same `HorizontalFlip` (which also flips `boxes_cxcywh`); `mask_names`/`keypoint_names` default to empty so detection constructs it with just `image_size`\\n- strict reading: the vocabulary is the train split's (`ball, player, number, referee, rim`)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-031222c4d6ee6638\",\n    \"filename\": \"README.md\",\n    \"label\": \"docs_or_claims\",\n    \"status\": \"modified\",\n    \"additions\": 2,\n    \"deletions\": 2,\n    \"changes\": 4,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/a28cf895f997ae7650758fc863e5225ce82492a7/README.md\"\n  },\n  {\n    \"id\": \"github-pr-file-file-8fc47fc002992b9f\",\n    \"filename\": \"pyproject.toml\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 1,\n    \"deletions\": 1,\n    \"changes\": 2,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/a28cf895f997ae7650758fc863e5225ce82492a7/pyproject.toml\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-bad_chains-dde26d690257fed4", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: sport-analytics-org/court-training"}, "properties": {"repobilityId": 322978, "scanner": "foundry_dataset", "fingerprint": "dd1e77bbb77f6bf481a29d6e8b9f365594642db2bf0819c8fbccbe8f45640ac8", "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": "sport-analytics-org/court-training#28", "human_labels": ["api_integration_gap", "api_or_backend", "docs_or_claims", "source_or_other", "ui_or_frontend"], "issue_number": "28", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "self_attested_unverified", "source_backed": true, "max_confidence": 0.725, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-30612adc15d3dcea", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 8, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"api_or_backend": 1, "docs_or_claims": 1, "ui_or_frontend": 2, "source_or_other": 4}, "linked_commit_count": 1, "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: bad_chains\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#28\nOutcome: self_attested_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: sport-analytics-org/court-training#28\nRepo: sport-analytics-org/court-training\nThread label: thread_has_human_issue_and_fix_context\nOutcome: self_attested_unverified\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 8\nLabels: {'api_integration_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'docs_or_claims': 1, 'source_or_other': 4, 'api_or_backend': 1, 'ui_or_frontend': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-b90e3865566498c2\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/28\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/28\\nTitle: Add FastAPI inference API\\nBody:\\n## Summary\\n- Add a small FastAPI app for low-volume frontend inference\\n- Load segmentation and detection checkpoints once at app startup from environment variables\\n- Expose `/health` and `/predict` for uploaded image inference\\n- Return segmentation masks/keypoints and RF-DETR detections in frontend-friendly JSON\\n\\n## Notes\\n- `COURT_SEGMENTATION_CHECKPOINT` and `COURT_DETECTION_CHECKPOINT` control which models are loaded.\\n- `/predict` can run segmentation, detection, or both.\\n\\n## Checks\\n- `uv run ruff check .`\\n- FastAPI TestClient smoke test for `/health` and missing-model `/predict` path\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-7299485e612d1c15\",\n    \"filename\": \"README.md\",\n    \"label\": \"docs_or_claims\",\n    \"status\": \"modified\",\n    \"additions\": 30,\n    \"deletions\": 0,\n    \"changes\": 30,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/84c3814472acfb63a0a617c93ae9f4377ed07d1e/README.md\"\n  },\n  {\n    \"id\": \"github-pr-file-file-1584795717ec1e83\",\n    \"filename\": \"pyproject.toml\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 0,\n    \"changes\": 3,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-training/blob/84c3814472acfb63a0a617c93ae9f4377ed07d1e/pyproject.toml\"\n  },\n  {\n    \"id\": \"github-pr-file-file-2447dbfbae5eefcc\",\n    \"filename\": \"scripts/detection/evaluate_rfdetr.py\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 9,\n    \"changes\": 12,\n    \"blob_url\": \"https://github.com/sport-analytics-org/court-tr\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-bad_chains-83fc9df0d8e3b415", "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": "sport-analytics-org/court-training", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: sport-analytics-org/court-training"}, "properties": {"repobilityId": 322977, "scanner": "foundry_dataset", "fingerprint": "a6af6660055f77572e7d385ad3459cf4f6266712c52427af5b5c4693175b5dd6", "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": "sport-analytics-org/court-training#21", "human_labels": ["data_schema_persistence"], "issue_number": "21", "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": "sport-analytics-org/court-training", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-8f133551fffa14a9", "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#21\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: sport-analytics-org/court-training#21\nRepo: sport-analytics-org/court-training\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: {'data_schema_persistence': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-6b675a1dc87bebd8\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"data_schema_persistence\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/sport-analytics-org/court-training/pull/21\",\n    \"text\": \"GitHub feedback: data_schema_persistence\\nPolarity: bad\\nKind: pull_request_body\\nRepo: sport-analytics-org/court-training\\nAuthor: abcamiletto (User)\\nURL: https://github.com/sport-analytics-org/court-training/pull/21\\nTitle: Export detection annotations as NPZ\\nBody:\\n## Summary\\n- export per-sample detection annotations to detections/*.npz\\n- allow selecting only train and/or val subdatasets with repeated --train-dataset / --val-dataset flags\\n- add explicit --masks/--no-masks and --detections/--no-detections export modes, including masks-only, detections-only, and both\\n- support detection-only shards while preserving reviewed mask/keypoint exports\\n- document the NPZ schema and export mode flags\\n\\n## Verification\\n- uv run ruff check .\\n- exported masks+detections from basketball_51, basketball_player_detection_2, and e_bard_detection shards\\n- exported masks-only from basketball_51 and borgo shards and confirmed no detections directory is created\\n- exported detections-only from basketball_player_detection_2 and confirmed no masks/keypoints directories are created\\n- checked CLI validation errors for no selected subdataset and no selected annotation type\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-883a9e047a570f36\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sport-analytics-org/court-training\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}\nC\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sport-analytics-org/court-training", "source_id": "comment-chain-pattern-bad_chains-cd1c538ff1ad18de", "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": "sport-analytics-org/court-training", "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: sport-analytics-org/court-training"}, "properties": {"repobilityId": 334957, "scanner": "foundry_dataset", "fingerprint": "4db99fc52332a8841707132b10631b9539bf39637b3e3006b1d314bb70e4dba5", "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": {"api_or_backend": 1, "docs_or_claims": 1, "dependency_or_build": 1, "security_or_secrets": 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": 19, "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": 2, "comment_chain_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 13, "node_types": {"repo": 1, "commit": 2, "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": "sport-analytics-org/court-training#36", "issue_number": "36", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-89b2c6233cb66d09", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"api_or_backend": 4, "docs_or_claims": 4}}, "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: supported_by_high_confidence_link\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#36\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#36\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#36\nRepo: sport-analytics-org/court-training\nIssue/PR number: 36\nGraph consistency label: supported_by_high_confidence_link\nNodes: 13\nEdges: 19\nNode types: {'link_quality': 3, 'pr_file': 2, 'commit': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 3, 'thread_touches_file': 2, 'comment_chain_links_commit': 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, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'docs_or_claims': 1, 'api_or_backend': 1, 'human_reported_issue_then_fix_attempt': 1, 'security_or_secrets': 1, 'dependency_or_build': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-710c0f61217ea344", "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": "sport-analytics-org/court-training", "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: sport-analytics-org/court-training"}, "properties": {"repobilityId": 327160, "scanner": "foundry_dataset", "fingerprint": "c0e5519621c082cf0da5d9d1d59300f7174df0b534c3ed3caeb8e61fa5f342b3", "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": {"api_or_backend": 1, "source_or_other": 1, "weak blueprint fit": 2, "api_integration_gap": 1, "generated_provenance": 1, "partial blueprint fit": 1, "self_attested_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 3, "thread_has_human_issue_and_fix_context": 2, "self_attested_or_generated_fix_unverified": 1}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"self_attested_unverified": 6}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 30, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 2, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 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": 1, "comment_chain_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 21, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 1, "pr_file": 2, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#37", "issue_number": "37", "quality_tiers": {"high_confidence": 3, "assumption_check": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-ebd5cce49547ec0b", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"api_or_backend": 4, "source_or_other": 4}}, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#37\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#37\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#37\nRepo: sport-analytics-org/court-training\nIssue/PR number: 37\nGraph consistency label: supported_by_high_confidence_link\nNodes: 21\nEdges: 30\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'pr_file': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 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, 'comment_chain_links_commit': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'self_attested_unverified': 3, 'blueprint_human_gap_alignment': 3, 'thread_has_human_issue_and_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'api_or_backend': 1, 'source_or_other': 1, 'self_attested_or_generated_fix_unverified': 1, 'generated_provenance': 1, 'partial blueprint fit': 1}\nOutcomes: {'self_attested_unverified': 6}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-7d74370cb8adb4f2", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/mock_as_real_or_placeholder", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_fake_real_gap", "level": "error", "message": {"text": "Foundry mined mock as real or placeholder: sport-analytics-org/court-training"}, "properties": {"repobilityId": 327159, "scanner": "foundry_dataset", "fingerprint": "481466de2c8c731bf87da687c61f3b25a93ee271cc8ab30bb6825b0efc16f831", "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": {"source_or_other": 3, "generated_provenance": 3, "agent_instruction_gap": 1, "self_attested_unverified": 3, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "self_attested_or_generated_fix_unverified": 1}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"self_attested_unverified": 6}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 23, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 3, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 3, "thread_has_comment_chain": 1, "comment_chain_links_commit": 3, "comment_chain_touches_file": 3, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 15, "node_types": {"repo": 1, "commit": 3, "thread": 1, "comment": 1, "pr_file": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#34", "issue_number": "34", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-a147be51059bf281", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"source_or_other": 12}}, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#34\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#34\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#34\nRepo: sport-analytics-org/court-training\nIssue/PR number: 34\nGraph consistency label: supported_by_high_confidence_link\nNodes: 15\nEdges: 23\nNode types: {'pr_file': 3, 'commit': 3, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 3, 'comment_chain_links_commit': 3, 'comment_chain_touches_file': 3, 'chain_has_link_quality': 3, 'issue_chain_touches_file': 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': 3, 'generated_provenance': 3, 'self_attested_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'self_attested_or_generated_fix_unverified': 1}\nOutcomes: {'self_attested_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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-091e2faff9f4b2aa", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/mock_as_real_or_placeholder", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_fake_real_gap", "level": "error", "message": {"text": "Foundry mined mock as real or placeholder: sport-analytics-org/court-training"}, "properties": {"repobilityId": 327158, "scanner": "foundry_dataset", "fingerprint": "8a580d5b8fa9a032085224b957cc55de553e89b0f721181a738d5f46e9ffb006", "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": {"ui_or_frontend": 6, "source_or_other": 2, "generated_provenance": 5, "agent_instruction_gap": 1, "self_attested_unverified": 3, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "self_attested_or_generated_fix_unverified": 1}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"self_attested_unverified": 6}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 40, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 8, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 8, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "comment_chain_touches_file": 8, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 22, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 8, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#33", "issue_number": "33", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-d4766b2a21b43522", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"ui_or_frontend": 24, "source_or_other": 8}}, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#33\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#33\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#33\nRepo: sport-analytics-org/court-training\nIssue/PR number: 33\nGraph consistency label: supported_by_high_confidence_link\nNodes: 22\nEdges: 40\nNode types: {'pr_file': 8, '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': 8, 'comment_chain_touches_file': 8, 'issue_chain_touches_file': 8, '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: {'ui_or_frontend': 6, 'generated_provenance': 5, 'self_attested_unverified': 3, 'source_or_other': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'self_attested_or_generated_fix_unverified': 1}\nOutcomes: {'self_attested_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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-5c109767cb053cf1", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/mock_as_real_or_placeholder", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_fake_real_gap", "level": "error", "message": {"text": "Foundry mined mock as real or placeholder: sport-analytics-org/court-training"}, "properties": {"repobilityId": 327157, "scanner": "foundry_dataset", "fingerprint": "e39a6e9c8a264f84700760b6bb2e7ab338a83728fa7e1084f0f8cd00fb9002cc", "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": {"docs_or_claims": 1, "ui_or_frontend": 1, "source_or_other": 4, "generated_provenance": 5, "agent_instruction_gap": 1, "self_attested_unverified": 3, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "self_attested_or_generated_fix_unverified": 1}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"self_attested_unverified": 6}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 34, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 6, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 6, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "comment_chain_touches_file": 6, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 6, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#32", "issue_number": "32", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-9e592e41b46a7d17", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"docs_or_claims": 4, "ui_or_frontend": 4, "source_or_other": 16}}, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#32\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#32\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#32\nRepo: sport-analytics-org/court-training\nIssue/PR number: 32\nGraph consistency label: supported_by_high_confidence_link\nNodes: 20\nEdges: 34\nNode types: {'pr_file': 6, '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': 6, 'comment_chain_touches_file': 6, 'issue_chain_touches_file': 6, '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: {'generated_provenance': 5, 'source_or_other': 4, 'self_attested_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'docs_or_claims': 1, 'ui_or_frontend': 1, 'self_attested_or_generated_fix_unverified': 1}\nOutcomes: {'self_attested_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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-768c973d8d099ab1", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/mock_as_real_or_placeholder", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_fake_real_gap", "level": "error", "message": {"text": "Foundry mined mock as real or placeholder: sport-analytics-org/court-training"}, "properties": {"repobilityId": 327156, "scanner": "foundry_dataset", "fingerprint": "1888bf20195f4ace42d87cc70c3f5b21fbb4eb80589ef1f86f8ea1d276988b5a", "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": {"ui_or_frontend": 2, "source_or_other": 2, "generated_provenance": 5, "agent_instruction_gap": 1, "human_feedback_general": 1, "unlinked_human_feedback": 1, "self_attested_unverified": 3, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "thread_has_human_issue_and_fix_context": 2, "self_attested_or_generated_fix_unverified": 1}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"self_attested_unverified": 6, "ambiguous_needs_more_evidence": 2}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 37, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 4, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 4, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "comment_chain_touches_file": 8, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 21, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 4, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#31", "issue_number": "31", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-3bc3f3b9360d6b84", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"ui_or_frontend": 10, "source_or_other": 10}}, "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: weak_supervision_needs_review\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#31\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#31\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#31\nRepo: sport-analytics-org/court-training\nIssue/PR number: 31\nGraph consistency label: weak_supervision_needs_review\nNodes: 21\nEdges: 37\nNode types: {'commit': 5, 'pr_file': 4, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 8, 'comment_chain_links_commit': 5, 'thread_touches_file': 4, 'chain_has_link_quality': 4, 'issue_chain_touches_file': 4, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'generated_provenance': 5, 'self_attested_unverified': 3, 'source_or_other': 2, 'ui_or_frontend': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'human_feedback_general': 1, 'self_attested_or_generated_fix_unverified': 1, 'unlinked_human_feedback': 1, 'ambiguous_needs_more_evidence': 1}\nOutcomes: {'self_attested_unverified': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-b584212f937178d9", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/mock_as_real_or_placeholder", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_fake_real_gap", "level": "error", "message": {"text": "Foundry mined mock as real or placeholder: sport-analytics-org/court-training"}, "properties": {"repobilityId": 327155, "scanner": "foundry_dataset", "fingerprint": "03f6b1a93dd4470ef3c30cfb5f12702d446bf399847dccd7888a12acbdda3e73", "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": {"docs_or_claims": 1, "ui_or_frontend": 3, "source_or_other": 4, "generated_provenance": 5, "agent_instruction_gap": 1, "self_attested_unverified": 3, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "self_attested_or_generated_fix_unverified": 1}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"self_attested_unverified": 6}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 40, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 8, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 8, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "comment_chain_touches_file": 8, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 22, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 8, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#30", "issue_number": "30", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-1e4e131e9a208f14", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"docs_or_claims": 4, "ui_or_frontend": 12, "source_or_other": 16}}, "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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#30\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#30\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#30\nRepo: sport-analytics-org/court-training\nIssue/PR number: 30\nGraph consistency label: supported_by_high_confidence_link\nNodes: 22\nEdges: 40\nNode types: {'pr_file': 8, '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': 8, 'comment_chain_touches_file': 8, 'issue_chain_touches_file': 8, '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: {'generated_provenance': 5, 'source_or_other': 4, 'ui_or_frontend': 3, 'self_attested_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'docs_or_claims': 1, 'self_attested_or_generated_fix_unverified': 1}\nOutcomes: {'self_attested_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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-6855cf368ed908dd", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/mock_as_real_or_placeholder", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_fake_real_gap", "level": "error", "message": {"text": "Foundry mined mock as real or placeholder: sport-analytics-org/court-training"}, "properties": {"repobilityId": 327154, "scanner": "foundry_dataset", "fingerprint": "475d7c8b00c4f3eb8a0dd63dffac2ca6a89210b25d57d9f2b3c9e0a2a4ecc8c6", "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": {"api_or_backend": 1, "docs_or_claims": 1, "ui_or_frontend": 2, "source_or_other": 4, "weak blueprint fit": 2, "api_integration_gap": 1, "generated_provenance": 1, "partial blueprint fit": 1, "self_attested_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 3, "thread_has_human_issue_and_fix_context": 2, "self_attested_or_generated_fix_unverified": 1}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"self_attested_unverified": 6}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 48, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 8, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 8, "thread_has_comment_chain": 1, "comment_chain_links_commit": 1, "comment_chain_touches_file": 8, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 27, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 1, "pr_file": 8, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "sport-analytics-org/court-training#28", "issue_number": "28", "quality_tiers": {"assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "sport-analytics-org/court-training", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-2a9a2da66df4aeaf", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"api_or_backend": 4, "docs_or_claims": 4, "ui_or_frontend": 8, "source_or_other": 16}}, "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: weak_supervision_needs_review\nRepo: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#28\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: sport-analytics-org/court-training\nThread: sport-analytics-org/court-training#28\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sport-analytics-org/court-training#28\nRepo: sport-analytics-org/court-training\nIssue/PR number: 28\nGraph consistency label: weak_supervision_needs_review\nNodes: 27\nEdges: 48\nNode types: {'pr_file': 8, 'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 8, 'comment_chain_touches_file': 8, 'issue_chain_touches_file': 8, 'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_links_commit': 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': 4, 'self_attested_unverified': 3, 'blueprint_human_gap_alignment': 3, 'ui_or_frontend': 2, 'thread_has_human_issue_and_fix_context': 2, 'weak blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'docs_or_claims': 1, 'api_or_backend': 1, 'self_attested_or_generated_fix_unverified': 1, 'generated_provenance': 1, 'partial blueprint fit': 1}\nOutcomes: {'self_attested_unverified': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 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/sport-analytics-org/court-training", "source_id": "graph-query-motif_query-490fd4b4c16f9a23", "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": "sport-analytics-org/court-training", "source_dataset": "graph_queries/mock_as_real_or_placeholder", "training_usage": "hard_negative"}}}, {"ruleId": "scanner-74942af98ad4964e", "level": "note", "message": {"text": "Possibly dead Python function: closure"}, "properties": {"repobilityId": "d859b732af6535e6", "scanner": "scanner-primary", "fingerprint": "74942af98ad4964e", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/court_training/homography.py:60"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f620e0569a453b39", "level": "note", "message": {"text": "Possibly dead Python function: collate"}, "properties": {"repobilityId": "c888bba08ce6c6c5", "scanner": "scanner-primary", "fingerprint": "f620e0569a453b39", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/court_training/dataset.py:122"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-d9ee51698d15ae5e", "level": "note", "message": {"text": "Possibly dead Python function: forward"}, "properties": {"repobilityId": "ea414cce7f8e5874", "scanner": "scanner-primary", "fingerprint": "d9ee51698d15ae5e", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/court_training/segmentation/model.py:155"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-97eb39db8926fbef", "level": "note", "message": {"text": "Possibly dead Python function: forward"}, "properties": {"repobilityId": "ea414cce7f8e5874", "scanner": "scanner-primary", "fingerprint": "97eb39db8926fbef", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/court_training/detection/model.py:37"}, "region": {"startLine": 1}}}]}, {"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-4601e3ad3bb28677", "level": "warning", "message": {"text": "No CI/CD pipelines detected"}, "properties": {"repobilityId": "c3ee439bce2bc51e", "scanner": "scanner-primary", "fingerprint": "4601e3ad3bb28677", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-6893a6c8b0861585", "level": "warning", "message": {"text": "Very low test-to-source ratio"}, "properties": {"repobilityId": "54a7de3f06314bf0", "scanner": "scanner-primary", "fingerprint": "6893a6c8b0861585", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["tests", "coverage"]}}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "0ded0adf67865519", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-b9088664ace7f748", "level": "warning", "message": {"text": "Composite production-readiness gap"}, "properties": {"repobilityId": "84a272e8688cb12e", "scanner": "scanner-primary", "fingerprint": "b9088664ace7f748", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["production-readiness", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "cfa560db2dbd9130", "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": "eb2f88fd5f57be85", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "bee60ab98168e5f8", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "c1aabfcd977a07b0", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "3d5a002f626fa37e", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-be46ea126aa5d8dc", "level": "note", "message": {"text": "Near-duplicate function bodies in 3 places"}, "properties": {"repobilityId": "c184fca8f900a2c5", "scanner": "scanner-primary", "fingerprint": "be46ea126aa5d8dc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-ddf45157b7bfb1e8", "level": "error", "message": {"text": "FastAPI POST `predict` without auth dependency \u2014 src/court_training/api.py:107"}, "properties": {"repobilityId": "706dec2241d6732e", "scanner": "scanner-primary", "fingerprint": "ddf45157b7bfb1e8", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/court_training/api.py"}, "region": {"startLine": 107}}}]}, {"ruleId": "scanner-25d3af48cd83c9e6", "level": "note", "message": {"text": "Unused endpoint: POST /predict"}, "properties": {"repobilityId": "0f40e408bda5c653", "scanner": "scanner-primary", "fingerprint": "25d3af48cd83c9e6", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}]}]}