{"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: Tbeaumont79/cv-optimizer", "shortDescription": {"text": "Foundry mined unresolved feedback: Tbeaumont79/cv-optimizer"}, "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: weak_supervision_needs_review\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#6\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#6\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#6\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 6\nGraph consistency label: weak_supervision_needs_review\nNodes: 33\nEdges: 69\nNode types: {'pr_file': 10, 'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alig"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "medium", "confidence": 0.7, "cwe": "", "owasp": ""}}, {"id": "foundry_blueprint_gap", "name": "Foundry mined blueprint gap alignment: Tbeaumont79/cv-optimizer", "shortDescription": {"text": "Foundry mined blueprint gap alignment: Tbeaumont79/cv-optimizer"}, "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: supported_by_high_confidence_link\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#9\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#9\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#9\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 9\nGraph consistency label: supported_by_high_confidence_link\nNodes: 29\nEdges: 54\nNode types: {'pr_file': 6, 'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_c"}, "properties": {"scanner": "foundry_dataset", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "cwe": "", "owasp": ""}}, {"id": "foundry_assumption_check", "name": "Foundry mined assumption checks: Tbeaumont79/cv-optimizer", "shortDescription": {"text": "Foundry mined assumption checks: Tbeaumont79/cv-optimizer"}, "fullDescription": {"text": "Comment chain pattern product: assumption_checks\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#9\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: Tbeaumont79/cv-optimizer#9\nRepo: Tbeaumont79/cv-optimizer\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 2\nLinked commit count: 6\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 6\nLabels: {'test_ci_gap': 1, 'security_auth_secret': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'ui_or_frontend': 1, 'api_or_backend': 3, 'test_or_ci': 1, 'dependency_or_build': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-908e958065297174\",\n    \"k"}, "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: Tbeaumont79/cv-optimizer", "shortDescription": {"text": "Foundry mined test ci gap after feedback: Tbeaumont79/cv-optimizer"}, "fullDescription": {"text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#9\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#9\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#9\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 9\nGraph consistency label: supported_by_high_confidence_link\nNodes: 29\nEdges: 54\nNode types: {'pr_file': 6, 'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alignment': 2"}, "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: Tbeaumont79/cv-optimizer", "shortDescription": {"text": "Foundry mined schema ui api mismatch: Tbeaumont79/cv-optimizer"}, "fullDescription": {"text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: supported_by_verification_signal\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#8\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#8\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#8\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 8\nGraph consistency label: supported_by_verification_signal\nNodes: 35\nEdges: 99\nNode types: {'pr_file': 9, 'commit': 7, 'link_quality': 6, 'comment': 4, 'comment_chain': 4, 'thread': 1, 'repo': 1, 'ci_summary': 1, 'issue"}, "properties": {"scanner": "foundry_dataset", "category": "quality", "severity": "high", "confidence": 0.76, "cwe": "", "owasp": ""}}, {"id": "foundry_bad_chain", "name": "Foundry mined bad chains: Tbeaumont79/cv-optimizer", "shortDescription": {"text": "Foundry mined bad chains: Tbeaumont79/cv-optimizer"}, "fullDescription": {"text": "Comment chain pattern product: bad_chains\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#7\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: Tbeaumont79/cv-optimizer#7\nRepo: Tbeaumont79/cv-optimizer\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 3\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 8\nLabels: {'mock_placeholder': 2}\nPolarities: {'bad': 2}\nChanged file labels: {'ui_or_frontend': 7, 'api_or_backend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-2f290d1087847a50\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"mock_placeholder\",\n    \"polarity\": "}, "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: Tbeaumont79/cv-optimizer", "shortDescription": {"text": "Foundry mined security auth guardrail gaps: Tbeaumont79/cv-optimizer"}, "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_verification_signal\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#8\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#8\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#8\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 8\nGraph consistency label: supported_by_verification_signal\nNodes: 35\nEdges: 99\nNode types: {'pr_file': 9, 'commit': 7, 'link_quality': 6, 'comment': 4, 'comment_c"}, "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: Tbeaumont79/cv-optimizer", "shortDescription": {"text": "Foundry mined mock as real or placeholder: Tbeaumont79/cv-optimizer"}, "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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#7\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#7\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#7\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 7\nGraph consistency label: supported_by_high_confidence_link\nNodes: 22\nEdges: 51\nNode types: {'pr_file': 8, 'link_quality': 4, 'comment': 2, "}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "critical", "confidence": 0.82, "cwe": "", "owasp": ""}}, {"id": "scanner-02f68b9c988206bc", "name": "Stray `console.log` in TS/JS \u2014 apps/app/server/utils/mailer.ts:34", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 apps/app/server/utils/mailer.ts:34"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-aa5acaa49eb8315b", "name": "Containers defined but no K8s/orchestration manifest found", "shortDescription": {"text": "Containers defined but no K8s/orchestration manifest found"}, "fullDescription": {"text": "Repo has Dockerfiles/compose but no Kubernetes/Nomad manifests. If the target deployment is K8s, the manifests may live in a separate ops repo."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "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-fc5945f5f89e775a", "name": "package.json defines install-time lifecycle scripts", "shortDescription": {"text": "package.json defines install-time lifecycle scripts"}, "fullDescription": {"text": "preinstall/install/postinstall/prepare scripts execute during dependency installation. Review them carefully for network calls, obfuscation, shell execution, or credential access."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ea3b5e389d8c9c0f", "name": "Low test-to-source ratio", "shortDescription": {"text": "Low test-to-source ratio"}, "fullDescription": {"text": "12 tests / 50 src (ratio 0.24)."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-141b30a41e03817b", "name": "No license file detected", "shortDescription": {"text": "No license file detected"}, "fullDescription": {"text": "No LICENSE/COPYING/NOTICE file was found. Generated repositories often omit licensing, which blocks reuse and automated intake."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1b02d785d4830372", "name": "Node manifest has dependencies but no lockfile: apps/app/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: apps/app/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2699d5f16ae11282", "name": "Node manifest has dependencies but no lockfile: packages/shared/package.json", "shortDescription": {"text": "Node manifest has dependencies but no lockfile: packages/shared/package.json"}, "fullDescription": {"text": "`package.json` declares dependencies, but no same-directory npm/pnpm/yarn/bun lockfile was found. Generated projects without lockfiles are less reproducible and harder to secure-scan precisely."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2d0c7b7ab8f8aacf", "name": "Critical user flow still appears backed by mock or placeholder data", "shortDescription": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "fullDescription": {"text": "A payment/auth/admin/order/billing-style flow contains mock, fake, TODO, dummy, or placeholder markers in runtime source. In the Fable corpus this is a high-leverage completeness smell: the app can look finished while the money, identity, or tenant flow is still scaffolded."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b9088664ace7f748", "name": "Composite production-readiness gap", "shortDescription": {"text": "Composite production-readiness gap"}, "fullDescription": {"text": "Multiple low-cost hardening controls are missing together: license, lockfile. Opus verification showed these co-occurring gaps are a better readiness signal than reading each flag in isolation."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8732216279de51e0", "name": "Commented-code block (6 lines) in apps/app/composables/useAuth.ts:13", "shortDescription": {"text": "Commented-code block (6 lines) in apps/app/composables/useAuth.ts:13"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-de8915b9fc390728", "name": "`fetch()` without try/.catch or AbortSignal \u2014 apps/app/server/utils/anthropic.ts:94", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/app/server/utils/anthropic.ts:94"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-af022f937dd5b7fd", "name": "9 env vars used in code but missing from .env.example", "shortDescription": {"text": "9 env vars used in code but missing from .env.example"}, "fullDescription": {"text": "Drift between code and config docs. The first few: `ANTHROPIC_BASE_URL`, `CHROMIUM_EXECUTABLE_PATH`, `MAIL_FROM`, `NODE_ENV`, `NUXT_PUBLIC_SITE_URL`, `SMTP_HOST`, `SMTP_PASS`, `SMTP_PORT` + 1 more. Add them (with a placeholder/comment) to .env.example so onboarding doesn't break."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/20860"}, "properties": {"repository": "Tbeaumont79/cv-optimizer", "repoUrl": "https://github.com/Tbeaumont79/cv-optimizer", "branch": "main"}, "results": [{"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 361630, "scanner": "foundry_dataset", "fingerprint": "c2349517267572abcc6a402b4d66e1744bc17cd2db72968851e00c85a76635c2", "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_or_ci": 1, "test_ci_gap": 1, "ui_or_frontend": 7, "dependency_or_build": 2, "security_auth_secret": 1, "verification_or_tests": 5, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "ambiguous_needs_more_evidence": 3, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 2, "ambiguous_needs_more_evidence": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 69, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 10, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 6, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 10, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "comment_chain_touches_file": 20, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 33, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 10, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#6", "issue_number": "6", "quality_tiers": {"unresolved": 1, "assumption_check": 2, "weak_supervision": 3}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-0c832c4e2bd53802", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"test_or_ci": 5, "ui_or_frontend": 35, "dependency_or_build": 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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#6\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#6\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#6\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 6\nGraph consistency label: weak_supervision_needs_review\nNodes: 33\nEdges: 69\nNode types: {'pr_file': 10, 'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 20, 'thread_touches_file': 10, 'issue_chain_touches_file': 10, 'chain_has_link_quality': 6, 'comment_chain_links_commit': 5, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 7, 'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 3, 'dependency_or_build': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'security_auth_secret': 1, 'test_or_ci': 1, 'comment_has_related_commit_context': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 2, '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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-aa1c01f7cbb0f7d8", "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": "Tbeaumont79/cv-optimizer", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 361629, "scanner": "foundry_dataset", "fingerprint": "3387047810ee62dbed81e4e1cb9f391d6580b5af99733ab7bc0097b781a3ade7", "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_or_ci": 2, "test_ci_gap": 1, "api_or_backend": 3, "ui_or_frontend": 6, "dependency_or_build": 2, "security_auth_secret": 1, "verification_or_tests": 5, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "ambiguous_needs_more_evidence": 3, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 2, "ambiguous_needs_more_evidence": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 78, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 13, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 6, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "comment_chain_touches_file": 24, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 36, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 13, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#13", "issue_number": "13", "quality_tiers": {"unresolved": 1, "assumption_check": 2, "weak_supervision": 3}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-22ec9574417aea2b", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"test_or_ci": 10, "api_or_backend": 15, "ui_or_frontend": 30, "dependency_or_build": 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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#13\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#13\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#13\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 13\nGraph consistency label: weak_supervision_needs_review\nNodes: 36\nEdges: 78\nNode types: {'pr_file': 13, 'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 24, 'thread_touches_file': 13, 'issue_chain_touches_file': 12, 'chain_has_link_quality': 6, 'comment_chain_links_commit': 5, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 6, 'verification_or_tests': 5, 'api_or_backend': 3, 'ambiguous_needs_more_evidence': 3, 'test_or_ci': 2, 'dependency_or_build': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'security_auth_secret': 1, 'comment_has_related_commit_context': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 2, '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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-1fcb28256ac53f71", "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": "Tbeaumont79/cv-optimizer", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 345426, "scanner": "foundry_dataset", "fingerprint": "4f0e69f30230d57f7c8665088fbaa5bdcdad021582f9f43c07eac9ad820f7621", "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_or_ci": 1, "test_ci_gap": 1, "api_or_backend": 3, "ui_or_frontend": 1, "dependency_or_build": 1, "security_auth_secret": 1, "verification_or_tests": 5, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"ambiguous_needs_more_evidence": 8}, "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": 2, "thread_has_comment": 2, "thread_touches_file": 6, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 6, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 6, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 29, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 6, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#9", "issue_number": "9", "quality_tiers": {"high_confidence": 3, "assumption_check": 2, "weak_supervision": 1}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-e965e2d01a5fa89f", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 5, "api_or_backend": 15, "ui_or_frontend": 5, "dependency_or_build": 5}}, "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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#9\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#9\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#9\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 9\nGraph consistency label: supported_by_high_confidence_link\nNodes: 29\nEdges: 54\nNode types: {'pr_file': 6, 'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 12, 'thread_touches_file': 6, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 6, 'issue_chain_touches_file': 6, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 4, 'api_or_backend': 3, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'security_auth_secret': 1, 'ui_or_frontend': 1, 'test_or_ci': 1, 'dependency_or_build': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 2, 'weak_supervision': 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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-36a400e63219f203", "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": "Tbeaumont79/cv-optimizer", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 345425, "scanner": "foundry_dataset", "fingerprint": "1e186e582c37ca18357a4c0454799d1699eb5315b6f255a8eeb4ed316047e271", "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_or_ci": 1, "test_ci_gap": 1, "ui_or_frontend": 7, "dependency_or_build": 2, "security_auth_secret": 1, "verification_or_tests": 5, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "ambiguous_needs_more_evidence": 3, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"not_resolved_or_not_observed": 2, "ambiguous_needs_more_evidence": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 69, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 10, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 6, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 10, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "comment_chain_touches_file": 20, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 33, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 10, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#6", "issue_number": "6", "quality_tiers": {"unresolved": 1, "assumption_check": 2, "weak_supervision": 3}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-224501cac678e5c0", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"test_or_ci": 5, "ui_or_frontend": 35, "dependency_or_build": 10}}, "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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#6\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#6\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#6\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 6\nGraph consistency label: weak_supervision_needs_review\nNodes: 33\nEdges: 69\nNode types: {'pr_file': 10, 'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 20, 'thread_touches_file': 10, 'issue_chain_touches_file': 10, 'chain_has_link_quality': 6, 'comment_chain_links_commit': 5, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 7, 'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 3, 'dependency_or_build': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'security_auth_secret': 1, 'test_or_ci': 1, 'comment_has_related_commit_context': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 2, '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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-4a7d92181b0a5c00", "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": "Tbeaumont79/cv-optimizer", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 345424, "scanner": "foundry_dataset", "fingerprint": "bea694136bf67fff77444aca7947c00fa6bcf8fd073ccbba45c63989d5e2e46e", "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_or_ci": 1, "test_ci_gap": 1, "ui_or_frontend": 4, "mock_placeholder": 1, "dependency_or_build": 2, "verification_or_tests": 5, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"ambiguous_needs_more_evidence": 8}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 58, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 7, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 6, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 7, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 14, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 30, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 7, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#3", "issue_number": "3", "quality_tiers": {"high_confidence": 4, "assumption_check": 2}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-bdd707e2d97a1d53", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 5, "ui_or_frontend": 20, "dependency_or_build": 10}}, "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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#3\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#3\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#3\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 3\nGraph consistency label: supported_by_high_confidence_link\nNodes: 30\nEdges: 58\nNode types: {'pr_file': 7, 'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 14, 'thread_touches_file': 7, 'issue_chain_touches_file': 7, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 6, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'verification_or_tests': 5, 'ui_or_frontend': 4, 'ambiguous_needs_more_evidence': 4, 'dependency_or_build': 2, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'mock_placeholder': 1, 'test_or_ci': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'high_confidence': 4, 'assumption_check': 2}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-e803df5697ceb364", "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": "Tbeaumont79/cv-optimizer", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 345423, "scanner": "foundry_dataset", "fingerprint": "4d57cf08c959dc31d2d6138f22488e5e1a94bfe9f224a9712a77dee791697095", "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_or_frontend": 7, "deployment_env_gap": 1, "api_integration_gap": 1, "positive_human_signal": 1, "verification_or_tests": 4, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 2, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 1, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"ambiguous_needs_more_evidence": 8, "claimed_resolved_with_verification_signal": 2}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 71, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 3, "thread_has_comment": 3, "thread_touches_file": 7, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 7, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 7, "thread_has_comment_chain": 3, "comment_chain_links_commit": 7, "comment_chain_touches_file": 21, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 3}, "node_count": 33, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 3, "pr_file": 7, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 7, "comment_chain": 3, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#20", "issue_number": "20", "quality_tiers": {"high_confidence": 4, "assumption_check": 2, "weak_supervision": 1}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-d158f1486218d2ce", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"ui_or_frontend": 42}}, "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_verification_signal\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#20\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#20\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#20\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 20\nGraph consistency label: supported_by_verification_signal\nNodes: 33\nEdges: 71\nNode types: {'pr_file': 7, 'link_quality': 7, 'commit': 5, 'comment': 3, 'comment_chain': 3, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 21, 'thread_touches_file': 7, 'comment_chain_links_commit': 7, 'chain_has_link_quality': 7, 'issue_chain_touches_file': 7, 'thread_has_comment': 3, 'thread_has_comment_chain': 3, 'comment_has_chain': 3, 'issue_chain_has_comment_chain': 3, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 7, 'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'positive_human_signal': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'claimed_resolved_with_verification_signal': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8, 'claimed_resolved_with_verification_signal': 2}\nQuality tiers: {'high_confidence': 4, 'assumption_check': 2, 'weak_supervision': 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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-1a092aff812d287e", "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": "Tbeaumont79/cv-optimizer", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 345422, "scanner": "foundry_dataset", "fingerprint": "288a1d1936850693aa6c6a31fbb9b857cae3e9897efb1ce7e6172936e2c949ec", "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_or_ci": 1, "test_ci_gap": 1, "ui_or_frontend": 1, "source_or_other": 1, "dependency_or_build": 1, "build_install_failure": 1, "verification_or_tests": 6, "ci_pending_or_incomplete": 1, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"ambiguous_needs_more_evidence": 8}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {"ci_pending_or_incomplete": 4}, "synthetic": false, "edge_count": 52, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 4, "comment_chain_has_ci": 2, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 6, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 4, "thread_has_comment_chain": 2, "comment_chain_links_commit": 10, "comment_chain_touches_file": 8, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 29, "node_types": {"repo": 1, "commit": 6, "thread": 1, "comment": 2, "pr_file": 4, "alignment": 2, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#2", "issue_number": "2", "quality_tiers": {"high_confidence": 4, "assumption_check": 2}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-a52c5da1b9422925", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 5, "ui_or_frontend": 5, "source_or_other": 5, "dependency_or_build": 5}}, "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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#2\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#2\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#2\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 2\nGraph consistency label: supported_by_high_confidence_link\nNodes: 29\nEdges: 52\nNode types: {'commit': 6, 'link_quality': 6, 'pr_file': 4, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 10, 'comment_chain_touches_file': 8, 'chain_has_link_quality': 6, 'thread_touches_file': 4, 'issue_chain_touches_file': 4, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'comment_chain_has_ci': 2, 'issue_chain_has_comment_chain': 2, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1}\nLabels: {'verification_or_tests': 6, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'build_install_failure': 1, 'ui_or_frontend': 1, 'test_or_ci': 1, 'dependency_or_build': 1, 'source_or_other': 1, 'ci_pending_or_incomplete': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'high_confidence': 4, 'assumption_check': 2}\nCI labels: {'ci_pending_or_incomplete': 4}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-9fbf5748e6bbadf7", "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": "Tbeaumont79/cv-optimizer", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 345421, "scanner": "foundry_dataset", "fingerprint": "b4c60a87fe4db27c018ac1cbc0fd008271ddec311bfb848c63cf5845933c4dbd", "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, "ui_or_frontend": 4, "deployment_env_gap": 1, "positive_human_signal": 1, "verification_or_tests": 6, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 5, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 3, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"ambiguous_needs_more_evidence": 10}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 57, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 3, "thread_has_comment": 3, "thread_touches_file": 4, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 7, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 4, "thread_has_comment_chain": 3, "comment_chain_links_commit": 8, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 3}, "node_count": 31, "node_types": {"repo": 1, "commit": 6, "thread": 1, "comment": 3, "pr_file": 4, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 7, "comment_chain": 3, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#18", "issue_number": "18", "quality_tiers": {"high_confidence": 3, "assumption_check": 2, "weak_supervision": 2}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-f4af3bcdc6eb543a", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"ui_or_frontend": 24}}, "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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#18\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#18\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 18\nGraph consistency label: supported_by_high_confidence_link\nNodes: 31\nEdges: 57\nNode types: {'link_quality': 7, 'commit': 6, 'pr_file': 4, 'comment': 3, 'comment_chain': 3, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 12, 'comment_chain_links_commit': 8, 'chain_has_link_quality': 7, 'thread_touches_file': 4, 'issue_chain_touches_file': 4, 'thread_has_comment': 3, 'thread_has_comment_chain': 3, 'comment_has_chain': 3, 'issue_chain_has_comment_chain': 3, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'verification_or_tests': 6, 'ambiguous_needs_more_evidence': 5, 'ui_or_frontend': 4, 'comment_has_related_commit_context': 3, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'positive_human_signal': 1, 'deployment_env_gap': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 10}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 2, 'assumption_check': 2}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-88cbade97ea0f1f7", "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": "Tbeaumont79/cv-optimizer", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 345420, "scanner": "foundry_dataset", "fingerprint": "29486c1bb97e833a365c41175ee85e5b53c10f42b1ce112e6bcb61825d37b9c1", "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, "test_or_ci": 1, "test_ci_gap": 2, "api_or_backend": 2, "security_or_secrets": 2, "verification_or_tests": 3, "ci_pending_or_incomplete": 1, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 4, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 4, "human_reported_issue_then_verified_fix_attempt": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_with_verification_signal": 8}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 55, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 3, "comment_chain_has_ci": 1, "alignment_uses_comment": 4, "alignment_uses_finding": 4, "chain_has_link_quality": 8, "comment_aligns_finding": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 3, "thread_has_comment_chain": 2, "comment_chain_links_commit": 10, "comment_chain_touches_file": 6, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 32, "node_types": {"repo": 1, "commit": 6, "thread": 1, "comment": 2, "pr_file": 3, "alignment": 4, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 8, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#14", "issue_number": "14", "quality_tiers": {"high_confidence": 4, "assumption_check": 4}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-c5ea75a89fbc00f8", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 5, "api_or_backend": 10}}, "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_verification_signal\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#14\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#14\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#14\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 14\nGraph consistency label: supported_by_verification_signal\nNodes: 32\nEdges: 55\nNode types: {'link_quality': 8, 'commit': 6, 'alignment': 4, 'pr_file': 3, 'comment': 2, 'comment_chain': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 10, 'chain_has_link_quality': 8, 'comment_chain_touches_file': 6, 'alignment_uses_comment': 4, 'alignment_uses_finding': 4, 'comment_aligns_finding': 4, 'thread_touches_file': 3, 'issue_chain_touches_file': 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_has_ci': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1}\nLabels: {'claimed_resolved_with_verification_signal': 4, 'blueprint_human_gap_disagreement': 4, 'verification_or_tests': 3, 'test_ci_gap': 2, 'api_or_backend': 2, 'human_reported_issue_then_verified_fix_attempt': 2, 'security_or_secrets': 2, 'thread_has_human_issue_and_fix_context': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'test_or_ci': 1, 'bug_fix': 1, 'ci_pending_or_incomplete': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 8}\nQuality tiers: {'high_confidence': 4, 'assumption_check': 4}\nCI labels: {'ci_pending_or_incomplete': 2}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-d4850cf6480f5754", "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": "Tbeaumont79/cv-optimizer", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 345419, "scanner": "foundry_dataset", "fingerprint": "d13a7055f1dca2abc8633d299a27071585b4a42c123fa436f3e22a1ed8542571", "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_or_ci": 2, "test_ci_gap": 1, "api_or_backend": 3, "ui_or_frontend": 6, "dependency_or_build": 2, "security_auth_secret": 1, "verification_or_tests": 5, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "ambiguous_needs_more_evidence": 3, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"not_resolved_or_not_observed": 2, "ambiguous_needs_more_evidence": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 78, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 13, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 6, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "comment_chain_touches_file": 24, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 36, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 13, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#13", "issue_number": "13", "quality_tiers": {"unresolved": 1, "assumption_check": 2, "weak_supervision": 3}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-de9ad8432e51998d", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"test_or_ci": 10, "api_or_backend": 15, "ui_or_frontend": 30, "dependency_or_build": 10}}, "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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#13\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#13\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#13\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 13\nGraph consistency label: weak_supervision_needs_review\nNodes: 36\nEdges: 78\nNode types: {'pr_file': 13, 'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 24, 'thread_touches_file': 13, 'issue_chain_touches_file': 12, 'chain_has_link_quality': 6, 'comment_chain_links_commit': 5, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 6, 'verification_or_tests': 5, 'api_or_backend': 3, 'ambiguous_needs_more_evidence': 3, 'test_or_ci': 2, 'dependency_or_build': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'security_auth_secret': 1, 'comment_has_related_commit_context': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 2, '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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-74b75330daf8ed6a", "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": "Tbeaumont79/cv-optimizer", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 345418, "scanner": "foundry_dataset", "fingerprint": "41ae4b0a0f4a2d1dd3d15251864e9b1ada67cda65967b416a2d54775f499060a", "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, "test_or_ci": 1, "test_ci_gap": 1, "api_or_backend": 3, "security_or_secrets": 3, "security_auth_secret": 1, "verification_or_tests": 5, "ci_pending_or_incomplete": 1, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"ambiguous_needs_more_evidence": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 51, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 4, "comment_chain_has_ci": 1, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 6, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 4, "thread_has_comment_chain": 2, "comment_chain_links_commit": 10, "comment_chain_touches_file": 8, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 32, "node_types": {"repo": 1, "commit": 9, "thread": 1, "comment": 2, "pr_file": 4, "alignment": 2, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#12", "issue_number": "12", "quality_tiers": {"high_confidence": 4, "assumption_check": 2}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-f1c6e0e4b0e41a12", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 5, "api_or_backend": 15}}, "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_verification_signal\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#12\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#12\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#12\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 12\nGraph consistency label: supported_by_verification_signal\nNodes: 32\nEdges: 51\nNode types: {'commit': 9, 'link_quality': 6, 'pr_file': 4, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 10, 'comment_chain_touches_file': 8, 'chain_has_link_quality': 6, 'thread_touches_file': 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, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'comment_chain_has_ci': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1}\nLabels: {'verification_or_tests': 5, 'api_or_backend': 3, 'security_or_secrets': 3, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'test_ci_gap': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'comment_has_related_commit_context': 1, 'ci_pending_or_incomplete': 1, 'ambiguous_needs_more_evidence': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'high_confidence': 4, 'assumption_check': 2}\nCI labels: {'ci_pending_or_incomplete': 2}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-e5850f96aba0f464", "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": "Tbeaumont79/cv-optimizer", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 345417, "scanner": "foundry_dataset", "fingerprint": "1715ee58fb4495b39d87ae64a5e6b7ba08d233243891424d0bc73ffe3dde2fd2", "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, "mock_placeholder": 1, "verification_or_tests": 5, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"ambiguous_needs_more_evidence": 8}, "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": 2, "thread_has_comment": 2, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 6, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 23, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#1", "issue_number": "1", "quality_tiers": {"high_confidence": 4, "assumption_check": 2}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-8989f6eb5f1cb869", "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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#1\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#1\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#1\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 1\nGraph consistency label: supported_by_high_confidence_link\nNodes: 23\nEdges: 30\nNode types: {'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 6, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'test_ci_gap': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'high_confidence': 4, 'assumption_check': 2}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-18c38f87259d6151", "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": "Tbeaumont79/cv-optimizer", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 301062, "scanner": "foundry_dataset", "fingerprint": "0417457e5c3478d1ef78ae126599a4dc778c08e829ac293c7adf8cd142e0950f", "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": "Tbeaumont79/cv-optimizer#9", "human_labels": ["api_or_backend", "dependency_or_build", "security_auth_secret", "test_ci_gap", "test_or_ci", "ui_or_frontend"], "issue_number": "9", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-2e12b59345dffaa0", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 6, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 1, "api_or_backend": 3, "ui_or_frontend": 1, "dependency_or_build": 1}, "linked_commit_count": 6, "helicopter_view_count": 2, "source_artifact_count": 2, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#9\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: Tbeaumont79/cv-optimizer#9\nRepo: Tbeaumont79/cv-optimizer\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 2\nLinked commit count: 6\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 6\nLabels: {'test_ci_gap': 1, 'security_auth_secret': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'ui_or_frontend': 1, 'api_or_backend': 3, 'test_or_ci': 1, 'dependency_or_build': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-908e958065297174\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/9\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: Tbeaumont79 (User)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/9\\nTitle: feat: export PDF Playwright headless + buildCvHtml serveur (THI-125 \u2014 3/3)\\nBody:\\n## Objet \u2014 THI-125 (3/3), export PDF\\n\\nDerni\u00e8re brique : **route Nitro `POST /api/cv/export-pdf`** qui g\u00e9n\u00e8re un PDF A4 \u00e0 partir d'un `RenderableCv`, et les utilitaires serveur associ\u00e9s.\\n\\n> **Cha\u00eene de PRs** : #3 (contrat+guardrail) \u2192 #6 (template Vue+page) \u2192 cette PR.\\n\\n## Ce qui est livr\u00e9\\n\\n### `server/utils/cv-html.ts` \u2014 `buildCvHtml(cv)`\\nHTML complet auto-suffisant : tokens inline (synchronis\u00e9s avec `main.css`), CSS A4/print, XSS-escape syst\u00e9matique sur toutes les donn\u00e9es entrantes. Aucune d\u00e9pendance externe (pas de CDN) \u2014 pr\u00eat pour Chromium headless.\\n\\n### `server/utils/pdf.ts` \u2014 `renderHtmlToPdf(html)`\\n- `playwright-core` + Chrome syst\u00e8me (`CHROMIUM_EXECUTABLE_PATH` pour Docker/CI, fallback macOS dev).\\n- `page.pdf({ format: 'A4', printBackground: true, margin: ... })`.\\n- `--no-sandbox` pour les containers.\\n\\n### `server/api/cv/export-pdf.post.ts`\\n- Validation **Zod** de la structure (`discriminatedUnion` sur `kind`).\"\n  },\n  {\n    \"id\": \"github-feedback-comment-67560cd09534c288\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/9#issuecomment-4658770493\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: issue_comment\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: coderabbitai[bot] (Bot)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/9#issuecomment-4658770493\\nTitle: \\nBody:\\n<!-- This is an auto-generated comment: summarize by coderabbit.ai -->\\n<!-- This is an auto-g\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/Tbeaumont79/cv-optimizer", "source_id": "comment-chain-pattern-assumption_checks-f30fd599f90850dd", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_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": "Tbeaumont79/cv-optimizer", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 301061, "scanner": "foundry_dataset", "fingerprint": "49857b2d04660fe0e69209a4538b8e549e13aa5541148272c4d3f7695f82de04", "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": "Tbeaumont79/cv-optimizer#6", "human_labels": ["dependency_or_build", "security_auth_secret", "test_ci_gap", "test_or_ci", "ui_or_frontend"], "issue_number": "6", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.67, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-3139f38683a767d3", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 10, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 1, "ui_or_frontend": 7, "dependency_or_build": 2}, "linked_commit_count": 5, "helicopter_view_count": 2, "source_artifact_count": 2, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#6\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: Tbeaumont79/cv-optimizer#6\nRepo: Tbeaumont79/cv-optimizer\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 10\nLabels: {'test_ci_gap': 1, 'security_auth_secret': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'ui_or_frontend': 7, 'dependency_or_build': 2, 'test_or_ci': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-13b80e59f3f88933\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/6\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: Tbeaumont79 (User)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/6\\nTitle: feat: template Vue d\u00e9terministe + aper\u00e7u /cv/demo (THI-125 \u2014 2/3)\\nBody:\\n## Objet \u2014 THI-125 (2/3), template de rendu\\n\\nDeuxi\u00e8me brique de la **G\u00e9n\u00e9ration CV** : le **composant Vue d\u00e9terministe** qui transforme un `RenderableCv` en HTML/CSS, et la **page d'aper\u00e7u** `/cv/demo`.\\n\\n> **Base** : PR #3 (`feat/cv-render-contract-guardrail`) \u2014 types partag\u00e9s + garde-fou. \u00c0 fusionner avant ou en m\u00eame temps que celle-ci.\\n\\n## Ce qui est livr\u00e9\\n\\n### `CvTemplate.vue`\\n- Rendu d\u00e9terministe d'un `RenderableCv` \u2014 1 seul template au MVP (multi-templates = post-MVP).\\n- Tailwind v4 **tokens uniquement** (`bg-brand-50/100/600/700`, `text-ink-500/700/900`, `rounded-card`) \u2014 aucune valeur en dur.\\n- 4 types de sections g\u00e9r\u00e9s exhaustivement via narrowing TypeScript discrimin\u00e9 (`kind`) : `summary`, `experience` (avec puces), `skills` (badges), `education`.\\n- `id=\\\"cv-render\\\"` \u2192 cible de Chromium headless (PR 3) ; `class=\\\"cv-page\\\"` \u2192 cible du `@media print`.\\n- Ic\u00f4nes SVG inline (email, t\u00e9l\u00e9phone, lieu, lien) \u2014 aucune d\u00e9pendance \"\n  },\n  {\n    \"id\": \"github-feedback-comment-70f30ddb29912fe7\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/6#issuecomment-4658713665\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: issue_comment\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: coderabbitai[bot] (Bot)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/6#issuecomment-4658713665\\nTitle: \\nBody:\\n<!-- This is an auto-generated comment: summarize by coderabbit.ai -->\\n<!-- This is an auto-generated comment: s\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/Tbeaumont79/cv-optimizer", "source_id": "comment-chain-pattern-assumption_checks-d2e93103c25675c4", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_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": "Tbeaumont79/cv-optimizer", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 301060, "scanner": "foundry_dataset", "fingerprint": "48c5bc999adb55a770c4bdba70615e4cce953d8d2c5de027f509babe2759341c", "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": "Tbeaumont79/cv-optimizer#20", "human_labels": ["api_integration_gap", "deployment_env_gap", "positive_human_signal", "ui_or_frontend"], "issue_number": "20", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-1ee925ccb6ee128e", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 7, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 7}, "linked_commit_count": 7, "helicopter_view_count": 2, "source_artifact_count": 2, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#20\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: Tbeaumont79/cv-optimizer#20\nRepo: Tbeaumont79/cv-optimizer\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 3\nLinked commit count: 7\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 7\nLabels: {'api_integration_gap': 1, 'positive_human_signal': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2, 'neutral': 1}\nChanged file labels: {'ui_or_frontend': 7}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-467ac863a19f042c\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/20\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: Tbeaumont79 (User)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/20\\nTitle: feat(ui): landing full-bleed + formulaire magic-link r\u00e9ellement branch\u00e9\\nBody:\\n## Pourquoi\\n\\n1. La landing \u00e9tait \u00ab dans une bo\u00eete \u00bb : le layout contraignait `<main>` \u00e0 `max-w-6xl`, donc les fonds de sections s'arr\u00eataient avec des goutti\u00e8res grises sur les c\u00f4t\u00e9s.\\n2. Le formulaire email de la landing \u00e9tait **factice** : il affichait \u00ab lien envoy\u00e9 \u00bb sans jamais appeler l'API (prop `onSubmit` jamais branch\u00e9e) \u2014 d'o\u00f9 \u00ab je ne re\u00e7ois pas de mail \u00bb depuis le hero.\\n\\n## Changements\\n\\n**Full-bleed**\\n- Le layout ne contraint plus `<main>` ; chaque page app (`/profil`, `/cv/demo`, `/ui`) pose son propre conteneur `mx-auto max-w-6xl px-6 py-10`.\\n- Les fonds des sections de la landing (muted, sombre garde-fou, indigo CTA) vont d\u00e9sormais **bord \u00e0 bord** ; conteneurs internes \u00e9largis \u00e0 `max-w-7xl`, grille pricing \u00e0 `max-w-6xl`.\\n- Footer dupliqu\u00e9 de la landing supprim\u00e9 (celui du layout fait foi) ; `<main>` imbriqu\u00e9 corrig\u00e9 (`<main id=top>` \u2192 `<div>`).\\n\\n**Magic-link**\\n- `MagicLinkForm` appelle `useAuth().signI\"\n  },\n  {\n    \"id\": \"github-feedback-comment-96452ded7ce86623\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"positive_human_signal\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/20#issuecomment-4672728791\",\n    \"text\": \"GitHub feedback: positive_human_signal\\nPolarity: neutral\\nKind: issue_comment\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: coderabbitai[bot] (Bot)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/20#issuecomment-4672728791\\nTitle: \\nBody:\\n<!-- This is an auto-generated comment: summarize by coderabbit.ai -->\\n<!-- This is an aut\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/Tbeaumont79/cv-optimizer", "source_id": "comment-chain-pattern-assumption_checks-eeaaefea6b0d2250", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_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": "Tbeaumont79/cv-optimizer", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 301059, "scanner": "foundry_dataset", "fingerprint": "2bffe5511aaee9e0cc5da6896e0d8838dca764d8b9b41bcbf20b9600027e0a98", "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": "Tbeaumont79/cv-optimizer#2", "human_labels": ["build_install_failure", "dependency_or_build", "source_or_other", "test_ci_gap", "test_or_ci", "ui_or_frontend"], "issue_number": "2", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-57810af7ec0f16a4", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 4, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 1, "ui_or_frontend": 1, "source_or_other": 1, "dependency_or_build": 1}, "linked_commit_count": 10, "helicopter_view_count": 2, "source_artifact_count": 2, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 2, "verification_artifact_count": 1, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#2\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: Tbeaumont79/cv-optimizer#2\nRepo: Tbeaumont79/cv-optimizer\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 2\nLinked commit count: 10\nLinked CI commit count: 2\nLinked CI labels: {'ci_pending_or_incomplete': 2}\nChanged file count: 4\nLabels: {'test_ci_gap': 1, 'build_install_failure': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'ui_or_frontend': 1, 'test_or_ci': 1, 'dependency_or_build': 1, 'source_or_other': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-c8c23e96c301476d\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/2\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: Tbeaumont79 (User)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/2\\nTitle: chore(ci): gate pre-merge local + dedupe vite (corrige typecheck rouge)\\nBody:\\n## Pourquoi\\nLe gate qualit\u00e9 doit \u00eatre **vert et obligatoire** avant la PR moteur honn\u00eate [THI-124](https://github.com/Tbeaumont79/cv-optimizer) (garde-fou anti-invention). En v\u00e9rifiant le gate j'ai trouv\u00e9 un **typecheck ROUGE** sur `main` : `vitest@2` tirait `vite@5` alors que Nuxt 3.21 utilise `vite@7` \u2192 conflit de types (`Plugin<vite7>` vs `PluginOption<vite5>`), `nuxt typecheck` \u00e9chouait.\\n\\n## Changements\\n- **fix**: `vitest ^2.1.8 \u2192 ^3.2.4` \u2192 une seule version de vite (7.3.5) \u2192 typecheck vert.\\n- **add** `scripts/pre-merge.sh` : rejoue `ci.yml` en local (lint\u00b7typecheck\u00b7build\u00b7test, +`--health`). Gate obligatoire tant que les GitHub Actions h\u00e9berg\u00e9es sont bloqu\u00e9es (facturation owner-only).\\n- **add** `docs/ci-gate.md` : \u00e9tat CI, geste exact fondateur pour d\u00e9bloquer les Actions, proc\u00e9dure du gate de transition.\\n\\n## V\u00e9rification (gate local)\\n```\\nbash scripts/pre-merge.sh\\n\u2550\u2550\u2550 GATE VERT \u2014 PR mergeable \u2550\u2550\u2550   (lint\u00b7typecheck\u00b7bui\"\n  },\n  {\n    \"id\": \"github-feedback-comment-bad71a7ea64147e6\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"build_install_failure\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/2#issuecomment-4658608861\",\n    \"text\": \"GitHub feedback: build_install_failure\\nPolarity: bad\\nKind: issue_comment\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: coderabbitai[bot] (Bot)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/2#issuecomment-4658608861\\nTitle: \\nBody:\\n<!-- This is an auto-generated comment: summarize by coderabbit.ai\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/Tbeaumont79/cv-optimizer", "source_id": "comment-chain-pattern-assumption_checks-525eda536be83db6", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_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": "Tbeaumont79/cv-optimizer", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 301058, "scanner": "foundry_dataset", "fingerprint": "75ba57a4cd3cb7958bde1db41c65dc13e897894407a2851e84384070b33dd96e", "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": "Tbeaumont79/cv-optimizer#19", "human_labels": ["api_or_backend", "deployment_env_gap", "security_auth_secret", "ui_or_frontend"], "issue_number": "19", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-a384bde0f883522c", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"api_or_backend": 1, "ui_or_frontend": 1}, "linked_commit_count": 3, "helicopter_view_count": 2, "source_artifact_count": 2, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#19\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: Tbeaumont79/cv-optimizer#19\nRepo: Tbeaumont79/cv-optimizer\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 3\nLinked commit count: 3\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'security_auth_secret': 2, 'deployment_env_gap': 1}\nPolarities: {'bad': 3}\nChanged file labels: {'ui_or_frontend': 1, 'api_or_backend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-78c10e62b32fe742\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/19\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: Tbeaumont79 (User)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/19\\nTitle: fix(auth): \u00e9critures profil qui pendent + middleware auth inop\u00e9rant\\nBody:\\n## Sympt\u00f4mes (constat\u00e9s par le fondateur et reproduits)\\n\\n- `/profil` affichait **\u00ab Impossible de charger ton profil \u00bb** pour un visiteur non connect\u00e9 (au lieu de rediriger vers `/connexion`).\\n- **Toutes les \u00e9critures** (`PUT /api/profile`, `POST experiences/skills`, import) **pendaient ind\u00e9finiment** en build de prod \u2014 l'\u00e9dition de profil \u00e9tait inutilisable.\\n\\n## Causes\\n\\n1. **`getAuthSession` \u2192 `toWebRequest(event)`** : convertir l'\u00e9v\u00e9nement H3 en `Request` touche au flux du corps ; le `readBody(event)` qui suit dans les handlers PUT/POST attend un corps d\u00e9j\u00e0 verrouill\u00e9 \u2192 hang. Les GET (sans corps) passaient, d'o\u00f9 le sympt\u00f4me asym\u00e9trique. Fix : passer `event.headers` directement (comme le middleware serveur le fait d\u00e9j\u00e0).\\n2. **Middleware de navigation `auth`** : il testait la truthiness de l'atom nanostores de `useAuth()` \u2014 un objet, toujours vrai \u2192 **aucune redirection, jamais**. Fix : v\u00e9rification r\u00e9elle de sessio\"\n  },\n  {\n    \"id\": \"github-feedback-comment-55d9019c27fd0788\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/19#issuecomment-4672674538\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: issue_comment\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: coderabbitai[bot] (Bot)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/19#issuecomment-4672674538\\nTitle: \\nBody:\\n<!-- This is an auto-generated comment: summarize by coderabbit.ai -->\\n<!-- review_stack_entry_start -->\\n\\n[![Review Change Sta\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/Tbeaumont79/cv-optimizer", "source_id": "comment-chain-pattern-assumption_checks-3569dba997caa47a", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_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": "Tbeaumont79/cv-optimizer", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 301057, "scanner": "foundry_dataset", "fingerprint": "34be6e15ad18aaa77d58035de0c008fe5721b575df5efe33ca88160f76035127", "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": "Tbeaumont79/cv-optimizer#18", "human_labels": ["deployment_env_gap", "positive_human_signal", "test_ci_gap", "ui_or_frontend"], "issue_number": "18", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-4c9efa2d83a9b59d", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 4, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 4}, "linked_commit_count": 8, "helicopter_view_count": 2, "source_artifact_count": 2, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#18\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: Tbeaumont79/cv-optimizer#18\nRepo: Tbeaumont79/cv-optimizer\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 3\nLinked commit count: 8\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 4\nLabels: {'test_ci_gap': 1, 'positive_human_signal': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2, 'neutral': 1}\nChanged file labels: {'ui_or_frontend': 4}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-0f196afc2d2f3f30\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/18\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: Tbeaumont79 (User)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/18\\nTitle: feat(ui): exploiter la largeur d'\u00e9cran sur les pages app\\nBody:\\n## Pourquoi\\n\\nLe design ne tirait pas parti de la largeur d'\u00e9cran : le shell bornait le contenu \u00e0 `max-w-4xl` (et `/profil` descendait m\u00eame \u00e0 `max-w-3xl`), laissant beaucoup de vide lat\u00e9ral sur grand \u00e9cran. Cette PR \u00e9largit et passe en multi-colonnes l\u00e0 o\u00f9 \u00e7a a du sens.\\n\\n## Changements\\n\\n- **Shell** (`layouts/default.vue`) : header / main / footer en `max-w-6xl`.\\n- **`/profil`** : 2 colonnes sur `lg` \u2014 colonne d'\u00e9dition \u00e0 gauche, **rail lat\u00e9ral sticky** \u00e0 droite (r\u00e9cap \u00ab Ton profil en bref \u00bb avec les compteurs, rep\u00e8re \u00ab Toujours honn\u00eate \u00bb, lien vers l'exemple de CV). Retombe proprement en une seule colonne sur mobile (rail en dessous).\\n- **`/cv/demo`** : passage en **feuille A4 + panneau d'actions sticky** (titre, badge d\u00e9mo, bouton export, note) au lieu d'actions empil\u00e9es au-dessus. `CvTemplate` **intouch\u00e9** \u2014 parit\u00e9 stricte avec l'export PDF serveur pr\u00e9serv\u00e9e.\\n- **`/ui`** : catalogue du design system en **masonry 2 colonnes**.\\n\\nAucune\"\n  },\n  {\n    \"id\": \"github-feedback-comment-5f1b393ab01d571b\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"positive_human_signal\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/18#issuecomment-4670767217\",\n    \"text\": \"GitHub feedback: positive_human_signal\\nPolarity: neutral\\nKind: issue_comment\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: coderabbitai[bot] (Bot)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/18#issuecomment-4670767217\\nTitle: \\nBody:\\n<!-- This is an auto-generated comment: summarize by coderabbit.ai -->\\n<!-- This is an auto-generated commen\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/Tbeaumont79/cv-optimizer", "source_id": "comment-chain-pattern-assumption_checks-c2ba3bdb39211db9", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_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": "Tbeaumont79/cv-optimizer", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 301056, "scanner": "foundry_dataset", "fingerprint": "049d1d393f9db5445e1777e1ac68d2df8ed6bb40cff18dbaac3ef081d2eeb9b6", "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": "Tbeaumont79/cv-optimizer#16", "human_labels": ["api_or_backend", "human_feedback_general", "security_auth_secret", "test_or_ci", "ui_or_frontend"], "issue_number": "16", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.912, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-717eabc35151dc37", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 6, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 1, "api_or_backend": 3, "ui_or_frontend": 2}, "linked_commit_count": 6, "helicopter_view_count": 2, "source_artifact_count": 2, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 1, "verification_artifact_count": 1, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#16\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: Tbeaumont79/cv-optimizer#16\nRepo: Tbeaumont79/cv-optimizer\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 3\nLinked commit count: 6\nLinked CI commit count: 1\nLinked CI labels: {'ci_pending_or_incomplete': 1}\nChanged file count: 6\nLabels: {'human_feedback_general': 1, 'security_auth_secret': 2}\nPolarities: {'neutral': 1, 'bad': 2}\nChanged file labels: {'api_or_backend': 3, 'test_or_ci': 1, 'ui_or_frontend': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-9913f08aa020f2a3\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/16\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: Tbeaumont79 (User)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/16\\nTitle: feat(moteur): analyse d'offre + matching honn\u00eate + garde-fou provenance (THI-124)\\nBody:\\nRecr\u00e9e la PR #13 (DRAFT), auto-ferm\u00e9e quand la branche base de #3 a \u00e9t\u00e9 supprim\u00e9e. Reste en draft \u2014 \u00e0 finaliser par l'auteur THI-124. Base re-point\u00e9e sur main.\"\n  },\n  {\n    \"id\": \"github-feedback-comment-f62b7459da5b8352\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/16#issuecomment-4662129851\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: issue_comment\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: coderabbitai[bot] (Bot)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/16#issuecomment-4662129851\\nTitle: \\nBody:\\n<!-- This is an auto-generated comment: summarize by coderabbit.ai -->\\n<!-- This is an auto-generated comment: rate limited by coderabbit.ai -->\\n\\n> [!WARNING]\\n> ## Review limit reached\\n> \\n> `@Tbeaumont79`, we couldn't start this review because you've reached your PR review rate limit.\\n> \\n> More reviews will be available in 1 minute and 55 seconds. [Learn how PR review limits work](https://docs.coderabbit.ai/management/plans#fair-usage-limits-policy).\\n> \\n> Your organization has run out of usage credits. Purchase more in the [billing tab](https://app.coderabbit.ai/settings/subscription?tab=usage&tenantId=c988c574-4885-443e-9a37-cecb41adb3d2).\\n> \\n> <details>\\n> <summary>\u231b How to resolve this issue?</summary>\\n> \\n> After more reviews become available, a review can be triggered using the `@cod\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/Tbeaumont79/cv-optimizer", "source_id": "comment-chain-pattern-assumption_checks-d203b6ba8af048fd", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_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": "Tbeaumont79/cv-optimizer", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 301055, "scanner": "foundry_dataset", "fingerprint": "926edacacd1baccc1966e029bd8deb9d8de6c0936c879da773c694a11a590d3f", "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": "Tbeaumont79/cv-optimizer#15", "human_labels": ["human_feedback_general", "security_auth_secret", "ui_or_frontend"], "issue_number": "15", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.777, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-5b8a9760eb3c3c4d", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 3, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 3}, "linked_commit_count": 3, "helicopter_view_count": 2, "source_artifact_count": 2, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 1, "verification_artifact_count": 1, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#15\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: Tbeaumont79/cv-optimizer#15\nRepo: Tbeaumont79/cv-optimizer\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 2\nLinked commit count: 3\nLinked CI commit count: 1\nLinked CI labels: {'ci_pending_or_incomplete': 1}\nChanged file count: 3\nLabels: {'human_feedback_general': 1, 'security_auth_secret': 1}\nPolarities: {'neutral': 1, 'bad': 1}\nChanged file labels: {'ui_or_frontend': 3}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-9fb76485c838a8d4\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/15\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: Tbeaumont79 (User)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/15\\nTitle: feat: template Vue d\u00e9terministe + aper\u00e7u /cv/demo (THI-125 \u2014 2/3)\\nBody:\\nRecr\u00e9e la PR #6, auto-ferm\u00e9e quand la branche base (feat/cv-render-contract-guardrail) de #3 a \u00e9t\u00e9 supprim\u00e9e au merge. Code inchang\u00e9. Base re-point\u00e9e sur main. R\u00e9f THI-125.\"\n  },\n  {\n    \"id\": \"github-feedback-comment-459cbbaafd286926\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/15#issuecomment-4662129534\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: issue_comment\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: coderabbitai[bot] (Bot)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/15#issuecomment-4662129534\\nTitle: \\nBody:\\n<!-- This is an auto-generated comment: summarize by coderabbit.ai -->\\n<!-- This is an auto-generated comment: rate limited by coderabbit.ai -->\\n\\n> [!WARNING]\\n> ## Review limit reached\\n> \\n> `@Tbeaumont79`, we couldn't start this review because you've reached your PR review rate limit.\\n> \\n> More reviews will be available in 2 minutes and 40 seconds. [Learn how PR review limits work](https://docs.coderabbit.ai/management/plans#fair-usage-limits-policy).\\n> \\n> Your organization has run out of usage credits. Purchase more in the [billing tab](https://app.coderabbit.ai/settings/subscription?tab=usage&tenantId=c988c574-4885-443e-9a37-cecb41adb3d2).\\n> \\n> <details>\\n> <summary>\u231b How to resolve this issue?</summary>\\n> \\n> After more reviews become available, a review can be triggered using the `@coderabbitai review` command as a PR comme\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/Tbeaumont79/cv-optimizer", "source_id": "comment-chain-pattern-assumption_checks-c7aa7c4824d3e451", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_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": "Tbeaumont79/cv-optimizer", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 301054, "scanner": "foundry_dataset", "fingerprint": "566ad619412cab27e3431d40f3a6e5571a8797442a2f3296fcd1f03e00014e0b", "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": "Tbeaumont79/cv-optimizer#13", "human_labels": ["api_or_backend", "dependency_or_build", "security_auth_secret", "test_ci_gap", "test_or_ci", "ui_or_frontend"], "issue_number": "13", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.67, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-f1d568f9f6f2a62c", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 13, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 2, "api_or_backend": 3, "ui_or_frontend": 6, "dependency_or_build": 2}, "linked_commit_count": 5, "helicopter_view_count": 2, "source_artifact_count": 2, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#13\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: Tbeaumont79/cv-optimizer#13\nRepo: Tbeaumont79/cv-optimizer\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 13\nLabels: {'test_ci_gap': 1, 'security_auth_secret': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'api_or_backend': 3, 'test_or_ci': 2, 'dependency_or_build': 2, 'ui_or_frontend': 6}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-0c03d29290083e3b\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/13\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: Tbeaumont79 (User)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/13\\nTitle: feat(moteur): analyse d'offre + matching honn\u00eate + garde-fou provenance (THI-124)\\nBody:\\n## THI-124 \u2014 WS-Moteur (c\u0153ur produit)\\n\\nPipeline 3 temps (Architecture \u00a74a), garde-fou **architectural** anti-invention.\\n\\n### Contenu\\n- **\u00a71 Analyse d'offre** \u2014 `analyzeOffer()` : texte coll\u00e9 \u2192 `AnalyzedOffer` `{title, requiredSkills[], keywords[], seniority}` via sortie structur\u00e9e Claude.\\n- **\u00a72 Matching honn\u00eate** \u2014 `matchProfileToOffer()` : le LLM re\u00e7oit comme **source de contenu** UNIQUEMENT le `ProfileDTO` r\u00e9el ; l'offre = consignes de tri/reformulation. Chaque item produit porte la `provenance` d'un id profil r\u00e9el.\\n- **\u00a73 Garde-fou d\u00e9terministe (hors LLM)** \u2014 `assertValidCv()` (r\u00e9utilise le module de THI-125) rejette tout item sans provenance valide. **Invention impossible par construction.**\\n- Client Claude via `fetch`, **injectable** (`LlmComplete`) \u21d2 tests sans r\u00e9seau ni cl\u00e9.\\n- **RGPD** : co\u00fbt logg\u00e9 (mod\u00e8le/tokens/$ estim\u00e9), **jamais** le contenu CV.\\n- Mod\u00e8le par d\u00e9faut **`claude-sonnet-4-6`** (DoD) ; a\"\n  },\n  {\n    \"id\": \"github-feedback-comment-41e51b1d00135320\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/13#issuecomment-4658899080\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: issue_comment\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: coderabbitai[bot] (Bot)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/13#issuecomment-4658899080\\nTitle: \\nBody:\\n<!-- This is an auto-generated comment: summarize by coderabbit.ai -->\\n<!-- This is an auto-g\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/Tbeaumont79/cv-optimizer", "source_id": "comment-chain-pattern-assumption_checks-c4c566d74a9fb540", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 336772, "scanner": "foundry_dataset", "fingerprint": "e48039da74813e16022a850f992780f59ff7bbee35bb05c01070f2c941d8a4ba", "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_or_ci": 1, "test_ci_gap": 1, "api_or_backend": 3, "ui_or_frontend": 1, "dependency_or_build": 1, "security_auth_secret": 1, "verification_or_tests": 5, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"ambiguous_needs_more_evidence": 8}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 54, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 6, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 6, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 6, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 29, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 6, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#9", "issue_number": "9", "quality_tiers": {"high_confidence": 3, "assumption_check": 2, "weak_supervision": 1}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-62febf9ac4855f33", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 5, "api_or_backend": 15, "ui_or_frontend": 5, "dependency_or_build": 5}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#9\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#9\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#9\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 9\nGraph consistency label: supported_by_high_confidence_link\nNodes: 29\nEdges: 54\nNode types: {'pr_file': 6, 'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 12, 'thread_touches_file': 6, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 6, 'issue_chain_touches_file': 6, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 4, 'api_or_backend': 3, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'security_auth_secret': 1, 'ui_or_frontend': 1, 'test_or_ci': 1, 'dependency_or_build': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 2, 'weak_supervision': 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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-5d7c4c1cb57d892e", "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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 336771, "scanner": "foundry_dataset", "fingerprint": "8ff08a3ca278ac8a72e9026cc29c6bcb8faebab160df039dedd25f5401e8beb2", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 2, "api_or_backend": 3, "schema_or_data": 2, "ui_or_frontend": 4, "security_or_secrets": 2, "security_auth_secret": 3, "build_install_failure": 1, "verification_or_tests": 3, "ci_pending_or_incomplete": 1, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 6, "human_reported_issue_then_verified_fix_attempt": 4}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_with_verification_signal": 12}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 99, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 4, "thread_has_comment": 4, "thread_touches_file": 9, "comment_chain_has_ci": 1, "chain_has_link_quality": 6, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 9, "thread_has_comment_chain": 4, "comment_chain_links_commit": 18, "comment_chain_touches_file": 36, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 4}, "node_count": 35, "node_types": {"repo": 1, "commit": 7, "thread": 1, "comment": 4, "pr_file": 9, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 4}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#8", "issue_number": "8", "quality_tiers": {"high_confidence": 5, "weak_supervision": 1}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-1849e3de030716b2", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"api_or_backend": 21, "schema_or_data": 14, "ui_or_frontend": 28}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#8\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#8\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#8\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 8\nGraph consistency label: supported_by_verification_signal\nNodes: 35\nEdges: 99\nNode types: {'pr_file': 9, 'commit': 7, 'link_quality': 6, 'comment': 4, 'comment_chain': 4, 'thread': 1, 'repo': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 36, 'comment_chain_links_commit': 18, 'thread_touches_file': 9, 'issue_chain_touches_file': 9, 'chain_has_link_quality': 6, 'thread_has_comment': 4, 'thread_has_comment_chain': 4, 'comment_has_chain': 4, 'issue_chain_has_comment_chain': 4, 'repo_has_thread': 1, 'comment_chain_has_ci': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'claimed_resolved_with_verification_signal': 6, 'ui_or_frontend': 4, 'human_reported_issue_then_verified_fix_attempt': 4, 'security_auth_secret': 3, 'api_or_backend': 3, 'verification_or_tests': 3, 'schema_or_data': 2, 'bug_fix': 2, 'security_or_secrets': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'build_install_failure': 1, 'ci_pending_or_incomplete': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 12}\nQuality tiers: {'high_confidence': 5, 'weak_supervision': 1}\nCI labels: {'ci_pending_or_incomplete': 2}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-6863df3ea348e1e7", "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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 336770, "scanner": "foundry_dataset", "fingerprint": "e6d8d8546186cdc59ac0ceef4b0fbb55856bb71bdb0250d5e50c24fc80c836a5", "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_or_ci": 1, "test_ci_gap": 1, "ui_or_frontend": 7, "dependency_or_build": 2, "security_auth_secret": 1, "verification_or_tests": 5, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "ambiguous_needs_more_evidence": 3, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"not_resolved_or_not_observed": 2, "ambiguous_needs_more_evidence": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 69, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 10, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 6, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 10, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "comment_chain_touches_file": 20, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 33, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 10, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#6", "issue_number": "6", "quality_tiers": {"unresolved": 1, "assumption_check": 2, "weak_supervision": 3}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-d265fd9698dae783", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"test_or_ci": 5, "ui_or_frontend": 35, "dependency_or_build": 10}}, "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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#6\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#6\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#6\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 6\nGraph consistency label: weak_supervision_needs_review\nNodes: 33\nEdges: 69\nNode types: {'pr_file': 10, 'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 20, 'thread_touches_file': 10, 'issue_chain_touches_file': 10, 'chain_has_link_quality': 6, 'comment_chain_links_commit': 5, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 7, 'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 3, 'dependency_or_build': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'security_auth_secret': 1, 'test_or_ci': 1, 'comment_has_related_commit_context': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 2, '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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-f37e12929f44a69c", "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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 336769, "scanner": "foundry_dataset", "fingerprint": "44470fcdd728e88b7271ba1705f2114fb161b3c67caae1f94375eee62cac0c0a", "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_or_ci": 1, "test_ci_gap": 1, "ui_or_frontend": 4, "mock_placeholder": 1, "dependency_or_build": 2, "verification_or_tests": 5, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"ambiguous_needs_more_evidence": 8}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 58, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 7, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 6, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 7, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 14, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 30, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 7, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#3", "issue_number": "3", "quality_tiers": {"high_confidence": 4, "assumption_check": 2}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-8e9b7007d9924038", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 5, "ui_or_frontend": 20, "dependency_or_build": 10}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#3\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#3\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#3\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 3\nGraph consistency label: supported_by_high_confidence_link\nNodes: 30\nEdges: 58\nNode types: {'pr_file': 7, 'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 14, 'thread_touches_file': 7, 'issue_chain_touches_file': 7, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 6, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'verification_or_tests': 5, 'ui_or_frontend': 4, 'ambiguous_needs_more_evidence': 4, 'dependency_or_build': 2, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'mock_placeholder': 1, 'test_or_ci': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'high_confidence': 4, 'assumption_check': 2}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-98b1da758ae414cd", "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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 336768, "scanner": "foundry_dataset", "fingerprint": "ff63001e5d1a932e067ccb4debe09bf72f134b5a403ed449f69148674c72a82b", "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_or_ci": 1, "test_ci_gap": 1, "ui_or_frontend": 1, "source_or_other": 1, "dependency_or_build": 1, "build_install_failure": 1, "verification_or_tests": 6, "ci_pending_or_incomplete": 1, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"ambiguous_needs_more_evidence": 8}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {"ci_pending_or_incomplete": 4}, "synthetic": false, "edge_count": 52, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 4, "comment_chain_has_ci": 2, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 6, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 4, "thread_has_comment_chain": 2, "comment_chain_links_commit": 10, "comment_chain_touches_file": 8, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 29, "node_types": {"repo": 1, "commit": 6, "thread": 1, "comment": 2, "pr_file": 4, "alignment": 2, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#2", "issue_number": "2", "quality_tiers": {"high_confidence": 4, "assumption_check": 2}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-45c4a11b2becb2b6", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 5, "ui_or_frontend": 5, "source_or_other": 5, "dependency_or_build": 5}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#2\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#2\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#2\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 2\nGraph consistency label: supported_by_high_confidence_link\nNodes: 29\nEdges: 52\nNode types: {'commit': 6, 'link_quality': 6, 'pr_file': 4, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 10, 'comment_chain_touches_file': 8, 'chain_has_link_quality': 6, 'thread_touches_file': 4, 'issue_chain_touches_file': 4, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'comment_chain_has_ci': 2, 'issue_chain_has_comment_chain': 2, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1}\nLabels: {'verification_or_tests': 6, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'build_install_failure': 1, 'ui_or_frontend': 1, 'test_or_ci': 1, 'dependency_or_build': 1, 'source_or_other': 1, 'ci_pending_or_incomplete': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'high_confidence': 4, 'assumption_check': 2}\nCI labels: {'ci_pending_or_incomplete': 4}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-12d0cc35164b7e99", "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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 336767, "scanner": "foundry_dataset", "fingerprint": "697965e34f748f4cf30962581fd2be22beeb62442d99db8a4e32778ab70fe5b6", "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, "ui_or_frontend": 4, "deployment_env_gap": 1, "positive_human_signal": 1, "verification_or_tests": 6, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 5, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 3, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"ambiguous_needs_more_evidence": 10}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 57, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 3, "thread_has_comment": 3, "thread_touches_file": 4, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 7, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 4, "thread_has_comment_chain": 3, "comment_chain_links_commit": 8, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 3}, "node_count": 31, "node_types": {"repo": 1, "commit": 6, "thread": 1, "comment": 3, "pr_file": 4, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 7, "comment_chain": 3, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#18", "issue_number": "18", "quality_tiers": {"high_confidence": 3, "assumption_check": 2, "weak_supervision": 2}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-2dfd8c8f355e2de3", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"ui_or_frontend": 24}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#18\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#18\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#18\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 18\nGraph consistency label: supported_by_high_confidence_link\nNodes: 31\nEdges: 57\nNode types: {'link_quality': 7, 'commit': 6, 'pr_file': 4, 'comment': 3, 'comment_chain': 3, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 12, 'comment_chain_links_commit': 8, 'chain_has_link_quality': 7, 'thread_touches_file': 4, 'issue_chain_touches_file': 4, 'thread_has_comment': 3, 'thread_has_comment_chain': 3, 'comment_has_chain': 3, 'issue_chain_has_comment_chain': 3, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'verification_or_tests': 6, 'ambiguous_needs_more_evidence': 5, 'ui_or_frontend': 4, 'comment_has_related_commit_context': 3, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'positive_human_signal': 1, 'deployment_env_gap': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 10}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 2, 'assumption_check': 2}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-1062545d866c5255", "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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 336766, "scanner": "foundry_dataset", "fingerprint": "ac5153fa4335863cf05d662393c69e22e9d673974a9a02798249ff045eb3d159", "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": {"ui_or_frontend": 3, "generated_provenance": 1, "security_auth_secret": 1, "verification_or_tests": 1, "human_feedback_general": 1, "ci_pending_or_incomplete": 1, "self_attested_unverified": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 3, "comment_has_related_commit_context": 1, "thread_has_human_issue_and_fix_context": 2, "self_attested_or_generated_fix_unverified": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"self_attested_unverified": 2, "ambiguous_needs_more_evidence": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 32, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 3, "comment_chain_has_ci": 1, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 3, "thread_has_comment_chain": 2, "comment_chain_links_commit": 3, "comment_chain_touches_file": 6, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 18, "node_types": {"repo": 1, "commit": 2, "thread": 1, "comment": 2, "pr_file": 3, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#15", "issue_number": "15", "quality_tiers": {"weak_supervision": 4}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-eac7af81480a5d23", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"ui_or_frontend": 15}}, "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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#15\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#15\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#15\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 15\nGraph consistency label: weak_supervision_needs_review\nNodes: 18\nEdges: 32\nNode types: {'link_quality': 4, 'pr_file': 3, 'comment': 2, 'comment_chain': 2, 'commit': 2, 'thread': 1, 'repo': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 6, 'chain_has_link_quality': 4, 'thread_touches_file': 3, 'comment_chain_links_commit': 3, 'issue_chain_touches_file': 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_has_ci': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 3, 'ambiguous_needs_more_evidence': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'human_feedback_general': 1, 'security_auth_secret': 1, 'comment_has_related_commit_context': 1, 'generated_provenance': 1, 'verification_or_tests': 1, 'ci_pending_or_incomplete': 1, 'self_attested_or_generated_fix_unverified': 1, 'self_attested_unverified': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6, 'self_attested_unverified': 2}\nQuality tiers: {'weak_supervision': 4}\nCI labels: {'ci_pending_or_incomplete': 2}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-b8aa8386f0e6d831", "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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 336765, "scanner": "foundry_dataset", "fingerprint": "06d7ef264a108a059eaf3d4b47a5e42d38212cbb4fa56f67f7a990c6ba43a1e1", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 1, "test_or_ci": 1, "test_ci_gap": 2, "api_or_backend": 2, "security_or_secrets": 2, "verification_or_tests": 3, "ci_pending_or_incomplete": 1, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 4, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 4, "human_reported_issue_then_verified_fix_attempt": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_with_verification_signal": 8}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 55, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 3, "comment_chain_has_ci": 1, "alignment_uses_comment": 4, "alignment_uses_finding": 4, "chain_has_link_quality": 8, "comment_aligns_finding": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 3, "thread_has_comment_chain": 2, "comment_chain_links_commit": 10, "comment_chain_touches_file": 6, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 32, "node_types": {"repo": 1, "commit": 6, "thread": 1, "comment": 2, "pr_file": 3, "alignment": 4, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 8, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#14", "issue_number": "14", "quality_tiers": {"high_confidence": 4, "assumption_check": 4}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-5cc423be0294cc25", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 5, "api_or_backend": 10}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#14\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#14\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#14\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 14\nGraph consistency label: supported_by_verification_signal\nNodes: 32\nEdges: 55\nNode types: {'link_quality': 8, 'commit': 6, 'alignment': 4, 'pr_file': 3, 'comment': 2, 'comment_chain': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 10, 'chain_has_link_quality': 8, 'comment_chain_touches_file': 6, 'alignment_uses_comment': 4, 'alignment_uses_finding': 4, 'comment_aligns_finding': 4, 'thread_touches_file': 3, 'issue_chain_touches_file': 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_has_ci': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1}\nLabels: {'claimed_resolved_with_verification_signal': 4, 'blueprint_human_gap_disagreement': 4, 'verification_or_tests': 3, 'test_ci_gap': 2, 'api_or_backend': 2, 'human_reported_issue_then_verified_fix_attempt': 2, 'security_or_secrets': 2, 'thread_has_human_issue_and_fix_context': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'test_or_ci': 1, 'bug_fix': 1, 'ci_pending_or_incomplete': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 8}\nQuality tiers: {'high_confidence': 4, 'assumption_check': 4}\nCI labels: {'ci_pending_or_incomplete': 2}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-c853be158d00d7f7", "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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 336764, "scanner": "foundry_dataset", "fingerprint": "e55745e2542f09ff198daef9f0258ee69b9a8100d69228c9acd5c75990a3ec76", "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_or_ci": 2, "test_ci_gap": 1, "api_or_backend": 3, "ui_or_frontend": 6, "dependency_or_build": 2, "security_auth_secret": 1, "verification_or_tests": 5, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "ambiguous_needs_more_evidence": 3, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"not_resolved_or_not_observed": 2, "ambiguous_needs_more_evidence": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 78, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 13, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 6, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "comment_chain_touches_file": 24, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 36, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 13, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#13", "issue_number": "13", "quality_tiers": {"unresolved": 1, "assumption_check": 2, "weak_supervision": 3}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-c1061a12a2a064b4", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"test_or_ci": 10, "api_or_backend": 15, "ui_or_frontend": 30, "dependency_or_build": 10}}, "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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#13\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#13\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#13\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 13\nGraph consistency label: weak_supervision_needs_review\nNodes: 36\nEdges: 78\nNode types: {'pr_file': 13, 'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 24, 'thread_touches_file': 13, 'issue_chain_touches_file': 12, 'chain_has_link_quality': 6, 'comment_chain_links_commit': 5, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 6, 'verification_or_tests': 5, 'api_or_backend': 3, 'ambiguous_needs_more_evidence': 3, 'test_or_ci': 2, 'dependency_or_build': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'security_auth_secret': 1, 'comment_has_related_commit_context': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 2, '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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-981e28b7dc216198", "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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 336763, "scanner": "foundry_dataset", "fingerprint": "45051e4d9c6b15c30a448348428dd485bbcbb311662b7c8b12b620b68c8bec0a", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 1, "test_or_ci": 1, "test_ci_gap": 1, "api_or_backend": 3, "security_or_secrets": 3, "security_auth_secret": 1, "verification_or_tests": 5, "ci_pending_or_incomplete": 1, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"ambiguous_needs_more_evidence": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 51, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 4, "comment_chain_has_ci": 1, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 6, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 4, "thread_has_comment_chain": 2, "comment_chain_links_commit": 10, "comment_chain_touches_file": 8, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 32, "node_types": {"repo": 1, "commit": 9, "thread": 1, "comment": 2, "pr_file": 4, "alignment": 2, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#12", "issue_number": "12", "quality_tiers": {"high_confidence": 4, "assumption_check": 2}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-73aa005c30eea46e", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 5, "api_or_backend": 15}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#12\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#12\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#12\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 12\nGraph consistency label: supported_by_verification_signal\nNodes: 32\nEdges: 51\nNode types: {'commit': 9, 'link_quality': 6, 'pr_file': 4, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 10, 'comment_chain_touches_file': 8, 'chain_has_link_quality': 6, 'thread_touches_file': 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, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'comment_chain_has_ci': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1}\nLabels: {'verification_or_tests': 5, 'api_or_backend': 3, 'security_or_secrets': 3, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'test_ci_gap': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'comment_has_related_commit_context': 1, 'ci_pending_or_incomplete': 1, 'ambiguous_needs_more_evidence': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'high_confidence': 4, 'assumption_check': 2}\nCI labels: {'ci_pending_or_incomplete': 2}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-ef2b01b155775407", "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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 336762, "scanner": "foundry_dataset", "fingerprint": "bef3af33a60aa9ca83d53dad2fe5d78d9d4fad9dc924388844e9e4649165e9ba", "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, "mock_placeholder": 1, "verification_or_tests": 5, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"ambiguous_needs_more_evidence": 8}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 30, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 6, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 23, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#1", "issue_number": "1", "quality_tiers": {"high_confidence": 4, "assumption_check": 2}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-69f5e85d0efaa269", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#1\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#1\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#1\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 1\nGraph consistency label: supported_by_high_confidence_link\nNodes: 23\nEdges: 30\nNode types: {'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 6, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'test_ci_gap': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'high_confidence': 4, 'assumption_check': 2}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-ec664c302bc52d43", "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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 328422, "scanner": "foundry_dataset", "fingerprint": "4672be9d03771070190c4eb1ed7f396b9bf6a7b63c7500579ebe51c21d250eb9", "category": "quality", "severity": "high", "confidence": 0.76, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Schema, UI, and API mismatch", "intent": "Assumption-check examples for data-path consistency across layers.", "labels": {"bug_fix": 2, "api_or_backend": 3, "schema_or_data": 2, "ui_or_frontend": 4, "security_or_secrets": 2, "security_auth_secret": 3, "build_install_failure": 1, "verification_or_tests": 3, "ci_pending_or_incomplete": 1, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 6, "human_reported_issue_then_verified_fix_attempt": 4}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"claimed_resolved_with_verification_signal": 12}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 99, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 4, "thread_has_comment": 4, "thread_touches_file": 9, "comment_chain_has_ci": 1, "chain_has_link_quality": 6, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 9, "thread_has_comment_chain": 4, "comment_chain_links_commit": 18, "comment_chain_touches_file": 36, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 4}, "node_count": 35, "node_types": {"repo": 1, "commit": 7, "thread": 1, "comment": 4, "pr_file": 9, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 4}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#8", "issue_number": "8", "quality_tiers": {"high_confidence": 5, "weak_supervision": 1}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-333943436f92b6a9", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"api_or_backend": 21, "schema_or_data": 14, "ui_or_frontend": 28}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: supported_by_verification_signal\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#8\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#8\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#8\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 8\nGraph consistency label: supported_by_verification_signal\nNodes: 35\nEdges: 99\nNode types: {'pr_file': 9, 'commit': 7, 'link_quality': 6, 'comment': 4, 'comment_chain': 4, 'thread': 1, 'repo': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 36, 'comment_chain_links_commit': 18, 'thread_touches_file': 9, 'issue_chain_touches_file': 9, 'chain_has_link_quality': 6, 'thread_has_comment': 4, 'thread_has_comment_chain': 4, 'comment_has_chain': 4, 'issue_chain_has_comment_chain': 4, 'repo_has_thread': 1, 'comment_chain_has_ci': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'claimed_resolved_with_verification_signal': 6, 'ui_or_frontend': 4, 'human_reported_issue_then_verified_fix_attempt': 4, 'security_auth_secret': 3, 'api_or_backend': 3, 'verification_or_tests': 3, 'schema_or_data': 2, 'bug_fix': 2, 'security_or_secrets': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'build_install_failure': 1, 'ci_pending_or_incomplete': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 12}\nQuality tiers: {'high_confidence': 5, 'weak_supervision': 1}\nCI labels: {'ci_pending_or_incomplete': 2}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-3a91c746f112ad91", "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": "Tbeaumont79/cv-optimizer", "source_dataset": "graph_queries/schema_ui_api_mismatch", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_schema_ui_api_gap", "level": "error", "message": {"text": "Foundry mined schema ui api mismatch: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 328421, "scanner": "foundry_dataset", "fingerprint": "697f6e4bafa39ba1c704d5f216fc8c38ba6fdaa427f421028d098419bead5a43", "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": {"schema_or_data": 2, "ui_or_frontend": 2, "security_or_secrets": 1, "security_auth_secret": 2, "verification_or_tests": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "comment_has_related_commit_context": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"ambiguous_needs_more_evidence": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "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": 19, "node_types": {"repo": 1, "commit": 3, "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": "Tbeaumont79/cv-optimizer#5", "issue_number": "5", "quality_tiers": {"high_confidence": 3, "weak_supervision": 1}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-54b51b5b833f5385", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"schema_or_data": 10, "ui_or_frontend": 10}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: supported_by_verification_signal\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#5\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#5\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#5\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 5\nGraph consistency label: supported_by_verification_signal\nNodes: 19\nEdges: 37\nNode types: {'pr_file': 4, 'link_quality': 4, 'commit': 3, '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: {'claimed_resolved_with_verification_signal': 3, 'security_auth_secret': 2, 'schema_or_data': 2, 'ui_or_frontend': 2, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'security_or_secrets': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-8dcab293ca3b6c0f", "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": "Tbeaumont79/cv-optimizer", "source_dataset": "graph_queries/schema_ui_api_mismatch", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 316586, "scanner": "foundry_dataset", "fingerprint": "90c387b40af7f736bea040a622c2b24a6a152454cecb7e93c279dc37d0538b16", "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": "Tbeaumont79/cv-optimizer#7", "human_labels": ["api_or_backend", "mock_placeholder", "ui_or_frontend"], "issue_number": "7", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.82, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-c46247fe0c721603", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 8, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"api_or_backend": 1, "ui_or_frontend": 7}, "linked_commit_count": 3, "helicopter_view_count": 2, "source_artifact_count": 2, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: bad_chains\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#7\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: Tbeaumont79/cv-optimizer#7\nRepo: Tbeaumont79/cv-optimizer\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 3\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 8\nLabels: {'mock_placeholder': 2}\nPolarities: {'bad': 2}\nChanged file labels: {'ui_or_frontend': 7, 'api_or_backend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-2f290d1087847a50\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"mock_placeholder\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/7\",\n    \"text\": \"GitHub feedback: mock_placeholder\\nPolarity: bad\\nKind: pull_request_body\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: Tbeaumont79 (User)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/7\\nTitle: feat(landing): page CV Optimizer FR conforme \u00e0 la copy valid\u00e9e (THI-130)\\nBody:\\n## THI-130 \u2014 WS-Landing int\u00e9gration \u00b7 Page CV Optimizer (Nuxt, FR)\\n\\nInt\u00e8gre la landing FR **conforme au doc valid\u00e9 CMO** ([landing-copy](/THI/issues/THI-128#document-landing-copy)).\\n\\n### Ce qui est livr\u00e9\\n- **9 sections** : Hero (visuel avant/apr\u00e8s structur\u00e9), Probl\u00e8me, Comment \u00e7a marche (3 \u00e9tapes), **Garde-fou** (diff\u00e9renciateur c\u0153ur, \u2705/\u274c), Pour qui, **Pricing freemium**, **FAQ + JSON-LD FAQPage**, CTA final, Footer.\\n- **CTA magic-link** : champ e-mail + validation + \u00e9cran \u00ab lien envoy\u00e9 \u00bb (microcopy conforme). L'envoi r\u00e9el du lien est branchable via la prop `onSubmit` \u2192 **WS auth** (hors p\u00e9rim\u00e8tre de cette issue).\\n- **SEO de base** : `<title>`/meta description fournis, **un seul `<h1>`**, OpenGraph, `lang=\\\"fr\\\"`, canonical, `sitemap.xml`, JSON-LD FAQPage.\\n- **i18n FR-first** : toute la copy vit dans `i18n/fr.ts` \u2014 **aucun texte en dur** dans les templates (lecture via `useLanding()`).\\n\\n### Tokens non fig\u00e9s (swap tri\"\n  },\n  {\n    \"id\": \"github-feedback-comment-426e4dd05613493a\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"mock_placeholder\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/7#issuecomment-4658723095\",\n    \"text\": \"GitHub feedback: mock_placeholder\\nPolarity: bad\\nKind: issue_comment\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: coderabbitai[bot] (Bot)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/7#issuecomment-4658723095\\nTitle: \\nBody:\\n<!-- This is an auto-generated comment: summarize by coderabbit.ai -->\\n<!-- review_stack_entry_start -->\\n\\n[![Review Change Stack](https://storage.googleapis.com/coderabbit_pub\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/Tbeaumont79/cv-optimizer", "source_id": "comment-chain-pattern-bad_chains-497f41fabdf60c3d", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_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": "Tbeaumont79/cv-optimizer", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 316585, "scanner": "foundry_dataset", "fingerprint": "067733564ea46443eb60a5b66adc96208c2c358600e6b72f83ae22c2b21323c2", "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": "Tbeaumont79/cv-optimizer#3", "human_labels": ["dependency_or_build", "mock_placeholder", "test_ci_gap", "test_or_ci", "ui_or_frontend"], "issue_number": "3", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-aacb0e70d30eed6e", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 7, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 1, "ui_or_frontend": 4, "dependency_or_build": 2}, "linked_commit_count": 6, "helicopter_view_count": 2, "source_artifact_count": 2, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: bad_chains\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#3\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: Tbeaumont79/cv-optimizer#3\nRepo: Tbeaumont79/cv-optimizer\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 2\nLinked commit count: 6\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 7\nLabels: {'test_ci_gap': 1, 'mock_placeholder': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'dependency_or_build': 2, 'ui_or_frontend': 4, 'test_or_ci': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-78c36bd0bd1f9b10\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/3\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: Tbeaumont79 (User)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/3\\nTitle: feat: contrat CV structur\u00e9 + garde-fou de provenance (THI-125)\\nBody:\\n## Objet \u2014 THI-125 (1/3), socle garde-fou\\n\\nPremi\u00e8re brique de la **G\u00e9n\u00e9ration CV** : le **contrat du CV structur\u00e9** (fronti\u00e8re Moteur \u2194 G\u00e9n\u00e9ration) et le **garde-fou de provenance en code**. PR volontairement petite et sans UI : elle pose la base test\u00e9e sur laquelle viendront le template Vue (PR 2) et l'export PDF (PR 3).\\n\\n## Ce que \u00e7a contient\\n- **`packages/shared/src/cv.ts`** \u2014 `RenderableCv` : en-t\u00eate + sections **ordonn\u00e9es par le moteur** (`summary` / `experience` / `skills` / `education`). Chaque \u00e9l\u00e9ment rendu porte une **`provenance`** vers un \u00e9l\u00e9ment r\u00e9el du profil.\\n- **`packages/shared/src/provenance.ts`** \u2014 contr\u00f4le **d\u00e9terministe, hors LLM** (Archi \u00a74a.3) :\\n  - `checkProvenance(cv, validIds)` \u2192 liste des \u00e9l\u00e9ments non sourc\u00e9s (ne l\u00e8ve pas) ;\\n  - `assertValidCv(cv, validIds)` \u2192 l\u00e8ve `ProvenanceError` (barri\u00e8re avant stockage c\u00f4t\u00e9 moteur **et** avant rendu/export c\u00f4t\u00e9 g\u00e9n\u00e9ration) ;\\n  - lecture **runtime d\u00e9fensive** : on ne\"\n  },\n  {\n    \"id\": \"github-feedback-comment-df2e0e817529ad2f\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"mock_placeholder\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/3#issuecomment-4658657224\",\n    \"text\": \"GitHub feedback: mock_placeholder\\nPolarity: bad\\nKind: issue_comment\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: coderabbitai[bot] (Bot)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/3#issuecomment-4658657224\\nTitle: \\nBody:\\n<!-- This is an auto-generated comment: summarize by coderabbit.ai -->\\n<!-- review_stack_entry_start -->\\n\\n[![Review Change Stack](https://s\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/Tbeaumont79/cv-optimizer", "source_id": "comment-chain-pattern-bad_chains-b25073864607d88f", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_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": "Tbeaumont79/cv-optimizer", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 316584, "scanner": "foundry_dataset", "fingerprint": "68f0e42af983e8c043f15c2675904a873db4164c24f00b321b5fbd2746f103a5", "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": "Tbeaumont79/cv-optimizer#1", "human_labels": ["mock_placeholder", "test_ci_gap"], "issue_number": "1", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.895, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-987852f010f55e77", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 6, "helicopter_view_count": 2, "source_artifact_count": 2, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: bad_chains\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#1\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: Tbeaumont79/cv-optimizer#1\nRepo: Tbeaumont79/cv-optimizer\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 2\nLinked commit count: 6\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'mock_placeholder': 1, 'test_ci_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-dd93add13f736a83\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"mock_placeholder\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/1\",\n    \"text\": \"GitHub feedback: mock_placeholder\\nPolarity: bad\\nKind: pull_request_body\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: Tbeaumont79 (User)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/1\\nTitle: WS-Scaffold \u00b7 Bootstrap monorepo CV Optimizer (Nuxt 3 + Nitro / TS strict / Tailwind v4 / PostgreSQL, CI PR-only)\\nBody:\\n## Objectif \u2014 WS-Scaffold (THI-122)\\n\\nSquelette technique du **CV Optimizer**, align\u00e9 sur l'architecture **THI-120 = Nuxt 3 + Nitro** (valid\u00e9 par le CEO ; substitution du Vue-SPA + NestJS initialement \u00e9crit dans le brief, m\u00eame \u00e9cosyst\u00e8me Vue, meilleur pour une petite \u00e9quipe + r\u00e9utilisation Duska).\\n\\n## Contenu\\n- **Monorepo pnpm** : `apps/app` (Nuxt 3 full-stack) + `packages/shared` (contrats TS `@cvo/shared`).\\n- **Full-stack Nuxt 3** : pages Vue + **serveur Nitro** (`/api/*`), **TS strict**. Traitement sensible (futur LLM/profil) c\u00f4t\u00e9 serveur uniquement.\\n- **Tailwind v4** : **design tokens** (`apps/app/assets/css/main.css`, `@theme`) \u2014 aucune valeur en dur.\\n- **DB** : PostgreSQL via Prisma (ORM + migration `init` squelette, **pas de mod\u00e8le m\u00e9tier**).\\n- **RGPD-ready** : placeholder structurel (`DataGovernanceEvent` + `docs/rgpd.md`) \u2014 cadrage = THI-120.\\n- **Health check** : `GE\"\n  },\n  {\n    \"id\": \"github-feedback-comment-d38b5bcfcbe1292f\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/Tbeaumont79/cv-optimizer/pull/1#issuecomment-4658115204\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: Tbeaumont79/cv-optimizer\\nAuthor: coderabbitai[bot] (Bot)\\nURL: https://github.com/Tbeaumont79/cv-optimizer/pull/1#issuecomment-4658115204\\nTitle: \\nBody:\\n<!-- This is an auto-generated comment: summarize by coderabbit.ai -->\\n<!-- review_stack_entry_start -->\\n\\n[![Review Change Stack](https://storage.googleapis.com/coderabbit_public_assets/review-stack-in-cod\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/Tbeaumont79/cv-optimizer", "source_id": "comment-chain-pattern-bad_chains-78b1b071504513c0", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_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": "Tbeaumont79/cv-optimizer", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_auth_guardrail_gap", "level": "error", "message": {"text": "Foundry mined security auth guardrail gaps: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 332227, "scanner": "foundry_dataset", "fingerprint": "6b3d203d0a246fa0cf30a13a29942531cf78ed47d23053a499a94fc8419fab80", "category": "auth", "severity": "critical", "confidence": 0.78, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Security/auth changes without enough guardrails", "intent": "Assumption-check security/auth examples requiring stronger tests or CI.", "labels": {"bug_fix": 2, "api_or_backend": 3, "schema_or_data": 2, "ui_or_frontend": 4, "security_or_secrets": 2, "security_auth_secret": 3, "build_install_failure": 1, "verification_or_tests": 3, "ci_pending_or_incomplete": 1, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 6, "human_reported_issue_then_verified_fix_attempt": 4}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_with_verification_signal": 12}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 99, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 4, "thread_has_comment": 4, "thread_touches_file": 9, "comment_chain_has_ci": 1, "chain_has_link_quality": 6, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 9, "thread_has_comment_chain": 4, "comment_chain_links_commit": 18, "comment_chain_touches_file": 36, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 4}, "node_count": 35, "node_types": {"repo": 1, "commit": 7, "thread": 1, "comment": 4, "pr_file": 9, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 4}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#8", "issue_number": "8", "quality_tiers": {"high_confidence": 5, "weak_supervision": 1}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-ecaa0accecd4b9e9", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"api_or_backend": 21, "schema_or_data": 14, "ui_or_frontend": 28}}, "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_verification_signal\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#8\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#8\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#8\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 8\nGraph consistency label: supported_by_verification_signal\nNodes: 35\nEdges: 99\nNode types: {'pr_file': 9, 'commit': 7, 'link_quality': 6, 'comment': 4, 'comment_chain': 4, 'thread': 1, 'repo': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 36, 'comment_chain_links_commit': 18, 'thread_touches_file': 9, 'issue_chain_touches_file': 9, 'chain_has_link_quality': 6, 'thread_has_comment': 4, 'thread_has_comment_chain': 4, 'comment_has_chain': 4, 'issue_chain_has_comment_chain': 4, 'repo_has_thread': 1, 'comment_chain_has_ci': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'claimed_resolved_with_verification_signal': 6, 'ui_or_frontend': 4, 'human_reported_issue_then_verified_fix_attempt': 4, 'security_auth_secret': 3, 'api_or_backend': 3, 'verification_or_tests': 3, 'schema_or_data': 2, 'bug_fix': 2, 'security_or_secrets': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'build_install_failure': 1, 'ci_pending_or_incomplete': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 12}\nQuality tiers: {'high_confidence': 5, 'weak_supervision': 1}\nCI labels: {'ci_pending_or_incomplete': 2}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-fd3ba8d86009bf4a", "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": "Tbeaumont79/cv-optimizer", "source_dataset": "graph_queries/security_auth_guardrail_gaps", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_auth_guardrail_gap", "level": "error", "message": {"text": "Foundry mined security auth guardrail gaps: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 332226, "scanner": "foundry_dataset", "fingerprint": "1fb58f1585d9de666ef9f99bcfb82e148b2c116b4f0182269c7bf1f37d6df0e0", "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": {"schema_or_data": 2, "ui_or_frontend": 2, "security_or_secrets": 1, "security_auth_secret": 2, "verification_or_tests": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "comment_has_related_commit_context": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"ambiguous_needs_more_evidence": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "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": 19, "node_types": {"repo": 1, "commit": 3, "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": "Tbeaumont79/cv-optimizer#5", "issue_number": "5", "quality_tiers": {"high_confidence": 3, "weak_supervision": 1}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-54209309074ad033", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"schema_or_data": 10, "ui_or_frontend": 10}}, "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_verification_signal\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#5\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#5\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#5\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 5\nGraph consistency label: supported_by_verification_signal\nNodes: 19\nEdges: 37\nNode types: {'pr_file': 4, 'link_quality': 4, 'commit': 3, '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: {'claimed_resolved_with_verification_signal': 3, 'security_auth_secret': 2, 'schema_or_data': 2, 'ui_or_frontend': 2, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'security_or_secrets': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-83928a0de5b9bf47", "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": "Tbeaumont79/cv-optimizer", "source_dataset": "graph_queries/security_auth_guardrail_gaps", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_auth_guardrail_gap", "level": "error", "message": {"text": "Foundry mined security auth guardrail gaps: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 332225, "scanner": "foundry_dataset", "fingerprint": "959a948c95eec53ff1affaa5b893992a1f6e4bd7ff5cdcd7a4fe73cbee71bb72", "category": "auth", "severity": "critical", "confidence": 0.78, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Security/auth changes without enough guardrails", "intent": "Assumption-check security/auth examples requiring stronger tests or CI.", "labels": {"bug_fix": 1, "api_or_backend": 1, "ui_or_frontend": 1, "deployment_env_gap": 1, "security_auth_secret": 2, "claimed_resolved_unverified": 5, "issue_or_pull_request_thread": 1, "human_reported_issue_then_fix_attempt": 3, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 10}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 34, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 3, "thread_has_comment": 3, "thread_touches_file": 2, "chain_has_link_quality": 5, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 2, "thread_has_comment_chain": 3, "comment_chain_links_commit": 3, "comment_chain_touches_file": 6, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 3}, "node_count": 18, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 3, "pr_file": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 3}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#19", "issue_number": "19", "quality_tiers": {"high_confidence": 4, "weak_supervision": 1}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-078f092acf096d13", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"api_or_backend": 6, "ui_or_frontend": 6}}, "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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#19\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#19\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#19\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 19\nGraph consistency label: supported_by_high_confidence_link\nNodes: 18\nEdges: 34\nNode types: {'link_quality': 5, 'comment': 3, 'comment_chain': 3, 'pr_file': 2, 'thread': 1, 'repo': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 6, 'chain_has_link_quality': 5, 'thread_has_comment': 3, 'thread_has_comment_chain': 3, 'comment_has_chain': 3, 'comment_chain_links_commit': 3, 'issue_chain_has_comment_chain': 3, 'thread_touches_file': 2, 'issue_chain_touches_file': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'claimed_resolved_unverified': 5, 'human_reported_issue_then_fix_attempt': 3, 'security_auth_secret': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'deployment_env_gap': 1, 'ui_or_frontend': 1, 'api_or_backend': 1, 'bug_fix': 1}\nOutcomes: {'claimed_resolved_unverified': 10}\nQuality tiers: {'high_confidence': 4, 'weak_supervision': 1}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-a50b6800db907014", "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": "Tbeaumont79/cv-optimizer", "source_dataset": "graph_queries/security_auth_guardrail_gaps", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_auth_guardrail_gap", "level": "error", "message": {"text": "Foundry mined security auth guardrail gaps: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 332224, "scanner": "foundry_dataset", "fingerprint": "39dc3489819cc67e55d643bff71b639ad647dd34d9e1edb51dad542e28c19a84", "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": {"ui_or_frontend": 3, "generated_provenance": 1, "security_auth_secret": 1, "verification_or_tests": 1, "human_feedback_general": 1, "ci_pending_or_incomplete": 1, "self_attested_unverified": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 3, "comment_has_related_commit_context": 1, "thread_has_human_issue_and_fix_context": 2, "self_attested_or_generated_fix_unverified": 1}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"self_attested_unverified": 2, "ambiguous_needs_more_evidence": 6}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 32, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 3, "comment_chain_has_ci": 1, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 3, "thread_has_comment_chain": 2, "comment_chain_links_commit": 3, "comment_chain_touches_file": 6, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 18, "node_types": {"repo": 1, "commit": 2, "thread": 1, "comment": 2, "pr_file": 3, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#15", "issue_number": "15", "quality_tiers": {"weak_supervision": 4}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-ed47718271ea99bc", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"ui_or_frontend": 15}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#15\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#15\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#15\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 15\nGraph consistency label: weak_supervision_needs_review\nNodes: 18\nEdges: 32\nNode types: {'link_quality': 4, 'pr_file': 3, 'comment': 2, 'comment_chain': 2, 'commit': 2, 'thread': 1, 'repo': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 6, 'chain_has_link_quality': 4, 'thread_touches_file': 3, 'comment_chain_links_commit': 3, 'issue_chain_touches_file': 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_has_ci': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 3, 'ambiguous_needs_more_evidence': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'human_feedback_general': 1, 'security_auth_secret': 1, 'comment_has_related_commit_context': 1, 'generated_provenance': 1, 'verification_or_tests': 1, 'ci_pending_or_incomplete': 1, 'self_attested_or_generated_fix_unverified': 1, 'self_attested_unverified': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6, 'self_attested_unverified': 2}\nQuality tiers: {'weak_supervision': 4}\nCI labels: {'ci_pending_or_incomplete': 2}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-0c37d887c730e7b5", "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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 324947, "scanner": "foundry_dataset", "fingerprint": "a68a00d5eca79932621c268672a2e1970867b8125050aa4f63a1f1562f244dd6", "category": "practices", "severity": "critical", "confidence": 0.82, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Mock, sample, placeholder, or self-attested behavior treated as real", "intent": "Hard negatives for fake completeness and missing real data paths.", "labels": {"bug_fix": 1, "api_or_backend": 1, "ui_or_frontend": 7, "mock_placeholder": 2, "security_or_secrets": 1, "claimed_resolved_unverified": 4, "issue_or_pull_request_thread": 1, "human_reported_issue_then_fix_attempt": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"claimed_resolved_unverified": 8}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 51, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 8, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 8, "thread_has_comment_chain": 2, "comment_chain_links_commit": 3, "comment_chain_touches_file": 16, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 22, "node_types": {"repo": 1, "commit": 2, "thread": 1, "comment": 2, "pr_file": 8, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#7", "issue_number": "7", "quality_tiers": {"high_confidence": 4}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-4ae34a8b2b750acd", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"api_or_backend": 5, "ui_or_frontend": 35}}, "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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#7\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#7\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#7\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 7\nGraph consistency label: supported_by_high_confidence_link\nNodes: 22\nEdges: 51\nNode types: {'pr_file': 8, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'commit': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 16, 'thread_touches_file': 8, 'issue_chain_touches_file': 8, 'chain_has_link_quality': 4, 'comment_chain_links_commit': 3, '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: {'ui_or_frontend': 7, 'claimed_resolved_unverified': 4, 'mock_placeholder': 2, 'human_reported_issue_then_fix_attempt': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'api_or_backend': 1, 'security_or_secrets': 1, 'bug_fix': 1}\nOutcomes: {'claimed_resolved_unverified': 8}\nQuality tiers: {'high_confidence': 4}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-798a67aa82ab4fc7", "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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 324946, "scanner": "foundry_dataset", "fingerprint": "e84ba44978cc85acbeccaeb160b34acd9dfb9a369eb2651ce3065367796f09d7", "category": "practices", "severity": "critical", "confidence": 0.82, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Mock, sample, placeholder, or self-attested behavior treated as real", "intent": "Hard negatives for fake completeness and missing real data paths.", "labels": {"bug_fix": 2, "test_or_ci": 1, "ui_or_frontend": 15, "mock_placeholder": 1, "security_or_secrets": 1, "security_auth_secret": 1, "verification_or_tests": 1, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 4, "human_reported_issue_then_verified_fix_attempt": 2}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"claimed_resolved_with_verification_signal": 8}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 73, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 16, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "comment_chain_touches_file": 24, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 32, "node_types": {"repo": 1, "commit": 4, "thread": 1, "comment": 2, "pr_file": 16, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#4", "issue_number": "4", "quality_tiers": {"high_confidence": 4}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-7359d702e14e3b9b", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 5, "ui_or_frontend": 75}}, "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_verification_signal\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#4\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#4\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#4\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 4\nGraph consistency label: supported_by_verification_signal\nNodes: 32\nEdges: 73\nNode types: {'pr_file': 16, 'commit': 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': 24, 'thread_touches_file': 16, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 5, 'chain_has_link_quality': 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: {'ui_or_frontend': 15, 'claimed_resolved_with_verification_signal': 4, 'human_reported_issue_then_verified_fix_attempt': 2, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'security_auth_secret': 1, 'test_or_ci': 1, 'verification_or_tests': 1, 'security_or_secrets': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 8}\nQuality tiers: {'high_confidence': 4}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-937c49b4dbf8332f", "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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 324945, "scanner": "foundry_dataset", "fingerprint": "2928e932d9945eb20c9ed1c5361a163b6b9d6c9f7442d35c0f0bfac8a6f0ed0d", "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": {"test_or_ci": 1, "test_ci_gap": 1, "ui_or_frontend": 4, "mock_placeholder": 1, "dependency_or_build": 2, "verification_or_tests": 5, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"ambiguous_needs_more_evidence": 8}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 58, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 7, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 6, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 7, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 14, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 30, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 7, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#3", "issue_number": "3", "quality_tiers": {"high_confidence": 4, "assumption_check": 2}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-e8cfacf6f4d68d60", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 5, "ui_or_frontend": 20, "dependency_or_build": 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: supported_by_high_confidence_link\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#3\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#3\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#3\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 3\nGraph consistency label: supported_by_high_confidence_link\nNodes: 30\nEdges: 58\nNode types: {'pr_file': 7, 'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 14, 'thread_touches_file': 7, 'issue_chain_touches_file': 7, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 6, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'verification_or_tests': 5, 'ui_or_frontend': 4, 'ambiguous_needs_more_evidence': 4, 'dependency_or_build': 2, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'mock_placeholder': 1, 'test_or_ci': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'high_confidence': 4, 'assumption_check': 2}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-259313fea666672c", "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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 324944, "scanner": "foundry_dataset", "fingerprint": "eebcbc77969f4cb90727072e185aa0b16237c1e48ccb23540416ffd61863101c", "category": "practices", "severity": "critical", "confidence": 0.82, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Mock, sample, placeholder, or self-attested behavior treated as real", "intent": "Hard negatives for fake completeness and missing real data paths.", "labels": {"bug_fix": 1, "test_or_ci": 2, "api_or_backend": 5, "schema_or_data": 1, "ui_or_frontend": 6, "source_or_other": 1, "mock_placeholder": 2, "deployment_env_gap": 1, "verification_or_tests": 1, "ci_pending_or_incomplete": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "comment_has_related_commit_context": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 4, "human_reported_issue_then_verified_fix_attempt": 2}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"ambiguous_needs_more_evidence": 2, "claimed_resolved_with_verification_signal": 8}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {"ci_pending_or_incomplete": 6}, "synthetic": false, "edge_count": 92, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 3, "thread_has_comment": 3, "thread_touches_file": 15, "comment_chain_has_ci": 3, "chain_has_link_quality": 5, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 3, "comment_chain_links_commit": 5, "comment_chain_touches_file": 36, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 3}, "node_count": 33, "node_types": {"repo": 1, "commit": 2, "thread": 1, "comment": 3, "pr_file": 15, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 3}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#21", "issue_number": "21", "quality_tiers": {"high_confidence": 4, "weak_supervision": 1}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-3117dacccd221c87", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 12, "api_or_backend": 30, "schema_or_data": 6, "ui_or_frontend": 36, "source_or_other": 6}}, "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_verification_signal\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#21\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#21\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#21\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 21\nGraph consistency label: supported_by_verification_signal\nNodes: 33\nEdges: 92\nNode types: {'pr_file': 15, 'link_quality': 5, 'comment': 3, 'comment_chain': 3, 'commit': 2, 'thread': 1, 'repo': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 36, 'thread_touches_file': 15, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, 'thread_has_comment': 3, 'thread_has_comment_chain': 3, 'comment_has_chain': 3, 'comment_chain_has_ci': 3, 'issue_chain_has_comment_chain': 3, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 6, 'api_or_backend': 5, 'claimed_resolved_with_verification_signal': 4, 'mock_placeholder': 2, 'test_or_ci': 2, 'human_reported_issue_then_verified_fix_attempt': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'deployment_env_gap': 1, 'schema_or_data': 1, 'source_or_other': 1, 'verification_or_tests': 1, 'ci_pending_or_incomplete': 1, 'bug_fix': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 8, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'high_confidence': 4, 'weak_supervision': 1}\nCI labels: {'ci_pending_or_incomplete': 6}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-e51fa5193a5409ca", "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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 324943, "scanner": "foundry_dataset", "fingerprint": "a9ca9b82486d467c6ca9dcd4bd67c0fcf8367f386aea39ae0d5c9cd942c46cc5", "category": "practices", "severity": "critical", "confidence": 0.82, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Mock, sample, placeholder, or self-attested behavior treated as real", "intent": "Hard negatives for fake completeness and missing real data paths.", "labels": {"bug_fix": 2, "test_or_ci": 2, "ui_or_frontend": 29, "mock_placeholder": 2, "deployment_env_gap": 1, "dependency_or_build": 1, "verification_or_tests": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "comment_has_related_commit_context": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 4, "human_reported_issue_then_verified_fix_attempt": 2}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"ambiguous_needs_more_evidence": 2, "claimed_resolved_with_verification_signal": 8}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 107, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 3, "thread_has_comment": 3, "thread_touches_file": 32, "chain_has_link_quality": 5, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 3, "comment_chain_links_commit": 6, "comment_chain_touches_file": 36, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 3}, "node_count": 50, "node_types": {"repo": 1, "commit": 3, "thread": 1, "comment": 3, "pr_file": 32, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 3}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#17", "issue_number": "17", "quality_tiers": {"high_confidence": 4, "weak_supervision": 1}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-1d08c54ebf8b7f0c", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 12, "ui_or_frontend": 174, "dependency_or_build": 6}}, "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_verification_signal\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#17\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#17\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#17\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 17\nGraph consistency label: supported_by_verification_signal\nNodes: 50\nEdges: 107\nNode types: {'pr_file': 32, 'link_quality': 5, 'comment': 3, 'comment_chain': 3, 'commit': 3, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 36, 'thread_touches_file': 32, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, 'thread_has_comment': 3, 'thread_has_comment_chain': 3, 'comment_has_chain': 3, 'issue_chain_has_comment_chain': 3, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 29, 'claimed_resolved_with_verification_signal': 4, 'mock_placeholder': 2, 'test_or_ci': 2, 'human_reported_issue_then_verified_fix_attempt': 2, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'deployment_env_gap': 1, 'dependency_or_build': 1, 'verification_or_tests': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 8, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'high_confidence': 4, 'weak_supervision': 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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-ea71fd14a9102a1f", "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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 324942, "scanner": "foundry_dataset", "fingerprint": "eba05d04ac59c36790dfe41cdc969bdc1a855ef21c44b5393671578cab86c530", "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": 3, "generated_provenance": 1, "security_auth_secret": 1, "verification_or_tests": 1, "human_feedback_general": 1, "ci_pending_or_incomplete": 1, "self_attested_unverified": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 3, "comment_has_related_commit_context": 1, "thread_has_human_issue_and_fix_context": 2, "self_attested_or_generated_fix_unverified": 1}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"self_attested_unverified": 2, "ambiguous_needs_more_evidence": 6}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 32, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 3, "comment_chain_has_ci": 1, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 3, "thread_has_comment_chain": 2, "comment_chain_links_commit": 3, "comment_chain_touches_file": 6, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 18, "node_types": {"repo": 1, "commit": 2, "thread": 1, "comment": 2, "pr_file": 3, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#15", "issue_number": "15", "quality_tiers": {"weak_supervision": 4}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-e3c8b0a425b8ba41", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"ui_or_frontend": 15}}, "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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#15\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#15\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#15\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 15\nGraph consistency label: weak_supervision_needs_review\nNodes: 18\nEdges: 32\nNode types: {'link_quality': 4, 'pr_file': 3, 'comment': 2, 'comment_chain': 2, 'commit': 2, 'thread': 1, 'repo': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_touches_file': 6, 'chain_has_link_quality': 4, 'thread_touches_file': 3, 'comment_chain_links_commit': 3, 'issue_chain_touches_file': 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_has_ci': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 3, 'ambiguous_needs_more_evidence': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'human_feedback_general': 1, 'security_auth_secret': 1, 'comment_has_related_commit_context': 1, 'generated_provenance': 1, 'verification_or_tests': 1, 'ci_pending_or_incomplete': 1, 'self_attested_or_generated_fix_unverified': 1, 'self_attested_unverified': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6, 'self_attested_unverified': 2}\nQuality tiers: {'weak_supervision': 4}\nCI labels: {'ci_pending_or_incomplete': 2}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-00c5e696abc88c3c", "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": "Tbeaumont79/cv-optimizer", "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: Tbeaumont79/cv-optimizer"}, "properties": {"repobilityId": 324941, "scanner": "foundry_dataset", "fingerprint": "686f26147daa6727b8cac50717a8135d3bce3cea467423818d61d7d1079143b8", "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": {"test_ci_gap": 1, "mock_placeholder": 1, "verification_or_tests": 5, "mostly follows blueprint": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 2, "comment_has_related_commit_context": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"ambiguous_needs_more_evidence": 8}, "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": 2, "thread_has_comment": 2, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 6, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 23, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 2, "blueprint_finding": 2}, "query_type": "motif_query", "thread_key": "Tbeaumont79/cv-optimizer#1", "issue_number": "1", "quality_tiers": {"high_confidence": 4, "assumption_check": 2}, "repo_full_name": "Tbeaumont79/cv-optimizer", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-bb0b77f37325a272", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {}}, "text": "Graph query export: Mock, sample, placeholder, or self-attested behavior treated as real\nQuery id: mock_as_real_or_placeholder\nQuery type: motif_query\nIntent: Hard negatives for fake completeness and missing real data paths.\nMotif: mock_as_real_or_placeholder\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#1\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: Tbeaumont79/cv-optimizer\nThread: Tbeaumont79/cv-optimizer#1\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: Tbeaumont79/cv-optimizer#1\nRepo: Tbeaumont79/cv-optimizer\nIssue/PR number: 1\nGraph consistency label: supported_by_high_confidence_link\nNodes: 23\nEdges: 30\nNode types: {'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'blueprint_finding': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 6, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'alignment_uses_comment': 2, 'alignment_uses_finding': 2, 'comment_aligns_finding': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'mostly follows blueprint': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'test_ci_gap': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'high_confidence': 4, 'assumption_check': 2}\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/Tbeaumont79/cv-optimizer", "source_id": "graph-query-motif_query-2753dcc30a4760f8", "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": "Tbeaumont79/cv-optimizer", "source_dataset": "graph_queries/mock_as_real_or_placeholder", "training_usage": "hard_negative"}}}, {"ruleId": "scanner-02f68b9c988206bc", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 apps/app/server/utils/mailer.ts:34"}, "properties": {"repobilityId": "b1ce93464e605691", "scanner": "scanner-primary", "fingerprint": "02f68b9c988206bc", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-aa5acaa49eb8315b", "level": "note", "message": {"text": "Containers defined but no K8s/orchestration manifest found"}, "properties": {"repobilityId": "b230ea9b68736081", "scanner": "scanner-primary", "fingerprint": "aa5acaa49eb8315b", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["coverage", "deployment"]}}, {"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-fc5945f5f89e775a", "level": "note", "message": {"text": "package.json defines install-time lifecycle scripts"}, "properties": {"repobilityId": "b0c5d70533eda761", "scanner": "scanner-primary", "fingerprint": "fc5945f5f89e775a", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "npm", "install-scripts"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/app/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ea3b5e389d8c9c0f", "level": "note", "message": {"text": "Low test-to-source ratio"}, "properties": {"repobilityId": "ef7b2552cc00a375", "scanner": "scanner-primary", "fingerprint": "ea3b5e389d8c9c0f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["tests"]}}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "fb7ae2330c2c2b3f", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-1b02d785d4830372", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: apps/app/package.json"}, "properties": {"repobilityId": "5ed0df20b35b0612", "scanner": "scanner-primary", "fingerprint": "1b02d785d4830372", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "apps/app/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2699d5f16ae11282", "level": "note", "message": {"text": "Node manifest has dependencies but no lockfile: packages/shared/package.json"}, "properties": {"repobilityId": "37ac218a4ef9b430", "scanner": "scanner-primary", "fingerprint": "2699d5f16ae11282", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["dependency", "lockfile", "reproducibility", "generated-repo-pattern"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "packages/shared/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "247e98d2fb6d62b9", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-b9088664ace7f748", "level": "note", "message": {"text": "Composite production-readiness gap"}, "properties": {"repobilityId": "ceec92ec605386df", "scanner": "scanner-primary", "fingerprint": "b9088664ace7f748", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["production-readiness", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "d9c8f9b4499640ee", "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": "47fdc8960193309e", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-8732216279de51e0", "level": "none", "message": {"text": "Commented-code block (6 lines) in apps/app/composables/useAuth.ts:13"}, "properties": {"repobilityId": "0cb49e4f43608f79", "scanner": "scanner-primary", "fingerprint": "8732216279de51e0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-de8915b9fc390728", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 apps/app/server/utils/anthropic.ts:94"}, "properties": {"repobilityId": "dc82760afafdfe70", "scanner": "scanner-primary", "fingerprint": "de8915b9fc390728", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-af022f937dd5b7fd", "level": "note", "message": {"text": "9 env vars used in code but missing from .env.example"}, "properties": {"repobilityId": "5597384795dea7a4", "scanner": "scanner-primary", "fingerprint": "af022f937dd5b7fd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "config-drift"]}}]}]}