{"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: TOOTRJ/cardforge", "shortDescription": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "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: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#9\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#9\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#9\nRepo: TOOTRJ/cardforge\nIssue/PR number: 9\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1,"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "medium", "confidence": 0.7, "cwe": "", "owasp": ""}}, {"id": "foundry_blueprint_gap", "name": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge", "shortDescription": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "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_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#9\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#9\nRepo: TOOTRJ/cardforge\nIssue/PR number: 9\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome'"}, "properties": {"scanner": "foundry_dataset", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "cwe": "", "owasp": ""}}, {"id": "foundry_assumption_check", "name": "Foundry mined assumption checks: TOOTRJ/cardforge", "shortDescription": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "fullDescription": {"text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#81\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: TOOTRJ/cardforge#81\nRepo: TOOTRJ/cardforge\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: 2\nLinked CI labels: {'ci_success_signal': 2}\nChanged file count: 15\nLabels: {'deployment_env_gap': 2}\nPolarities: {'bad': 2}\nChanged file labels: {'ui_or_frontend': 4, 'source_or_other': 8, 'dependency_or_build': 2, 'test_or_ci': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-886f1d8d3cff6bf6\",\n    \"kind\": \"pull_request_body\""}, "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: TOOTRJ/cardforge", "shortDescription": {"text": "Foundry mined test ci gap after feedback: TOOTRJ/cardforge"}, "fullDescription": {"text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#9\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#9\nRepo: TOOTRJ/cardforge\nIssue/PR number: 9\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'bl"}, "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: TOOTRJ/cardforge", "shortDescription": {"text": "Foundry mined schema ui api mismatch: TOOTRJ/cardforge"}, "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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#76\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#76\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#76\nRepo: TOOTRJ/cardforge\nIssue/PR number: 76\nGraph consistency label: supported_by_verification_signal\nNodes: 34\nEdges: 76\nNode types: {'pr_file': 14, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_fin"}, "properties": {"scanner": "foundry_dataset", "category": "quality", "severity": "high", "confidence": 0.76, "cwe": "", "owasp": ""}}, {"id": "foundry_bad_chain", "name": "Foundry mined bad chains: TOOTRJ/cardforge", "shortDescription": {"text": "Foundry mined bad chains: TOOTRJ/cardforge"}, "fullDescription": {"text": "Comment chain pattern product: bad_chains\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#68\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#68\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 5\nLabels: {'mock_placeholder': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'source_or_other': 1, 'ui_or_frontend': 2, 'dependency_or_build': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-0124818e389fe488\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"mock_placeho"}, "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: TOOTRJ/cardforge", "shortDescription": {"text": "Foundry mined security auth guardrail gaps: TOOTRJ/cardforge"}, "fullDescription": {"text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#69\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#69\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#69\nRepo: TOOTRJ/cardforge\nIssue/PR number: 69\nGraph consistency label: weak_supervision_needs_review\nNodes: 18\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'pr_file': 1, 'issue_chain': 1, '"}, "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: TOOTRJ/cardforge", "shortDescription": {"text": "Foundry mined mock as real or placeholder: TOOTRJ/cardforge"}, "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: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#68\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#68\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#68\nRepo: TOOTRJ/cardforge\nIssue/PR number: 68\nGraph consistency label: weak_supervision_needs_review\nNodes: 21\nEdges: 41\nNode types: {'pr_file': 5, 'commit': 4, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1,"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "critical", "confidence": 0.82, "cwe": "", "owasp": ""}}, {"id": "scanner-bead75b0f9233e05", "name": "No API endpoints detected", "shortDescription": {"text": "No API endpoints detected"}, "fullDescription": {"text": "The scanner did not find FastAPI/Flask/Express/NestJS/GraphQL/gRPC routes. If this repo exposes APIs, the framework may be unsupported."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1520c8ebcefb9344", "name": "`truncate` class without `title=` for hover reveal \u2014 components/layout/command-palette.tsx:432", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/layout/command-palette.tsx:432"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3635166be9457003", "name": "`truncate` class without `title=` for hover reveal \u2014 components/layout/user-menu.tsx:88", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/layout/user-menu.tsx:88"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cda7a15528a3e3cb", "name": "`truncate` class without `title=` for hover reveal \u2014 components/auth/pinned-cards-picker.tsx:181", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/auth/pinned-cards-picker.tsx:181"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0dca309de9141de8", "name": "`truncate` class without `title=` for hover reveal \u2014 components/billing/upgrade-modal.tsx:105", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/billing/upgrade-modal.tsx:105"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e082ebca821cdad2", "name": "`truncate` class without `title=` for hover reveal \u2014 components/gallery/trending-cards-section.tsx:202", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/gallery/trending-cards-section.tsx:202"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8a3872cf274b9712", "name": "`truncate` class without `title=` for hover reveal \u2014 components/creator/frame-pickers.tsx:67", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/creator/frame-pickers.tsx:67"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8d7623fde88c35e2", "name": "`truncate` class without `title=` for hover reveal \u2014 components/creator/scryfall-import-dialog.tsx:412", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/creator/scryfall-import-dialog.tsx:412"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-12d7284a4d985c13", "name": "`truncate` class without `title=` for hover reveal \u2014 components/creator/liked-cards-section.tsx:106", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/creator/liked-cards-section.tsx:106"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-87a66e82500c21c0", "name": "React Flow edge with `label=` but no project-wide edge-label CSS override \u2014 components/creator/panels/frame-panel.tsx:55", "shortDescription": {"text": "React Flow edge with `label=` but no project-wide edge-label CSS override \u2014 components/creator/panels/frame-panel.tsx:55"}, "fullDescription": {"text": "React Flow edge labels render with a white rectangle behind the text by default, which scatters bright boxes across a dark canvas. Either drop the label, or override `.react-flow__edge-textbg` and `.react-flow__edge-text` in your stylesheet.\n\nWhy: P-H in CHECKLIST.md \u2014 vendor edge labels bleed white through a dark canvas.\nRule id: fq.edge-label.no-bg"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1cf5065b54f3954a", "name": "`truncate` class without `title=` for hover reveal \u2014 components/sets/set-card-manager.tsx:240", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/sets/set-card-manager.tsx:240"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f936c7f11c1a7cbe", "name": "`truncate` class without `title=` for hover reveal \u2014 components/sets/quick-add-to-set-dialog.tsx:192", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/sets/quick-add-to-set-dialog.tsx:192"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5e9ed156c6096963", "name": "`truncate` class without `title=` for hover reveal \u2014 components/sets/set-card-sortable.tsx:114", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/sets/set-card-sortable.tsx:114"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-69ac15f6cb7ca614", "name": "`truncate` class without `title=` for hover reveal \u2014 components/sets/add-to-set-button.tsx:159", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/sets/add-to-set-button.tsx:159"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c96a1ee169f0f25e", "name": "`truncate` class without `title=` for hover reveal \u2014 components/cards/share-targets.tsx:125", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/cards/share-targets.tsx:125"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-61ac41b74d6867c2", "name": "`truncate` class without `title=` for hover reveal \u2014 components/cards/gallery-card-tile.tsx:62", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/cards/gallery-card-tile.tsx:62"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2dba0cf24c611ac5", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 components/seo/json-ld.tsx:17", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 components/seo/json-ld.tsx:17"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-89ca1028b4496d35", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 app/layout.tsx:82", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 app/layout.tsx:82"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8712b407980525af", "name": "`truncate` class without `title=` for hover reveal \u2014 app/(app)/dashboard/page.tsx:131", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 app/(app)/dashboard/page.tsx:131"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-75705d29348eaf0b", "name": "`truncate` class without `title=` for hover reveal \u2014 app/(marketing)/sets/page.tsx:194", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 app/(marketing)/sets/page.tsx:194"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6b2ceb9db5b6564e", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 app/(marketing)/ai-mtg-card-generator/page.tsx:71", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 app/(marketing)/ai-mtg-card-generator/page.tsx:71"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-40196d60f6baaea8", "name": "`truncate` class without `title=` for hover reveal \u2014 app/(marketing)/profile/[username]/page.tsx:452", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 app/(marketing)/profile/[username]/page.tsx:452"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f165c097ef1c5e4d", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 app/(marketing)/mana-pip-editor/page.tsx:65", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 app/(marketing)/mana-pip-editor/page.tsx:65"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e7ec500ccb227bbe", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 app/(marketing)/mtg-card-maker/page.tsx:74", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 app/(marketing)/mtg-card-maker/page.tsx:74"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4cf011501a2f539d", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 app/(marketing)/card/[username]/[slug]/page.tsx:185", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 app/(marketing)/card/[username]/[slug]/page.tsx:185"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4c199af4dd13aaaa", "name": "Insecure pattern 'dangerous_innerhtml' in components/seo/json-ld.tsx:17", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in components/seo/json-ld.tsx:17"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1e0980a2d01c34bd", "name": "Insecure pattern 'dangerous_innerhtml' in app/layout.tsx:82", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in app/layout.tsx:82"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c93602edc6a6a894", "name": "Insecure pattern 'dangerous_innerhtml' in app/(marketing)/ai-mtg-card-generator/page.tsx:71", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in app/(marketing)/ai-mtg-card-generator/page.tsx:71"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-856f6ba1474e8fe3", "name": "Insecure pattern 'dangerous_innerhtml' in app/(marketing)/mana-pip-editor/page.tsx:65", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in app/(marketing)/mana-pip-editor/page.tsx:65"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-33c043dcbcd71bd7", "name": "Insecure pattern 'dangerous_innerhtml' in app/(marketing)/mtg-card-maker/page.tsx:74", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in app/(marketing)/mtg-card-maker/page.tsx:74"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-83385d0b5e3819b7", "name": "Insecure pattern 'dangerous_innerhtml' in app/(marketing)/card/[username]/[slug]/page.tsx:185", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in app/(marketing)/card/[username]/[slug]/page.tsx:185"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4601e3ad3bb28677", "name": "No CI/CD pipelines detected", "shortDescription": {"text": "No CI/CD pipelines detected"}, "fullDescription": {"text": "No GitHub Actions, GitLab CI, or CircleCI configs found. Without CI you can't gate deploys on tests/lints."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ea3b5e389d8c9c0f", "name": "Low test-to-source ratio", "shortDescription": {"text": "Low test-to-source ratio"}, "fullDescription": {"text": "32 tests / 290 src (ratio 0.11)."}, "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-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 23 console/debugger/print-style debug statements in non-test source. This is a common fast-generation residue before production cleanup."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-72b2a6250083a784", "name": "Placeholder or mock-heavy implementation detected", "shortDescription": {"text": "Placeholder or mock-heavy implementation detected"}, "fullDescription": {"text": "Found 86 placeholder/mock markers across 31 source files. This often means the repo looks complete while core flows still use generated scaffolding or fake data."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9d79c4077342a7d0", "name": "Runtime service client appears to use placeholder configuration", "shortDescription": {"text": "Runtime service client appears to use placeholder configuration"}, "fullDescription": {"text": "A runtime source file appears to wire Supabase/Firebase/AI/payment-style clients to placeholder URLs, keys, or fallback values. In the Fable corpus this often means the UI/API shape is present while the backend service is not actually configured."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "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, ci. 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-749d4bc1bd66df5f", "name": "Agent instructions exist but release-hardening basics are missing", "shortDescription": {"text": "Agent instructions exist but release-hardening basics are missing"}, "fullDescription": {"text": "AI-coder instruction files were found, but the repo is missing license, ci. Treat this as a contract gap: the agent is guided, but the generated output is not yet guarded by the controls that make it repeatable."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-2c5f98b152cddb6d", "name": "Agent authority lacks a verifier contract: .claude/launch.json", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/launch.json"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4a0172c93a2c1f87", "name": "Commented-code block (5 lines) in playwright.config.ts:9", "shortDescription": {"text": "Commented-code block (5 lines) in playwright.config.ts:9"}, "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-5324baebd86eeb37", "name": "Commented-code block (5 lines) in vitest.config.ts:7", "shortDescription": {"text": "Commented-code block (5 lines) in vitest.config.ts:7"}, "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-f6ce3f7b1bf6be6a", "name": "Commented-code block (6 lines) in types/card.ts:82", "shortDescription": {"text": "Commented-code block (6 lines) in types/card.ts:82"}, "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-a16d2fe33da947a5", "name": "Commented-code block (5 lines) in tests/unit/cards/validation.test.ts:14", "shortDescription": {"text": "Commented-code block (5 lines) in tests/unit/cards/validation.test.ts:14"}, "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-d67b64add3f1e670", "name": "Commented-code block (6 lines) in tests/e2e/marketing-auth-chrome.spec.ts:6", "shortDescription": {"text": "Commented-code block (6 lines) in tests/e2e/marketing-auth-chrome.spec.ts:6"}, "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-4737bb76cb17c14d", "name": "Commented-code block (5 lines) in tests/e2e/custom-pips.spec.ts:4", "shortDescription": {"text": "Commented-code block (5 lines) in tests/e2e/custom-pips.spec.ts:4"}, "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-d5e5fd644596c555", "name": "Commented-code block (5 lines) in tests/e2e/challenge-admin.spec.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in tests/e2e/challenge-admin.spec.ts:3"}, "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-a3bae8494ea3d6f3", "name": "Commented-code block (7 lines) in tests/e2e/create-card.spec.ts:27", "shortDescription": {"text": "Commented-code block (7 lines) in tests/e2e/create-card.spec.ts:27"}, "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-56c2ebc771300428", "name": "Commented-code block (6 lines) in tests/e2e/challenge-entry.spec.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in tests/e2e/challenge-entry.spec.ts:3"}, "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-94b84cdbccd29f46", "name": "Commented-code block (9 lines) in tests/e2e/a11y.spec.ts:9", "shortDescription": {"text": "Commented-code block (9 lines) in tests/e2e/a11y.spec.ts:9"}, "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-5c9b8824cda22d24", "name": "Commented-code block (5 lines) in tests/e2e/marketing.spec.ts:6", "shortDescription": {"text": "Commented-code block (5 lines) in tests/e2e/marketing.spec.ts:6"}, "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-8f0ad657d17bf26a", "name": "Commented-code block (5 lines) in tests/e2e/challenges.spec.ts:3", "shortDescription": {"text": "Commented-code block (5 lines) in tests/e2e/challenges.spec.ts:3"}, "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-2d51366121bf8d3b", "name": "Commented-code block (5 lines) in scripts/visual-audit.mjs:1", "shortDescription": {"text": "Commented-code block (5 lines) in scripts/visual-audit.mjs:1"}, "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-f7d41db0bd12f89c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/visual-audit.mjs:28", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/visual-audit.mjs:28"}, "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-68992242a6f0bdeb", "name": "Commented-code block (6 lines) in scripts/rebake-renders.mjs:6", "shortDescription": {"text": "Commented-code block (6 lines) in scripts/rebake-renders.mjs:6"}, "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-ccf36eaf26b4d6dd", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/rebake-renders.mjs:25", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/rebake-renders.mjs:25"}, "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-2df63ddda2c21e73", "name": "Commented-code block (8 lines) in scripts/build-adventure-frame.mjs:4", "shortDescription": {"text": "Commented-code block (8 lines) in scripts/build-adventure-frame.mjs:4"}, "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-14ed0159db48a3c9", "name": "Commented-code block (8 lines) in scripts/round-frame-corners.mjs:3", "shortDescription": {"text": "Commented-code block (8 lines) in scripts/round-frame-corners.mjs:3"}, "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-093e298d0dedb29b", "name": "Commented-code block (5 lines) in scripts/seed-e2e.mjs:8", "shortDescription": {"text": "Commented-code block (5 lines) in scripts/seed-e2e.mjs:8"}, "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-28879d7d097ac718", "name": "Commented-code block (7 lines) in scripts/build-era-frames.mjs:12", "shortDescription": {"text": "Commented-code block (7 lines) in scripts/build-era-frames.mjs:12"}, "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-cca80d11cca5c1f1", "name": "Commented-code block (6 lines) in scripts/build-split-frame.mjs:4", "shortDescription": {"text": "Commented-code block (6 lines) in scripts/build-split-frame.mjs:4"}, "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-ad1c402e2b8dfb11", "name": "Commented-code block (6 lines) in scripts/convert-mse-frame.mjs:4", "shortDescription": {"text": "Commented-code block (6 lines) in scripts/convert-mse-frame.mjs:4"}, "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-dffa776afacf6de9", "name": "Commented-code block (7 lines) in scripts/build-showcase-frames.mjs:4", "shortDescription": {"text": "Commented-code block (7 lines) in scripts/build-showcase-frames.mjs:4"}, "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-622e0945a81e6d08", "name": "Commented-code block (6 lines) in scripts/build-flip-frame.mjs:4", "shortDescription": {"text": "Commented-code block (6 lines) in scripts/build-flip-frame.mjs:4"}, "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-58e1123fd2b33f90", "name": "Commented-code block (7 lines) in scripts/build-aftermath-frame.mjs:4", "shortDescription": {"text": "Commented-code block (7 lines) in scripts/build-aftermath-frame.mjs:4"}, "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-8e225c776a6dbfb8", "name": "Commented-code block (6 lines) in components/settings/usage-bar-chart.tsx:3", "shortDescription": {"text": "Commented-code block (6 lines) in components/settings/usage-bar-chart.tsx:3"}, "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-a0080ab95fd35801", "name": "Commented-code block (7 lines) in components/layout/command-palette.tsx:46", "shortDescription": {"text": "Commented-code block (7 lines) in components/layout/command-palette.tsx:46"}, "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-0173d4488e981e45", "name": "Commented-code block (5 lines) in components/layout/theme-toggle.tsx:16", "shortDescription": {"text": "Commented-code block (5 lines) in components/layout/theme-toggle.tsx:16"}, "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-fabc4a8dd72594d6", "name": "Commented-code block (8 lines) in components/layout/site-header-client.tsx:11", "shortDescription": {"text": "Commented-code block (8 lines) in components/layout/site-header-client.tsx:11"}, "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-34e5d070a3ec5f26", "name": "Commented-code block (5 lines) in components/layout/user-menu.tsx:24", "shortDescription": {"text": "Commented-code block (5 lines) in components/layout/user-menu.tsx:24"}, "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-1e8129b5f22d7706", "name": "Commented-code block (5 lines) in components/layout/dashboard-nav.tsx:8", "shortDescription": {"text": "Commented-code block (5 lines) in components/layout/dashboard-nav.tsx:8"}, "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-41bf4496d6fcdb20", "name": "Commented-code block (6 lines) in components/layout/mobile-menu.tsx:14", "shortDescription": {"text": "Commented-code block (6 lines) in components/layout/mobile-menu.tsx:14"}, "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-958ae4b823365a2e", "name": "Commented-code block (6 lines) in components/auth/profile-media-uploader.tsx:14", "shortDescription": {"text": "Commented-code block (6 lines) in components/auth/profile-media-uploader.tsx:14"}, "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-372d68188fe20cf9", "name": "Commented-code block (7 lines) in components/auth/pinned-cards-picker.tsx:13", "shortDescription": {"text": "Commented-code block (7 lines) in components/auth/pinned-cards-picker.tsx: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-809a5a82948ff0f4", "name": "Commented-code block (6 lines) in components/ui/section-heading.tsx:3", "shortDescription": {"text": "Commented-code block (6 lines) in components/ui/section-heading.tsx:3"}, "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-cf01b7da3656662c", "name": "Commented-code block (5 lines) in components/ui/stat-badge.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in components/ui/stat-badge.tsx:3"}, "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-f5471b51775d60a2", "name": "Commented-code block (6 lines) in components/ui/dialog.tsx:14", "shortDescription": {"text": "Commented-code block (6 lines) in components/ui/dialog.tsx:14"}, "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-3dcfcb9809ed194a", "name": "Commented-code block (5 lines) in components/ui/stepper.tsx:11", "shortDescription": {"text": "Commented-code block (5 lines) in components/ui/stepper.tsx:11"}, "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-93c7107b294596fc", "name": "Commented-code block (5 lines) in components/ui/step-rail.tsx:7", "shortDescription": {"text": "Commented-code block (5 lines) in components/ui/step-rail.tsx:7"}, "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-a0ae44b74928d95b", "name": "Commented-code block (6 lines) in components/ui/compass-star.tsx:3", "shortDescription": {"text": "Commented-code block (6 lines) in components/ui/compass-star.tsx:3"}, "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-f8cabf31b0b29664", "name": "Commented-code block (6 lines) in components/ui/popover.tsx:8", "shortDescription": {"text": "Commented-code block (6 lines) in components/ui/popover.tsx:8"}, "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-b5d3cbbd949f24ca", "name": "Commented-code block (7 lines) in components/ui/tabs.tsx:18", "shortDescription": {"text": "Commented-code block (7 lines) in components/ui/tabs.tsx:18"}, "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-0183e4f65ef9bc63", "name": "Commented-code block (6 lines) in components/ui/starfield-backdrop.tsx:4", "shortDescription": {"text": "Commented-code block (6 lines) in components/ui/starfield-backdrop.tsx:4"}, "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-da652b2b5c97e060", "name": "Commented-code block (5 lines) in components/ui/skeleton.tsx:9", "shortDescription": {"text": "Commented-code block (5 lines) in components/ui/skeleton.tsx:9"}, "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-283c12fd0209e95f", "name": "Commented-code block (5 lines) in components/ui/icon-tile.tsx:4", "shortDescription": {"text": "Commented-code block (5 lines) in components/ui/icon-tile.tsx:4"}, "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-65bfe7bb681cdd4d", "name": "Commented-code block (5 lines) in components/marketing/guide-cross-links.tsx:4", "shortDescription": {"text": "Commented-code block (5 lines) in components/marketing/guide-cross-links.tsx:4"}, "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-eb377e55d727a7bf", "name": "Commented-code block (5 lines) in components/admin/challenge-admin.tsx:19", "shortDescription": {"text": "Commented-code block (5 lines) in components/admin/challenge-admin.tsx:19"}, "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-d31ca6e111d36b17", "name": "Commented-code block (5 lines) in components/gallery/gallery-filters.tsx:65", "shortDescription": {"text": "Commented-code block (5 lines) in components/gallery/gallery-filters.tsx:65"}, "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-8a242f800a80c16a", "name": "Commented-code block (9 lines) in components/gallery/trending-cards-section.tsx:15", "shortDescription": {"text": "Commented-code block (9 lines) in components/gallery/trending-cards-section.tsx:15"}, "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-57f28d7a26548398", "name": "Commented-code block (7 lines) in components/creator/dashboard-card-tile.tsx:12", "shortDescription": {"text": "Commented-code block (7 lines) in components/creator/dashboard-card-tile.tsx:12"}, "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-9b2fab071d8ee88a", "name": "Commented-code block (5 lines) in components/creator/scryfall-import-dialog.tsx:35", "shortDescription": {"text": "Commented-code block (5 lines) in components/creator/scryfall-import-dialog.tsx:35"}, "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-3933668045792f09", "name": "Commented-code block (5 lines) in components/creator/custom-pip-dialog.tsx:15", "shortDescription": {"text": "Commented-code block (5 lines) in components/creator/custom-pip-dialog.tsx:15"}, "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-ccf118d9e6746682", "name": "Commented-code block (7 lines) in components/creator/art-uploader.tsx:31", "shortDescription": {"text": "Commented-code block (7 lines) in components/creator/art-uploader.tsx:31"}, "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-bcbb74251a5587e5", "name": "Commented-code block (5 lines) in components/creator/card-creator-form.tsx:286", "shortDescription": {"text": "Commented-code block (5 lines) in components/creator/card-creator-form.tsx:286"}, "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-e1d6f600267aa7ca", "name": "Commented-code block (7 lines) in components/creator/rules-symbol-toolbar.tsx:9", "shortDescription": {"text": "Commented-code block (7 lines) in components/creator/rules-symbol-toolbar.tsx:9"}, "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-440b18bb6b5e949a", "name": "Commented-code block (6 lines) in components/creator/liked-cards-section.tsx:12", "shortDescription": {"text": "Commented-code block (6 lines) in components/creator/liked-cards-section.tsx:12"}, "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-ad601670f3a92dfa", "name": "Commented-code block (5 lines) in components/creator/panels/layout-panel.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in components/creator/panels/layout-panel.tsx:3"}, "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-064c624bc866b17d", "name": "Commented-code block (5 lines) in components/creator/panels/text-panel.tsx:3", "shortDescription": {"text": "Commented-code block (5 lines) in components/creator/panels/text-panel.tsx:3"}, "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-7ad5f6bdd16fa4cd", "name": "Commented-code block (6 lines) in components/sets/set-card-manager.tsx:58", "shortDescription": {"text": "Commented-code block (6 lines) in components/sets/set-card-manager.tsx:58"}, "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-98d88c3f4d455fd4", "name": "Commented-code block (9 lines) in components/sets/set-card-sortable.tsx:15", "shortDescription": {"text": "Commented-code block (9 lines) in components/sets/set-card-sortable.tsx:15"}, "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-9cac8cf4be27ded5", "name": "Commented-code block (5 lines) in components/cards/quick-like-button.tsx:12", "shortDescription": {"text": "Commented-code block (5 lines) in components/cards/quick-like-button.tsx:12"}, "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-de85226bea32ee21", "name": "Commented-code block (5 lines) in components/cards/oracle-text.tsx:6", "shortDescription": {"text": "Commented-code block (5 lines) in components/cards/oracle-text.tsx:6"}, "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-d33f51a2704f7c4a", "name": "Commented-code block (5 lines) in components/cards/frame-layer.tsx:5", "shortDescription": {"text": "Commented-code block (5 lines) in components/cards/frame-layer.tsx:5"}, "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-e33a8a16ef9f015b", "name": "Commented-code block (6 lines) in components/cards/card-comments.tsx:8", "shortDescription": {"text": "Commented-code block (6 lines) in components/cards/card-comments.tsx:8"}, "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-289c7e0bff5d4e11", "name": "Commented-code block (5 lines) in components/cards/download-modal.tsx:13", "shortDescription": {"text": "Commented-code block (5 lines) in components/cards/download-modal.tsx: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-d0a911c31a1aa03d", "name": "Commented-code block (5 lines) in components/cards/mana-cost-picker.tsx:12", "shortDescription": {"text": "Commented-code block (5 lines) in components/cards/mana-cost-picker.tsx:12"}, "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-8bafa16cbe312b3f", "name": "Commented-code block (8 lines) in components/cards/card-preview.tsx:57", "shortDescription": {"text": "Commented-code block (8 lines) in components/cards/card-preview.tsx:57"}, "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-4961151579f3aee7", "name": "Commented-code block (5 lines) in components/cards/mana-cost-glyphs.tsx:4", "shortDescription": {"text": "Commented-code block (5 lines) in components/cards/mana-cost-glyphs.tsx:4"}, "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-ddbe67c5184f6e00", "name": "Commented-code block (5 lines) in components/cards/baked-card-thumbnail.tsx:11", "shortDescription": {"text": "Commented-code block (5 lines) in components/cards/baked-card-thumbnail.tsx:11"}, "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-03416b697fd0e8b7", "name": "Commented-code block (9 lines) in components/cards/set-symbol.tsx:4", "shortDescription": {"text": "Commented-code block (9 lines) in components/cards/set-symbol.tsx:4"}, "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-9bd391137caf8b2f", "name": "Commented-code block (7 lines) in components/cards/card-hover-effect.tsx:24", "shortDescription": {"text": "Commented-code block (7 lines) in components/cards/card-hover-effect.tsx:24"}, "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-5ba338461e7886d6", "name": "Commented-code block (6 lines) in components/profile/social-icon.tsx:5", "shortDescription": {"text": "Commented-code block (6 lines) in components/profile/social-icon.tsx:5"}, "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-2ff2ffac28e0726b", "name": "Commented-code block (5 lines) in components/seo/json-ld.tsx:6", "shortDescription": {"text": "Commented-code block (5 lines) in components/seo/json-ld.tsx:6"}, "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-a91efb26191b3414", "name": "Commented-code block (6 lines) in app/sitemap.ts:18", "shortDescription": {"text": "Commented-code block (6 lines) in app/sitemap.ts:18"}, "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-75cfc1926c565108", "name": "Commented-code block (7 lines) in app/layout.tsx:167", "shortDescription": {"text": "Commented-code block (7 lines) in app/layout.tsx:167"}, "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-55f9aea46305ada5", "name": "Commented-code block (6 lines) in app/api/ai/random-card/route.ts:26", "shortDescription": {"text": "Commented-code block (6 lines) in app/api/ai/random-card/route.ts:26"}, "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-2a49a3332812e0b4", "name": "Commented-code block (5 lines) in app/api/ai/generate-deck/route.ts:18", "shortDescription": {"text": "Commented-code block (5 lines) in app/api/ai/generate-deck/route.ts:18"}, "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-8fb08b303cfa71a2", "name": "Commented-code block (5 lines) in app/api/admin/rebake/route.ts:14", "shortDescription": {"text": "Commented-code block (5 lines) in app/api/admin/rebake/route.ts:14"}, "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-32370b25498e340d", "name": "Commented-code block (5 lines) in app/api/dev/render/route.ts:9", "shortDescription": {"text": "Commented-code block (5 lines) in app/api/dev/render/route.ts:9"}, "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-eeb8cf4965f79003", "name": "Commented-code block (5 lines) in app/api/me/route.ts:21", "shortDescription": {"text": "Commented-code block (5 lines) in app/api/me/route.ts:21"}, "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-aa8ae0bce7dc376e", "name": "Commented-code block (5 lines) in app/api/cron/refill-credits/route.ts:13", "shortDescription": {"text": "Commented-code block (5 lines) in app/api/cron/refill-credits/route.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-6dd01e2ac26b30a3", "name": "Commented-code block (8 lines) in app/api/cards/[id]/og/route.ts:55", "shortDescription": {"text": "Commented-code block (8 lines) in app/api/cards/[id]/og/route.ts:55"}, "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-885b43660f6f1c03", "name": "Commented-code block (5 lines) in app/api/cards/[id]/pdf/route.ts:31", "shortDescription": {"text": "Commented-code block (5 lines) in app/api/cards/[id]/pdf/route.ts:31"}, "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-098480241bb5dfe2", "name": "Commented-code block (6 lines) in app/api/cards/[id]/png/route.ts:24", "shortDescription": {"text": "Commented-code block (6 lines) in app/api/cards/[id]/png/route.ts:24"}, "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-f6ab1a345b8ef3af", "name": "Commented-code block (5 lines) in app/api/scryfall/import-art/route.ts:19", "shortDescription": {"text": "Commented-code block (5 lines) in app/api/scryfall/import-art/route.ts:19"}, "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-d82d0ddc4e54f34c", "name": "Commented-code block (5 lines) in app/(app)/settings/actions.ts:145", "shortDescription": {"text": "Commented-code block (5 lines) in app/(app)/settings/actions.ts:145"}, "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-79b5eb2b237dc090", "name": "Commented-code block (5 lines) in app/(app)/dashboard/page.tsx:201", "shortDescription": {"text": "Commented-code block (5 lines) in app/(app)/dashboard/page.tsx:201"}, "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-6830a49f8ffe3e76", "name": "Commented-code block (6 lines) in app/(app)/card/[username]/edit/page.tsx:26", "shortDescription": {"text": "Commented-code block (6 lines) in app/(app)/card/[username]/edit/page.tsx:26"}, "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-ed2f392d2bb2233c", "name": "Commented-code block (6 lines) in app/(auth)/actions.ts:17", "shortDescription": {"text": "Commented-code block (6 lines) in app/(auth)/actions.ts:17"}, "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-606ece1afc252e07", "name": "Commented-code block (7 lines) in app/(marketing)/layout.tsx:3", "shortDescription": {"text": "Commented-code block (7 lines) in app/(marketing)/layout.tsx:3"}, "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-8ca4a3ee985e8f99", "name": "Commented-code block (6 lines) in app/(marketing)/challenges/[slug]/page.tsx:193", "shortDescription": {"text": "Commented-code block (6 lines) in app/(marketing)/challenges/[slug]/page.tsx:193"}, "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-dd5359ff5594ae11", "name": "Commented-code block (6 lines) in app/(marketing)/gallery/page.tsx:187", "shortDescription": {"text": "Commented-code block (6 lines) in app/(marketing)/gallery/page.tsx:187"}, "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-3b864845b8bfb39c", "name": "Commented-code block (6 lines) in app/(marketing)/ai-mtg-card-generator/page.tsx:12", "shortDescription": {"text": "Commented-code block (6 lines) in app/(marketing)/ai-mtg-card-generator/page.tsx:12"}, "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-48eb0ad10c1c4b60", "name": "Commented-code block (5 lines) in app/(marketing)/profile/[username]/page.tsx:462", "shortDescription": {"text": "Commented-code block (5 lines) in app/(marketing)/profile/[username]/page.tsx:462"}, "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-618a98360f0ea598", "name": "Commented-code block (5 lines) in app/(marketing)/articles/[slug]/page.tsx:13", "shortDescription": {"text": "Commented-code block (5 lines) in app/(marketing)/articles/[slug]/page.tsx: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-2f18f442cfdd1584", "name": "Commented-code block (5 lines) in app/(marketing)/card/[username]/page.tsx:15", "shortDescription": {"text": "Commented-code block (5 lines) in app/(marketing)/card/[username]/page.tsx:15"}, "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-0ab6881420befc61", "name": "Commented-code block (8 lines) in app/(marketing)/set/[slug]/booster/page.tsx:14", "shortDescription": {"text": "Commented-code block (8 lines) in app/(marketing)/set/[slug]/booster/page.tsx:14"}, "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-1889e998b293d75d", "name": "Commented-code block (5 lines) in app/(marketing)/faq/page.tsx:12", "shortDescription": {"text": "Commented-code block (5 lines) in app/(marketing)/faq/page.tsx:12"}, "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-31fae056bdcea20b", "name": "Commented-code block (9 lines) in lib/theme-shared.ts:5", "shortDescription": {"text": "Commented-code block (9 lines) in lib/theme-shared.ts:5"}, "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-a9e0927eee7481ae", "name": "Commented-code block (5 lines) in lib/theme-actions.ts:14", "shortDescription": {"text": "Commented-code block (5 lines) in lib/theme-actions.ts:14"}, "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-cb75c99732cb8ab3", "name": "Commented-code block (6 lines) in lib/site-config.ts:4", "shortDescription": {"text": "Commented-code block (6 lines) in lib/site-config.ts:4"}, "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-3508dc243ce84f25", "name": "Commented-code block (6 lines) in lib/ai/random-card.ts:20", "shortDescription": {"text": "Commented-code block (6 lines) in lib/ai/random-card.ts:20"}, "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-e7d62c10ade94688", "name": "Commented-code block (6 lines) in lib/ai/schemas.ts:64", "shortDescription": {"text": "Commented-code block (6 lines) in lib/ai/schemas.ts:64"}, "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-fa3e9d354fe866e9", "name": "Commented-code block (9 lines) in lib/ai/random-art.ts:11", "shortDescription": {"text": "Commented-code block (9 lines) in lib/ai/random-art.ts:11"}, "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-a757c4f85ae5e0cb", "name": "Commented-code block (6 lines) in lib/ai/rate-limit.ts:6", "shortDescription": {"text": "Commented-code block (6 lines) in lib/ai/rate-limit.ts:6"}, "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-e7b9e6aebbcb2f1c", "name": "Commented-code block (5 lines) in lib/ai/card-assistant.ts:151", "shortDescription": {"text": "Commented-code block (5 lines) in lib/ai/card-assistant.ts:151"}, "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-9241fefac419985e", "name": "Commented-code block (8 lines) in lib/ai/deck-gen.ts:15", "shortDescription": {"text": "Commented-code block (8 lines) in lib/ai/deck-gen.ts:15"}, "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-55cd79aa1ffbbb62", "name": "Commented-code block (6 lines) in lib/auth/schemas.ts:32", "shortDescription": {"text": "Commented-code block (6 lines) in lib/auth/schemas.ts:32"}, "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-d2e11e74cf61d7db", "name": "Commented-code block (5 lines) in lib/moderation/image-scan.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in lib/moderation/image-scan.ts:5"}, "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-bf033adc65b8adfb", "name": "Commented-code block (5 lines) in lib/moderation/notify.ts:5", "shortDescription": {"text": "Commented-code block (5 lines) in lib/moderation/notify.ts:5"}, "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-191de9023ea74f1c", "name": "Commented-code block (5 lines) in lib/challenges/actions.ts:10", "shortDescription": {"text": "Commented-code block (5 lines) in lib/challenges/actions.ts:10"}, "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-0b9d4bb2b03f3373", "name": "Commented-code block (8 lines) in lib/challenges/queries.ts:6", "shortDescription": {"text": "Commented-code block (8 lines) in lib/challenges/queries.ts:6"}, "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-1480afaf34732c1d", "name": "Commented-code block (5 lines) in lib/billing/plans.ts:103", "shortDescription": {"text": "Commented-code block (5 lines) in lib/billing/plans.ts:103"}, "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-b59427ec4633d1a8", "name": "Commented-code block (6 lines) in lib/creator/frame-picker.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in lib/creator/frame-picker.ts:1"}, "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-d6c0a4b0cc35fa92", "name": "Commented-code block (5 lines) in lib/validation/card.ts:11", "shortDescription": {"text": "Commented-code block (5 lines) in lib/validation/card.ts:11"}, "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-35e6eb0f48d66c83", "name": "Commented-code block (7 lines) in lib/sets/actions.ts:300", "shortDescription": {"text": "Commented-code block (7 lines) in lib/sets/actions.ts:300"}, "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-d09bacef939d5cac", "name": "Commented-code block (5 lines) in lib/sets/likes.ts:7", "shortDescription": {"text": "Commented-code block (5 lines) in lib/sets/likes.ts:7"}, "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-1fc683af9a4a845e", "name": "Commented-code block (5 lines) in lib/content/articles.ts:10", "shortDescription": {"text": "Commented-code block (5 lines) in lib/content/articles.ts:10"}, "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-2adf3e688373eac3", "name": "Commented-code block (6 lines) in lib/supabase/public.ts:10", "shortDescription": {"text": "Commented-code block (6 lines) in lib/supabase/public.ts:10"}, "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-91b214dac05ce6b0", "name": "Commented-code block (5 lines) in lib/supabase/env.ts:4", "shortDescription": {"text": "Commented-code block (5 lines) in lib/supabase/env.ts:4"}, "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-03693a04fb9ef3ed", "name": "Commented-code block (6 lines) in lib/supabase/session-cookie.ts:3", "shortDescription": {"text": "Commented-code block (6 lines) in lib/supabase/session-cookie.ts:3"}, "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-a94cf21f67a26209", "name": "Commented-code block (5 lines) in lib/supabase/admin.ts:6", "shortDescription": {"text": "Commented-code block (5 lines) in lib/supabase/admin.ts:6"}, "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-8107caaf8c49876c", "name": "Commented-code block (7 lines) in lib/cards/layout-version.ts:5", "shortDescription": {"text": "Commented-code block (7 lines) in lib/cards/layout-version.ts:5"}, "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-cc74fe93fdce9641", "name": "Commented-code block (5 lines) in lib/cards/bake-render.ts:26", "shortDescription": {"text": "Commented-code block (5 lines) in lib/cards/bake-render.ts:26"}, "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-b5f00d8577eac1a8", "name": "Commented-code block (8 lines) in lib/cards/card-display.ts:47", "shortDescription": {"text": "Commented-code block (8 lines) in lib/cards/card-display.ts:47"}, "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-3eb37793f82ebf29", "name": "Commented-code block (6 lines) in lib/cards/render-tiers.ts:6", "shortDescription": {"text": "Commented-code block (6 lines) in lib/cards/render-tiers.ts:6"}, "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-3ef65b3a09bce313", "name": "Commented-code block (5 lines) in lib/cards/comments-actions.ts:11", "shortDescription": {"text": "Commented-code block (5 lines) in lib/cards/comments-actions.ts:11"}, "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-acbd8fd8347cfe0d", "name": "Commented-code block (7 lines) in lib/cards/bake-core.ts:17", "shortDescription": {"text": "Commented-code block (7 lines) in lib/cards/bake-core.ts:17"}, "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-dbcc433c0bf9f48c", "name": "Commented-code block (6 lines) in lib/cards/template-layout.ts:1", "shortDescription": {"text": "Commented-code block (6 lines) in lib/cards/template-layout.ts:1"}, "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-1db696e8958a6156", "name": "Commented-code block (5 lines) in lib/cards/actions.ts:509", "shortDescription": {"text": "Commented-code block (5 lines) in lib/cards/actions.ts:509"}, "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-976ef279dd22d610", "name": "Commented-code block (5 lines) in lib/cards/rules-text.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in lib/cards/rules-text.ts:1"}, "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-16925bedab5d2042", "name": "Commented-code block (6 lines) in lib/cards/source-queries.ts:7", "shortDescription": {"text": "Commented-code block (6 lines) in lib/cards/source-queries.ts:7"}, "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-95cd26a2b1c46497", "name": "Commented-code block (5 lines) in lib/cards/queries.ts:440", "shortDescription": {"text": "Commented-code block (5 lines) in lib/cards/queries.ts:440"}, "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-ad6d2b7e0ae777d5", "name": "Commented-code block (7 lines) in lib/cards/upload-art-server.ts:17", "shortDescription": {"text": "Commented-code block (7 lines) in lib/cards/upload-art-server.ts:17"}, "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-a70add2ed1bddbb2", "name": "Commented-code block (5 lines) in lib/profile/upload-server.ts:10", "shortDescription": {"text": "Commented-code block (5 lines) in lib/profile/upload-server.ts:10"}, "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-5f7e963c4470e646", "name": "Commented-code block (6 lines) in lib/scryfall/import-mapper.ts:14", "shortDescription": {"text": "Commented-code block (6 lines) in lib/scryfall/import-mapper.ts:14"}, "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-bf574765b49105da", "name": "Commented-code block (8 lines) in lib/scryfall/usage-queries.ts:9", "shortDescription": {"text": "Commented-code block (8 lines) in lib/scryfall/usage-queries.ts:9"}, "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-fb80379622ad8d1b", "name": "Commented-code block (5 lines) in lib/scryfall/client.ts:22", "shortDescription": {"text": "Commented-code block (5 lines) in lib/scryfall/client.ts:22"}, "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-b960f7d3b4a1de06", "name": "`fetch()` without try/.catch or AbortSignal \u2014 lib/scryfall/client.ts:52", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 lib/scryfall/client.ts:52"}, "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-6cc1c2a2fb537858", "name": "Commented-code block (7 lines) in lib/og/shell.tsx:3", "shortDescription": {"text": "Commented-code block (7 lines) in lib/og/shell.tsx:3"}, "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-91159ed95380bfb3", "name": "Commented-code block (5 lines) in lib/stripe/webhook-handlers.ts:16", "shortDescription": {"text": "Commented-code block (5 lines) in lib/stripe/webhook-handlers.ts:16"}, "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-69bf5aea06efcd41", "name": "Commented-code block (7 lines) in lib/render/card-frames.ts:10", "shortDescription": {"text": "Commented-code block (7 lines) in lib/render/card-frames.ts:10"}, "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-5e1cbe5d437672b4", "name": "Commented-code block (5 lines) in lib/render/card-image.tsx:6", "shortDescription": {"text": "Commented-code block (5 lines) in lib/render/card-image.tsx:6"}, "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-182ed9d4aa77fbc9", "name": "Commented-code block (5 lines) in lib/render/card-fonts.ts:6", "shortDescription": {"text": "Commented-code block (5 lines) in lib/render/card-fonts.ts:6"}, "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-341063e88605e688", "name": "Commented-code block (5 lines) in lib/pips/actions.ts:179", "shortDescription": {"text": "Commented-code block (5 lines) in lib/pips/actions.ts:179"}, "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-7e3aa6f203e73d36", "name": "Commented-code block (5 lines) in lib/pips/queries.ts:11", "shortDescription": {"text": "Commented-code block (5 lines) in lib/pips/queries.ts:11"}, "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-8e047ab7af03962f", "name": "7 env vars used in code but missing from .env.example", "shortDescription": {"text": "7 env vars used in code but missing from .env.example"}, "fullDescription": {"text": "Drift between code and config docs. The first few: `BATCH`, `CI`, `HARNESS_URL`, `NODE_ENV`, `REBAKE_URL`, `VERCEL_PROJECT_PRODUCTION_URL`, `VERCEL_URL`. 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/21533"}, "properties": {"repository": "TOOTRJ/cardforge", "repoUrl": "https://github.com/TOOTRJ/cardforge", "branch": "main"}, "results": [{"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361606, "scanner": "foundry_dataset", "fingerprint": "54a50850794e71081f83d3ff490082e4e27eccf2283638ee94928f2d092b6f0c", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 2, "test_ci_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 3, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#9", "issue_number": "9", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-91063858608b0ca8", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#9\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#9\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#9\nRepo: TOOTRJ/cardforge\nIssue/PR number: 9\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-d15a1363b42f9413", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361605, "scanner": "foundry_dataset", "fingerprint": "1c39ba9b578b2f01cabcef68997b184e94359051e9095a7d3eab5bb139d50efb", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 1, "test_ci_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#8", "issue_number": "8", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-08131c7f0587a2c1", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#8\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#8\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#8\nRepo: TOOTRJ/cardforge\nIssue/PR number: 8\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-06c62b805eab5c9b", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361604, "scanner": "foundry_dataset", "fingerprint": "e4ca5b13f2aa0d58293eb86878eba2723e3a64f5c7857736056caec5492c7859", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 2, "deployment_env_gap": 1, "build_install_failure": 1, "verification_or_tests": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 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": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#7", "issue_number": "7", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-0fc07cb1e6585eb3", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#7\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#7\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#7\nRepo: TOOTRJ/cardforge\nIssue/PR number: 7\nGraph consistency label: supported_by_verification_signal\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'build_install_failure': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-52f20afdcaebd50e", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361603, "scanner": "foundry_dataset", "fingerprint": "f2267407e8a858b946ca265198d6c72d1eb213a6a353fdfc50a324eeb37d0d4f", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 5, "mock_placeholder": 1, "deployment_env_gap": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#6", "issue_number": "6", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-c651dfc71853ac93", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#6\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#6\nRepo: TOOTRJ/cardforge\nIssue/PR number: 6\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 5, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-605a2ade903802d5", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361602, "scanner": "foundry_dataset", "fingerprint": "5a619862faaa019c2fb157c86a25d739883346b0f5109735acf6d3dd1b651057", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 5, "mock_placeholder": 1, "deployment_env_gap": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#5", "issue_number": "5", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-4c40e503c0b87779", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#5\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#5\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#5\nRepo: TOOTRJ/cardforge\nIssue/PR number: 5\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 5, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-b6ca4d99d6b62170", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361601, "scanner": "foundry_dataset", "fingerprint": "619503bcf9d6fbbeec6c92e6ddef9a0b641fa80119dc53c49a256e47423ee088", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 2, "ui_workflow": 1, "ui_workflow_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#4", "issue_number": "4", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-4da81c734ad6c877", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#4\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#4\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#4\nRepo: TOOTRJ/cardforge\nIssue/PR number: 4\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'ui_workflow_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'ui_workflow': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-9c1f73d6733212fa", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361600, "scanner": "foundry_dataset", "fingerprint": "d2a2b88ef265368ed9996096e65e356135452d93e200cfa25e141ce119eebf04", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 2, "test_ci_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 3, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#36", "issue_number": "36", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-0632e615fff31f43", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#36\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#36\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#36\nRepo: TOOTRJ/cardforge\nIssue/PR number: 36\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-8aa3f956e8a6858d", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361599, "scanner": "foundry_dataset", "fingerprint": "2baa2e2b5bde484a42475dca3cf7486bef775122e44f911f43e3d8abcc1037db", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"test_ci_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 5, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "ambiguous_needs_more_evidence": 3, "blueprint_human_gap_disagreement": 1, "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": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#35", "issue_number": "35", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-a8bab38cf7f55bf8", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#35\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#35\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#35\nRepo: TOOTRJ/cardforge\nIssue/PR number: 35\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'comment_has_related_commit_context': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-2b42ae0bb7108887", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361598, "scanner": "foundry_dataset", "fingerprint": "0abd23f0a88aca7abdf92bd3cb7d997322ba9efa4225ab6a1c06172ca549fe3a", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 1, "test_ci_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#34", "issue_number": "34", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-ff75c27408bcc250", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#34\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#34\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#34\nRepo: TOOTRJ/cardforge\nIssue/PR number: 34\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-1732e35d377377b3", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361597, "scanner": "foundry_dataset", "fingerprint": "15c924dfbb3ca87ddb02d9e67e00b60533547ee390705b498ca998925966960c", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"test_ci_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 5, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "ambiguous_needs_more_evidence": 3, "blueprint_human_gap_disagreement": 1, "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": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#33", "issue_number": "33", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-73f498e0f2a1d665", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#33\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#33\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#33\nRepo: TOOTRJ/cardforge\nIssue/PR number: 33\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'comment_has_related_commit_context': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-6e4b88741b7a40a7", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361596, "scanner": "foundry_dataset", "fingerprint": "e88678eed62a4f1d0b217028a2a285cbf687d0cf942944a0ce11347e9dc0616b", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 2, "test_ci_gap": 2, "deployment_env_gap": 1, "verification_or_tests": 9, "human_feedback_general": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "ambiguous_needs_more_evidence": 1, "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, "claimed_resolved_with_verification_signal": 4, "human_reported_issue_then_verified_fix_attempt": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 2, "ambiguous_needs_more_evidence": 2, "claimed_resolved_with_verification_signal": 8}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 49, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 4, "thread_has_comment": 4, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 8, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 4, "comment_chain_links_commit": 15, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 4}, "node_count": 34, "node_types": {"repo": 1, "commit": 11, "thread": 1, "comment": 4, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 8, "comment_chain": 4, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#32", "issue_number": "32", "quality_tiers": {"unresolved": 1, "assumption_check": 2, "weak_supervision": 5}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-5590e5c68fe49b5d", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#32\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#32\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#32\nRepo: TOOTRJ/cardforge\nIssue/PR number: 32\nGraph consistency label: supported_by_verification_signal\nNodes: 34\nEdges: 49\nNode types: {'commit': 11, 'link_quality': 8, 'comment': 4, 'comment_chain': 4, 'alignment': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 15, 'chain_has_link_quality': 8, 'thread_has_comment': 4, 'thread_has_comment_chain': 4, 'comment_has_chain': 4, 'issue_chain_has_comment_chain': 4, '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': 9, 'claimed_resolved_with_verification_signal': 4, 'test_ci_gap': 2, 'human_reported_issue_then_verified_fix_attempt': 2, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'issue_or_pull_request_thread': 1, 'deployment_env_gap': 1, 'human_feedback_general': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 8, 'not_resolved_or_not_observed': 2, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 5, '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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-1e10e4760b1d5cb7", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361595, "scanner": "foundry_dataset", "fingerprint": "cc86eba6c731c470a500ce65152751dacf4abf0aeca57e35e5c431c32b45177c", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 2, "deployment_env_gap": 1, "generated_provenance": 3, "agent_instruction_gap": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#31", "issue_number": "31", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-390a0ba78d23b87e", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#31\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#31\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#31\nRepo: TOOTRJ/cardforge\nIssue/PR number: 31\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'generated_provenance': 3, 'claimed_resolved_unverified': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-0c66d0160ff03409", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361594, "scanner": "foundry_dataset", "fingerprint": "8a9994437f6c887100bfb3f26001dc23d178f883bf0fce7412e914621531f3f4", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 4, "deployment_env_gap": 1, "generated_provenance": 1, "agent_instruction_gap": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#30", "issue_number": "30", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-b409b7e58c7482f0", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#30\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#30\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#30\nRepo: TOOTRJ/cardforge\nIssue/PR number: 30\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 4, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'generated_provenance': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-7b2d0a7f05ffba89", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361593, "scanner": "foundry_dataset", "fingerprint": "7ebb3f2fe2077b1f61d7b4bcca668f17516eb0dac72b49afed2430648dbe6b31", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 2, "data_schema": 1, "deployment_env_gap": 1, "verification_or_tests": 2, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#3", "issue_number": "3", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-0c786e4de406bd3f", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#3\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#3\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#3\nRepo: TOOTRJ/cardforge\nIssue/PR number: 3\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'data_schema': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-427d1922fa6f30df", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361592, "scanner": "foundry_dataset", "fingerprint": "5ab1fd80c19d03c73188c4a5313f3d6a4a29bbbfbd54c187c6779c6193426781", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 3, "deployment_env_gap": 1, "generated_provenance": 2, "agent_instruction_gap": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#29", "issue_number": "29", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-a5ac9104c6c12734", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#29\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#29\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#29\nRepo: TOOTRJ/cardforge\nIssue/PR number: 29\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 3, 'claimed_resolved_unverified': 3, 'generated_provenance': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-86d8fd0b93d2352e", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361591, "scanner": "foundry_dataset", "fingerprint": "db382d38be2493a33a130690db8609e86014522f453c7827bf272cb5ea2ca90a", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 1, "deployment_env_gap": 1, "api_integration_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#28", "issue_number": "28", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-b2e5c05bdd238db9", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#28\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#28\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#28\nRepo: TOOTRJ/cardforge\nIssue/PR number: 28\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-b50643e0111b9b50", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361590, "scanner": "foundry_dataset", "fingerprint": "3f19921c7d000cace6c23426ba22218d2aa9ceeb3dd17eb1393f3e4c871bfa8e", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 3, "deployment_env_gap": 1, "dependency_or_build": 1, "security_or_secrets": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#27", "issue_number": "27", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-ac5a73d8756bfe6e", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#27\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#27\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#27\nRepo: TOOTRJ/cardforge\nIssue/PR number: 27\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 3, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'dependency_or_build': 1, 'security_or_secrets': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-e447acbb1cccf51f", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361589, "scanner": "foundry_dataset", "fingerprint": "96f0fb91c95398da9c2130929e2e8cbd0f3c3d07e8985dd2f1c824ab5dfbfb0f", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 4, "deployment_env_gap": 1, "security_or_secrets": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#26", "issue_number": "26", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-b28940f7c46a96dc", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#26\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#26\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#26\nRepo: TOOTRJ/cardforge\nIssue/PR number: 26\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 4, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'security_or_secrets': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-272e296789f57100", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361588, "scanner": "foundry_dataset", "fingerprint": "164aec2970f3e497a484d5063c27e4a3dd956dad4bea93f3166bfc7bd3918d4f", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 2, "ui_workflow": 1, "ui_workflow_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#25", "issue_number": "25", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-8a846a55306ba1f2", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#25\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#25\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#25\nRepo: TOOTRJ/cardforge\nIssue/PR number: 25\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'ui_workflow_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'ui_workflow': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-2b3b827dda8de3f7", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361587, "scanner": "foundry_dataset", "fingerprint": "365e887a623069d4cbd5becf7e0e4910da25c9f52a03e4d2c547561b04a925cb", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 3, "deployment_env_gap": 1, "dependency_or_build": 1, "security_or_secrets": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#24", "issue_number": "24", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-d418d467b06f9fbe", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#24\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#24\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#24\nRepo: TOOTRJ/cardforge\nIssue/PR number: 24\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 3, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'dependency_or_build': 1, 'security_or_secrets': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-0f80495f2481dad1", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361586, "scanner": "foundry_dataset", "fingerprint": "519c157e674d99a1ff01a462ef2dafa021ff279e7eee8d374833b5c13e00f3d1", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 3, "deployment_env_gap": 1, "dependency_or_build": 1, "security_or_secrets": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#23", "issue_number": "23", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-3a8369ef1b7e2d1a", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#23\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#23\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#23\nRepo: TOOTRJ/cardforge\nIssue/PR number: 23\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 3, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'security_or_secrets': 1, 'dependency_or_build': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-e6aa7ac7813e1546", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361585, "scanner": "foundry_dataset", "fingerprint": "b34636de43635d14071ca249478c1eba0c412e25f4d4265050411b613d65396b", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#22", "issue_number": "22", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-49cb316ba288f756", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#22\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#22\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#22\nRepo: TOOTRJ/cardforge\nIssue/PR number: 22\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-7c2efe63870ae107", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361584, "scanner": "foundry_dataset", "fingerprint": "9ad6218b28aa694a7151c8c88d4e52ae6a4abc44ee719fdc339ff412ca3369c9", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 5, "deployment_env_gap": 1, "agent_instruction_gap": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#21", "issue_number": "21", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-eb85f65ed1640bd4", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#21\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#21\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#21\nRepo: TOOTRJ/cardforge\nIssue/PR number: 21\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 5, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-514be2b0f22b03b0", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361583, "scanner": "foundry_dataset", "fingerprint": "8cc44f83fb4913a65158ae6f4b8724dff87626c1062fab29d885501b88b13782", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 3, "deployment_env_gap": 1, "security_or_secrets": 2, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#20", "issue_number": "20", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-0c8ce1f5eed5f33a", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#20\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#20\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#20\nRepo: TOOTRJ/cardforge\nIssue/PR number: 20\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 3, 'claimed_resolved_unverified': 3, 'security_or_secrets': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-6bb47dca447e5aa1", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361582, "scanner": "foundry_dataset", "fingerprint": "55abc9ff1f00ba562f952614f43c143e43541656011d009c987471ae5fad3307", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 1, "deployment_env_gap": 1, "build_install_failure": 1, "verification_or_tests": 4, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 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": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#2", "issue_number": "2", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-be140226ee04ba6a", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#2\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#2\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#2\nRepo: TOOTRJ/cardforge\nIssue/PR number: 2\nGraph consistency label: supported_by_verification_signal\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'build_install_failure': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-604675d6acdb8d76", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361581, "scanner": "foundry_dataset", "fingerprint": "e911437cb03b2d9d1f7ae8b43bc4fc55dbf28055d6050691d8ea6758fc5df840", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 2, "deployment_env_gap": 1, "api_integration_gap": 1, "verification_or_tests": 3, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#19", "issue_number": "19", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-f1bc43e7986ef98a", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#19\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#19\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#19\nRepo: TOOTRJ/cardforge\nIssue/PR number: 19\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-4e123589e82b378f", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361580, "scanner": "foundry_dataset", "fingerprint": "2383a32a41b087ffb2b0ac25630dc7683c103c1a9231215fb44c036d11ee9937", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 3, "deployment_env_gap": 1, "dependency_or_build": 1, "security_or_secrets": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#18", "issue_number": "18", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-0509829799929f26", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#18\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#18\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#18\nRepo: TOOTRJ/cardforge\nIssue/PR number: 18\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 3, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'dependency_or_build': 1, 'security_or_secrets': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-ec5bf5eace9b265f", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361579, "scanner": "foundry_dataset", "fingerprint": "694b49db64188ea2905e5678f79a506d0c27c8b0b50e11e9b3f7a829a1f4c682", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 3, "deployment_env_gap": 1, "dependency_or_build": 1, "security_or_secrets": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#15", "issue_number": "15", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-9483a481a9289128", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#15\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#15\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#15\nRepo: TOOTRJ/cardforge\nIssue/PR number: 15\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 3, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'dependency_or_build': 1, 'security_or_secrets': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-a682bc905a196eec", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361578, "scanner": "foundry_dataset", "fingerprint": "37c8b56aa0ff4ddfbb7071cc95244840c56168d9892ab9c095922160cbaa0fa7", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 5, "mock_placeholder": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#14", "issue_number": "14", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-e6434b21f087b376", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#14\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#14\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#14\nRepo: TOOTRJ/cardforge\nIssue/PR number: 14\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 5, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'security_auth_secret': 1, 'human_reported_issue_then_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-24e7489220544b4b", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361577, "scanner": "foundry_dataset", "fingerprint": "5e78fea85ff2411ebd9b94820a6fb1b2fe1d403f3033d4206cd2f24087c32fc2", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 5, "mock_placeholder": 1, "deployment_env_gap": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#13", "issue_number": "13", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-463293af17708c37", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#13\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#13\nRepo: TOOTRJ/cardforge\nIssue/PR number: 13\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 5, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-1ee88a93fd41380d", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361576, "scanner": "foundry_dataset", "fingerprint": "cdf90dba586f79f0189cee84ffe8702d03591df31924aad2c73f308bed832037", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"test_ci_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 5, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "ambiguous_needs_more_evidence": 3, "blueprint_human_gap_disagreement": 1, "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": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#11", "issue_number": "11", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-51d790c792b7cfdf", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#11\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#11\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#11\nRepo: TOOTRJ/cardforge\nIssue/PR number: 11\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'comment_has_related_commit_context': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-bed829276fbce35a", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361575, "scanner": "foundry_dataset", "fingerprint": "144f502a4fa796742534945fe3b6b398f75da79a46116a7e1781b0e8dc4a3845", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"bug_fix": 4, "data_schema": 1, "mock_placeholder": 1, "deployment_env_gap": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#10", "issue_number": "10", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-e0d1d511bb57d9ba", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#10\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#10\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#10\nRepo: TOOTRJ/cardforge\nIssue/PR number: 10\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 4, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'data_schema': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-8b4e36a8657c0d9e", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: TOOTRJ/cardforge"}, "properties": {"repobilityId": 361574, "scanner": "foundry_dataset", "fingerprint": "182e75ac7e437bbbcb05fbb0bbc4f3263b5f572dba994831043acfbb8171e2ed", "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": {"deployment_env_gap": 1, "agent_instruction_gap": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 4, "human_reported_issue_no_linked_fix": 2, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 8}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 12, "node_types": {"repo": 1, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#1", "issue_number": "1", "quality_tiers": {"unresolved": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-c80540bacc70dae2", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: needs_more_evidence\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#1\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#1\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#1\nRepo: TOOTRJ/cardforge\nIssue/PR number: 1\nGraph consistency label: needs_more_evidence\nNodes: 12\nEdges: 16\nNode types: {'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'not_resolved_or_not_observed': 4, 'human_reported_issue_no_linked_fix': 2, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'deployment_env_gap': 1}\nOutcomes: {'not_resolved_or_not_observed': 8}\nQuality tiers: {'unresolved': 4}\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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-5e561f4933893752", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345387, "scanner": "foundry_dataset", "fingerprint": "93a0dc4d8c70db32bd37a21b57c99f033f095573d45d3acbb8e2eea7a4f32469", "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": 2, "test_ci_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 3, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#9", "issue_number": "9", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-a2a0b65a846b467a", "graph_gold_label": "supported_by_verification_signal", "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_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#9\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#9\nRepo: TOOTRJ/cardforge\nIssue/PR number: 9\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-669749c7cf2d73d4", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345386, "scanner": "foundry_dataset", "fingerprint": "5c3175d39a3f0174d64ed5eccbe18d5577fe518e1e47be9375a5ac541cce55a5", "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_ci_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#8", "issue_number": "8", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-0c47762c3e6a7366", "graph_gold_label": "supported_by_verification_signal", "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_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#8\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#8\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#8\nRepo: TOOTRJ/cardforge\nIssue/PR number: 8\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-d6586f7c222e9c1c", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345385, "scanner": "foundry_dataset", "fingerprint": "a0b8db17ba49b10a9e70fac0a463e0d8cd7ef49ec2830b0444f21f8d43d47ddf", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"api_or_backend": 1, "commit_general": 1, "ui_or_frontend": 2, "source_or_other": 5, "deployment_env_gap": 1, "api_integration_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 8, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 8, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 16, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 28, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 8, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#79", "issue_number": "79", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-3352b84c1ddb7bec", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"api_or_backend": 5, "ui_or_frontend": 10, "source_or_other": 25}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#79\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#79\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#79\nRepo: TOOTRJ/cardforge\nIssue/PR number: 79\nGraph consistency label: weak_supervision_needs_review\nNodes: 28\nEdges: 58\nNode types: {'pr_file': 8, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_touches_file': 16, 'thread_touches_file': 8, 'issue_chain_touches_file': 8, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'source_or_other': 5, 'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'ui_or_frontend': 2, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'deployment_env_gap': 1, 'api_or_backend': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-e2a8d742e76ba705", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345384, "scanner": "foundry_dataset", "fingerprint": "0c000cc41dbbd00162127b8ba7c0089c827b89489943e0a4327e47a142d7d534", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"bug_fix": 1, "commit_general": 1, "ui_or_frontend": 4, "source_or_other": 3, "deployment_env_gap": 1, "api_integration_gap": 1, "verification_or_tests": 3, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_disagreement": 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": "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": {}, "synthetic": false, "edge_count": 54, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 7, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 27, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 7, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#78", "issue_number": "78", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-4b5bd8bcc874f2cd", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"ui_or_frontend": 20, "source_or_other": 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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#78\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#78\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#78\nRepo: TOOTRJ/cardforge\nIssue/PR number: 78\nGraph consistency label: supported_by_verification_signal\nNodes: 27\nEdges: 54\nNode types: {'pr_file': 7, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 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': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 4, 'source_or_other': 3, 'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'commit_general': 1, 'bug_fix': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-8c7a1a9f7adb6735", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345383, "scanner": "foundry_dataset", "fingerprint": "2cbcfeceb80b39772077db51e8a1323bd6e9b88d551f4203604061b61eb1a49b", "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, "data_schema": 1, "commit_general": 1, "schema_or_data": 1, "ui_or_frontend": 12, "deployment_env_gap": 1, "verification_or_tests": 3, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_disagreement": 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": "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": {}, "synthetic": false, "edge_count": 76, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 14, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 24, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 34, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 14, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#76", "issue_number": "76", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-79db79246051a332", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 5, "schema_or_data": 5, "ui_or_frontend": 60}}, "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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#76\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#76\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#76\nRepo: TOOTRJ/cardforge\nIssue/PR number: 76\nGraph consistency label: supported_by_verification_signal\nNodes: 34\nEdges: 76\nNode types: {'pr_file': 14, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_touches_file': 24, 'thread_touches_file': 14, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 12, 'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'schema_or_data': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'commit_general': 1, 'data_schema': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-6debb37bff100b46", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345382, "scanner": "foundry_dataset", "fingerprint": "a7de44dcfb573cb6959489a62b4d3ce067f8db631290cf1f2f243016b0735ac4", "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": {"commit_general": 1, "ui_or_frontend": 13, "source_or_other": 2, "ui_workflow_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 77, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 15, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 24, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 35, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 15, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#75", "issue_number": "75", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-6497274ab2ea8df7", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"ui_or_frontend": 65, "source_or_other": 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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#75\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#75\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#75\nRepo: TOOTRJ/cardforge\nIssue/PR number: 75\nGraph consistency label: supported_by_high_confidence_link\nNodes: 35\nEdges: 77\nNode types: {'pr_file': 15, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_touches_file': 24, 'thread_touches_file': 15, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 13, 'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'source_or_other': 2, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'ui_workflow_gap': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-97532e4b8d923808", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345381, "scanner": "foundry_dataset", "fingerprint": "24d7594e5231c8b8949976ec6e2163f5b7f1ef23bb0e98dd460a0ab7605206d0", "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, "api_or_backend": 1, "docs_or_claims": 21, "ui_or_frontend": 3, "source_or_other": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "data_schema_persistence": 1, "mostly follows blueprint": 1, "claimed_resolved_unverified": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 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": {"claimed_resolved_unverified": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 89, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 27, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 24, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 47, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 27, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#74", "issue_number": "74", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-0d9f45f0f935ae65", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 5, "api_or_backend": 5, "docs_or_claims": 105, "ui_or_frontend": 15, "source_or_other": 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_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#74\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#74\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#74\nRepo: TOOTRJ/cardforge\nIssue/PR number: 74\nGraph consistency label: supported_by_verification_signal\nNodes: 47\nEdges: 89\nNode types: {'pr_file': 27, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 27, 'comment_chain_touches_file': 24, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'docs_or_claims': 21, 'verification_or_tests': 4, 'ui_or_frontend': 3, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'api_or_backend': 1, 'source_or_other': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'human_reported_issue_then_fix_attempt': 1, 'claimed_resolved_unverified': 1, 'blueprint_human_gap_disagreement': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'claimed_resolved_unverified': 2}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-7a2453c84a1664d8", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345380, "scanner": "foundry_dataset", "fingerprint": "76ba561531cc0a0ade3a808dd5a86adf90ceaba6b86a9e2e78f87ddec78cf0d8", "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, "commit_general": 1, "ui_or_frontend": 4, "source_or_other": 2, "ui_workflow_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 7, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 27, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 7, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#73", "issue_number": "73", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-0800199360ca9542", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"test_or_ci": 5, "ui_or_frontend": 20, "source_or_other": 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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#73\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#73\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#73\nRepo: TOOTRJ/cardforge\nIssue/PR number: 73\nGraph consistency label: weak_supervision_needs_review\nNodes: 27\nEdges: 54\nNode types: {'pr_file': 7, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 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': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 4, 'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'source_or_other': 2, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'ui_workflow_gap': 1, 'deployment_env_gap': 1, 'test_or_ci': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-f65c12cc4662d68f", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345379, "scanner": "foundry_dataset", "fingerprint": "6113af228e85d7e4645d8160003194d5b10d950082c409611c5029147a64edd1", "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, "ui_workflow": 1, "ui_or_frontend": 3, "source_or_other": 4, "deployment_env_gap": 1, "verification_or_tests": 3, "mostly follows blueprint": 1, "claimed_resolved_unverified": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 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": {"claimed_resolved_unverified": 2, "claimed_resolved_with_verification_signal": 6}, "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": 8, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 8, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 16, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 28, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 8, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#72", "issue_number": "72", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-64a0907f213306c4", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 5, "ui_or_frontend": 15, "source_or_other": 20}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#72\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#72\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#72\nRepo: TOOTRJ/cardforge\nIssue/PR number: 72\nGraph consistency label: supported_by_verification_signal\nNodes: 28\nEdges: 58\nNode types: {'pr_file': 8, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_touches_file': 16, 'thread_touches_file': 8, 'issue_chain_touches_file': 8, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'source_or_other': 4, 'ui_or_frontend': 3, 'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'ui_workflow': 1, 'bug_fix': 1, 'human_reported_issue_then_fix_attempt': 1, 'claimed_resolved_unverified': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'claimed_resolved_unverified': 2}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-67d7f6959abb10a0", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345378, "scanner": "foundry_dataset", "fingerprint": "e8b64a50e370cf5192cc4fd9aed9fb89621af83f08cf119f4e0162360914d8f1", "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, "commit_general": 1, "schema_or_data": 2, "ui_or_frontend": 6, "source_or_other": 3, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 75, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 13, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 24, "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": 13, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#71", "issue_number": "71", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-a6566b527ab8a9d3", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"test_or_ci": 10, "schema_or_data": 10, "ui_or_frontend": 30, "source_or_other": 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: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#71\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#71\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#71\nRepo: TOOTRJ/cardforge\nIssue/PR number: 71\nGraph consistency label: weak_supervision_needs_review\nNodes: 33\nEdges: 75\nNode types: {'pr_file': 13, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_touches_file': 24, 'thread_touches_file': 13, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 6, 'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'source_or_other': 3, 'schema_or_data': 2, 'test_or_ci': 2, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-1ecab3e374989bf0", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345377, "scanner": "foundry_dataset", "fingerprint": "d87c0c2894b9d5bde97927c814793900cee7cba393a1d57884963eeec0e71a53", "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": 3, "test_ci_gap": 1, "commit_general": 1, "ui_or_frontend": 12, "source_or_other": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 78, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 16, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "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": 16, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#67", "issue_number": "67", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-aa2f4f8d14facacb", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"test_or_ci": 15, "ui_or_frontend": 60, "source_or_other": 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: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#67\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#67\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#67\nRepo: TOOTRJ/cardforge\nIssue/PR number: 67\nGraph consistency label: weak_supervision_needs_review\nNodes: 36\nEdges: 78\nNode types: {'pr_file': 16, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_touches_file': 24, 'thread_touches_file': 16, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 12, 'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'test_or_ci': 3, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'source_or_other': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-f5f7add25d2432c3", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345376, "scanner": "foundry_dataset", "fingerprint": "a181d7381e1025eddb6f085010b9c176931dbc420dfab8a55eab9c7049b6d7cd", "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": 3, "test_or_ci": 1, "ui_or_frontend": 2, "ui_workflow_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 2, "mostly follows blueprint": 1, "claimed_resolved_unverified": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 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": {"claimed_resolved_unverified": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 38, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 3, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 3, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 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, "pr_file": 3, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#66", "issue_number": "66", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-4c787473d8632e7b", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 5, "ui_or_frontend": 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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#66\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#66\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#66\nRepo: TOOTRJ/cardforge\nIssue/PR number: 66\nGraph consistency label: supported_by_verification_signal\nNodes: 23\nEdges: 38\nNode types: {'commit': 5, 'link_quality': 5, 'pr_file': 3, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'comment_chain_touches_file': 6, 'chain_has_link_quality': 5, '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, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'bug_fix': 3, 'claimed_resolved_with_verification_signal': 3, 'ui_or_frontend': 2, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'ui_workflow_gap': 1, 'deployment_env_gap': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'human_reported_issue_then_fix_attempt': 1, 'claimed_resolved_unverified': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'claimed_resolved_unverified': 2}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-f7a7d22a2c3b5667", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345375, "scanner": "foundry_dataset", "fingerprint": "1604a2306d18a9c2ff5d6acffc93a73b68f28b485545891f7f7e4d46c47a8763", "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, "commit_general": 1, "ui_or_frontend": 5, "source_or_other": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 8, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 8, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 16, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 28, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 8, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#65", "issue_number": "65", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-d8f835764ce317e1", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"test_or_ci": 10, "ui_or_frontend": 25, "source_or_other": 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: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#65\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#65\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#65\nRepo: TOOTRJ/cardforge\nIssue/PR number: 65\nGraph consistency label: weak_supervision_needs_review\nNodes: 28\nEdges: 58\nNode types: {'pr_file': 8, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_touches_file': 16, 'thread_touches_file': 8, 'issue_chain_touches_file': 8, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 5, 'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'test_or_ci': 2, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'source_or_other': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-95e1c42d149eb49a", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345374, "scanner": "foundry_dataset", "fingerprint": "38fff90acce367ac78d865b77503283ca5f31a679b5a1f8d413fc15386d80e85", "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": 5, "schema_or_data": 1, "runtime_failure": 1, "source_or_other": 5, "verification_or_tests": 5, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 70, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 11, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 11, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 22, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 31, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 11, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#64", "issue_number": "64", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-e501573812c3293e", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 25, "schema_or_data": 5, "source_or_other": 25}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: supported_by_high_confidence_link\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#64\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#64\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#64\nRepo: TOOTRJ/cardforge\nIssue/PR number: 64\nGraph consistency label: supported_by_high_confidence_link\nNodes: 31\nEdges: 70\nNode types: {'pr_file': 11, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_touches_file': 22, 'thread_touches_file': 11, 'issue_chain_touches_file': 11, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'source_or_other': 5, 'test_or_ci': 5, 'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'runtime_failure': 1, 'data_schema_persistence': 1, 'schema_or_data': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-28e4faba69e172c5", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345373, "scanner": "foundry_dataset", "fingerprint": "8a1427d24a0d00ea39532d1c8b75abb3fa9df3e964e275e91bcdcfe9c2b93d2a", "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": 10, "deployment_env_gap": 1, "security_or_secrets": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "claimed_resolved_unverified": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 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": {"claimed_resolved_unverified": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 66, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 10, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 10, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 20, "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": 10, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#63", "issue_number": "63", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-74b1a1322019b4ef", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"ui_or_frontend": 50}}, "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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#63\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#63\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#63\nRepo: TOOTRJ/cardforge\nIssue/PR number: 63\nGraph consistency label: supported_by_verification_signal\nNodes: 30\nEdges: 66\nNode types: {'pr_file': 10, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_touches_file': 20, 'thread_touches_file': 10, 'issue_chain_touches_file': 10, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 10, 'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'security_or_secrets': 1, 'human_reported_issue_then_fix_attempt': 1, 'claimed_resolved_unverified': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'claimed_resolved_unverified': 2}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-ebc88f90902b5aa7", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345372, "scanner": "foundry_dataset", "fingerprint": "0f4dc0bfe08fb83286af171680506264814e7f58c166909f08109d6b23f3dcc0", "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, "commit_general": 1, "ui_or_frontend": 9, "source_or_other": 1, "deployment_env_gap": 1, "dependency_or_build": 2, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 75, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 13, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 24, "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": 13, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#62", "issue_number": "62", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-30da6e6500266d0e", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"test_or_ci": 5, "ui_or_frontend": 45, "source_or_other": 5, "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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#62\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#62\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#62\nRepo: TOOTRJ/cardforge\nIssue/PR number: 62\nGraph consistency label: weak_supervision_needs_review\nNodes: 33\nEdges: 75\nNode types: {'pr_file': 13, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_touches_file': 24, 'thread_touches_file': 13, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 9, 'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'dependency_or_build': 2, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'source_or_other': 1, 'test_or_ci': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-efd18c46a567b17d", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345371, "scanner": "foundry_dataset", "fingerprint": "7c06986ce9f08ba94dd19e308969ab122c6779b9027ae880a0efbc71f997664f", "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, "commit_general": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#61", "issue_number": "61", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-63620f47b8b04515", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#61\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#61\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#61\nRepo: TOOTRJ/cardforge\nIssue/PR number: 61\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-373aa9b396f3d885", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345370, "scanner": "foundry_dataset", "fingerprint": "edd24419f77c7a1a198d8803f1e6b75fffe69edbcbf641b2f84aa6e078ec2fbe", "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, "commit_general": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#60", "issue_number": "60", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-27e3936b44c79da0", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#60\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#60\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#60\nRepo: TOOTRJ/cardforge\nIssue/PR number: 60\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-d18ba3dccb4b8be2", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345369, "scanner": "foundry_dataset", "fingerprint": "7b3d7a8c5989c9ec05e3c6bb3ea6e9ccd28b7976be21b8721bf0824000378e50", "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, "commit_general": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#59", "issue_number": "59", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-aec2be65f3251209", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#59\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#59\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#59\nRepo: TOOTRJ/cardforge\nIssue/PR number: 59\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-c485d0f1ae804d69", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345368, "scanner": "foundry_dataset", "fingerprint": "7770cca99ba5fa0efc19f39a836c1433a8a8be00fa60aee78cd09011bc464660", "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, "commit_general": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#58", "issue_number": "58", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-fd64569013f934f0", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#58\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#58\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#58\nRepo: TOOTRJ/cardforge\nIssue/PR number: 58\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-6bcd9ccf3d47b924", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345367, "scanner": "foundry_dataset", "fingerprint": "a63843f4141c31c738b16275e34ebfb916f350ad480bf2a55cf3f1a0a7b71451", "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, "commit_general": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#57", "issue_number": "57", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-021dcdc5c6fd47c5", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#57\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#57\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#57\nRepo: TOOTRJ/cardforge\nIssue/PR number: 57\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-4c2a5f38cdede687", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345366, "scanner": "foundry_dataset", "fingerprint": "05cb63f60a83a68b8b55c76e3795ba54a392f1bd9c5abf1311609d2328448afd", "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_workflow": 1, "security_auth_secret": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "claimed_resolved_unverified": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 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": {"claimed_resolved_unverified": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#56", "issue_number": "56", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-56bf248102aab1b3", "graph_gold_label": "supported_by_verification_signal", "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_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#56\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#56\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#56\nRepo: TOOTRJ/cardforge\nIssue/PR number: 56\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'security_auth_secret': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'ui_workflow': 1, 'human_reported_issue_then_fix_attempt': 1, 'claimed_resolved_unverified': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'claimed_resolved_unverified': 2}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-b3104a8a5ca19250", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345365, "scanner": "foundry_dataset", "fingerprint": "82a5250968f609fd60fc0b79ec56e84cf7374d82b2503ad620a4e53a0a13b8ea", "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": {"data_schema": 1, "test_ci_gap": 1, "verification_or_tests": 4, "data_schema_persistence": 1, "mostly follows blueprint": 1, "claimed_resolved_unverified": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 2, "human_reported_issue_then_fix_attempt": 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": {"claimed_resolved_unverified": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 30, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 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": 22, "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": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#53", "issue_number": "53", "quality_tiers": {"high_confidence": 3, "assumption_check": 2, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-2bae271e56972ef9", "graph_gold_label": "supported_by_verification_signal", "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_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#53\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#53\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#53\nRepo: TOOTRJ/cardforge\nIssue/PR number: 53\nGraph consistency label: supported_by_verification_signal\nNodes: 22\nEdges: 30\nNode types: {'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'blueprint_finding': 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': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'data_schema_persistence': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'data_schema': 1, 'human_reported_issue_then_fix_attempt': 1, 'claimed_resolved_unverified': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'claimed_resolved_unverified': 2}\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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-325e095d7d30b51a", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345364, "scanner": "foundry_dataset", "fingerprint": "678f4ad7351dc7aa63b8ade658fcdd513988a20cff48d2b94d7894bd8050e30c", "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": {"commit_general": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#52", "issue_number": "52", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-ed81f4a7f4b18999", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#52\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#52\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#52\nRepo: TOOTRJ/cardforge\nIssue/PR number: 52\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-bfe2a74c204e4487", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345363, "scanner": "foundry_dataset", "fingerprint": "1cd404d97ada84a973e79278113ba2d9795c9dbe1f45556c6664986aefada978", "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": {"feature": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#48", "issue_number": "48", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-b27e4dc238e70df8", "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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#48\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#48\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#48\nRepo: TOOTRJ/cardforge\nIssue/PR number: 48\nGraph consistency label: supported_by_high_confidence_link\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'feature': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-08423528922f01ff", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345362, "scanner": "foundry_dataset", "fingerprint": "30014b38bf8dd28078022cea9616cc7705d6ad0f2e1ad1effe70b27112b4f30c", "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": {"commit_general": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#47", "issue_number": "47", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-e002207352bed754", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#47\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#47\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#47\nRepo: TOOTRJ/cardforge\nIssue/PR number: 47\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-6a56fa67c34a1af8", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345361, "scanner": "foundry_dataset", "fingerprint": "dee757b73f42ffe2016599780689efb24a0bff489460fe69216f1631a7c9bec0", "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": {"commit_general": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#43", "issue_number": "43", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-0ca4b59ab55d9536", "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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#43\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#43\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#43\nRepo: TOOTRJ/cardforge\nIssue/PR number: 43\nGraph consistency label: supported_by_high_confidence_link\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-48b87d6c4336cf18", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345360, "scanner": "foundry_dataset", "fingerprint": "ebae10ce2b92255adbf4408209b8aaaaaf04e86717f12e754744981a184e8de6", "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": {"commit_general": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#42", "issue_number": "42", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-bceb19f282f40f52", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#42\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#42\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#42\nRepo: TOOTRJ/cardforge\nIssue/PR number: 42\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-9fc0e8eba48f4675", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345359, "scanner": "foundry_dataset", "fingerprint": "e723d9008493061740991643bb3603305022d10ffbc5d34d33afd26c57a76769", "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": 2, "ui_workflow": 1, "ui_workflow_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#4", "issue_number": "4", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-2de9c8037805d826", "graph_gold_label": "supported_by_verification_signal", "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_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#4\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#4\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#4\nRepo: TOOTRJ/cardforge\nIssue/PR number: 4\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'ui_workflow_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'ui_workflow': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-b937369c0ac06ee2", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345358, "scanner": "foundry_dataset", "fingerprint": "9faa5caa077aeb0e33166d605d1a2f7f8a019bfe507902baee2cf01b14ce3957", "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": 2, "deployment_env_gap": 1, "verification_or_tests": 3, "data_schema_persistence": 1, "mostly follows blueprint": 1, "claimed_resolved_unverified": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 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": {"claimed_resolved_unverified": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#38", "issue_number": "38", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-f0d65fb3f26df8ee", "graph_gold_label": "supported_by_verification_signal", "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_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#38\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#38\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#38\nRepo: TOOTRJ/cardforge\nIssue/PR number: 38\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'human_reported_issue_then_fix_attempt': 1, 'claimed_resolved_unverified': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'claimed_resolved_unverified': 2}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-bfd111d16fde111e", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345357, "scanner": "foundry_dataset", "fingerprint": "9ece3e85afb789ab947d973d35adf2289571f84ac87d0766fb5010358c0561c7", "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": 2, "feature": 1, "test_ci_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_disagreement": 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": "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": {}, "synthetic": false, "edge_count": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#37", "issue_number": "37", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-642f5345cd6ea2d8", "graph_gold_label": "supported_by_verification_signal", "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_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#37\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#37\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#37\nRepo: TOOTRJ/cardforge\nIssue/PR number: 37\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'feature': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-f4517fb5515dfce7", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345356, "scanner": "foundry_dataset", "fingerprint": "8ae2c4b7b766c97361ff75aeb3ffb54f537fd05451a07061cd67595d2243eb74", "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": 2, "test_ci_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 3, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#36", "issue_number": "36", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-93849227ded432b1", "graph_gold_label": "supported_by_verification_signal", "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_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#36\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#36\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#36\nRepo: TOOTRJ/cardforge\nIssue/PR number: 36\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-0ca3e4479daa6615", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345355, "scanner": "foundry_dataset", "fingerprint": "f382bea09ff3328e53bf33aa44fcf3aab250f120b6eccebb0113de53092fe447", "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, "deployment_env_gap": 1, "verification_or_tests": 5, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "ambiguous_needs_more_evidence": 3, "blueprint_human_gap_disagreement": 1, "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": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#35", "issue_number": "35", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-944ecbcda4d91055", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#35\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#35\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#35\nRepo: TOOTRJ/cardforge\nIssue/PR number: 35\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'comment_has_related_commit_context': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-2a0bc8faa7e0f7ac", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345354, "scanner": "foundry_dataset", "fingerprint": "161bf449da471efc456a3d50466e3cac1289735bb3649df69233e9a84d54908a", "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_ci_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#34", "issue_number": "34", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-fbbd65a8e6afe09d", "graph_gold_label": "supported_by_verification_signal", "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_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#34\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#34\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#34\nRepo: TOOTRJ/cardforge\nIssue/PR number: 34\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-e33483a3a9e410a8", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345353, "scanner": "foundry_dataset", "fingerprint": "d80c70a9a2ec0c988c5d391bc54ff2230810f2827ed966d59c273056f796cf30", "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, "deployment_env_gap": 1, "verification_or_tests": 5, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "ambiguous_needs_more_evidence": 3, "blueprint_human_gap_disagreement": 1, "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": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#33", "issue_number": "33", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-6c3a3be292dad34b", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#33\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#33\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#33\nRepo: TOOTRJ/cardforge\nIssue/PR number: 33\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'comment_has_related_commit_context': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-de132921dd251e67", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345352, "scanner": "foundry_dataset", "fingerprint": "2b63aec66e9220eb3463141b754060b205a9a20253867b9c3c0a01be9cefe58a", "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": 2, "test_ci_gap": 2, "deployment_env_gap": 1, "verification_or_tests": 9, "human_feedback_general": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "ambiguous_needs_more_evidence": 1, "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, "claimed_resolved_with_verification_signal": 4, "human_reported_issue_then_verified_fix_attempt": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"not_resolved_or_not_observed": 2, "ambiguous_needs_more_evidence": 2, "claimed_resolved_with_verification_signal": 8}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 49, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 4, "thread_has_comment": 4, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 8, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 4, "comment_chain_links_commit": 15, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 4}, "node_count": 34, "node_types": {"repo": 1, "commit": 11, "thread": 1, "comment": 4, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 8, "comment_chain": 4, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#32", "issue_number": "32", "quality_tiers": {"unresolved": 1, "assumption_check": 2, "weak_supervision": 5}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-cedf67156049eb89", "graph_gold_label": "supported_by_verification_signal", "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_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#32\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#32\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#32\nRepo: TOOTRJ/cardforge\nIssue/PR number: 32\nGraph consistency label: supported_by_verification_signal\nNodes: 34\nEdges: 49\nNode types: {'commit': 11, 'link_quality': 8, 'comment': 4, 'comment_chain': 4, 'alignment': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 15, 'chain_has_link_quality': 8, 'thread_has_comment': 4, 'thread_has_comment_chain': 4, 'comment_has_chain': 4, 'issue_chain_has_comment_chain': 4, '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': 9, 'claimed_resolved_with_verification_signal': 4, 'test_ci_gap': 2, 'human_reported_issue_then_verified_fix_attempt': 2, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'issue_or_pull_request_thread': 1, 'deployment_env_gap': 1, 'human_feedback_general': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 8, 'not_resolved_or_not_observed': 2, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 5, '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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-b786809936733118", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345351, "scanner": "foundry_dataset", "fingerprint": "4b9e4a52724cae9647b302502def10f5cbfd9e3b7d9a305a75eff3f17e9eb695", "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": 2, "data_schema": 1, "deployment_env_gap": 1, "verification_or_tests": 2, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#3", "issue_number": "3", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-4573f657b195c112", "graph_gold_label": "supported_by_verification_signal", "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_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#3\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#3\nRepo: TOOTRJ/cardforge\nIssue/PR number: 3\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'data_schema': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-e3c993ec9eb7b8e4", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345350, "scanner": "foundry_dataset", "fingerprint": "d53e8b6c049ace646ab9a950380c191ef6dc0ad7f9b061b261daeaec954097da", "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, "deployment_env_gap": 1, "api_integration_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#28", "issue_number": "28", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-4669a5a1a22f4b7b", "graph_gold_label": "supported_by_verification_signal", "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_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#28\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#28\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#28\nRepo: TOOTRJ/cardforge\nIssue/PR number: 28\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-d8cf5652a382f813", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345349, "scanner": "foundry_dataset", "fingerprint": "3bb712c2833ac597981da6ee80b194060883c3da25f0d3bc44712f9b82e7ac42", "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": 2, "ui_workflow": 1, "ui_workflow_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#25", "issue_number": "25", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-8518461bf6eaef72", "graph_gold_label": "supported_by_verification_signal", "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_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#25\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#25\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#25\nRepo: TOOTRJ/cardforge\nIssue/PR number: 25\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'ui_workflow_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'ui_workflow': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-c07bbcef11d96707", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345348, "scanner": "foundry_dataset", "fingerprint": "5d69d79be2d896850c4e007adbc03e2ab72f45dd0314f711113bd04b4a0652ec", "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, "deployment_env_gap": 1, "verification_or_tests": 4, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#22", "issue_number": "22", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-d84d8a05686e2087", "graph_gold_label": "supported_by_verification_signal", "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_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#22\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#22\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#22\nRepo: TOOTRJ/cardforge\nIssue/PR number: 22\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-1e4e2453426c6c42", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345347, "scanner": "foundry_dataset", "fingerprint": "7cb8504276b8e10e179917faf0544ca9350e89d53ef4a5c9c7815f291cf9f684", "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": 2, "deployment_env_gap": 1, "api_integration_gap": 1, "verification_or_tests": 3, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#19", "issue_number": "19", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-a908cb3923c8a0ef", "graph_gold_label": "supported_by_verification_signal", "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_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#19\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#19\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#19\nRepo: TOOTRJ/cardforge\nIssue/PR number: 19\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-ddf808db8cd1ae66", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345346, "scanner": "foundry_dataset", "fingerprint": "272d7c48558da8ae6d5264262ae0f011d978217af472d8d2e9a9cf9b5164a630", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"bug_fix": 1, "ui_workflow_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 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": {"claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 20, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 4, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 1, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#17", "issue_number": "17", "quality_tiers": {"assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-0fb96f2087d7117d", "graph_gold_label": "supported_by_verification_signal", "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_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#17\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#17\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#17\nRepo: TOOTRJ/cardforge\nIssue/PR number: 17\nGraph consistency label: supported_by_verification_signal\nNodes: 17\nEdges: 20\nNode types: {'commit': 5, 'link_quality': 4, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 4, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'ui_workflow_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-96b33e785d807fd1", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: TOOTRJ/cardforge"}, "properties": {"repobilityId": 345345, "scanner": "foundry_dataset", "fingerprint": "78b325190d9acd850e38b210e4bbc80405a2b2b161b4267b81a20915e8e2b991", "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, "deployment_env_gap": 1, "verification_or_tests": 5, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "ambiguous_needs_more_evidence": 3, "blueprint_human_gap_disagreement": 1, "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": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#11", "issue_number": "11", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-836da908c86d1bcd", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#11\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#11\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#11\nRepo: TOOTRJ/cardforge\nIssue/PR number: 11\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'comment_has_related_commit_context': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-841ae12a31d9ddfb", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301045, "scanner": "foundry_dataset", "fingerprint": "8b8d77aa9b760165c18ab3a16621f71b2bcca22da46540074b167dd299fe132f", "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": "TOOTRJ/cardforge#81", "human_labels": ["dependency_or_build", "deployment_env_gap", "source_or_other", "test_or_ci", "ui_or_frontend"], "issue_number": "81", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.76, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-f3af85f436fc4249", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 15, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 1, "ui_or_frontend": 4, "source_or_other": 8, "dependency_or_build": 2}, "linked_commit_count": 6, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#81\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: TOOTRJ/cardforge#81\nRepo: TOOTRJ/cardforge\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: 2\nLinked CI labels: {'ci_success_signal': 2}\nChanged file count: 15\nLabels: {'deployment_env_gap': 2}\nPolarities: {'bad': 2}\nChanged file labels: {'ui_or_frontend': 4, 'source_or_other': 8, 'dependency_or_build': 2, 'test_or_ci': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-886f1d8d3cff6bf6\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/81\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/81\\nTitle: feat: Articles (MDX) + 5 seeded guides (audit PR H)\\nBody:\\n## Summary\\nAudit PR H \u2014 the content layer, closing out the A\u2013H series:\\n\\n- **MDX articles system**: `content/articles/*.mdx` + `gray-matter` frontmatter, server-only loader, `/articles` index + `/articles/[slug]` via `next-mdx-remote` RSC. Fully static (`generateStaticParams` + `dynamicParams=false`), `Article` + breadcrumb + ItemList JSON-LD.\\n- **5 substantial seeded guides** in PipGlyph voice, each with FAQ tail + internal links: oracle-text templating \u00b7 the complete mana symbol reference \u00b7 balancing custom cards \u00b7 frame eras (mapped to the era picker) \u00b7 running design challenges.\\n- Wired into sitemap, footer, guide cross-links, and `llms.txt`.\\n- Axe scans added for the new pages \u2014 caught a real `link-in-text-block` violation (prose links were color-only); fixed with always-on underlines.\\n\\n## Verification\\n- `tsc` \u00b7 eslint \u00b7 189 unit \u00b7 **26/26 e2e** \u2705 \u00b7 build: `\u25cb /articles` + `\u25cf /articles/[slug]` \u00d75 prerendered\\n- Post-deploy: pages 200 + Article JS\"\n  },\n  {\n    \"id\": \"github-feedback-comment-d7bf14ab3a1efd29\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/81#issuecomment-4696730308\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/81#issuecomment-4696730308\\nTitle: \\nBody:\\n[vc]: #FUI/cislfzW+3Z6qFlMIAByDwSLhj+X6VYT8B0+ZR8I=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOi\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-ff21ef52329adf26", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301044, "scanner": "foundry_dataset", "fingerprint": "5104f353393550605876c59a255c225fe3e66a7dd17e65e1da8ed6addd83197c", "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": "TOOTRJ/cardforge#79", "human_labels": ["api_integration_gap", "api_or_backend", "deployment_env_gap", "source_or_other", "ui_or_frontend"], "issue_number": "79", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.76, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-c2bde05fd8c83f76", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 2, "source_or_other": 5}, "linked_commit_count": 6, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#79\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: TOOTRJ/cardforge#79\nRepo: TOOTRJ/cardforge\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: 8\nLabels: {'api_integration_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'ui_or_frontend': 2, 'api_or_backend': 1, 'source_or_other': 5}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-b1639ad4337e80fb\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/79\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/79\\nTitle: perf: woff2 fonts + PNG 304s + leaner queries (audit PR F)\\nBody:\\n## Summary\\nAudit PR F \u2014 assets + query efficiency:\\n\\n- **Fonts**: card-page font transfer ~460KB \u2192 ~200KB (`Beleren-Bold` 268\u219276KB, `MPlantin` italic 336\u219298KB, regular 49\u219225KB) via woff2-first `@font-face`. **TTF masters untouched** \u2014 the Satori bake reads those bytes; preview\u2194bake parity unaffected.\\n- **PNG downloads**: weak ETag checked before the Satori render \u2192 repeat downloads 304 instead of re-rendering; `no-store` \u2192 `must-revalidate` (still never shared-cached \u2014 output varies by entitlement).\\n- **attachStats**: 3 queries \u2192 2 (viewer likes derived from the count rows).\\n- **Popular sort**: over-fetch `limit*3`/min-60 \u2192 `limit*2` capped 48.\\n- **Homepage**: first-viewport trending images get `priority`.\\n- **Measured & skipped** per plan: keyrune scoping \u2014 `CardPreview` renders `SetSymbol` on every card surface, so the global import is correct.\\n- **Test infra**: `seed-e2e.mjs` now wipes the e2e user's cards (repeated runs were hitting the \"\n  },\n  {\n    \"id\": \"github-feedback-comment-2d15cf74b6bd7f90\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/79#issuecomment-4696683305\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/79#issuecomment-4696683305\\nTitle: \\nBody:\\n[vc]: #Chh4wCs1I9l7zFanSUNZuF76NyAC13T/CzhAs1qjxVg=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlab\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-ed122c9efa76d8a6", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301043, "scanner": "foundry_dataset", "fingerprint": "112f4ded4592c4ca6f95e5e20ce7a0cd3f037fb722d9e708388d6803c6b76878", "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": "TOOTRJ/cardforge#77", "human_labels": ["api_or_backend", "deployment_env_gap", "schema_or_data", "security_auth_secret", "source_or_other", "test_or_ci", "ui_or_frontend"], "issue_number": "77", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.912, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-c146a2211f4862c5", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 21, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 1, "api_or_backend": 1, "schema_or_data": 1, "ui_or_frontend": 16, "source_or_other": 2}, "linked_commit_count": 6, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#77\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: TOOTRJ/cardforge#77\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 6\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 21\nLabels: {'security_auth_secret': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'ui_or_frontend': 16, 'api_or_backend': 1, 'schema_or_data': 1, 'source_or_other': 2, 'test_or_ci': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-083f2eaeb540f8c3\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/77\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/77\\nTitle: perf: static marketing chrome + client auth island (audit PR D)\\nBody:\\n## Summary\\nAudit PR D \u2014 kills the \u21161 perf finding: `force-dynamic` on the marketing layout + a root-layout cookie read meant **every marketing page was `x-vercel-cache: MISS`**.\\n\\n- Root layout is now cookie-free (`data-theme=\\\"dark\\\"` + the existing pre-paint no-flash script corrects per-cookie \u2014 no flash, no hydration warning).\\n- New **SiteHeaderClient** island: static anonymous header in HTML; post-hydration it checks for an `sb-*-auth-token` cookie and only then fetches the new **`/api/me`** (`private, no-store`) to swap in avatar/bell/credits. Anonymous visitors pay zero extra network.\\n- **ThemeToggle** treats the theme cookie as a `useSyncExternalStore` store (server snapshot `dark`); clicking writes the cookie client-side instantly + persists via the server action.\\n- **QuickLikeButton**'s `requiresSignIn` hint is re-checked against the session cookie at click time (cached pages always render anon) \u2014 promotes only; server action st\"\n  },\n  {\n    \"id\": \"github-feedback-comment-9c0a384b7f874fc7\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/77#issuecomment-4696595097\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/77#issuecomment-4696595097\\nTitle: \\nBody:\\n[vc]: #G1lwHQqRoAeIiYeMhcSXPa3LSEekl1nQ/ZaT21mN2FE=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiL\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-91ba7c5efde9f10d", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301042, "scanner": "foundry_dataset", "fingerprint": "5157d509db31af06ee6ecd223a561e12c2120827f21cfdc3c1f8cfb914dc42e9", "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": "TOOTRJ/cardforge#75", "human_labels": ["deployment_env_gap", "source_or_other", "ui_or_frontend", "ui_workflow_gap"], "issue_number": "75", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.82, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-457a79cc38fe5893", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 15, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 13, "source_or_other": 2}, "linked_commit_count": 6, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#75\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: TOOTRJ/cardforge#75\nRepo: TOOTRJ/cardforge\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: 15\nLabels: {'ui_workflow_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'ui_or_frontend': 13, 'source_or_other': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-de03adf37bac4304\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"ui_workflow_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/75\",\n    \"text\": \"GitHub feedback: ui_workflow_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/75\\nTitle: feat(seo): quick wins \u2014 llms.txt, de-orphaned guide pages, canonicals (audit PR B)\\nBody:\\n## Summary\\nAudit PR B \u2014 the high-ROI/low-risk SEO fixes:\\n\\n- **`/llms.txt`** (proper markdown convention, not robots syntax): site overview, the citable pages, sitemap pointer \u2014 the explicit welcome signal for AI answer engines.\\n- **De-orphaned the three SEO landing pages** \u2014 they had *zero* internal links. Now: footer \\\"Guides\\\" column, cross-link blocks on each page, homepage guides row.\\n- **Canonicals** on `/pricing`, `/profile/[username]`, `/set/[slug]`.\\n- **Sitemap** gains public sets (\u2264500) + profiles (\u2264500), fail-soft like the existing fetchers.\\n- **`noindex` on non-public cards** (unlisted are link-reachable and shouldn't be indexed).\\n- **Descriptive image alts** on gallery card tiles (title + type + rarity) and `/sets` covers.\\n\\nVerified-no-change-needed: `robots.ts` already allows AI crawlers (`*` allow + sensible disallows).\\n\\n## Verification\\n- 20/20 e2e (footer/nav render on every page the suite touches) \u00b7 185 uni\"\n  },\n  {\n    \"id\": \"github-feedback-comment-4e8b7445bb835f43\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/75#issuecomment-4696384021\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/75#issuecomment-4696384021\\nTitle: \\nBody:\\n[vc]: #n9XQqwAU++2MFA7eMMs8kQsFwKkLRjEVW4/n4QNxIzs=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlp\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-67ea481a424bd5af", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301041, "scanner": "foundry_dataset", "fingerprint": "6a0e532ec47b5fcafcde378378739e7124a654c24e6badc5f39a140ddd00beea", "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": "TOOTRJ/cardforge#73", "human_labels": ["deployment_env_gap", "source_or_other", "test_or_ci", "ui_or_frontend", "ui_workflow_gap"], "issue_number": "73", "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": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-6b5845e5c55cb329", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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, "source_or_other": 2}, "linked_commit_count": 6, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#73\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: TOOTRJ/cardforge#73\nRepo: TOOTRJ/cardforge\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: {'ui_workflow_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'ui_or_frontend': 4, 'source_or_other': 2, 'test_or_ci': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-ff313d57d855a0c0\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"ui_workflow_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/73\",\n    \"text\": \"GitHub feedback: ui_workflow_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/73\\nTitle: feat(challenges): submit a card to the current challenge from the editor\\nBody:\\n## Summary\\nCloses the loop from #71/#72: cards can now be entered into the running challenge **from inside the editor**, not just via the challenge page's pre-filled CTA.\\n\\n- The **Publish panel** shows an \\\"Enter the *[challenge]* challenge\\\" toggle whenever a challenge is in its window (`getCurrentChallenge()`: featured first, then soonest-closing). Works in **create and edit** \u2014 so an existing card can be submitted by toggling + saving.\\n- Checked state derives from the Tags field actually containing the tag \u2014 one source of truth; toggling merges/removes it (`mergeTag`/`removeTag` now live in `lib/creator/card-fields`).\\n- Shows days left + a link to the brief, and warns inline when the card isn't public (entries must be public to count) without forcing the visibility change.\\n\\n## Verification\\n- New e2e drives the whole lifecycle: toggle \u2192 tag appears in Advanced \u2192 untoggle removes it \u2192 re-toggle \u2192 public save \u2192 **card visible on `/c\"\n  },\n  {\n    \"id\": \"github-feedback-comment-9d157be975d210d7\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/73#issuecomment-4695550914\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/73#issuecomment-4695550914\\nTitle: \\nBody:\\n[vc]: #9KGd2qgEdsX0WHxXg6S5352S0q34EAKmHxRYBv27VvY=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFS\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-c7c4bc12d600acff", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301040, "scanner": "foundry_dataset", "fingerprint": "1bad2fe6cef0e083342bafd5dda3ffcb1c562bd1fdb2bfa38ed284b4349ddbbf", "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": "TOOTRJ/cardforge#71", "human_labels": ["deployment_env_gap", "schema_or_data", "source_or_other", "test_ci_gap", "test_or_ci", "ui_or_frontend"], "issue_number": "71", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.795, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-0367a7d3d19a124a", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 13, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 2, "schema_or_data": 2, "ui_or_frontend": 6, "source_or_other": 3}, "linked_commit_count": 6, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#71\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: TOOTRJ/cardforge#71\nRepo: TOOTRJ/cardforge\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: 13\nLabels: {'test_ci_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'ui_or_frontend': 6, 'source_or_other': 3, 'schema_or_data': 2, 'test_or_ci': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-c402b67f1621aedb\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/71\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/71\\nTitle: feat(community): Phase 1 \u2014 design challenges + trending topics\\nBody:\\n## Summary\\nThe first community phase from your Explore mockup, built lean \u2014 **no new product machinery beyond one table**:\\n\\n- **Challenges** = a brief + a submission tag. Entering = publishing a card wearing the tag (`cards.tags`); voting = the likes you already have; the entries grid is `listPublicCardsRich({tag})` rendered with `GalleryCardTile`. Migration `0040` (**already applied to prod + local**) is public-read, admin-write (`profiles.is_admin`), and **seeds \\\"Arcane Frontiers\\\"** \u2014 your mockup's launch challenge, featured with a 14-day window.\\n- **`/challenges`**: active challenge heroes (gold/starfield treatment), **trending topics** (aggregated from recent public cards' tags, linking into the gallery's existing tag filter), and past briefs.\\n- **`/challenges/[slug]`**: the brief, days-left badge, the tag with how-to-enter copy, entries sorted by likes, and an empty-state CTA.\\n- **Gallery banner** for the featured challenge (renders nothin\"\n  },\n  {\n    \"id\": \"github-feedback-comment-9ff655851d22cc14\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/71#issuecomment-4693567431\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/71#issuecomment-4693567431\\nTitle: \\nBody:\\n[vc]: #CByCYhQJFA4GBq460pD/MMg+AsMLxPiTHobT96ddrSA=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUla\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-de12d79935bd92e3", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301039, "scanner": "foundry_dataset", "fingerprint": "f7f4b705e3c98b9adb1688eb509acabb78a5fb82444abce8b7ee29043fd69f52", "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": "TOOTRJ/cardforge#70", "human_labels": ["deployment_env_gap", "ui_or_frontend"], "issue_number": "70", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.725, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-cd2238900e2b08ef", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 1, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 1}, "linked_commit_count": 4, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#70\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: TOOTRJ/cardforge#70\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 2\nLinked commit count: 4\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 1\nLabels: {'deployment_env_gap': 2}\nPolarities: {'bad': 2}\nChanged file labels: {'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-3461eb85d2561acb\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/70\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/70\\nTitle: chore(analytics): GA4 via env var only\\nBody:\\n## Summary\\nThe measurement ID now lives in the Vercel project env, so the committed `VERCEL_ENV`-gated fallback from #69 is removed \u2014 `NEXT_PUBLIC_GA_MEASUREMENT_ID` is the single source of truth. This deploy doubles as the proof that the dashboard entry is scoped to Production correctly (the fallback was masking it until now).\\n\\n## Verification\\n- `tsc` \u2705 \u00b7 eslint \u2705\\n- Post-merge: gtag + ID re-verified on https://www.pipglyph.com after the env-built deploy (in thread)\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  },\n  {\n    \"id\": \"github-feedback-comment-2446b1d942c67e86\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/70#issuecomment-4693358776\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/70#issuecomment-4693358776\\nTitle: \\nBody:\\n[vc]: #2slL7YvIAowRDE53FLsgh69I2/twftpdyIlO904OYoQ=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsLmNvbS9vcmRlcm9mdGhlcmVkamVzdGVyL2NhcmRmb3JnZS9CcTE5Y012OEJGb24yd3hTWmc2dWV2OEI2RHRtIiwicHJldmlld1VybCI6ImNhcmRmb3JnZS1naXQtY2hvcmUtZ2EtZW52LW9ubHktb3JkZXJvZnRoZXJlZGplc3Rlci52ZXJjZWwuYXBwIiwibmV4dENvbW1pdFN0YXR1cyI6IkRFUExPWUVEIiwibGl2ZUZlZWRiYWNrIjp7InJlc29sdmVkIjowLCJ1bnJlc29sdmVkIjowLCJ0b3RhbCI6MCwibGluayI6ImNhcmRmb3JnZS1naXQtY2hvcmUtZ2EtZW52LW9ubHktb3JkZXJvZnRoZXJlZGplc3Rlci52ZXJjZWwuYXBwIn0sInJvb3REaXJlY3RvcnkiOm51bGx9XX0=\\nThe latest u\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-7a42d0ce18a042f6", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301038, "scanner": "foundry_dataset", "fingerprint": "5c2e312959d115f4c389fe9077c771324f8ebf16b87e71cc8482023d4c9c1dd6", "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": "TOOTRJ/cardforge#69", "human_labels": ["deployment_env_gap", "security_auth_secret", "ui_or_frontend"], "issue_number": "69", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.777, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-2ef4dd26cadbd788", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 1, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 1}, "linked_commit_count": 6, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#69\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#69\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 6\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 1\nLabels: {'security_auth_secret': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-205bf153fd260470\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/69\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/69\\nTitle: feat(analytics): production GA4 ID (G-5YC92QH71H), VERCEL_ENV-gated\\nBody:\\n## Summary\\nActivates GA4 with the provided measurement ID. The Vercel CLI on this machine has no credentials (interactive login required), so instead of an env var the ID is committed as a fallback **gated on `VERCEL_ENV === \\\\\\\"production\\\\\\\"`** \u2014 measurement IDs are public by nature (visible in any page's source), and this keeps previews, local dev, and the e2e server analytics-free. `NEXT_PUBLIC_GA_MEASUREMENT_ID` still overrides when set.\\n\\n## Verification\\n- `tsc` \u2705 \u00b7 eslint \u2705 \u00b7 marketing + axe e2e 6/6 \u2705 (no VERCEL_ENV locally \u2192 no GA script, scans clean)\\n- Post-merge: gtag + `G-5YC92QH71H` verified on https://www.pipglyph.com (below)\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  },\n  {\n    \"id\": \"github-feedback-comment-a1d86a69de52f84a\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/69#issuecomment-4693349012\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/69#issuecomment-4693349012\\nTitle: \\nBody:\\n[vc]: #978oTzrLDr23ff8aMDLqHbcDk+AaHA9U7/y51uMpsWw=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsLmNvbS9vcmRlcm9mdGhlcmVkamVzdGVyL2NhcmRmb3JnZS84YkVpS0ZBVzI0aHBESnhVYThqNnNxMnQ0cGlTIiwicHJldmlld1VybCI6ImNhcmRmb3JnZS1naXQtZmVhdC1nYS1wcm9kdWN0aW9uLWlkLW9yZGVyb2Z0aGVyZWRqZXN0ZXIudmVyY2VsLmFwcCIsIm5leHRDb21taXRTdGF\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-a28344327aa0add2", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301037, "scanner": "foundry_dataset", "fingerprint": "982edd7adc134227dc4d4f57889239228079f958be62412d3f1e5a0d75f9d004", "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": "TOOTRJ/cardforge#67", "human_labels": ["deployment_env_gap", "source_or_other", "test_ci_gap", "test_or_ci", "ui_or_frontend"], "issue_number": "67", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.76, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-6d741d3b486ed89f", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 16, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 3, "ui_or_frontend": 12, "source_or_other": 1}, "linked_commit_count": 6, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#67\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: TOOTRJ/cardforge#67\nRepo: TOOTRJ/cardforge\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: 16\nLabels: {'test_ci_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'ui_or_frontend': 12, 'source_or_other': 1, 'test_or_ci': 3}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-0fa7d5c9d536c309\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/67\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/67\\nTitle: feat(creator): Phase D \u2014 the 9-panel contextual editor\\nBody:\\n## Summary\\nThe deferred Phase D from the rebrand plan: the 6-step wizard becomes the mockups' contextual-panel editor \u2014 **Identity / Pips / Frame / Art / Text / Abilities / Layout / Effects / Publish** \u2014 with the namesake **Pips panel** uniting the cost picker, custom pip uploads, and color identity.\\n\\n- `lib/creator/steps.ts` re-mapped (same pure-model architecture, 9 keys). Abilities appears only for stat-bearing types; Layout keeps the exact old DFC visibility + dynamic labels.\\n- Panels regrouped from the existing step components \u2014 git detected 4 of 9 as renames, confirming near-verbatim moves. Quick-start (Scryfall/random) now leads Identity; Tags moved to Publish; the finish picker became Effects.\\n- The linear Next/Back flow, saveArmed misclick guard, draft persistence, and `FormValues` shape are all untouched \u2014 drafts survive, and old `?step=` deep links fall back to the first panel.\\n\\n## Verification\\n- vitest **185/185** (steps.test.ts rewritten: \"\n  },\n  {\n    \"id\": \"github-feedback-comment-33605300133972c7\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/67#issuecomment-4689235482\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/67#issuecomment-4689235482\\nTitle: \\nBody:\\n[vc]: #s8JoU8KFnxpigeCTV87Wh4k7PD9a1v2ItzOzSHDfKsQ=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNv\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-44c029e72b85648e", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301036, "scanner": "foundry_dataset", "fingerprint": "76462208ab0700fecf5e27c4e7a10c0394180224be811c527de0fe1521e70ef2", "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": "TOOTRJ/cardforge#65", "human_labels": ["deployment_env_gap", "source_or_other", "test_ci_gap", "test_or_ci", "ui_or_frontend"], "issue_number": "65", "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": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-cc2cb65523570cad", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 8, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 2, "ui_or_frontend": 5, "source_or_other": 1}, "linked_commit_count": 6, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#65\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: TOOTRJ/cardforge#65\nRepo: TOOTRJ/cardforge\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: 8\nLabels: {'test_ci_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'ui_or_frontend': 5, 'source_or_other': 1, 'test_or_ci': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-e0e8b065c79890cd\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/65\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/65\\nTitle: feat(pips): v2 \u2014 rules-text overrides + /mana-pip-editor page + lifecycle e2e\\nBody:\\n## Summary\\nPips v2 \u2014 deepens the namesake feature, no schema changes:\\n\\n- **Custom pips now render in rules text** (inline `{W}`\u2013`{C}` pips), not just mana costs \u2014 same six core symbols, same per-owner map, threaded through main face, adventure panel, second face, and planeswalker loyalty rows in **both** renderers. A card no longer shows a custom red pip in its cost but a standard one in `{T}: Add {R}`.\\n- New `pipOverrideForSuffix` helper for the rules tokenizer's suffix-keyed items; hybrids, twobrids, phyrexians, digits, and utility symbols stay standard by construction.\\n- **`/mana-pip-editor`** SEO landing page (FAQPage JSON-LD, same structure as `/mtg-card-maker`) + sitemap entry \u2014 the brand says \\\"Mana Pip Editor\\\"; now there's a page for the query.\\n- **New e2e**: full custom-pips lifecycle against the local stack \u2014 upload a generated PNG \u2192 toast \u2192 picker icon, cost row, and live-preview rules text all swap \u2192 remove \u2192 everythin\"\n  },\n  {\n    \"id\": \"github-feedback-comment-0c4e5bdd757caa59\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/65#issuecomment-4688542409\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/65#issuecomment-4688542409\\nTitle: \\nBody:\\n[vc]: #8NQFSK4R+vmFxyQ5LNXIgyHuw7csApzToWZfvCzyU70=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTl\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-de3fe982a2dd990d", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301035, "scanner": "foundry_dataset", "fingerprint": "7fcdd8458f987cc3dad8235e93ad5dbd0a34caad106048153dbcbad88ee529b1", "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": "TOOTRJ/cardforge#64", "human_labels": ["data_schema_persistence", "runtime_failure", "schema_or_data", "source_or_other", "test_or_ci"], "issue_number": "64", "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": "TOOTRJ/cardforge", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-f5e0ea6c73c9e32f", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 11, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 5, "schema_or_data": 1, "source_or_other": 5}, "linked_commit_count": 6, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#64\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: TOOTRJ/cardforge#64\nRepo: TOOTRJ/cardforge\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: 11\nLabels: {'runtime_failure': 1, 'data_schema_persistence': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'source_or_other': 5, 'schema_or_data': 1, 'test_or_ci': 5}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-6fbdea8b9f7a9120\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"runtime_failure\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/64\",\n    \"text\": \"GitHub feedback: runtime_failure\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/64\\nTitle: test(e2e): arm the full suite with a local Supabase stack\\nBody:\\n## Summary\\nThe auth / create-card / Scryfall / pricing e2e specs were scaffolded **cred-gated and had never run**. This sets up the canonical local answer \u2014 `supabase start` \u2014 and gets the whole suite green: **12/12 in ~15s warm**.\\n\\n- `supabase/config.toml` committed (`supabase init`; analytics disabled \u2014 its container bind-mounts the Docker socket, which colima doesn't support).\\n- `.env.e2e.example` + `scripts/seed-e2e.mjs` (idempotent e2e-user seeding; refuses non-local URLs) + a rewritten `tests/README.md` with the one-time setup.\\n- `playwright.config.ts`: with `.env.e2e` present the suite boots its **own** dev server on **port 3100** with those values \u2014 your `:3000` server and the real project are untouched. Without it, exactly the old behavior (marketing + a11y only, clean skips).\\n\\n### Running the specs for the first time caught real bugs\\n1. **`next.config.ts` image patterns hardcoded `https` with no port** \u2192 `next/image` crashed every page\"\n  },\n  {\n    \"id\": \"github-feedback-comment-3b4a16eeb2ed16ed\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"data_schema_persistence\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/64#issuecomment-4688453693\",\n    \"text\": \"GitHub feedback: data_schema_persistence\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/64#issuecomment-4688453693\\nTitle: \\nBody:\\n[vc]: #T0nPW4B4JsLL4GE1XPHcF0rZpHwJTBFEdPstgc5Kn28=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUl\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-c70465acff6e4f85", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301034, "scanner": "foundry_dataset", "fingerprint": "80141c5a56353ca85bfb049979632bfb9ff35c4abfb5ea721715939f49c2792c", "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": "TOOTRJ/cardforge#62", "human_labels": ["dependency_or_build", "deployment_env_gap", "source_or_other", "test_ci_gap", "test_or_ci", "ui_or_frontend"], "issue_number": "62", "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": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-39c0bf10550eb776", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 13, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 1, "ui_or_frontend": 9, "source_or_other": 1, "dependency_or_build": 2}, "linked_commit_count": 6, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#62\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: TOOTRJ/cardforge#62\nRepo: TOOTRJ/cardforge\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: 13\nLabels: {'test_ci_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'ui_or_frontend': 9, 'source_or_other': 1, 'dependency_or_build': 2, 'test_or_ci': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-92a74cbb8391adcf\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/62\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/62\\nTitle: feat(marketing): PipGlyph reskin + a11y gate (rebrand PR 4)\\nBody:\\n## Summary\\nStacked on #61. The marketing reskin from the second mockup set, scoped to existing pages \u2014 the new product systems the mockups depict (challenges, XP meters, templates marketplace, discussions) are *not* built here; they're future features.\\n\\n- **Hero**: starfield backdrop, gold compass eyebrow, \\\"Create custom MTG-style cards with **perfect pips, text, and frames.**\\\" (gold\u2192purple gradient), micro-feature row, PipGlyph voice. WUBRG strip and the not-affiliated microcopy stay.\\n- **FeatureGrid**: `SectionHeading` + `IconTile` tones; **Custom Pips is now the lead feature** (it shipped in #60); copy updated to match current reality (frame eras, sagas/DFCs, PDF sheets).\\n- **Home**: stat strip with **real numbers** (live public-card count + actual frame-template count \u2014 no invented \\\"10K+\\\"), brand epigraph between GlyphDividers, and the final CTA band finally loses its stale \\\"Phase 1 ships the foundation\\\" copy.\\n- **Pricing**: \\\"Legendary tools. \"\n  },\n  {\n    \"id\": \"github-feedback-comment-51e699ba15036e57\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/62#issuecomment-4687595772\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/62#issuecomment-4687595772\\nTitle: \\nBody:\\n[vc]: #eQ4m5o7P+TaCENBCHtlINusxSkkvr4lhSoRKafXdxjA=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSn\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-de6799154c866b3e", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301033, "scanner": "foundry_dataset", "fingerprint": "828ba291bfbfcc0bf732ad2cd426ad51c10c1ae92abae17638467f095a58c574", "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": "TOOTRJ/cardforge#61", "human_labels": ["deployment_env_gap", "test_ci_gap"], "issue_number": "61", "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": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-7c07ec5e82f3685b", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#61\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: TOOTRJ/cardforge#61\nRepo: TOOTRJ/cardforge\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: {'test_ci_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-dd0e74b41d0a400e\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/61\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/61\\nTitle: feat(creator): vertical icon step rail (rebrand PR 8/8)\\nBody:\\n## Summary\\nStacked on #60. The final rebrand PR \u2014 the PipGlyph mockup's editor rail, delivered over the existing 6-step model.\\n\\n- New `components/ui/step-rail.tsx`: vertical icon rail with the same fully-controlled contract as `Stepper` (`steps`/`current`/`onStepSelect`/`isStepEnabled`) plus an icon map. Purple active pill, **gold corner tick** on completed steps, danger/upcoming states, keyboard-focusable with visible rings, `aria-current=\\\"step\\\"`.\\n- Creator grid gains a 10.5rem sticky rail column at **xl**; the horizontal `Stepper` hides at xl (still serves sm\u2013lg); the mobile compact header is untouched. The sticky Next/Back bar stays \u2014 the rail is an additional affordance, so the linear flow and e2e selector contracts hold.\\n- The mockup's full 8-panel contextual IA (Identity/Pips/Frame/\u2026) remains deferred by design \u2014 documented in the rebrand plan as a future phase.\\n\\n## Verification\\n- vitest 180/180 \u2705 \u00b7 `tsc` \u2705 \u00b7 eslint \u2705 \u00b7 marketing e2e 3/3 \u2705\\n- Man\"\n  },\n  {\n    \"id\": \"github-feedback-comment-faff0ea6fe9f7c63\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/61#issuecomment-4687341761\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/61#issuecomment-4687341761\\nTitle: \\nBody:\\n[vc]: #3hEBAFABInVSvk6Yz475l/4CbzEDAxi9VUNkrzNsk+0=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsLmNvbS9vc\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-94a4164b904f1950", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301032, "scanner": "foundry_dataset", "fingerprint": "fcbf332ca47517e00c465af0a2edd998a52c8fc476bc8bd086cc20b0bbddb49d", "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": "TOOTRJ/cardforge#60", "human_labels": ["deployment_env_gap", "test_ci_gap"], "issue_number": "60", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.795, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-f26a21c44f808c19", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#60\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: TOOTRJ/cardforge#60\nRepo: TOOTRJ/cardforge\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: {'test_ci_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-566224e89d1282fc\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/60\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/60\\nTitle: feat(pips): Custom Pips \u2014 per-user pip icon overrides (rebrand PR 7/8)\\nBody:\\n## Summary\\nStacked on #59. **The PipGlyph headline feature**: upload your own icon for any core mana symbol (W/U/B/R/G/C) and it replaces the standard glyph wherever *your* cost pips render \u2014 the picker, the live preview, gallery thumbnails, and exports. Only the icon changes; cost strings, the tokenizer, validation, color identity, and the `ManaCostPicker`'s behavior are untouched (per spec, the picker stays exactly as it was \u2014 it just wears the new icons).\\n\\n### Data\\n- Migration `0039_custom_pips` (**already applied to the project**): `custom_pips` table \u2014 public `SELECT` (visitors must see the owner's pips on public cards), owner-only writes; `custom-pips` storage bucket with owner-folder RLS **plus an owner SELECT policy** because the deterministic-path upsert runs `INSERT \u2026 ON CONFLICT` (the exact 0038 card-renders root cause, caught live during verification).\\n\\n### Server\\n- `lib/pips/queries.ts` \u2014 `getPipOverrides(ownerId)`, React-c\"\n  },\n  {\n    \"id\": \"github-feedback-comment-5404f4269245391f\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/60#issuecomment-4687312753\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/60#issuecomment-4687312753\\nTitle: \\nBody:\\n[vc]: #TAqeY7DMbeUo91B3RM2cTieVCTrkOyfYGgUFKuaVRC0=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsLmNvbS9vcmRlc\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-169ee0c66468bbf3", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301031, "scanner": "foundry_dataset", "fingerprint": "9279aad18754b25bf40c44c830591969a3fb55784383b6e1c93b1644d4fb652f", "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": "TOOTRJ/cardforge#59", "human_labels": ["deployment_env_gap", "test_ci_gap"], "issue_number": "59", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.795, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-093251235eef35c1", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#59\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: TOOTRJ/cardforge#59\nRepo: TOOTRJ/cardforge\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: {'test_ci_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-0ac975d747ff84af\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/59\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/59\\nTitle: refactor(creator): decompose CardCreatorForm (rebrand PR 6/8, zero visual change)\\nBody:\\n## Summary\\nStacked on #58. Editor Phase A \u2014 pure code-motion decomposition of the 2,507-line `CardCreatorForm` so the pip editor (next PR) and the icon rail (PR 8) land against cohesive files.\\n\\n- Orchestrator (`card-creator-form.tsx`, now **1,106 lines**) keeps: `useForm` + `FormProvider`, draft persistence (legacy-key migration untouched), step navigation, submit, Stepper, sticky action bar, CardPreview wiring.\\n- New `components/creator/steps/{frame,details,art,rules,extra,publish}-step.tsx` consume `useFormContext`; orchestrator-owned state arrives as narrow props (widest: FrameStep, 8 props).\\n- Shared helpers \u2192 `field-group.tsx` + `frame-pickers.tsx`; pure functions (`deriveColorIdentity`, `parseSubtypes`, `parseTags`, `defaultValuesFor`) \u2192 `lib/creator/card-fields.ts`.\\n\\n## Verification\\n- `tsc --noEmit` \u2705 \u00b7 eslint \u2705 \u00b7 vitest 169/169 \u2705 \u00b7 marketing e2e 3/3 \u2705\\n- **A11y-tree snapshot of `/create` is structurally identical befor\"\n  },\n  {\n    \"id\": \"github-feedback-comment-d75e65f85372e870\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/59#issuecomment-4687143618\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/59#issuecomment-4687143618\\nTitle: \\nBody:\\n[vc]: #zvUUCW/UamCC0+I850EWzHc+0rQS42/gQW9qDzQBXM8=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsLmNvbS9vcmR\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-5f3df72fc6019044", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301030, "scanner": "foundry_dataset", "fingerprint": "8c7d322243832cdcb7acb3d66134e45f2cbb2cea746ea280d9a4d3a8c7d31fe8", "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": "TOOTRJ/cardforge#58", "human_labels": ["deployment_env_gap", "test_ci_gap"], "issue_number": "58", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.795, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-68e80a8d12348910", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#58\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: TOOTRJ/cardforge#58\nRepo: TOOTRJ/cardforge\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: {'test_ci_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-5fe7d1f73368f43a\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/58\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/58\\nTitle: feat(render): PipGlyph in baked card pixels + layout_version 3 (rebrand PR 3/8)\\nBody:\\n## Summary\\nStacked on #57. The three in-pixel brand sites, changed **identically in both renderers** per the preview\u2194bake parity contract:\\n\\n1. **Card footer brand line** \u2014 `Spellwright` \u2192 `PipGlyph` (`card-preview.tsx` + `card-image.tsx`, same `layout.footer` conditional).\\n2. **Default set mark** \u2014 pentagon+quill \u2192 **compass star** silhouette, rarity-tintable, hub knocked out in translucent black. Path geometry duplicated verbatim on both sides with keep-in-sync comments.\\n3. **Free-tier watermark** (bake only) \u2014 `spellwright.app` \u2192 compass star + **pipglyph.com**.\\n\\n`CARD_LAYOUT_VERSION` 2 \u2192 3 with history note.\\n\\n## Post-deploy runbook\\n```\\nnode scripts/rebake-renders.mjs   # sample a handful first, then the full sweep\\n```\\nOld renders stay valid until rebaked \u2014 the version is stamped per card, so the sweep is non-blocking and resumable. On-demand exports (PNG/PDF/OG routes) pick the new brand up immediately.\\n\\n## Verification\\n- vi\"\n  },\n  {\n    \"id\": \"github-feedback-comment-f47e70b3be197d67\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/58#issuecomment-4687013553\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/58#issuecomment-4687013553\\nTitle: \\nBody:\\n[vc]: #IcXtWmeANqXi1wc2/poU6KJqspsQN7QW108QJBZiDFU=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsLmNv\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-2f2be290d822ac57", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301029, "scanner": "foundry_dataset", "fingerprint": "d71c0b803524112660cced8566cdf6e163362313d027dc7b16f13b130e09cad6", "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": "TOOTRJ/cardforge#57", "human_labels": ["deployment_env_gap", "test_ci_gap"], "issue_number": "57", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.76, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-924177cdbcab1fe2", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#57\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: TOOTRJ/cardforge#57\nRepo: TOOTRJ/cardforge\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: {'test_ci_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-a6f1ec4e781a11ef\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/57\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/57\\nTitle: feat(brand): Spellwright \u2192 PipGlyph (rebrand PR 2/8)\\nBody:\\n## Summary\\nStacked on #56. The full brand-string swap plus the new compass-star marks.\\n\\n- `lib/site-config.ts`, layout metadata + JSON-LD, and every copy surface (auth, marketing, SEO pages, dashboards, share text, AI prompts, moderation alerts, account export, PDF metadata) now say **PipGlyph**; positioning copy follows \\\"MTG Card Creator, Mana Pip Editor & Custom Card Maker\\\".\\n- New **compass-star** mark drawn in code: header `Logo`, favicon, site OG image (1200\u00d7630, navy gradient + WUBRG strip + `pipglyph.com`).\\n- **Draft-key migration**: `spellwright:card-draft:v1` \u2192 `pipglyph:card-draft:v1` with read-fallback + forward migration \u2014 no in-flight drafts lost. Theme cookie `cardforge-theme` intentionally unchanged (brand-neutral; renaming would reset every user's theme).\\n- `SpellwrightSetMark` \u2192 `PipGlyphSetMark` (identifier only). The **in-pixel** brand strings in `card-preview.tsx` / `card-image.tsx` (card footer, watermark, default set-mark art) delibe\"\n  },\n  {\n    \"id\": \"github-feedback-comment-295e3b31ec59b4c0\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/57#issuecomment-4686995932\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/57#issuecomment-4686995932\\nTitle: \\nBody:\\n[vc]: #7S0MuQGJG18MAXap+rkyn4yjQTf5xaaK4ZcjKUCGmUw=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsLmNvbS9vcmRl\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-a1f759f082e4b511", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301028, "scanner": "foundry_dataset", "fingerprint": "49f34c4cf2a785ce8dc3a0dcaf47be0fd6296d237c4f04a5944862559d335cf9", "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": "TOOTRJ/cardforge#55", "human_labels": ["deployment_env_gap", "security_auth_secret"], "issue_number": "55", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.76, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-f4476c6d993253c4", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#55\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#55\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 6\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-4ad630394c9dcab0\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/55\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/55\\nTitle: 1997 retro + 2003 modern border frame eras\\nBody:\\nAdds the **1997 retro (old border)** and **2003 modern border** eras to the frame picker \u2014 both fully verified against official cards. Future Sight is deferred (see below).\\n\\n## 1997 Retro (Mirage\u2013Scourge old border)\\n`retro` + `retroland`, converted from MSE `magic-old`. Tan marble frame, name/type/P/T printed directly on the border (dark ink, no plates), cream text box.\\n**Verified vs Tempest:** Mogg Fanatic (creature), Wasteland (land) \u2014 geometry, colors, and P/T position match.\\n\\n## 2003 Modern border (8th Edition\u2013M14)\\n`modern` + `modernland`, converted from MSE `magic-new`. Beveled light border with title + type bars, and the iconic **beveled P/T box** as a real plate PNG (`/frames/modern/pt/{color}.png`), drawn only for creatures like the M15 plate.\\n**Verified vs:** 8ED Shivan Dragon (the P/T plate matches), DKA Evolving Wilds.\\n\\nBoth eras now appear live in the era picker (Classic \u2192 Retro \u2192 Modern \u2192 M15 \u2192 Showcase), with the specific frame auto-derived \"\n  },\n  {\n    \"id\": \"github-feedback-comment-083e40b52d7c4b3e\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/55#issuecomment-4667121093\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/55#issuecomment-4667121093\\nTitle: \\nBody:\\n[vc]: #oKULdFaJEsXqgAK/YXIkf8OQpD5f7O5S3nhERworW1k=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVy\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-6b7c63c28aa875b3", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301027, "scanner": "foundry_dataset", "fingerprint": "1b69242c2ea7df7afa9fa572ab51cbe1f5191ca15d200608b6ae1a45afb23c9b", "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": "TOOTRJ/cardforge#54", "human_labels": ["agent_instruction_gap", "deployment_env_gap"], "issue_number": "54", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.742, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-1e2deb7c2eee5aef", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#54\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#54\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 6\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'agent_instruction_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-53bf600c64fdb435\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/54\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/54\\nTitle: Era-based frame picker: type + color \u2192 era \u2192 frame\\nBody:\\nAnswers the question \\\"would type + color \u2192 era \u2192 set be a better order?\\\" \u2014 **yes, with two refinements**, now implemented.\\n\\n## Why\\nThe old first step was a flat list of 6 \\\"sets\\\" that mixed **border eras** (Alpha 1993, M15 2015) with **Universes Beyond IP sets** (LOTR, Avatar, Bloomburrow, Tarkir) \u2014 fine at 6 entries, incoherent as more eras/sets are added. It also had an **ordering inversion**: a frame's color comes from `color_identity` and its correct variant from `card_type`, but both were on step 2 (Details) \u2014 *after* the frame step. So thumbnails were always blue, the preview couldn't show your color while picking, and you could put the planeswalker frame on a creature.\\n\\n(Note on terminology: the original idea used play-format names \u2014 Vintage/Modern/Pioneer \u2014 but those span multiple borders and can't group frames. This uses border-generation *year* names instead.)\\n\\n## What changed\\nThe frame step now leads with **type + color**, then:\\n- **Era\"\n  },\n  {\n    \"id\": \"github-feedback-comment-826b86676441cc55\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/54#issuecomment-4666857197\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/54#issuecomment-4666857197\\nTitle: \\nBody:\\n[vc]: #fW6S+gFk9a2/07ZBDjMZD/EEimbMoaz/5Ji+9dW2rXU=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-1f9390d9c96c8784", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301026, "scanner": "foundry_dataset", "fingerprint": "943a609a77ef3adafec6c4f3d7f578355138493d93987f908e0860c0c6f2a66a", "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": "TOOTRJ/cardforge#52", "human_labels": ["data_schema_persistence", "deployment_env_gap"], "issue_number": "52", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.795, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-303dd3752d2bf068", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#52\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: TOOTRJ/cardforge#52\nRepo: TOOTRJ/cardforge\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: {'data_schema_persistence': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-619465dd8208fcd9\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"data_schema_persistence\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/52\",\n    \"text\": \"GitHub feedback: data_schema_persistence\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/52\\nTitle: Render versioning + admin re-bake sweep\\nBody:\\nAdds `cards.layout_version` (migration 0037 \u2014 applied to the live DB), stamps it on every save-time bake, and adds a service-role batch re-bake endpoint (`POST /api/admin/rebake`, CRON_SECRET-gated in prod) + `scripts/rebake-renders.mjs` driver.\\n\\n## Ran against the live data\\n- Sweep backfilled **53/53 public cards** (zero failures) \u2014 galleries now serve baked PNGs with the new typography.\\n\\n## Root cause found + fixed: save-time bakes never persisted\\nThe bake uploads with `upsert: true` \u2192 storage executes `INSERT \u2026 ON CONFLICT DO UPDATE` \u2192 that plan requires SELECT visibility on `storage.objects`, and `card-renders` had **no SELECT policy**. Every session-authenticated upsert since launch failed RLS, silently (best-effort warn). `card-art` was unaffected (`upsert: false`); the sweep was unaffected (service_role bypasses RLS).\\n**Migration 0038** (applied to the live DB) adds the owner-scoped SELECT policy; a live probe confirmed the real `bakeCardRender` no\"\n  },\n  {\n    \"id\": \"github-feedback-comment-20251c87db27edc8\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/52#issuecomment-4665115605\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/52#issuecomment-4665115605\\nTitle: \\nBody:\\n[vc]: #YCb6zykzMztMLBO7vJBvJcBHcTwNCdpkVA1YdnmxMP4=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzO\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-01833479f3472948", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301025, "scanner": "foundry_dataset", "fingerprint": "5f2db5dcd8443ae56d7ad35a0161fb0baf6a8e5afa743361cac984bab2231692", "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": "TOOTRJ/cardforge#51", "human_labels": ["deployment_env_gap", "security_auth_secret"], "issue_number": "51", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.82, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-a1c64de331dd47a9", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#51\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: TOOTRJ/cardforge#51\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 6\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-986846202b878c4e\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/51\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/51\\nTitle: Card creation audit: visual accuracy + creator UX overhaul\\nBody:\\nImplements the highest-impact findings from the full card-creation audit (report: \\\\`12_CREATION_AUDIT.md\\\\`). **Do not merge yet \u2014 awaiting owner review.**\\n\\n## What this does\\n\\n**Visual accuracy (verified side-by-side against official Scryfall scans for all 23 frames \u2014 see \\\\`scripts/visual-audit.mjs\\\\`):**\\n- Fit-based rules-text sizing at MSE-authentic base sizes (shrink-to-fit, shared by preview + bake)\\n- Beleren Bold titles + true MPlantin Italic (vendored from the local Full-Magic-Pack, same accepted trade-dress class as the frames)\\n- Standardized pip sizing (MSE 4% disc on m15); hybrid/twobrid split-color gems and phyrexian tints in the bake; real Keyrune set glyphs in the bake\\n- Pips render inside reminder text; \\\\`{T}:\\\\` punctuation hugs its pip; runs never split across lines\\n- Planeswalker loyalty ability rows with cost badges + striped rows; saga intro line; flavor line breaks; per-frame ink-contrast fixes (tarkir/lotr/agclassic)\\n\\n**Cr\"\n  },\n  {\n    \"id\": \"github-feedback-comment-82a98dd04d9a11cb\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/51#issuecomment-4664837114\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/51#issuecomment-4664837114\\nTitle: \\nBody:\\n[vc]: #cBtBZK7ca3S5oJnOyLmeKgP/16RLK028vb+CFHhS+Cs=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-e1f427fead0cd7ac", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301024, "scanner": "foundry_dataset", "fingerprint": "85c250e943065833514ab207198942fa528fb7a364957519ff2075dbb428668a", "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": "TOOTRJ/cardforge#50", "human_labels": ["deployment_env_gap", "security_auth_secret"], "issue_number": "50", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.877, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-24cd1e8a10c89619", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#50\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: TOOTRJ/cardforge#50\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 6\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-5c21ed7249792ae2\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/50\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/50\\nTitle: fix(audit): pin search_path on analytics fns + a11y unread indicator\\nBody:\\n## Audit cleanups (pre-existing items)\\n\\nThe small pre-existing items from the audit.\\n\\n- **migration `0036`** (applied to prod): `ALTER FUNCTION` to pin\\n  `search_path = public` on `card_ai_calls_daily` + `scryfall_calls_daily` (the\\n  two `0017` analytics helpers). Clears the last two `function_search_path_mutable`\\n  security-advisor warnings; function bodies unchanged.\\n- **A11y**: the notifications **unread dot** now has `role=\\\"img\\\"` so its \\\"Unread\\\"\\n  `aria-label` is reliably announced (a bare `<span aria-label>` is often skipped\\n  by screen readers).\\n\\nThe profile avatar was also flagged, but it's **already labeled** via its wrapper\\n`div`'s `aria-label` \u2014 the empty inner-image `alt` is correct, so it's left as-is.\\n\\n### After this\\nThe Supabase **security advisor** is down to two intentional items: the\\n`consume_credits` `authenticated` grant (by design \u2014 the safe, auth-scoped,\\nrow-locked credit-spend path) and **leaked-password pro\"\n  },\n  {\n    \"id\": \"github-feedback-comment-d6afca3b7a36acab\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/50#issuecomment-4664274580\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/50#issuecomment-4664274580\\nTitle: \\nBody:\\n[vc]: #SufJBujaX7b06llvn1brT10vwxHevruiORct++e9tBE=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsInJvb3REaXJlY3RvcnkiOm51b\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-5322461e91629e32", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301023, "scanner": "foundry_dataset", "fingerprint": "87e6fbc9a8e5c3c411d955c6221b844caeefe978b075fd99c54d5f809f364545", "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": "TOOTRJ/cardforge#49", "human_labels": ["deployment_env_gap", "security_auth_secret"], "issue_number": "49", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.912, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-741913c506646fe7", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#49\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: TOOTRJ/cardforge#49\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 6\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-5c7a6d079b2178f7\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/49\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/49\\nTitle: fix(audit): gallery staleness, query bounds, perf indexes, noindex\\nBody:\\n## Audit fixes\\n\\nFixes for the real, low-risk issues surfaced by a full-site audit (security,\\ncorrectness, DB/perf, frontend). The audit found **no exploitable security\\nvulnerabilities**; details of what was checked + deferred are in the chat summary.\\n\\n### Fixed here\\n- **Gallery tag-filter staleness (correctness)** \u2014 the `<Suspense>` key omitted the\\n  `tag` param, so switching `?tag=` held the previous results instead of\\n  re-suspending. Regression from the tags PR. Key now includes `tag`.\\n- **Tag normalization parity** \u2014 the creator form's `parseTags` now mirrors\\n  `cardTagsSchema` (lowercase, strip junk, collapse spaces) so the field preview\\n  matches what's persisted.\\n- **Unbounded queries** \u2014 `listMyCards` (dashboard) gains a `.limit(1000)` safety\\n  bound; `listFollowingFeed`'s follows lookup gains `.limit(500)` before the\\n  `.in(...)`.\\n- **Gallery facet indexes (`0035`, applied to prod)** \u2014 partial composite indexes\\n  on public\"\n  },\n  {\n    \"id\": \"github-feedback-comment-01369420ff89a9a3\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/49#issuecomment-4664201296\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/49#issuecomment-4664201296\\nTitle: \\nBody:\\n[vc]: #yxHyGWBCg2HRgOPiror/SgIDRlBkph/N6+ccgHuQ6d8=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-b3a9aab00bf92fec", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301022, "scanner": "foundry_dataset", "fingerprint": "ae769eeecfcba8f952bb1998eb89d2b41fb74401eda78c278b04f1225296c81d", "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": "TOOTRJ/cardforge#48", "human_labels": ["data_schema_persistence", "deployment_env_gap"], "issue_number": "48", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.812, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-84c73dfa519cecd8", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#48\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: TOOTRJ/cardforge#48\nRepo: TOOTRJ/cardforge\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: {'data_schema_persistence': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-f43018b6a075f5e7\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"data_schema_persistence\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/48\",\n    \"text\": \"GitHub feedback: data_schema_persistence\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/48\\nTitle: feat(tags): card tags for discovery (create, display, filter)\\nBody:\\n## Card tags for discovery\\n\\nThe foundational discovery feature: creators tag cards with freeform keywords,\\nand anyone can browse by tag.\\n\\n### What's in it\\n- **migration `0034`**: `cards.tags text[]` + a **GIN index** (for fast\\n  `tags @> []` filters) + a `cardinality(tags) <= 12` check.\\n- **Validation** (`cardTagsSchema`): normalizes to lowercase alphanumeric +\\n  spaces/hyphens, strips junk, dedupes, caps each tag at 30 chars and 12 total.\\n  Wired into create/update; **remixes inherit** the parent's tags.\\n- **Creator form**: a new **Tags** field in the Details step (mirrors the existing\\n  `subtypes_text` pattern), pre-filled on edit and saved on submit.\\n- **Display**: clickable **#tag** chips on the card page \u2192 `/gallery?tag=`.\\n- **Gallery**: a `?tag=` filter with an active-tag banner (\\\"Showing cards tagged\\n  #\u2026\\\" + Clear), preserved across pagination.\\n\\n### Verified on prod\\n`0034` applied. Full loop exercised in-browser: opened a card\"\n  },\n  {\n    \"id\": \"github-feedback-comment-a637a4ab3f38f4e3\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/48#issuecomment-4663958460\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/48#issuecomment-4663958460\\nTitle: \\nBody:\\n[vc]: #OPX3XGfvvokkJLLl+paZP0LKxcaMCN1AY6osyO1COWw=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVyb\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-6faa63cd3e5968b4", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301021, "scanner": "foundry_dataset", "fingerprint": "52ae8b499bbe48d3a65cb13ccc871091b4402b82d3231074206d7acf002a0756", "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": "TOOTRJ/cardforge#47", "human_labels": ["data_schema_persistence", "deployment_env_gap"], "issue_number": "47", "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": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-65297a088e7672ff", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#47\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: TOOTRJ/cardforge#47\nRepo: TOOTRJ/cardforge\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: {'data_schema_persistence': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-22713e7abcf62f0c\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"data_schema_persistence\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/47\",\n    \"text\": \"GitHub feedback: data_schema_persistence\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/47\\nTitle: feat(discovery): related cards on the card page\\nBody:\\n## Discovery: related cards on the card page\\n\\nKeep people exploring from any card. The card detail page now ends with two\\nrelated-content rows:\\n\\n- **More from @creator** \u2014 other public cards by the same owner.\\n- **More like this** \u2014 public cards of the same type by *other* creators.\\n\\nEach row has a **View all \u2192** link to the creator's profile / the filtered gallery\\n(`/gallery?type=\u2026`), tying card-level browsing back into the bigger surfaces\\n(gallery, feed, profiles).\\n\\n### Implementation\\n- Two new queries \u2014 `listMoreFromOwner` + `listRelatedCards` \u2014 folded into the\\n  detail page's existing `Promise.all`. **No migration** (uses existing columns),\\n  and both reuse the shared `GalleryCardTile` from #46.\\n- Sections only render when they have results, so sparse cards/types stay clean.\\n\\n### Verified\\nIn-browser on a prolific creator's card: both sections rendered populated 4-card\\ngrids with correct **View all** targets (`/profile/@owner`, `/gallery?type=c\"\n  },\n  {\n    \"id\": \"github-feedback-comment-adc88d353cf883d3\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/47#issuecomment-4663839597\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/47#issuecomment-4663839597\\nTitle: \\nBody:\\n[vc]: #vK8hbuNQWspy6eXuwnJDk5H+qkgSKAoY3dx1igao52c=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVy\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-da605774172b4509", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301020, "scanner": "foundry_dataset", "fingerprint": "df961a123f248eccc881a1fa9c109ad4762c0d3fca2a3aacf328bb1ff80666de", "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": "TOOTRJ/cardforge#46", "human_labels": ["deployment_env_gap", "security_auth_secret"], "issue_number": "46", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.76, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-f154251b1ad103b8", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#46\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#46\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 6\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-508b9ffd38c8ac3d\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/46\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/46\\nTitle: feat(follows): creator follows + activity feed\\nBody:\\n## Creator follows + activity feed\\n\\nFollow other creators and get a feed of their newest cards \u2014 the natural pairing\\nwith the notifications from #45.\\n\\n### What's in it\\n- **migration `0033`**: a `follows` table + RLS (the social graph is public for\\n  counts; each user only writes their own follow rows), plus a **`follow`\\n  notification type** and a `follows \u2192 notify` trigger (locked-down\\n  `SECURITY DEFINER`, like the others).\\n- **Follow / Unfollow button** + **follower / following counts** on profile pages\\n  (hidden on your own profile; prompts sign-in for logged-out visitors).\\n- **`/feed`** (new authed nav item): the newest **public** cards from creators you\\n  follow, newest first, with an empty-state CTA when you're not following anyone.\\n- **Notifications** now render the `follow` type (\\\"X started following you\\\",\\n  linking to their profile).\\n- Extracted the gallery card tile into a shared `GalleryCardTile` component reused\\n  by the feed (deduped the\"\n  },\n  {\n    \"id\": \"github-feedback-comment-91249f9c9955cc9e\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/46#issuecomment-4662877952\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/46#issuecomment-4662877952\\nTitle: \\nBody:\\n[vc]: #LswYYSxW7MIJ6OKxMZErVxCRZ6gbxsc++SVoWewq4tU=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHB\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-001ab68e8e28327f", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301019, "scanner": "foundry_dataset", "fingerprint": "485357fe3b90366dd3f175f5eb2a9379add7efb71bf1ab5a4979ecd725e98f4a", "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": "TOOTRJ/cardforge#44", "human_labels": ["deployment_env_gap", "security_auth_secret"], "issue_number": "44", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.777, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-932adf510ac4423d", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#44\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#44\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 6\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-ff2d6d7b006297dc\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/44\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/44\\nTitle: feat(account): self-serve data export + account deletion\\nBody:\\n## Self-serve data export + account deletion\\n\\nCloses the gap your **privacy policy already promises** \u2014 both \\\"full data export\\\"\\nand account deletion were listed as user rights but weren't built. Now they're\\nself-serve from **Settings \u2192 \\\"Your data & account\\\"**.\\n\\n### Data export\\n`GET /api/account/export` streams a JSON file (`spellwright-export-YYYY-MM-DD.json`)\\nwith the user's **profile, cards, sets, comments, likes, credit ledger, and filed\\nreports**. Read through the user's own RLS-scoped session, so it can only ever\\nreturn the caller's own data.\\n\\n### Account deletion\\n`deleteAccountAction` (service-role):\\n1. Removes the user's **storage folders** across all five buckets (`card-art`,\\n   `card-renders`, `card-exports`, `set-covers`, `profile-media`) \u2014 objects aren't\\n   cascade-deleted with rows.\\n2. **Hard-deletes the auth user**, which cascades every owned DB row (profile,\\n   cards, sets, comments, likes, reports, ledger \u2014 all FKs are `on del\"\n  },\n  {\n    \"id\": \"github-feedback-comment-4838dcaf541687bf\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/44#issuecomment-4657384495\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/44#issuecomment-4657384495\\nTitle: \\nBody:\\n[vc]: #uCqjFExwXbXW+ifo7nyY9ZeI4rZfve+5GjQeDUuYocY=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-158287afefff89b0", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301018, "scanner": "foundry_dataset", "fingerprint": "919ef533beb38db72d73123e9dba58961215dcc2e84ae475123d0b67d48f6c31", "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": "TOOTRJ/cardforge#43", "human_labels": ["data_schema_persistence", "deployment_env_gap"], "issue_number": "43", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.812, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-c9f7c35aed3b1244", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#43\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: TOOTRJ/cardforge#43\nRepo: TOOTRJ/cardforge\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: {'data_schema_persistence': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-41df4ece2f59abd9\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"data_schema_persistence\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/43\",\n    \"text\": \"GitHub feedback: data_schema_persistence\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/43\\nTitle: feat(moderation): comment reporting + NSFW scan + admin alerts\\nBody:\\n## Moderation follow-ups: comment reporting \u00b7 NSFW scan \u00b7 admin alerts\\n\\nBuilds on the moderation system from #42. Three requested additions:\\n\\n### 1. Comment reporting (migration `0030`)\\n`comment_reports` table + RLS, mirroring `card_reports`. A **Report flag on each\\ncomment** for signed-in non-authors, and a new **\\\"Reported comments\\\"** section in\\n`/admin/moderation` with **Remove** (deletes the comment; its reports cascade away)\\nand **Dismiss**. Extracted a shared `<ReportDialog>` now used by both cards and\\ncomments.\\n\\n### 2. NSFW auto-scan on art upload + AI generation\\n`lib/moderation/image-scan.ts` runs every uploaded **and** AI-generated image\\nthrough OpenAI's free `omni-moderation` image model. A flagged image is removed\\nfrom storage and rejected. **Fails open** \u2014 a missing key or API error never\\nblocks uploads (manual reports stay the backstop). Reuses `OPENAI_API_KEY`; no new\\nkey required.\\n\\n### 3. Admin alerts on new reports\\n`l\"\n  },\n  {\n    \"id\": \"github-feedback-comment-8a00d69092995a2c\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/43#issuecomment-4656235757\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/43#issuecomment-4656235757\\nTitle: \\nBody:\\n[vc]: #9/RlV3Nw46C3P5kfep/O3zcpE4fwW0z38EP829EBkuo=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVy\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-82a10c665a3e75b4", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301017, "scanner": "foundry_dataset", "fingerprint": "6c94c4cd6feaa18ba2fd5f5a2e9b3f6f6212380dc42a95a9f0f9304fdf866d3b", "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": "TOOTRJ/cardforge#42", "human_labels": ["data_schema_persistence", "deployment_env_gap"], "issue_number": "42", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.777, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-15b7277a114b5abb", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#42\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: TOOTRJ/cardforge#42\nRepo: TOOTRJ/cardforge\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: {'data_schema_persistence': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-073ac5d119eadb31\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"data_schema_persistence\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/42\",\n    \"text\": \"GitHub feedback: data_schema_persistence\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/42\\nTitle: feat(moderation): content reporting + admin moderation dashboard\\nBody:\\n## Content reporting + admin moderation\\n\\nCloses the top safety gap from the codebase scout: the public gallery hosts\\nuser-uploaded **and AI-generated** images/text with no abuse path. This adds\\nuser reporting + a lightweight admin dashboard.\\n\\n### What's in it\\n- **Report a card** \u2014 a Report dialog on the card detail page for signed-in\\n  non-owners (reason + optional details). `reportCardAction` inserts under RLS;\\n  one report per user per card.\\n- **Moderation dashboard** \u2014 `/admin/moderation`, gated on `profiles.is_admin`\\n  (404 for everyone else). Reported cards grouped with their reasons, and two\\n  actions: **Hide** (un-publishes the card \u2192 private + clears its public render)\\n  and **Dismiss**. Executed via the service role.\\n- **Admin entry** \u2014 a \\\"Moderation\\\" item appears in the user menu for admins.\\n- **migration 0029** \u2014 `card_reports` + RLS + `profiles.is_admin`, and folds\\n  `is_admin` into the `0028` write-guard so a user can\"\n  },\n  {\n    \"id\": \"github-feedback-comment-65f31ba3d9b7b246\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/42#issuecomment-4656103292\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/42#issuecomment-4656103292\\nTitle: \\nBody:\\n[vc]: #pVdmaayjs/KKVinJatbN3VWAv+AVuRedHa97RwY6PKQ=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybC\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-97f821fb32fb8608", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301016, "scanner": "foundry_dataset", "fingerprint": "33f9d79ab8266ffa9cb2444bcfdbb629c88c6ada67158adf78b8a95e7e34cb94", "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": "TOOTRJ/cardforge#41", "human_labels": ["deployment_env_gap", "security_auth_secret"], "issue_number": "41", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.82, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-d93aa2d5d5ce4ac3", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#41\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: TOOTRJ/cardforge#41\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 6\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-de7634f5f268198e\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/41\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/41\\nTitle: feat(billing): hide paid layer behind a kill-switch (+ restore missed #40 commits)\\nBody:\\n## Hide the paid layer until launch (kill-switch) + restore missed commits\\n\\nYou're keeping all the subscription setup but not charging yet. This adds a master\\nswitch so the whole paid layer is **hidden + unenforced by default**, and restores\\ntwo commits that didn't make it into the #40 merge.\\n\\n### Heads-up: #40 merged at the first commit only\\nThe #40 merge brought in `079953e` but **not** my last two commits, so `main` was\\nmissing the **`0028` security lockdown**, the economics re-pricing, the header\\ncredits indicator, and the post-checkout/mobile/test work. This branch cherry-picks\\nthem back (`9222544`, `1a47c22`) and adds the kill-switch on top.\\n\\n### Kill-switch \u2014 `NEXT_PUBLIC_BILLING_ENABLED` (default off) \u00b7 `lib/billing/flags.ts`\\nWhile off, the app behaves exactly like the pre-subscription free tool:\\n- `getEntitlements()` returns **fully unlocked** (no watermark, hi-res exports,\\n  every frame/finish, unlimited c\"\n  },\n  {\n    \"id\": \"github-feedback-comment-356eb97e6e179fde\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/41#issuecomment-4655974163\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/41#issuecomment-4655974163\\nTitle: \\nBody:\\n[vc]: #MDPje9O4HSWtHZz8S6i2L9EG9xbd1/QMs/YCYOaeh/w=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8v\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-d2fc583a68b6289b", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301015, "scanner": "foundry_dataset", "fingerprint": "547c9c5dd258d0c3ec5cb59ac2dbf03b323d2f0cd3ac60794fdd2d98cafc9e69", "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": "TOOTRJ/cardforge#40", "human_labels": ["deployment_env_gap", "security_auth_secret"], "issue_number": "40", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.777, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-e939a691594f4e61", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 12, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#40\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#40\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 3\nLinked commit count: 12\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 2, 'deployment_env_gap': 1}\nPolarities: {'bad': 3}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-502d63e195a90fe5\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/40\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/40\\nTitle: feat(billing): premium subscriptions, AI credits, and selling UI\\nBody:\\n## Premium subscriptions, AI credits & selling UI\\n\\nAdds a full Stripe-backed monetization layer to Spellwright. The card maker stays\\nfree; we only ever sell **our own technology** (AI generation, watermark-free\\nhi-res exports, storage/capacity, original frames) \u2014 MTG-style rendering and\\nWotC-derived frames are never paywalled.\\n\\n### Model\\n| | Free | Plus $9/mo | Pro $19/mo |\\n|---|---|---|---|\\n| AI credits/mo | 25 (signup grant) | 200 | 1,000 |\\n| Watermark | yes | removed | removed |\\n| Export | PNG (capped) | + clean HD, single PDF | + 3\u00d73 sheets, whole-set export |\\n| Capacity | 50 cards | 500 | unlimited |\\n| Extras | \u2014 | premium finishes | AI set generator |\\n\\nMonthly **or annual** (annual = 2 months free) + consumable **credit packs** (never expire).\\n\\n### What's inside\\n- **DB (`0027`)**: profiles billing columns, `credit_ledger` + `stripe_events`, atomic\\n  `consume_credits` / idempotent `grant_credits` / `credit_ledger_daily` RPCs, si\"\n  },\n  {\n    \"id\": \"github-feedback-comment-b84df25401685042\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/40#issuecomment-4641721634\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/40#issuecomment-4641721634\\nTitle: \\nBody:\\n[vc]: #C24YJyKtjXsLIewt4tU8GO6BiN2w35OiiYNgZFR+6BU=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImxpdmVGZWVkYmFjayI6eyJyZ\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-2065a4b01efe5c52", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301014, "scanner": "foundry_dataset", "fingerprint": "d7613b6057a96de79374b32a09f541536f371a9f5dcd4a8bba6300f0415e9cc6", "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": "TOOTRJ/cardforge#39", "human_labels": ["deployment_env_gap", "security_auth_secret"], "issue_number": "39", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.742, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-f29647744432c84e", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "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": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#39\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#39\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 6\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-59ab37a27a4ee948\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/39\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/39\\nTitle: Pixel-perfect typography across all 23 Set + Frame variations\\nBody:\\nA full typography/fidelity pass so every Set + Frame variation reads like its real-card counterpart, in **both** renderers (live preview + the Satori bake \u2192 saved PNG).\\n\\n## Foundations (improve every frame at once)\\n- **Display font** \u2014 vendor an OFL face (Sorts Mill Goudy) as a Beleren stand-in and wire it to titles, type lines, footer, and stat values via the previously-dormant `TextSlot.font` hook in both renderers. Rules/flavor stay MPlantin. Swap in a licensed Beleren later by replacing one file (`public/fonts/` + the `CardDisplay` `@font-face` / `DISPLAY_FONT_PATH`).\\n- **Shared rules-text renderer** (`lib/cards/rules-text.ts`) \u2014 inline mana (`{T}`, `{G}`, \u2026) renders as real pips, reminder text + ability words are italicized, non-authentic keyword bolding removed. Consumed by both renderers, closing the biggest preview\u2194PNG divergence.\\n- **Left-aligned** rules + flavor (was centered); Saga chapter spacing + adventure/second-face padd\"\n  },\n  {\n    \"id\": \"github-feedback-comment-5c2934a6b21c4509\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/39#issuecomment-4619273120\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/39#issuecomment-4619273120\\nTitle: \\nBody:\\n[vc]: #DM47+LhvH5DFaVbjB0qWEgvC+4JXZ0kKO5oK0LdvqXM=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsL\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-0d94c9066731dc8e", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301013, "scanner": "foundry_dataset", "fingerprint": "0f7870fb71de80c12606c43530502994d586e065a7ad8450e02148c585d81a10", "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": "TOOTRJ/cardforge#35", "human_labels": ["deployment_env_gap", "test_ci_gap"], "issue_number": "35", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-05e8beda461c3c0c", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#35\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: TOOTRJ/cardforge#35\nRepo: TOOTRJ/cardforge\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: 0\nLabels: {'test_ci_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-aecd6b5aeedbf7a3\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/35\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/35\\nTitle: fix(cards): natural card corners (remove the over-rounded web-UI clip)\\nBody:\\nFollow-up to the corner work: the **card images** are fixed, but the **app** was still imposing its own rounding.\\n\\n## Cause\\nEvery card display clipped with `border-radius: 4.7cqw`. The `cqw` (container-query width) unit resolves against the nearest **ancestor** container \u2014 not the card \u2014 so it inflated to **~8.6% of the card width** instead of the intended 4.7%. That heavy rounding read as a \\\"web-UI rounded rectangle\\\" and cut into the card's own corner in **every** location (gallery, card page, dashboard, profile, sets, creator preview).\\n\\n## Fix\\nA shared `.card-corners` class with an **authentic ~3.5%-of-short-side** radius, expressed as an aspect-corrected elliptical `border-radius` (`3.5% / 2.5%` portrait, `2.5% / 3.5%` landscape) so the corner stays **circular without** container-query units. Applied to `CardPreview`, `BakedCardThumbnail`, the skeleton, and the hover glare \u2014 so live previews and baked thumbnails match.\\n\\nCards now rou\"\n  },\n  {\n    \"id\": \"github-feedback-comment-2fa6cfe5f2cb3fb5\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/35#issuecomment-4609535284\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/35#issuecomment-4609535284\\nTitle: \\nBody:\\n[vc]: #KgJcqy9jJ8ejgoMWg1Jxa8lPLegol7w0tUJktQW+o8k=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsLmNvbS9vcm\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-6fbe5382b531ed99", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301012, "scanner": "foundry_dataset", "fingerprint": "c3b5bf0f0257a072f1f6d8e16c9ef74bced1d98f5c5ddc5f880a099fba0dda98", "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": "TOOTRJ/cardforge#33", "human_labels": ["deployment_env_gap", "test_ci_gap"], "issue_number": "33", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-d6de2757795a1280", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#33\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: TOOTRJ/cardforge#33\nRepo: TOOTRJ/cardforge\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: 0\nLabels: {'test_ci_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-7e549c4238e9ec27\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/33\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/33\\nTitle: fix(creator): stepper rail affordance, set\u2192frame picker redesign, + create-flow audit fixes\\nBody:\\n## Why a second PR\\n\\nPR #32 was merged **early** \u2014 it captured only the first two commits (the stepper UI + the e2e fix). These four follow-up commits were pushed to the branch *after* #32 merged, so they never reached `main`. This PR brings them forward (cherry-picked cleanly onto current `main`).\\n\\n## What's here\\n\\n**Stepper / picker UX (your two requests):**\\n- **`make stepper rail markers visibly clickable`** \u2014 free step-jumping was already wired (`isStepEnabled={() => true}`), but the rail markers had no affordance. Added cursor + hover tint + `Go to <step>` titles.\\n- **`clearer two-step set\u2192frame picker`** \u2014 the Frame step now reads as **1 \u00b7 Choose a set** (families count + per-set frame count on each chip) \u2192 **2 \u00b7 Choose a frame \u00b7 _set name_**, instead of two unlabeled chip rows.\\n\\n**Create-flow audit fixes** (found by driving the live app end-to-end):\\n- **`m15land`** \ud83c\udfaf \u2014 the MSE land frame paints a color-indicato\"\n  },\n  {\n    \"id\": \"github-feedback-comment-a97f8605f814c724\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/33#issuecomment-4608890223\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/33#issuecomment-4608890223\\nTitle: \\nBody:\\n[vc]: #8PQSoJU0O5/Bm6sRUOjWrOzN0vRgqgQZEGnOrECWT4Q=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsLmNvbS9vc\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-9c58db56762f91ac", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301011, "scanner": "foundry_dataset", "fingerprint": "706d979411930320d5825a0513990f98a887cb221ae81cfc32429a7e6d50f22d", "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": "TOOTRJ/cardforge#31", "human_labels": ["agent_instruction_gap", "deployment_env_gap"], "issue_number": "31", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-edc882e946ea1e6f", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#31\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#31\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'agent_instruction_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-80f40c87320312f6\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/31\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/31\\nTitle: feat(frames): showcase set families \u2014 LOTR, Avatar, Bloomburrow, Tarkir\\nBody:\\nAdds four new **frame set families** for the most popular recent sets, each with its showcase treatment(s) \u2014 **8 frames** total. Stacked on the multi-panel frame work; retargets to `main` as those merge.\\n\\n## Research \u2192 which sets\\nPer current sales data, the biggest recent sets are **Final Fantasy** (#1 all-time), **LOTR** (#2), **Avatar: The Last Airbender** (#3), **Modern Horizons 3**, **Tarkir: Dragonstorm**, **Edge of Eternities**, **Bloomburrow** ([TCGplayer](https://seller.tcgplayer.com/blog/top-selling-magic-the-gathering-sets-right-now-03-11-2026), [Draftsim](https://draftsim.com/tla-3rd-bestselling-mtg-set/)). **FF + MH3 have no showcase frame in the Full-Magic-Pack**, so per your pick this covers **LOTR / Avatar / Bloomburrow / Tarkir**.\\n\\n## Frames (8, across 4 families)\\nThe MSE pieces ship with their art window already transparent, so `scripts/build-showcase-frames.mjs` just upscales them (no flood-fill needed):\\n\\n| \"\n  },\n  {\n    \"id\": \"github-feedback-comment-09aee023567022d9\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/31#issuecomment-4605875725\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/31#issuecomment-4605875725\\nTitle: \\nBody:\\n[vc]: #KtNgVjw1P5PsC+aEpKzNwrP48aAk2K5FsVpD6+9mtXE=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVy\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-fc94f94b7afab70d", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301010, "scanner": "foundry_dataset", "fingerprint": "4b68d3cd950e3bae5c10ed87c531c629b16e21bdfd31ae2d880d5380cd08ab70", "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": "TOOTRJ/cardforge#30", "human_labels": ["agent_instruction_gap", "deployment_env_gap"], "issue_number": "30", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-5d423e5e41a517b4", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#30\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#30\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'agent_instruction_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-976b05947a142630\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/30\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/30\\nTitle: feat(frames): Aftermath frame \u2014 top half + 90\u00b0-rotated bottom\\nBody:\\nThe **final** multi-panel frame, completing the set (Adventure \u2192 Flip \u2192 Split \u2192 Aftermath). Stacked on #29 (Split). **Merge #28 \u2192 #29 \u2192 this**, then it lands on `main`.\\n\\nAn aftermath card: a normal **top half** (cast from hand) over a **bottom half rotated 90\u00b0** (cast from the graveyard, read by turning the card).\\n\\n## Frame\\nMSE stores the two halves already in their final orientation \u2014 `wcard.png` (top, upright) + `wcard2.png` (bottom, pre-rotated sideways). `scripts/build-aftermath-frame.mjs` stacks them into 1500\u00d72100 and flood-fills the top art window (white, Alpha-style).\\n\\n## Layout \u2014 the third rotation\\nThe top half is a standard spell layout (name/cost \u2192 small art \u2192 type \u2192 rules). The bottom half is the back-face content via **`secondFace` at `rotation: 270`**, reusing the Flip/Split machinery. The trick for 90\u00b0/270\u00b0: the bottom slots are **wide boxes centered on each rotated bar**, so `rotate(270\u00b0)` around the center lands the bo\"\n  },\n  {\n    \"id\": \"github-feedback-comment-8fc22a12c1cb1007\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/30#issuecomment-4605138114\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/30#issuecomment-4605138114\\nTitle: \\nBody:\\n[vc]: #z0l5zFvIVCGHma4pDqopgFfpWMqPeeeWwDmxnOC9S/8=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVy\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-7fd87ff94b5bb8b1", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301009, "scanner": "foundry_dataset", "fingerprint": "cd251558aae068bf8a22797d472f78abb0039e1104324914439493ad12010a58", "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": "TOOTRJ/cardforge#29", "human_labels": ["agent_instruction_gap", "deployment_env_gap"], "issue_number": "29", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-591e55534ab722d0", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#29\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#29\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'agent_instruction_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-8d9afcb14a17a055\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/29\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/29\\nTitle: feat(frames): Split frame (landscape, two halves)\\nBody:\\nThe third multi-panel frame. Stacked on #28 (Flip) \u2014 it reuses the `secondFace` capability. **Merge #28 first**, then this retargets to `main`.\\n\\nA split card is read **sideways**: two upright half-cards side by side, each a full mini-card (name/cost \u2192 art \u2192 type \u2192 rules). The **left** half is the front content; the **right** half is the back-face content.\\n\\n## Frame\\nMSE stores a per-color **half** frame (240\u00d7345). `scripts/build-split-frame.mjs` composites two halves onto a **2100\u00d71500 landscape** canvas with a black spine and flood-fills **both** art windows to alpha. Both halves share the card's one color identity (a two-color split renders multicolor on both \u2014 an accepted simplification, since the app has a single `color_identity`).\\n\\n## Layout\\nReuses **`secondFace`** (from #28) with **`rotation: 0`** (both halves upright) + a `costSizePct` + a second **`artSlot`**. The renderers gain a **second art window** \u2014 front art in the left window, back-f\"\n  },\n  {\n    \"id\": \"github-feedback-comment-8f453d246d6c4296\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/29#issuecomment-4605002207\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/29#issuecomment-4605002207\\nTitle: \\nBody:\\n[vc]: #aVixBkbwm3ClYuOb76txTw3aP0IS8ZJTZM1NTKM5D4w=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVy\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-0355d6f15d30a666", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301008, "scanner": "foundry_dataset", "fingerprint": "09a4078525df3dcc23ee34066315ebd8e9b700324f1ce8e538e26fda1b286f16", "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": "TOOTRJ/cardforge#27", "human_labels": ["deployment_env_gap", "security_auth_secret"], "issue_number": "27", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-e9ec11450b5fada1", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#27\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#27\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-ad53d884d6907247\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/27\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/27\\nTitle: feat(creator): linear frame-aware stepper (mobile-first)\\nBody:\\nReplaces the confusing 5-tab card creator with a **linear, frame-aware stepper**. Stacked on #26 (the foundations) \u2014 **merge #26 first**, then this retargets to `main`.\\n\\n## The flow\\nSteps are computed from the frame + card type + back-face (`lib/creator/steps.ts`, unit-tested in #26):\\n\\n**Frame \u2192 Details \u2192 Art \u2192 Rules \u2192 [Adventure / Back face] \u2192 Publish**\\n\\n- **Frame is step 1** \u2014 it's the foundational choice. Leads with the set\u2192frame picker, the quick-start banners (import a real card / AI random), and disabled **\\\"coming soon\\\"** chips: Flip / Aftermath / Split + roadmap sets (Retro, Future Sight, Showcase, Universes Beyond), each tagged `Soon`.\\n- **Details** hides the **mana cost** on frames that paint none (tokens).\\n- **Rules** shows **only the stat the card can display** \u2014 P/T for creatures/tokens, loyalty for planeswalkers, defense for battles, nothing for spells. (The old form always showed all four.)\\n- The **Adventure / Back-face** step \"\n  },\n  {\n    \"id\": \"github-feedback-comment-a48d54ad77ebc3d4\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/27#issuecomment-4601424628\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/27#issuecomment-4601424628\\nTitle: \\nBody:\\n[vc]: #1j9vqf7WzDWX2koetbLjZe0SMzc5f/W3wKE20nwdui0=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdm\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-e3e49ab84eec8daf", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301007, "scanner": "foundry_dataset", "fingerprint": "95904552ae2db42b771543f79f5ce28df087006e6a4e44b939d447bb1f4fb6c6", "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": "TOOTRJ/cardforge#26", "human_labels": ["deployment_env_gap", "security_auth_secret"], "issue_number": "26", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-993196800b98e669", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#26\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#26\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-cd8a7699a1e6b206\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/26\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/26\\nTitle: refactor(creator): stepper foundations + dead-field cleanup\\nBody:\\nGroundwork for the card-creator **stepper** overhaul, split out so the big form refactor lands on a clean base. **No user-visible form change yet** (still tab-based) \u2014 this PR is additions + dead-code removal that all pass gates independently.\\n\\n## Foundations (new; wired up in the next PR)\\n- **`components/ui/stepper.tsx`** \u2014 a presentational, fully-controlled step indicator. Desktop: numbered marker rail with connectors + complete/active/upcoming/error states. Mobile: \\\"Step X of N \u00b7 Label\\\" + a segmented progress bar.\\n- **`lib/creator/steps.ts`** \u2014 a pure, React-free **frame-aware** step model: `visibleSteps(ctx)`, `stepLabel`, `statVisibility` (P/T vs loyalty vs defense), `hidesCost`, and derived field\u2192step routing. Context = `{ template, cardType, hasBackFace }`.\\n- **`lib/creator/form-types.ts`** \u2014 `FormValues` / `BackFaceFormValues` / `EMPTY_BACK_FACE` extracted from the form so the step model references them without a cycle (and so the\"\n  },\n  {\n    \"id\": \"github-feedback-comment-999f236713d8bc08\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/26#issuecomment-4601239814\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/26#issuecomment-4601239814\\nTitle: \\nBody:\\n[vc]: #uHhBMqnoaEfxenkgVk3giSXjFKe0bRiHWT6k65+8zDI=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2V\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-5dfaea392fb35501", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301006, "scanner": "foundry_dataset", "fingerprint": "271614cb070c9c9a923f3aa540492118a0d9349bfa02df4e39e5b596e5ccd21a", "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": "TOOTRJ/cardforge#24", "human_labels": ["deployment_env_gap", "security_auth_secret"], "issue_number": "24", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-89223b2173d4c926", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#24\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#24\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-3097c4794504c2b1\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/24\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/24\\nTitle: feat(creator): two-step frame picker (set \u2192 frames)\\nBody:\\nThe frame picker reached 11 templates, so this splits it into two steps: pick a **frame set** (family), then pick a frame within it. Only the chosen set's frames are shown.\\n\\n## What\\n- New `FRAME_SET_*` metadata in `types/card.ts`: `FRAME_SET_VALUES` (`m15`, `alpha`), labels, an **exhaustive** `FRAME_TEMPLATE_SET` (every template maps to a set \u2014 adding a frame is a compile error until assigned one), and a per-set default template.\\n- The Publishing-tab picker now renders a **set ChipGroup** (Magic 2015 / Alpha, each with a thumbnail) above the **frame ChipGroup**, which is filtered to the active set. Switching sets jumps to that set's default frame.\\n- Frame labels are now **set-relative** (\\\"Standard\\\", \\\"Land\\\", \\\"Token\\\", \\\"Snow\\\", \\\"Devoid\\\", \\\"Planeswalker\\\", \\\"Battle\\\", \\\"Saga\\\") since the set chip supplies the family \u2014 no more \\\"M15 \u2026\\\" / \\\"Alpha \u2026\\\" repetition. (The label is used only by the picker.)\\n\\n## Verified\\nGuest creator (`/preview` \u2192 Publishing): **Magic\"\n  },\n  {\n    \"id\": \"github-feedback-comment-84c7f3f9cfd58134\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/24#issuecomment-4600451807\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/24#issuecomment-4600451807\\nTitle: \\nBody:\\n[vc]: #FnqhUzowNvbaR5H3fTHN3ycNafM3FEh+TK/cfhY5mrI=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybC\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-946d0e60370170e6", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301005, "scanner": "foundry_dataset", "fingerprint": "e3b3e0379c52e73161bbe16ebc300cf05f517aaa7730945153e365352d34eacf", "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": "TOOTRJ/cardforge#23", "human_labels": ["deployment_env_gap", "security_auth_secret"], "issue_number": "23", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-dc18ad9e27d3b317", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#23\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#23\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-f2d636309f3d442c\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/23\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/23\\nTitle: feat(creator): visual frame picker (thumbnail per template)\\nBody:\\nNow that the creator offers **11 frames** with similar names (M15 Snow vs M15 Devoid, Token vs Saga vs Battle\u2026), the text-only template picker is hard to choose from. This adds a small **frame thumbnail** to each chip so the list is choosable by sight.\\n\\n## What\\n- Each `TEMPLATE_OPTIONS` chip leads with a `<FrameThumb>` \u2014 a mini render of the frame PNG (blue color variant). Portrait frames are 5:7; **Battle is shown landscape** (7:5), so its different orientation is obvious in the picker.\\n- Updated the now-stale helper text (it listed only 3 of the 11 frames).\\n\\n## Verified\\nOpened the picker in the guest creator (`/preview` \u2192 Publishing) \u2014 all 11 thumbnails render and the structurally-distinct frames are instantly recognizable: Token's arched/dark-title look, Saga's split rail+art, Battle's landscape, Planeswalker's two windows, the Alpha stone frames. `lint` \u2705 0 \u00b7 `test:unit` \u2705 83/83 \u00b7 `build` \u2705.\\n\\n## Notes\\n- The 11 frame PNGs only load whe\"\n  },\n  {\n    \"id\": \"github-feedback-comment-e71901df45da7a94\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/23#issuecomment-4600121122\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/23#issuecomment-4600121122\\nTitle: \\nBody:\\n[vc]: #Tk0wa9s1zk6ZOxc+aQyhszvq8KaEGgXZdh9vMmQkRu0=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVy\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-ba05bb85d3418e91", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301004, "scanner": "foundry_dataset", "fingerprint": "3a73a3b665000a56cd35d72f97a96f45376cdd6c3c2f3bdc312885de1f882f40", "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": "TOOTRJ/cardforge#21", "human_labels": ["agent_instruction_gap", "deployment_env_gap"], "issue_number": "21", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-38834acba3fe3171", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#21\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#21\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'agent_instruction_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-349659d05fc1394e\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/21\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/21\\nTitle: feat(frames): add the Saga frame (chapter-rail layout)\\nBody:\\nThe Saga frame \u2014 the second \\\"needs new layout\\\" type (#17). Off `main`, independent of the battle-tile PR (#20).\\n\\n## What\\nSagas have no normal rules box \u2014 their abilities are a **chapter rail**. This adds a new `chapters` slot to the frame profile:\\n- The card's rules text is parsed into chapters by their Roman-numeral markers \u2014 `I \u2014 \u2026`, `II, III \u2014 \u2026`, `i: \u2026`; marker-less lines continue the previous chapter (new shared parser `parseChapters` + **6 unit tests**).\\n- Each chapter renders as an equal-height row \u2014 a marker badge + ability text, with dividers \u2014 down the cream **left rail**.\\n- The Saga's art is a tall column on the **right** (its own artSlot).\\n- New primitive rendered by both the preview (`ChapterRail`) and the bake (`ChapterBake`); the normal rules box only renders for frames *without* `chapters`.\\n\\n## Verification\\n`typecheck` \u2705 \u00b7 `lint` \u2705 0 \u00b7 `test:unit` \u2705 **83/83** (6 new) \u00b7 `build` \u2705\\nVerified a 3-chapter saga (History of Benalia) a\"\n  },\n  {\n    \"id\": \"github-feedback-comment-c9f3c5bb349764b1\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/21#issuecomment-4599663766\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/21#issuecomment-4599663766\\nTitle: \\nBody:\\n[vc]: #JNGb1CAkUPELidRxhqcxQGlnhUGGR2VZIQZnRzKDNIM=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-d6a7db4067570d5f", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301003, "scanner": "foundry_dataset", "fingerprint": "615763d17554411c8599d763413bc58d91c1e85c7eee42e6332191e4beeaa785", "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": "TOOTRJ/cardforge#20", "human_labels": ["deployment_env_gap", "security_auth_secret"], "issue_number": "20", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.625, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-1037d3a5ff90ac7f", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#20\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#20\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-ca3735f2238e9eb6\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/20\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/20\\nTitle: fix(gallery): letterbox landscape Battle cards in tiles\\nBody:\\nCompletes the remaining piece of #16 \u2014 making Battle cards look right in the gallery/grid.\\n\\n## Problem\\n`BakedCardThumbnail` (the canonical tile used by the gallery, profiles, sets, dashboard, trending, pins) forced a `aspect-[5/7]` portrait tile with `object-cover`. A landscape Battle render (2100\u00d71500) got **cropped to its middle strip**.\\n\\n## Fix\\nDetect landscape frames (`getFrameProfile(template).orientation === \\\"landscape\\\"`) and **letterbox** them in the portrait tile:\\n- baked image \u2192 `object-contain` (centered, whole),\\n- live-preview fallback \u2192 centered in the portrait tile.\\n\\nEvery grid stays uniformly aligned; the Siege stays whole and undistorted, with breathing room above/below.\\n\\n## Verification\\n`typecheck` \u2705 \u00b7 `lint` \u2705 0 \u00b7 `test:unit` \u2705 77/77 \u00b7 `build` \u2705\\nVerified in a 4-up grid (m15 creature, **battle Siege**, m15 land, m15 token) \u2014 the battle letterboxes centered, the portrait cards fill their cells, the grid stays aligned.\\n\\nCloses #\"\n  },\n  {\n    \"id\": \"github-feedback-comment-2e6cbda4f98757d9\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/20#issuecomment-4599480341\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/20#issuecomment-4599480341\\nTitle: \\nBody:\\n[vc]: #ffv0Nn4Egjjp1Oz7Ohu7x2Y+L85/5Iwg07Y/5NZVobE=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBz\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-861595b0eee644b0", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301002, "scanner": "foundry_dataset", "fingerprint": "e81d5ec8cefa57b5367ce43258aaae170795ee1da4408df81fcdfee308c0e2dc", "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": "TOOTRJ/cardforge#18", "human_labels": ["deployment_env_gap", "security_auth_secret"], "issue_number": "18", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-304223c657c9c30b", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#18\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#18\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-a31d01f7a1103131\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/18\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/18\\nTitle: feat(frames): add Alpha Token + Alpha Land\\nBody:\\nTwo 1993-era (Alpha) frames. Drop-in, off `main`.\\n\\n## What\\n- **alphaland** \u2014 the agclassic land variant (`{color}lcard` from `magic-agclassic.mse-style`). Identical geometry to the existing `agclassic`, so it's a clone + `hideCost`.\\n- **alphatoken** \u2014 the 1993 token frame (`magic-agclassic-token.mse-style`). Custom profile: silver stone border, large white art window, name in the dark top border (centered light ink), a tan type box at the bottom, P/T over it, and token abilities on a dark scrim over the lower art.\\n\\n## Converter\\nThe Alpha-family art windows are **white**, not black like the m15 family. Added a `FILL = \\\"black\\\" | \\\"white\\\"` config to `scripts/convert-mse-frame.mjs` so the flood-fill cuts the right color \u2014 future Alpha-family frames are drop-in too.\\n\\n## Verification\\n`typecheck` \u2705 \u00b7 `lint` \u2705 0 \u00b7 `test:unit` \u2705 77/77 \u00b7 `build` \u2705\\nVerified **both** in the live preview **and** the Satori bake (preview == bake): Alpha Land as a land (no cost, rules+fl\"\n  },\n  {\n    \"id\": \"github-feedback-comment-01817475f5e68d83\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/18#issuecomment-4599241899\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/18#issuecomment-4599241899\\nTitle: \\nBody:\\n[vc]: #fFeAff88HHUwS45tUjKiode1/2u+b///abNaw0cZyqw=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-410bd40c701645a5", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301001, "scanner": "foundry_dataset", "fingerprint": "833da373896158e62a38727454d157281038b7e2873b0df80054afe986302be3", "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": "TOOTRJ/cardforge#15", "human_labels": ["deployment_env_gap", "security_auth_secret"], "issue_number": "15", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-18af6d23f76b63ba", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#15\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#15\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-6322e3cb319390f3\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/15\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/15\\nTitle: feat(frames): add M15 Snow + M15 Devoid\\nBody:\\nTwo more drop-in MSE frames. **Stacked on #14** (token) \u2014 both PRs touch `template-layout.ts` + `types/card.ts`, so this is based on the token branch to avoid a conflict. Merge #14 first; GitHub will retarget this to `main`.\\n\\n## What\\n- **m15snow** \u2014 Kaldheim/Coldsnap frosty silver frame (converted from `magic-m15-snow.mse-style`; flood-filled the black art window).\\n- **m15devoid** \u2014 Eldrazi washed-out colorless frame (`magic-m15-devoid.mse-style`; its art window was already alpha-cut, so 0% flood-fill).\\n\\nBoth share the **M15 geometry exactly** (same title/art/type/text regions + the reused M15 P/T plate), so each is a one-line clone profile (`{ ...M15, label }`) with a different frame PNG. The dark M15 ink reads unchanged on their light plates.\\n\\n## Verification\\n`typecheck` \u2705 \u00b7 `lint` \u2705 0 \u00b7 `test:unit` \u2705 77/77 \u00b7 `build` \u2705\\nVerified both as **creatures** in the live preview **and** the Satori bake (title/cost/type/rules/flavor/P-T/footer all land on the plates;\"\n  },\n  {\n    \"id\": \"github-feedback-comment-247b6c4eb1530ddc\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/15#issuecomment-4598995877\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/15#issuecomment-4598995877\\nTitle: \\nBody:\\n[vc]: #3i55oUfH1rnrPcBBTKxi24DGbAqT3s+sJCefVI4+NQ8=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVy\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-5827aa47cfd7cf19", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 301000, "scanner": "foundry_dataset", "fingerprint": "576e3edcc7f98c0c934808682ddf73c67d78463c85d5033a17e5f65501c510a9", "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": "TOOTRJ/cardforge#12", "human_labels": ["security_auth_secret"], "issue_number": "12", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-b8b2914105a60068", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#12\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#12\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'security_auth_secret': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-d80ad7703e5f3f4e\",\n    \"kind\": \"issue_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/issues/12\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: issue_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/issues/12\\nTitle: Security: private cards' storage objects are public-by-path\\nBody:\\n**Deferred from the 2026-06 audit cleanup.** Tracking so we don't forget.\\n\\n### Gap\\n`card-art` and `card-renders` are **public-read** Supabase Storage buckets (by design, so the gallery/OG/download paths can `<img src>` without signing). As a result, a **private** card's art image and baked render PNG are fetchable by anyone who constructs the path `{owner_id}/{card_id}.png`. The DB-level `visibility = private` does **not** propagate to storage.\\n\\nLow practical risk (paths require two UUIDs and bucket listing is disabled), but it's a real gap: \\\"private\\\" doesn't mean private at the object level.\\n\\n### Fix options\\n1. Move `card-art` + `card-renders` to **private buckets** and issue **signed URLs** (short TTL) wherever the app renders them: gallery tiles, dashboard, public card page, OG route, PNG/PDF download, profile pins. Public/unlisted cards can still use long-lived signed URLs or stay public; only private cards strictly need signing.\\n2. Keep b\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-b5eda9f2d656fbac\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: TOOTRJ/cardforge\nGraph label: source_backed_multi_signal_graph\nNodes: 16\nEdges: 24\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 5, \"artifact_supports_design_schema_api\": 2, \"artifact_supports_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 8, \"repo_has_source_bundle\"\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-3354b5b20f0dca32", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: TOOTRJ/cardforge"}, "properties": {"repobilityId": 300999, "scanner": "foundry_dataset", "fingerprint": "0f7634c47daa6253fc20c091de9463470e95bfd0b29318cd8c111a706dc90393", "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": "TOOTRJ/cardforge#11", "human_labels": ["deployment_env_gap", "test_ci_gap"], "issue_number": "11", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-5e81b87b4eb7c553", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#11\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: TOOTRJ/cardforge#11\nRepo: TOOTRJ/cardforge\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: 0\nLabels: {'test_ci_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-11bf87fe79c7ff2b\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/11\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/11\\nTitle: chore: audit quick-wins cleanup (loginAction, dead config, canonical, docs)\\nBody:\\nSmall, low-risk cleanups from the codebase audit \u2014 no behavior changes beyond the auth error message.\\n\\n## Changes\\n- **Security \u2014 `loginAction` anti-enumeration.** It was returning the raw Supabase error (`error.message`), which can surface `Email not confirmed` and reveal that an account exists. Now genericized to \\\"Invalid email or password\u2026\\\" with the real reason logged server-side \u2014 consistent with the deliberate generic handling already in `signupAction`.\\n- **Remove dead `accountMenu` config** from `lib/site-config.ts` \u2014 defined but never imported (`UserMenu` builds its own items; `dashboardNav` covers the rest).\\n- **SEO \u2014 homepage canonical.** `app/(marketing)/page.tsx` had no per-page `alternates.canonical`; added a self-canonical (other metadata still inherits the root).\\n- **Docs \u2014 `tests/README.md`** said e2e flows are `.fixme()`'d; they actually use `test.skip()` gated on `SUPABASE_E2E_USER_EMAIL` / `_PASSWORD`.\\n- **Accuracy\"\n  },\n  {\n    \"id\": \"github-feedback-comment-59078b331a62ce54\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/11#issuecomment-4598312845\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/11#issuecomment-4598312845\\nTitle: \\nBody:\\n[vc]: #3Qi8hlHR7ZH+XYJKuF0hQpdyFWV11+HTV9n25hI8oSw=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsLmNvbS9vcmR\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-assumption_checks-d8d28df916d769e7", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336747, "scanner": "foundry_dataset", "fingerprint": "fb0d2a8b484b73d4e12ec8d3b6b1a773c04fd1a9f6a8cb432aa22f280f838be9", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 2, "test_ci_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 3, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#9", "issue_number": "9", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-907718d2dd77ffc3", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#9\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#9\nRepo: TOOTRJ/cardforge\nIssue/PR number: 9\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-9126f2a8450f56e2", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336746, "scanner": "foundry_dataset", "fingerprint": "f1d5c1ff964c7e2f3bb024e9f1e1d0ae0354ec60696a2156dd3ff68e17cfde53", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 1, "test_ci_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#8", "issue_number": "8", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-73e40dbbcaeb75cb", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#8\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#8\nRepo: TOOTRJ/cardforge\nIssue/PR number: 8\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-2be9628443ec205d", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336745, "scanner": "foundry_dataset", "fingerprint": "43afe12626c995dd50c8ca20b38a02f4c26f6d3807faed06d7efcbea770f4dab", "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, "ui_workflow": 1, "ui_or_frontend": 3, "source_or_other": 4, "deployment_env_gap": 1, "verification_or_tests": 3, "mostly follows blueprint": 1, "claimed_resolved_unverified": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_unverified": 2, "claimed_resolved_with_verification_signal": 6}, "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": 8, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 8, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 16, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 28, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 8, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#72", "issue_number": "72", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-5375c04877313309", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 5, "ui_or_frontend": 15, "source_or_other": 20}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#72\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#72\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#72\nRepo: TOOTRJ/cardforge\nIssue/PR number: 72\nGraph consistency label: supported_by_verification_signal\nNodes: 28\nEdges: 58\nNode types: {'pr_file': 8, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_touches_file': 16, 'thread_touches_file': 8, 'issue_chain_touches_file': 8, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'source_or_other': 4, 'ui_or_frontend': 3, 'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'ui_workflow': 1, 'bug_fix': 1, 'human_reported_issue_then_fix_attempt': 1, 'claimed_resolved_unverified': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'claimed_resolved_unverified': 2}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-d8c44cfd3af21069", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336744, "scanner": "foundry_dataset", "fingerprint": "c36a4633660d5a10a7b278b755d51f1d0ea3567d1b1c2f834a0f6f8a39ae7e8b", "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, "commit_general": 1, "schema_or_data": 2, "ui_or_frontend": 6, "source_or_other": 3, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 75, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 13, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 24, "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": 13, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#71", "issue_number": "71", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-b525df743d8a74af", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"test_or_ci": 10, "schema_or_data": 10, "ui_or_frontend": 30, "source_or_other": 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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#71\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#71\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#71\nRepo: TOOTRJ/cardforge\nIssue/PR number: 71\nGraph consistency label: weak_supervision_needs_review\nNodes: 33\nEdges: 75\nNode types: {'pr_file': 13, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_touches_file': 24, 'thread_touches_file': 13, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 6, 'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'source_or_other': 3, 'schema_or_data': 2, 'test_or_ci': 2, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-5d839f1c9b67be86", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336743, "scanner": "foundry_dataset", "fingerprint": "9a53be695b6565c8427b475ab65f57b486279889565698b340141a17bc2e003c", "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": 3, "test_ci_gap": 1, "commit_general": 1, "ui_or_frontend": 12, "source_or_other": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 78, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 16, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "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": 16, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#67", "issue_number": "67", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-353c53a353f602da", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"test_or_ci": 15, "ui_or_frontend": 60, "source_or_other": 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: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#67\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#67\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#67\nRepo: TOOTRJ/cardforge\nIssue/PR number: 67\nGraph consistency label: weak_supervision_needs_review\nNodes: 36\nEdges: 78\nNode types: {'pr_file': 16, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_touches_file': 24, 'thread_touches_file': 16, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 12, 'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'test_or_ci': 3, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'source_or_other': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-590298ebcf8d0d44", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336742, "scanner": "foundry_dataset", "fingerprint": "a4facd96a16bcd0bcfca303f650e5732b1c27d7ef7569172328635a098715c23", "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, "commit_general": 1, "ui_or_frontend": 5, "source_or_other": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 8, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 8, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 16, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 28, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 8, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#65", "issue_number": "65", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-9c2d30a19005e189", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"test_or_ci": 10, "ui_or_frontend": 25, "source_or_other": 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: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#65\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#65\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#65\nRepo: TOOTRJ/cardforge\nIssue/PR number: 65\nGraph consistency label: weak_supervision_needs_review\nNodes: 28\nEdges: 58\nNode types: {'pr_file': 8, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_touches_file': 16, 'thread_touches_file': 8, 'issue_chain_touches_file': 8, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 5, 'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'test_or_ci': 2, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'source_or_other': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-c8e47cdcc76e2141", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336741, "scanner": "foundry_dataset", "fingerprint": "319ad0b9bc55f927f661f6cd1b6b5b933960d10525434071f959818c5d607b88", "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": 10, "deployment_env_gap": 1, "security_or_secrets": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "claimed_resolved_unverified": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_unverified": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 66, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 10, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 10, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 20, "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": 10, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#63", "issue_number": "63", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-301db6e58315625c", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"ui_or_frontend": 50}}, "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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#63\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#63\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#63\nRepo: TOOTRJ/cardforge\nIssue/PR number: 63\nGraph consistency label: supported_by_verification_signal\nNodes: 30\nEdges: 66\nNode types: {'pr_file': 10, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_touches_file': 20, 'thread_touches_file': 10, 'issue_chain_touches_file': 10, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 10, 'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'security_or_secrets': 1, 'human_reported_issue_then_fix_attempt': 1, 'claimed_resolved_unverified': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'claimed_resolved_unverified': 2}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-0e958ab23fb494e1", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336740, "scanner": "foundry_dataset", "fingerprint": "c358876756a08a9b5cbac314b89711ccdb9c8fe9093be8c715b3eaf2f9e7e00a", "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, "commit_general": 1, "ui_or_frontend": 9, "source_or_other": 1, "deployment_env_gap": 1, "dependency_or_build": 2, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 75, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 13, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 24, "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": 13, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#62", "issue_number": "62", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-d8205850cb73e35d", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"test_or_ci": 5, "ui_or_frontend": 45, "source_or_other": 5, "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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#62\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#62\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#62\nRepo: TOOTRJ/cardforge\nIssue/PR number: 62\nGraph consistency label: weak_supervision_needs_review\nNodes: 33\nEdges: 75\nNode types: {'pr_file': 13, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_touches_file': 24, 'thread_touches_file': 13, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 9, 'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'dependency_or_build': 2, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'source_or_other': 1, 'test_or_ci': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-7563ddbaa7f84856", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336739, "scanner": "foundry_dataset", "fingerprint": "5d8d288f143f5b91fa4be43851e3649d3e78c7d61697f73b1fe50f232081282d", "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, "commit_general": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#61", "issue_number": "61", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-9857d404ff8f7259", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#61\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#61\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#61\nRepo: TOOTRJ/cardforge\nIssue/PR number: 61\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-829509f2c6dc3e93", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336738, "scanner": "foundry_dataset", "fingerprint": "0ff7e820c973cb5cd9a6dbb1282ac6ed5ee20b964149d5f17808d3d4165b9da6", "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, "commit_general": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#60", "issue_number": "60", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-39cca1643d94682e", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#60\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#60\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#60\nRepo: TOOTRJ/cardforge\nIssue/PR number: 60\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-8d7053ec415bad9a", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336737, "scanner": "foundry_dataset", "fingerprint": "d81778153dac40454223e4ece5092cf234ddb2af91e84e037351097bb081ed5f", "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, "commit_general": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#59", "issue_number": "59", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-5e8dca203315f032", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#59\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#59\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#59\nRepo: TOOTRJ/cardforge\nIssue/PR number: 59\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-46c6a607a5fd0f01", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336736, "scanner": "foundry_dataset", "fingerprint": "40eab30aeeff6e6f0142ea925ea90de728e918b910d7a2fdfa30c021bcc46fe6", "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, "commit_general": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#58", "issue_number": "58", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-52b311bdc2b98ad0", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#58\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#58\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#58\nRepo: TOOTRJ/cardforge\nIssue/PR number: 58\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-2fd943fca013bc2b", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336735, "scanner": "foundry_dataset", "fingerprint": "c96f48bb49761769de85f363cd31683491cc2cb40caa60fa57580e5483636307", "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, "commit_general": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "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": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#57", "issue_number": "57", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-5f90945049b96840", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#57\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#57\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#57\nRepo: TOOTRJ/cardforge\nIssue/PR number: 57\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-ebc902666104801e", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336734, "scanner": "foundry_dataset", "fingerprint": "8b37e424782e9fb50a40471b1cdc8c3b1464040378042530d2754638afd6b347", "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_workflow": 1, "security_auth_secret": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "claimed_resolved_unverified": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_unverified": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#56", "issue_number": "56", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-6b472559c6294175", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#56\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#56\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#56\nRepo: TOOTRJ/cardforge\nIssue/PR number: 56\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'security_auth_secret': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'ui_workflow': 1, 'human_reported_issue_then_fix_attempt': 1, 'claimed_resolved_unverified': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'claimed_resolved_unverified': 2}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-0bc9681905bc75bc", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336733, "scanner": "foundry_dataset", "fingerprint": "a2b95596cfb2ef3577cbce6e453372023fe4fb4ac0533e560f65d9c50fee03c0", "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": {"data_schema": 1, "test_ci_gap": 1, "verification_or_tests": 4, "data_schema_persistence": 1, "mostly follows blueprint": 1, "claimed_resolved_unverified": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 2, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_unverified": 2, "claimed_resolved_with_verification_signal": 6}, "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": 22, "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": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#53", "issue_number": "53", "quality_tiers": {"high_confidence": 3, "assumption_check": 2, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-2dd73c8021adeefc", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#53\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#53\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#53\nRepo: TOOTRJ/cardforge\nIssue/PR number: 53\nGraph consistency label: supported_by_verification_signal\nNodes: 22\nEdges: 30\nNode types: {'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'blueprint_finding': 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': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'data_schema_persistence': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'data_schema': 1, 'human_reported_issue_then_fix_attempt': 1, 'claimed_resolved_unverified': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'claimed_resolved_unverified': 2}\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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-547f4277641988a3", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336732, "scanner": "foundry_dataset", "fingerprint": "a56433c03f2ffb4745b35f0ae30b300106d9a2228ce5d1e6c51759969544d350", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 2, "feature": 1, "test_ci_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_disagreement": 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": "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": {}, "synthetic": false, "edge_count": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#37", "issue_number": "37", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-c7976b33405bb7be", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#37\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#37\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#37\nRepo: TOOTRJ/cardforge\nIssue/PR number: 37\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'feature': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-78739663b6f20aaf", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336731, "scanner": "foundry_dataset", "fingerprint": "2c3309694df23f4b0a6afb88ed23c495a66ba9b94ee4bc4b1177c2c3ea4ed023", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 2, "test_ci_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 3, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#36", "issue_number": "36", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-ff3854e892bb7843", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#36\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#36\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#36\nRepo: TOOTRJ/cardforge\nIssue/PR number: 36\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-8cbcdf88424701cd", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336730, "scanner": "foundry_dataset", "fingerprint": "b3d2af2dc10e8c1022ca7da08ededf935eea3aa65b5712f5cd29328574309263", "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, "deployment_env_gap": 1, "verification_or_tests": 5, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "ambiguous_needs_more_evidence": 3, "blueprint_human_gap_disagreement": 1, "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": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#35", "issue_number": "35", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-167ae6ca38a6fea0", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#35\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#35\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#35\nRepo: TOOTRJ/cardforge\nIssue/PR number: 35\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'comment_has_related_commit_context': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-1142ec95afcdca8a", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336729, "scanner": "foundry_dataset", "fingerprint": "d269bad2c85c27e52c8639ab7be70bacd7afa200aa7b3f6b892ab7b9ded685e6", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 1, "test_ci_gap": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#34", "issue_number": "34", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-9f41e0a180c49bb5", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#34\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#34\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#34\nRepo: TOOTRJ/cardforge\nIssue/PR number: 34\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-83e1b906d5973e85", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336728, "scanner": "foundry_dataset", "fingerprint": "fb731cc061cd2f85b6765054d69a9e56abd97ac6b61e784d55d1e35e74f23227", "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, "deployment_env_gap": 1, "verification_or_tests": 5, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "ambiguous_needs_more_evidence": 3, "blueprint_human_gap_disagreement": 1, "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": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#33", "issue_number": "33", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-ada53e7161b507fc", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#33\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#33\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#33\nRepo: TOOTRJ/cardforge\nIssue/PR number: 33\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'comment_has_related_commit_context': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-fbd59aca318199fe", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336727, "scanner": "foundry_dataset", "fingerprint": "3e4af924aadafb1895e61960d4442f8f0ecfd9a0019aabfd8338fcd25fadba40", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 2, "test_ci_gap": 2, "deployment_env_gap": 1, "verification_or_tests": 9, "human_feedback_general": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "ambiguous_needs_more_evidence": 1, "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, "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": {"not_resolved_or_not_observed": 2, "ambiguous_needs_more_evidence": 2, "claimed_resolved_with_verification_signal": 8}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 49, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 4, "thread_has_comment": 4, "alignment_uses_comment": 2, "alignment_uses_finding": 2, "chain_has_link_quality": 8, "comment_aligns_finding": 2, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 4, "comment_chain_links_commit": 15, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 4}, "node_count": 34, "node_types": {"repo": 1, "commit": 11, "thread": 1, "comment": 4, "alignment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 8, "comment_chain": 4, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#32", "issue_number": "32", "quality_tiers": {"unresolved": 1, "assumption_check": 2, "weak_supervision": 5}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-d33a0881b44b2c6f", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#32\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#32\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#32\nRepo: TOOTRJ/cardforge\nIssue/PR number: 32\nGraph consistency label: supported_by_verification_signal\nNodes: 34\nEdges: 49\nNode types: {'commit': 11, 'link_quality': 8, 'comment': 4, 'comment_chain': 4, 'alignment': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 15, 'chain_has_link_quality': 8, 'thread_has_comment': 4, 'thread_has_comment_chain': 4, 'comment_has_chain': 4, 'issue_chain_has_comment_chain': 4, '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': 9, 'claimed_resolved_with_verification_signal': 4, 'test_ci_gap': 2, 'human_reported_issue_then_verified_fix_attempt': 2, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'issue_or_pull_request_thread': 1, 'deployment_env_gap': 1, 'human_feedback_general': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 8, 'not_resolved_or_not_observed': 2, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 5, '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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-29d0e4a170c7bc67", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 336726, "scanner": "foundry_dataset", "fingerprint": "4267e1a6a44a38b55e471dc90fe1d4ffb77e11c027396c0b363e74608445a4aa", "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, "deployment_env_gap": 1, "verification_or_tests": 5, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "ambiguous_needs_more_evidence": 3, "blueprint_human_gap_disagreement": 1, "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": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#11", "issue_number": "11", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-c41128b1fb3fb6ea", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#11\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#11\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#11\nRepo: TOOTRJ/cardforge\nIssue/PR number: 11\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'deployment_env_gap': 1, 'comment_has_related_commit_context': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-e5a80480b3462d55", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 328416, "scanner": "foundry_dataset", "fingerprint": "66b01f55cc79919c753362409521acaff02a7a5562131d9ad653819a0a072d50", "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": {"test_or_ci": 1, "data_schema": 1, "commit_general": 1, "schema_or_data": 1, "ui_or_frontend": 12, "deployment_env_gap": 1, "verification_or_tests": 3, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_disagreement": 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": 76, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 14, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 24, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 34, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 14, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#76", "issue_number": "76", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-f6f4b0709d040f2e", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 5, "schema_or_data": 5, "ui_or_frontend": 60}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#76\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#76\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#76\nRepo: TOOTRJ/cardforge\nIssue/PR number: 76\nGraph consistency label: supported_by_verification_signal\nNodes: 34\nEdges: 76\nNode types: {'pr_file': 14, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_touches_file': 24, 'thread_touches_file': 14, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 12, 'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'schema_or_data': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'commit_general': 1, 'data_schema': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-d74c1d4d1769858f", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 328415, "scanner": "foundry_dataset", "fingerprint": "fe1087fbab070b36b95110bab108cf1bccc13fe457f2aebd5eaff3977b15db7d", "category": "quality", "severity": "high", "confidence": 0.76, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Schema, UI, and API mismatch", "intent": "Assumption-check examples for data-path consistency across layers.", "labels": {"bug_fix": 1, "test_or_ci": 1, "api_or_backend": 1, "docs_or_claims": 21, "ui_or_frontend": 3, "source_or_other": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "data_schema_persistence": 1, "mostly follows blueprint": 1, "claimed_resolved_unverified": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"claimed_resolved_unverified": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 89, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 27, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 24, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 47, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 27, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#74", "issue_number": "74", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-47c3b17cf284df0c", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 5, "api_or_backend": 5, "docs_or_claims": 105, "ui_or_frontend": 15, "source_or_other": 5}}, "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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#74\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#74\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#74\nRepo: TOOTRJ/cardforge\nIssue/PR number: 74\nGraph consistency label: supported_by_verification_signal\nNodes: 47\nEdges: 89\nNode types: {'pr_file': 27, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 27, 'comment_chain_touches_file': 24, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'docs_or_claims': 21, 'verification_or_tests': 4, 'ui_or_frontend': 3, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'api_or_backend': 1, 'source_or_other': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'human_reported_issue_then_fix_attempt': 1, 'claimed_resolved_unverified': 1, 'blueprint_human_gap_disagreement': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'claimed_resolved_unverified': 2}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-f31a9d6f5917d0e5", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 328414, "scanner": "foundry_dataset", "fingerprint": "0ff99c96ec59e209adeddfd6c1c51434e8757abe1d43641e813ee8f9e1136eb0", "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": {"test_or_ci": 5, "schema_or_data": 1, "runtime_failure": 1, "source_or_other": 5, "verification_or_tests": 5, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "comment_has_related_commit_context": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"ambiguous_needs_more_evidence": 8}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 70, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 11, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 11, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 22, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 31, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 11, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#64", "issue_number": "64", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-84a7cba435eb99d4", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 25, "schema_or_data": 5, "source_or_other": 25}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: supported_by_high_confidence_link\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#64\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#64\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#64\nRepo: TOOTRJ/cardforge\nIssue/PR number: 64\nGraph consistency label: supported_by_high_confidence_link\nNodes: 31\nEdges: 70\nNode types: {'pr_file': 11, 'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_touches_file': 22, 'thread_touches_file': 11, 'issue_chain_touches_file': 11, 'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'source_or_other': 5, 'test_or_ci': 5, 'verification_or_tests': 5, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'runtime_failure': 1, 'data_schema_persistence': 1, 'schema_or_data': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-4de8979542480e7f", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 328413, "scanner": "foundry_dataset", "fingerprint": "ea69afb01004e01c37a5141cd99a22707d56f4b52e37cd3edf3aba0cd9111113", "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": {"data_schema": 1, "test_ci_gap": 1, "verification_or_tests": 4, "data_schema_persistence": 1, "mostly follows blueprint": 1, "claimed_resolved_unverified": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 2, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"claimed_resolved_unverified": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "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": 22, "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": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#53", "issue_number": "53", "quality_tiers": {"high_confidence": 3, "assumption_check": 2, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-fbcec617c660f0b4", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#53\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#53\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#53\nRepo: TOOTRJ/cardforge\nIssue/PR number: 53\nGraph consistency label: supported_by_verification_signal\nNodes: 22\nEdges: 30\nNode types: {'link_quality': 6, 'commit': 5, 'comment': 2, 'comment_chain': 2, 'alignment': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'blueprint_finding': 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': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_disagreement': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'data_schema_persistence': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'data_schema': 1, 'human_reported_issue_then_fix_attempt': 1, 'claimed_resolved_unverified': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'claimed_resolved_unverified': 2}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 2, '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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-0b7c73b470aa165d", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 328412, "scanner": "foundry_dataset", "fingerprint": "0f65563fffd3ccdf3f4e78513af1f08aa7622f1e2a8bbabadac0427841e1e9d4", "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": {"commit_general": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "comment_has_related_commit_context": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"ambiguous_needs_more_evidence": 8}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#52", "issue_number": "52", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-ccae5cb7bd884cfc", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#52\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#52\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#52\nRepo: TOOTRJ/cardforge\nIssue/PR number: 52\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-5fd80443c928d5a3", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 328411, "scanner": "foundry_dataset", "fingerprint": "4e0f2e0f9bae98fa45ea337c9b16867966f4d4a812920b37bb356dc1095e6eea", "category": "quality", "severity": "high", "confidence": 0.76, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Schema, UI, and API mismatch", "intent": "Assumption-check examples for data-path consistency across layers.", "labels": {"feature": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "comment_has_related_commit_context": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"ambiguous_needs_more_evidence": 8}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#48", "issue_number": "48", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-c85cb1706f40260f", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: supported_by_high_confidence_link\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#48\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#48\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#48\nRepo: TOOTRJ/cardforge\nIssue/PR number: 48\nGraph consistency label: supported_by_high_confidence_link\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'feature': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-9341102eb63ccb9f", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 328410, "scanner": "foundry_dataset", "fingerprint": "55f472cd33fd09f6f753343b5a6999b0db1c34a2852a167e86304f5053221513", "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": {"commit_general": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "comment_has_related_commit_context": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"ambiguous_needs_more_evidence": 8}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#47", "issue_number": "47", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-0f1902f902595445", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#47\nEvidence:\nGraph motif: Schema, UI, and API evidence do not line up\nMotif id: schema_ui_api_mismatch\nPolarity: bad\nTraining usage: assumption_check\nSeverity: high\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#47\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#47\nRepo: TOOTRJ/cardforge\nIssue/PR number: 47\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-c1a6de97381f9d7b", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 328409, "scanner": "foundry_dataset", "fingerprint": "8f8655e171ee94d562692631e8132cb70e2cba9daf3b9dfa65eed46d9de073ab", "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": {"commit_general": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "comment_has_related_commit_context": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"ambiguous_needs_more_evidence": 8}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#43", "issue_number": "43", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-fac7ab270da6939c", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: supported_by_high_confidence_link\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#43\nEvidence:\nGraph motif: Schema, UI, and API evidence do not line up\nMotif id: schema_ui_api_mismatch\nPolarity: bad\nTraining usage: assumption_check\nSeverity: high\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#43\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#43\nRepo: TOOTRJ/cardforge\nIssue/PR number: 43\nGraph consistency label: supported_by_high_confidence_link\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-3b6dcbf4e482cb13", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 328408, "scanner": "foundry_dataset", "fingerprint": "1c1b5ab3210c13768b9691c56b8af696c36ec93138db260f632ac4db9f12368d", "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": {"commit_general": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4, "blueprint_human_gap_disagreement": 1, "comment_has_related_commit_context": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"ambiguous_needs_more_evidence": 8}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#42", "issue_number": "42", "quality_tiers": {"assumption_check": 1, "weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-aa9ffe3a99ab9281", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#42\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#42\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#42\nRepo: TOOTRJ/cardforge\nIssue/PR number: 42\nGraph consistency label: weak_supervision_needs_review\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 4, 'comment_has_related_commit_context': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'weak_supervision': 4, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-99f5187a76e22910", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 328407, "scanner": "foundry_dataset", "fingerprint": "7771f4cc6f665e6b40023a487969e5efcfe9e3db0f501016fb29078bf4a44b4c", "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, "deployment_env_gap": 1, "verification_or_tests": 3, "data_schema_persistence": 1, "mostly follows blueprint": 1, "claimed_resolved_unverified": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"claimed_resolved_unverified": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#38", "issue_number": "38", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-8a3bd2735dd8f826", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#38\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#38\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#38\nRepo: TOOTRJ/cardforge\nIssue/PR number: 38\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'human_reported_issue_then_fix_attempt': 1, 'claimed_resolved_unverified': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'claimed_resolved_unverified': 2}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-b6f99ac413f7872b", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 328406, "scanner": "foundry_dataset", "fingerprint": "dd314c6145cd58aacc71fbd0020b7372052bab9dd9064b5ef77cbfd503e804a4", "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, "data_schema": 1, "deployment_env_gap": 1, "verification_or_tests": 2, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#3", "issue_number": "3", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-70e96b6da3db18d3", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#3\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#3\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#3\nRepo: TOOTRJ/cardforge\nIssue/PR number: 3\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'claimed_resolved_with_verification_signal': 3, 'bug_fix': 2, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'data_schema': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-d4440d487658d195", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 328405, "scanner": "foundry_dataset", "fingerprint": "dfa5474fe5955a3f7064078b9b58af8d4a5f108cdec83b71cf6687b991521a09", "category": "quality", "severity": "high", "confidence": 0.76, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Schema, UI, and API mismatch", "intent": "Assumption-check examples for data-path consistency across layers.", "labels": {"bug_fix": 1, "deployment_env_gap": 1, "verification_or_tests": 4, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 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": {"not_resolved_or_not_observed": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 25, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#22", "issue_number": "22", "quality_tiers": {"unresolved": 1, "assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-766154c8e6e06bc5", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#22\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#22\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#22\nRepo: TOOTRJ/cardforge\nIssue/PR number: 22\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 25\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-3753c2d1d081450c", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/schema_ui_api_mismatch", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: TOOTRJ/cardforge"}, "properties": {"repobilityId": 316562, "scanner": "foundry_dataset", "fingerprint": "88b3b3cac4dcb7d462db3b88eac2ff4e93043cc27b3b2dbcdcd623c828f0df49", "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": "TOOTRJ/cardforge#68", "human_labels": ["dependency_or_build", "deployment_env_gap", "mock_placeholder", "source_or_other", "ui_or_frontend"], "issue_number": "68", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.725, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-5dad9710aca412f2", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 5, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 2, "source_or_other": 1, "dependency_or_build": 2}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: bad_chains\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#68\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#68\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 5\nLabels: {'mock_placeholder': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'source_or_other': 1, 'ui_or_frontend': 2, 'dependency_or_build': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-0124818e389fe488\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"mock_placeholder\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/68\",\n    \"text\": \"GitHub feedback: mock_placeholder\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/68\\nTitle: feat(analytics): Google Analytics 4 (env-gated)\\nBody:\\n## Summary\\nGA4 via `@next/third-parties` in the root layout, **rendered only when `NEXT_PUBLIC_GA_MEASUREMENT_ID` is set** \u2014 local dev, preview deploys, and the e2e server stay analytics-free by default. Page views track automatically on App Router navigations.\\n\\nThe privacy policy's cookies section explicitly promised an update if analytics ever arrived \u2014 it now discloses GA4 (the `_ga` cookies, what's shared with Google, what is *not* \u2014 no email/card content/account data \u2014 and the opt-out link), with the last-updated date bumped.\\n\\n## Activation (one manual step)\\nCreate the GA4 property in your Google Analytics account, then set `NEXT_PUBLIC_GA_MEASUREMENT_ID=G-XXXXXXXXXX` in the Vercel project's production env and redeploy. Until then, nothing loads.\\n\\n## Verification\\n- Booted with a dummy ID: gtag script + measurement ID present on the page \u2705\\n- Without the env (e2e server): conditional renders nothing \u2014 full suite green, including axe scans \u2705\\n- vitest 1\"\n  },\n  {\n    \"id\": \"github-feedback-comment-13dbf877ae1527da\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/68#issuecomment-4689332365\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/68#issuecomment-4689332365\\nTitle: \\nBody:\\n[vc]: #jLwnYWNHJjNX6ZPoknVvDxyl3vhIR9+aQMTTyxMXp2s=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmF\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-bad_chains-4394dbac8fc804f5", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: TOOTRJ/cardforge"}, "properties": {"repobilityId": 316561, "scanner": "foundry_dataset", "fingerprint": "9fb11e945a13a7dedca2d922dc38418dc848f1e2c598304ee9ba162cd83f2a33", "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": "TOOTRJ/cardforge#6", "human_labels": ["deployment_env_gap", "mock_placeholder"], "issue_number": "6", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-82b20d0dfa0662f4", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: bad_chains\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#6\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#6\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'mock_placeholder': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-1db9c5c46c98dff9\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"mock_placeholder\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/6\",\n    \"text\": \"GitHub feedback: mock_placeholder\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/6\\nTitle: feat(gallery): add 7-day trending rail to home + gallery\\nBody:\\n## Summary\\n- New \\\"Top trending cards\\\" section on the home page and above the filters on `/gallery`, ranking public cards by a 7-day windowed engagement score instead of raw recency or total likes.\\n- Score = `3\u00b7likes_7d + 2\u00b7comments_7d + 4\u00b7remixes_7d + 5 (if created within last 3d)`. Self-engagement (owner liking/commenting/remixing their own card) is filtered out. Tiebreakers: total likes desc \u2192 `created_at` desc.\\n- Home page keeps the existing placeholder cards as a fallback when Supabase is unconfigured or the DB returns zero trending rows, so the layout stays intact during early adoption.\\n\\n## How it works\\n- `lib/cards/trending.ts` \u2014 pure scoring + sort, fully unit-testable with no Supabase coupling.\\n- `lib/cards/queries.ts` adds `listTrendingCards()`, which fetches the 500 most-recently-updated public cards as a candidate pool and runs four parallel aggregations (all-time likes, 7-day likes, 7-day comments, 7-day remix children) before scoring\"\n  },\n  {\n    \"id\": \"github-feedback-comment-0d013b0dea7a421c\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/6#issuecomment-4524051431\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/6#issuecomment-4524051431\\nTitle: \\nBody:\\n[vc]: #TIwhqCKgelI4myEziD7C5r2pkAm0LD+pX+vOSlSU3yY=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsLmNvbS9vcmRlcm9md\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-bad_chains-abc5733ffc039797", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: TOOTRJ/cardforge"}, "properties": {"repobilityId": 316560, "scanner": "foundry_dataset", "fingerprint": "be03e1ba006df06aba33fb9334f35abe00c1631bbc1f5ebda81b711d9dce7a82", "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": "TOOTRJ/cardforge#5", "human_labels": ["deployment_env_gap", "mock_placeholder"], "issue_number": "5", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-071f57a4879f1cb7", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: bad_chains\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#5\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#5\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'mock_placeholder': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-692e091a77f4c5bf\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"mock_placeholder\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/5\",\n    \"text\": \"GitHub feedback: mock_placeholder\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/5\\nTitle: feat(cards): frame compositor + click-to-add mana cost picker\\nBody:\\n> Builds on [#4](https://github.com/TOOTRJ/cardforge/pull/4) (mana + keyrune fonts) \u2014 merge that first, then this lands cleanly on `main`.\\n\\n## Summary\\n\\nTwo features that take the editor one big step closer to feeling like a real MTG card editor:\\n\\n1. **Layered frame compositor.** Cards now have an actual frame PNG behind every section. Color identity drives the frame's color, and the same PNG renders identically in the editor preview and the baked PNG.\\n2. **Click-to-add mana cost picker.** Replaces the `{2}{R}{R}` text input with a grid of colored pip buttons. Click a pip to append the token; the generic-mana stepper appends `{N}`; backspace removes one token; clear wipes the cost.\\n\\n## Visuals\\n\\n| Editor: cost picker | Editor: card preview with frame |\\n|---|---|\\n| 6 colored pips (WUBRGC) + 4 specials (X, T, S, E) + generic-mana stepper, with a live glyph preview row at the top and backspace/clear controls. | Bottom-most z-index is the frame PN\"\n  },\n  {\n    \"id\": \"github-feedback-comment-ef383e1f674ba34c\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/5#issuecomment-4484579010\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/5#issuecomment-4484579010\\nTitle: \\nBody:\\n[vc]: #FLwmC7O9dYULayLktV1fQMmlrBCbxNHg/m9kMofRk48=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsLmNvbS9vcmRlc\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-bad_chains-5dc9a749e2af706a", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: TOOTRJ/cardforge"}, "properties": {"repobilityId": 316559, "scanner": "foundry_dataset", "fingerprint": "bb5ce293e37b47341a7080d014eb92a1d1eae39aa792f289345fac75daadb6d7", "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": "TOOTRJ/cardforge#14", "human_labels": ["mock_placeholder", "security_auth_secret"], "issue_number": "14", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-a6fd9a630dc6e777", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: bad_chains\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#14\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#14\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'mock_placeholder': 1, 'security_auth_secret': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-71fc591c1d3b8e30\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"mock_placeholder\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/14\",\n    \"text\": \"GitHub feedback: mock_placeholder\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/14\\nTitle: feat(frames): add the M15 Token frame\\nBody:\\nFifth MSE frame \u2014 **M15 Token**, the art-forward token frame. Continues the \\\"add more frames\\\" track on top of the unified rendering schema.\\n\\n## What\\n- Converted `magic-m15-token.mse-style` \u2192 `public/frames/m15token/{w,u,b,r,g,c,m}.png` with the existing `scripts/convert-mse-frame.mjs` (flood-fill cut the arched art window to transparent \u2014 55% of the card, vs 37% for the cost frames; tokens have big art).\\n- One profile entry in `template-layout.ts` + the enum value/label. Token specifics: dark title bar (centered, **light** name, **no cost**), large arched art window, centered cream type pill, P/T over the art (no plate), and token abilities on a dark scrim over the lower art.\\n\\n## Two small reusable additions (preview + bake, from the shared profile)\\n- **`hideCost` flag** \u2014 tokens/emblems have no mana cost and no cost area on the frame.\\n- **Bands honor `align`** \u2014 `\\\"center\\\"`/`\\\"end\\\"` align the single element, so the token's centered title/type center instead of spre\"\n  },\n  {\n    \"id\": \"github-feedback-comment-d9335b857d081677\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/14#issuecomment-4598903999\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/14#issuecomment-4598903999\\nTitle: \\nBody:\\n[vc]: #QEsl2SCYAWMBeiuSorzmjFHbOSAHtvOGfjX9DGW6hnQ=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsL\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-bad_chains-943c089e0d723bb1", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: TOOTRJ/cardforge"}, "properties": {"repobilityId": 316558, "scanner": "foundry_dataset", "fingerprint": "b0a8ddb8d92d2584b821295fbdf153def071f412048f4ef767cc813a6c7a2ca7", "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": "TOOTRJ/cardforge#13", "human_labels": ["deployment_env_gap", "mock_placeholder"], "issue_number": "13", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-167fee09750d4499", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: bad_chains\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#13\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#13\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'mock_placeholder': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-d7f941eb7fe896a4\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"mock_placeholder\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/13\",\n    \"text\": \"GitHub feedback: mock_placeholder\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/13\\nTitle: chore: smaller audit cleanups (dead params, dead schema, dashboard active nav)\\nBody:\\nThe \\\"smaller cleanups\\\" batch from the audit. Mostly dead-code removal (net \u2212112 lines) plus one small UX consistency fix.\\n\\n## Changes\\n- **Random-card steering \u2014 removed.** `/api/ai/random-card` and `generateRandomCard` accepted `rarity`/`color`/`cardType`/`concept` seeds, but the \\\"Random card\\\" button only ever POSTs `{}` (it's the \\\"surprise me\\\" path). Directed/concept generation already exists via the AI assistant's **Generate from concept**. Dropped the params, the request-body parsing, and the now-unused imports \u2014 the endpoint is a clean random generator.\\n- **`mana_value` / `layout` \u2014 removed.** These schema fields (plus `cardManaValueSchema`, `cardLayoutSchema`, `CARD_LAYOUT_VALUES`) were validated then dropped by the card actions and referenced nowhere else. Removed, consistent with the earlier `oracle_text` removal. (The DB columns + their CHECK constraints are untouched; re-addable if a Scryfall-parity feature ever ne\"\n  },\n  {\n    \"id\": \"github-feedback-comment-7b4db0ff3c78cd8e\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/13#issuecomment-4598723125\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/13#issuecomment-4598723125\\nTitle: \\nBody:\\n[vc]: #1uw+lL0UrPyU+/cNZeFB9YZPCJf23OPO1d6uVPjq3iA=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsLmNvbS9vcmR\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-bad_chains-3e225acce806d74f", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: TOOTRJ/cardforge"}, "properties": {"repobilityId": 316557, "scanner": "foundry_dataset", "fingerprint": "df60c1174168834702187e3fe31b191cbea231768f3f83199cf2e2a852478176", "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": "TOOTRJ/cardforge#10", "human_labels": ["deployment_env_gap", "mock_placeholder"], "issue_number": "10", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.65, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-b077fd170890cf5f", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "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": 2}, "text": "Comment chain pattern product: bad_chains\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#10\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_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#10\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'mock_placeholder': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-56cb8ca8a251480e\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"mock_placeholder\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/10\",\n    \"text\": \"GitHub feedback: mock_placeholder\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/10\\nTitle: Rebuild card rendering on coordinate-driven MSE frames + audit fixes\\nBody:\\n## Why\\n\\nThe painted frames looked off because card content was positioned two incompatible ways: art/P/T/loyalty were pinned to measured coordinates, but title/type/rules were laid out by **CSS flex-flow** \u2014 an approximation that drifted off the painted plates and that the Satori bake re-implemented differently, so **the generated PNG never matched the editor preview**. This PR rebuilds rendering on one source of truth and clears the highest-value audit findings.\\n\\n## Frame rendering overhaul\\n\\n- **One coordinate-driven schema** per frame (`lib/cards/template-layout.ts`): every region is a card-relative `Rect` with card-width-relative font sizes. Both the live preview and the Satori bake read it, so **preview == exported PNG by construction**. Deleted the dual flex-flow path.\\n- **All-in on MSE frames**: removed the in-house `regular` placeholder; `m15` is the default and legacy `regular` rows normalize to it.\\n- **New M15 Land frame** (\"\n  },\n  {\n    \"id\": \"github-feedback-comment-774089ca78acd97c\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/10#issuecomment-4598196890\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/10#issuecomment-4598196890\\nTitle: \\nBody:\\n[vc]: #nv9fz2Q6dJ0fWgjCgHRkV0xkGo6P4VTgqA7iIkl8l54=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsLmNvbS9vcmRlc\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-bad_chains-c9faf40dfa199c6a", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: TOOTRJ/cardforge"}, "properties": {"repobilityId": 316556, "scanner": "foundry_dataset", "fingerprint": "19b79fbee558853b5efc797789972213d5aff6baac1068d1f5a5cb01428a89cc", "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": "TOOTRJ/cardforge#1", "human_labels": ["agent_instruction_gap", "deployment_env_gap"], "issue_number": "1", "thread_label": "thread_has_human_issue_without_fix_context", "outcome_label": "not_resolved_or_not_observed", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-a021511dbd53a2ae", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 5, "routes_api": 2}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 8, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: bad_chains\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#1\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_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_unresolved, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: TOOTRJ/cardforge#1\nRepo: TOOTRJ/cardforge\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 2\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'agent_instruction_gap': 1, 'deployment_env_gap': 1}\nPolarities: {'bad': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-85fb72b58f1635eb\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/1\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: TOOTRJ/cardforge\\nAuthor: RedJester14 (User)\\nURL: https://github.com/TOOTRJ/cardforge/pull/1\\nTitle: Claude/stupefied curie 3a7d3e\\nBody:\\n\"\n  },\n  {\n    \"id\": \"github-feedback-comment-96d5637ae4e247a7\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/TOOTRJ/cardforge/pull/1#issuecomment-4464828149\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: issue_comment\\nRepo: TOOTRJ/cardforge\\nAuthor: vercel[bot] (Bot)\\nURL: https://github.com/TOOTRJ/cardforge/pull/1#issuecomment-4464828149\\nTitle: \\nBody:\\n[vc]: #76pad3y2eoJrBhpZQbKXTl1n4lypZdEuSWp/X+MH7XI=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJjYXJkZm9yZ2UiLCJwcm9qZWN0SWQiOiJwcmpfSnZQenFpaUlabHZTeW9sZmFSYVRybmNvTlpBVyIsImxpdmVGZWVkYmFjayI6eyJyZXNvbHZlZCI6MCwidW5yZXNvbHZlZCI6MCwidG90YWwiOjAsImxpbmsiOiJjYXJkZm9yZ2UtZ2l0LWNsYXVkZS1zdHVwZWZpZWQtY3VyaWUtM2E3ZDNlLW9yZGVyb2Z0aGVyZWRqZXN0ZXIudmVyY2VsLmFwcCJ9LCJpbnNwZWN0b3JVcmwiOiJodHRwczovL3ZlcmNlbC5jb20vb3JkZXJvZnRoZXJlZGplc3Rlci9jYXJkZm9yZ2UvMjN4d3ZBUHc0UEVFdnMzdkhyRnllWWp1d280OSIsInByZXZpZXdVcmwiOiJjYXJkZm9yZ2UtZ2l0LWNsYXVkZS1zdHVwZWZpZWQtY3VyaWUtM2E3ZDNlLW9yZGVyb2Z0aGVyZWRqZXN0ZXIudmVyY2VsLmFwcCIsIm5leHRDb21taXRTdGF0dXMiOiJERVBMT1lFRCJ9XX0=\\nThe latest updates on your projects. Learn more about [Vercel for GitHub](https://vercel.link/github-learn-more).\\n\\n| Project | Deployment | Actions | Updated (UTC) |\\n| :--- | :----- | :------ | :------ |\\n| [cardforge](https://vercel.com/orderoftheredjester/cardforge) | ![Ready](https://vercel.com/static/status/re\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-80d869705edaef8b\", \"evidence-chain-comment_to_commit-98a083d39880894e\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: TOOTRJ/cardforge\nGraph\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "comment-chain-pattern-bad_chains-83fba65de9c45c38", "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": "TOOTRJ/cardforge", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_auth_guardrail_gap", "level": "error", "message": {"text": "Foundry mined security auth guardrail gaps: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332222, "scanner": "foundry_dataset", "fingerprint": "6a535fbd883cb287c9dbdb9844694811ccfff2f5a4054edee7f02092f126d18d", "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, "commit_general": 1, "ui_or_frontend": 1, "deployment_env_gap": 1, "security_or_secrets": 2, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "comment_has_related_commit_context": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6, "ambiguous_needs_more_evidence": 2}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 1, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 6, "comment_chain_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 18, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "pr_file": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#69", "issue_number": "69", "quality_tiers": {"weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-98414bf57fcb227a", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"ui_or_frontend": 5}}, "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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#69\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#69\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#69\nRepo: TOOTRJ/cardforge\nIssue/PR number: 69\nGraph consistency label: weak_supervision_needs_review\nNodes: 18\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'pr_file': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 4, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'comment_chain_touches_file': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'thread_touches_file': 1, 'thread_has_issue_chain': 1, 'issue_chain_touches_file': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'claimed_resolved_unverified': 3, 'bug_fix': 2, 'security_or_secrets': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'ui_or_frontend': 1, 'human_reported_issue_then_fix_attempt': 1, 'commit_general': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 4}\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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-94d41049a497a85b", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332221, "scanner": "foundry_dataset", "fingerprint": "abec6488b98c3a3a70c823b082883a57bb8a64af105dbe2c86c968d8f6ac8d4a", "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": {"test_ci_gap": 1, "ui_workflow": 1, "security_auth_secret": 1, "verification_or_tests": 4, "mostly follows blueprint": 1, "claimed_resolved_unverified": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 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": {"claimed_resolved_unverified": 2, "claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "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": 20, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#56", "issue_number": "56", "quality_tiers": {"high_confidence": 3, "assumption_check": 1, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-6dc433c1dae49daa", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#56\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#56\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#56\nRepo: TOOTRJ/cardforge\nIssue/PR number: 56\nGraph consistency label: supported_by_verification_signal\nNodes: 20\nEdges: 26\nNode types: {'commit': 5, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'comment_chain_links_commit': 6, 'chain_has_link_quality': 5, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'verification_or_tests': 4, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'security_auth_secret': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'ui_workflow': 1, 'human_reported_issue_then_fix_attempt': 1, 'claimed_resolved_unverified': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6, 'claimed_resolved_unverified': 2}\nQuality tiers: {'high_confidence': 3, 'weak_supervision': 1, 'assumption_check': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-e4f1b91632b14ecc", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332220, "scanner": "foundry_dataset", "fingerprint": "8ee8657561858df55b76ad8b568eab6cc8d3bc640fded7c94d4e6d9b58a6cb94", "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, "commit_general": 1, "deployment_env_gap": 1, "dependency_or_build": 1, "security_or_secrets": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "comment_has_related_commit_context": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6, "ambiguous_needs_more_evidence": 2}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 22, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "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": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#55", "issue_number": "55", "quality_tiers": {"weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-3dbf3a242c452e05", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#55\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#55\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#55\nRepo: TOOTRJ/cardforge\nIssue/PR number: 55\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 22\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 6, '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: {'claimed_resolved_unverified': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'commit_general': 1, 'dependency_or_build': 1, 'security_or_secrets': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 4}\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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-5f5bf0e8987397d2", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332219, "scanner": "foundry_dataset", "fingerprint": "d95fea95525cd60b1dd267a6ccc37cabcb63fbd2e81212e229a9b0f214f0e921", "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": 3, "ui_workflow": 1, "deployment_env_gap": 1, "security_or_secrets": 1, "security_auth_secret": 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": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 8}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 22, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "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": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#51", "issue_number": "51", "quality_tiers": {"high_confidence": 3, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-435b762b98e45867", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: supported_by_high_confidence_link\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#51\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#51\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#51\nRepo: TOOTRJ/cardforge\nIssue/PR number: 51\nGraph consistency label: supported_by_high_confidence_link\nNodes: 17\nEdges: 22\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 6, '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: {'claimed_resolved_unverified': 4, 'bug_fix': 3, 'human_reported_issue_then_fix_attempt': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'ui_workflow': 1, 'security_or_secrets': 1}\nOutcomes: {'claimed_resolved_unverified': 8}\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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-f81ff7dbd43d624d", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332218, "scanner": "foundry_dataset", "fingerprint": "a34b5c7a12839d5af81b0a2ab8aec3adbd1f0797fc34874057efda563f22a62f", "category": "auth", "severity": "critical", "confidence": 0.78, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Security/auth changes without enough guardrails", "intent": "Assumption-check security/auth examples requiring stronger tests or CI.", "labels": {"bug_fix": 4, "deployment_env_gap": 1, "security_or_secrets": 1, "security_auth_secret": 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": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 8}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 22, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "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": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#50", "issue_number": "50", "quality_tiers": {"high_confidence": 3, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-5b2963f102c3f644", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: supported_by_high_confidence_link\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#50\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#50\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#50\nRepo: TOOTRJ/cardforge\nIssue/PR number: 50\nGraph consistency label: supported_by_high_confidence_link\nNodes: 17\nEdges: 22\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 6, '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: {'bug_fix': 4, 'claimed_resolved_unverified': 4, 'human_reported_issue_then_fix_attempt': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'security_or_secrets': 1}\nOutcomes: {'claimed_resolved_unverified': 8}\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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-df12470572202630", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332217, "scanner": "foundry_dataset", "fingerprint": "cc58135d4004a6e158ebaa144b50275b848ee8fdedb3b1a5f6646e761214514e", "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": 3, "deployment_env_gap": 1, "security_or_secrets": 2, "security_auth_secret": 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": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 8}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 22, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "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": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#49", "issue_number": "49", "quality_tiers": {"high_confidence": 3, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-219c239abfa80fde", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: supported_by_high_confidence_link\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#49\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#49\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#49\nRepo: TOOTRJ/cardforge\nIssue/PR number: 49\nGraph consistency label: supported_by_high_confidence_link\nNodes: 17\nEdges: 22\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 6, '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: {'claimed_resolved_unverified': 4, 'bug_fix': 3, 'human_reported_issue_then_fix_attempt': 2, 'security_or_secrets': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1}\nOutcomes: {'claimed_resolved_unverified': 8}\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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-2c5d42df7cd2714e", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332216, "scanner": "foundry_dataset", "fingerprint": "d6395ca71b768cd55123920c523a02b82d4694dd815d0d69328b791856a082bb", "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, "commit_general": 1, "deployment_env_gap": 1, "security_or_secrets": 2, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "comment_has_related_commit_context": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6, "ambiguous_needs_more_evidence": 2}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 22, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "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": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#46", "issue_number": "46", "quality_tiers": {"weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-7f86f24507d575f4", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#46\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#46\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#46\nRepo: TOOTRJ/cardforge\nIssue/PR number: 46\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 22\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 6, '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: {'claimed_resolved_unverified': 3, 'bug_fix': 2, 'security_or_secrets': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'commit_general': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 4}\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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-55f2e3c979f675ef", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332215, "scanner": "foundry_dataset", "fingerprint": "8cf7ff27856814971f96a46562cd706c77f42de464e286b60914101457a0acb5", "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": 3, "commit_general": 1, "deployment_env_gap": 1, "security_auth_secret": 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": 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": 23, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 7, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#45", "issue_number": "45", "quality_tiers": {"high_confidence": 3, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-1793b3a158ed01cc", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: supported_by_verification_signal\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#45\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#45\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#45\nRepo: TOOTRJ/cardforge\nIssue/PR number: 45\nGraph consistency label: supported_by_verification_signal\nNodes: 17\nEdges: 23\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 7, '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: {'bug_fix': 3, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'verification_or_tests': 1, 'commit_general': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-0c0e0f9e952a5b52", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332214, "scanner": "foundry_dataset", "fingerprint": "9b4ac19f4516caa888d77820528f5f6721f10cb2a4d6b8a054736fded6095cc7", "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": 3, "commit_general": 1, "deployment_env_gap": 1, "security_or_secrets": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "comment_has_related_commit_context": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6, "ambiguous_needs_more_evidence": 2}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 22, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "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": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#44", "issue_number": "44", "quality_tiers": {"weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-3f6a2418b237ddf1", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#44\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#44\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#44\nRepo: TOOTRJ/cardforge\nIssue/PR number: 44\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 22\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 6, '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: {'bug_fix': 3, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'commit_general': 1, 'security_or_secrets': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 4}\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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-05dc8f66421a5f55", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332213, "scanner": "foundry_dataset", "fingerprint": "8be3a4184e9824a540dce9caf0d98cf560dae84fe3b43a6317b877bb84b9440b", "category": "auth", "severity": "critical", "confidence": 0.78, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Security/auth changes without enough guardrails", "intent": "Assumption-check security/auth examples requiring stronger tests or CI.", "labels": {"bug_fix": 4, "commit_general": 1, "deployment_env_gap": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "comment_has_related_commit_context": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6, "ambiguous_needs_more_evidence": 2}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 22, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "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": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#41", "issue_number": "41", "quality_tiers": {"high_confidence": 3, "weak_supervision": 1}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-8c64fadea45efb6a", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: supported_by_high_confidence_link\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#41\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#41\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#41\nRepo: TOOTRJ/cardforge\nIssue/PR number: 41\nGraph consistency label: supported_by_high_confidence_link\nNodes: 17\nEdges: 22\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 6, '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: {'bug_fix': 4, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'commit_general': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1}\nOutcomes: {'claimed_resolved_unverified': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-b1e6ce28a8cd3a34", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332212, "scanner": "foundry_dataset", "fingerprint": "4bff9e69e4d84549e3e07add61b966cd1903b28530da06851f779298615440ea", "category": "auth", "severity": "critical", "confidence": 0.78, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Security/auth changes without enough guardrails", "intent": "Assumption-check security/auth examples requiring stronger tests or CI.", "labels": {"bug_fix": 4, "ui_workflow": 1, "commit_general": 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": 33, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 3, "thread_has_comment": 3, "chain_has_link_quality": 5, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 3, "comment_chain_links_commit": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 3}, "node_count": 21, "node_types": {"repo": 1, "commit": 6, "thread": 1, "comment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 3}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#40", "issue_number": "40", "quality_tiers": {"weak_supervision": 5}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-4e73cc65368989f4", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#40\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#40\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#40\nRepo: TOOTRJ/cardforge\nIssue/PR number: 40\nGraph consistency label: weak_supervision_needs_review\nNodes: 21\nEdges: 33\nNode types: {'commit': 6, 'link_quality': 5, 'comment': 3, 'comment_chain': 3, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 12, '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: {'claimed_resolved_unverified': 5, 'bug_fix': 4, '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_workflow': 1, 'commit_general': 1}\nOutcomes: {'claimed_resolved_unverified': 10}\nQuality tiers: {'weak_supervision': 5}\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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-f84e753186afc851", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332211, "scanner": "foundry_dataset", "fingerprint": "b8295c5bfe1f5dd6d811a713803822e6bce97ee81fb585e5c2eb56d0e2e284ba", "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": 3, "commit_general": 1, "deployment_env_gap": 1, "security_or_secrets": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "comment_has_related_commit_context": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6, "ambiguous_needs_more_evidence": 2}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 22, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "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": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#39", "issue_number": "39", "quality_tiers": {"weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-8d700b9c49a36cfc", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#39\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#39\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#39\nRepo: TOOTRJ/cardforge\nIssue/PR number: 39\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 22\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 6, '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: {'bug_fix': 3, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'commit_general': 1, 'security_or_secrets': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 4}\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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-7bd9e0d4ff067d1b", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332210, "scanner": "foundry_dataset", "fingerprint": "d1d5dddeb9b94f8d8c44528584b326810194b70ab3782319d1f1f740b4c2ccaa", "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": 3, "deployment_env_gap": 1, "dependency_or_build": 1, "security_or_secrets": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#27", "issue_number": "27", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-d45ff28efce24950", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#27\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#27\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#27\nRepo: TOOTRJ/cardforge\nIssue/PR number: 27\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 3, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'dependency_or_build': 1, 'security_or_secrets': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-fb8f24786e1994f7", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332209, "scanner": "foundry_dataset", "fingerprint": "772d02dbefc6e4e56df3069c39694e8627bafaece7c2fb6fa6df7ea6ea218086", "category": "auth", "severity": "critical", "confidence": 0.78, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Security/auth changes without enough guardrails", "intent": "Assumption-check security/auth examples requiring stronger tests or CI.", "labels": {"bug_fix": 4, "deployment_env_gap": 1, "security_or_secrets": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#26", "issue_number": "26", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-007b88c224342074", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#26\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#26\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#26\nRepo: TOOTRJ/cardforge\nIssue/PR number: 26\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 4, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'security_or_secrets': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-d8d101538a4b0bc1", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332208, "scanner": "foundry_dataset", "fingerprint": "4684b35d656aea707061ef06891a908b9c19105797d51b160bbee8b323ddf6b3", "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": 3, "deployment_env_gap": 1, "dependency_or_build": 1, "security_or_secrets": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#24", "issue_number": "24", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-ed678e8e23d01e30", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#24\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#24\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#24\nRepo: TOOTRJ/cardforge\nIssue/PR number: 24\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 3, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'dependency_or_build': 1, 'security_or_secrets': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-f73dae412a6c4e45", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332207, "scanner": "foundry_dataset", "fingerprint": "aa96759441f9fab93dc1cf2e52cabd6f8092b5efba31ceaa6b6d1792e62fcfa0", "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": 3, "deployment_env_gap": 1, "dependency_or_build": 1, "security_or_secrets": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#23", "issue_number": "23", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-3f453a55d3f3fa9d", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#23\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#23\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#23\nRepo: TOOTRJ/cardforge\nIssue/PR number: 23\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 3, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'security_or_secrets': 1, 'dependency_or_build': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-eb690ecde9030f31", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332206, "scanner": "foundry_dataset", "fingerprint": "17f386384b8304ce4ec401e94c2844f8bbda32a49b60daacd5d0b0433e814a62", "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": 3, "deployment_env_gap": 1, "security_or_secrets": 2, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#20", "issue_number": "20", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-ccd751893c7e505c", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#20\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#20\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#20\nRepo: TOOTRJ/cardforge\nIssue/PR number: 20\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 3, 'claimed_resolved_unverified': 3, 'security_or_secrets': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-09420aa7aaf552ca", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332205, "scanner": "foundry_dataset", "fingerprint": "6cc0a704e2523c350ee3f5afeb2e67b979e22b1b809aea7e712d709322d8d7c2", "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": 3, "deployment_env_gap": 1, "dependency_or_build": 1, "security_or_secrets": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#18", "issue_number": "18", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-1167e86b256a8df0", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#18\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#18\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#18\nRepo: TOOTRJ/cardforge\nIssue/PR number: 18\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 3, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'dependency_or_build': 1, 'security_or_secrets': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-9849d94e30bc0b28", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332204, "scanner": "foundry_dataset", "fingerprint": "49417517126a3e01d25a216c1e1ca14fb636eb4a9c9bacad8c470f035d875e87", "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": 3, "deployment_env_gap": 1, "dependency_or_build": 1, "security_or_secrets": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#15", "issue_number": "15", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-99862bc3ca97513e", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#15\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#15\nRepo: TOOTRJ/cardforge\nIssue/PR number: 15\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 3, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'dependency_or_build': 1, 'security_or_secrets': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-f2922291aefcc571", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332203, "scanner": "foundry_dataset", "fingerprint": "633a07492fe48a1359f7c72739a578647a61a2a5c84f1fcfc45fb720ea3de243", "category": "auth", "severity": "critical", "confidence": 0.78, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Security/auth changes without enough guardrails", "intent": "Assumption-check security/auth examples requiring stronger tests or CI.", "labels": {"bug_fix": 5, "mock_placeholder": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#14", "issue_number": "14", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-d3986a34641de73d", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#14\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#14\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#14\nRepo: TOOTRJ/cardforge\nIssue/PR number: 14\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 5, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'security_auth_secret': 1, 'human_reported_issue_then_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-fa68d800d0e983e6", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 332202, "scanner": "foundry_dataset", "fingerprint": "647d52e9f7288bb61c49ce4a2abc74fe5677baa17ed02fc3dc01f92ff07a9ada", "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": 3, "security_or_secrets": 2, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 14, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#12", "issue_number": "12", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-5a9eb2e3e4d4dfb3", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#12\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#12\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#12\nRepo: TOOTRJ/cardforge\nIssue/PR number: 12\nGraph consistency label: weak_supervision_needs_review\nNodes: 14\nEdges: 16\nNode types: {'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'bug_fix': 3, 'claimed_resolved_unverified': 3, 'security_or_secrets': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'human_reported_issue_then_fix_attempt': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Train auth boundary repair with tests, permission matrices, and secret-handling checks.\n- Keep risky auth changes separate from ordinary bug-fix examples.\nAssumption checks:\n- Are auth/permission paths covered by tests?\n- Are secrets, CORS, or access rules verified rather than summarized?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-5801528ff1dd83a5", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 324925, "scanner": "foundry_dataset", "fingerprint": "0b6fe21aa718d4ad7ac6c0f4179a96bff2d8165a4a23a9b4d7efa5f66c45b2c8", "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, "data_schema": 2, "commit_general": 1, "ui_or_frontend": 2, "source_or_other": 1, "mock_placeholder": 1, "deployment_env_gap": 1, "dependency_or_build": 2, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 1, "comment_has_related_commit_context": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"claimed_resolved_unverified": 6, "ambiguous_needs_more_evidence": 2}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 41, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 5, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 5, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "comment_chain_touches_file": 10, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 21, "node_types": {"repo": 1, "commit": 4, "thread": 1, "comment": 2, "pr_file": 5, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#68", "issue_number": "68", "quality_tiers": {"weak_supervision": 4}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-e51ffd1fa8669e81", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"ui_or_frontend": 10, "source_or_other": 5, "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: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#68\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#68\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#68\nRepo: TOOTRJ/cardforge\nIssue/PR number: 68\nGraph consistency label: weak_supervision_needs_review\nNodes: 21\nEdges: 41\nNode types: {'pr_file': 5, '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': 10, 'thread_touches_file': 5, 'comment_chain_links_commit': 5, 'issue_chain_touches_file': 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: {'claimed_resolved_unverified': 3, 'ui_or_frontend': 2, 'dependency_or_build': 2, 'data_schema': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'deployment_env_gap': 1, 'source_or_other': 1, 'human_reported_issue_then_fix_attempt': 1, 'commit_general': 1, 'bug_fix': 1, 'comment_has_related_commit_context': 1, 'ambiguous_needs_more_evidence': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'weak_supervision': 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/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-a96365e52553a59c", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 324924, "scanner": "foundry_dataset", "fingerprint": "90fa78684659942b7dc078ddd5a13637fb29a112acf2ead58b6a4f618acaddf8", "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": 5, "mock_placeholder": 1, "deployment_env_gap": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#6", "issue_number": "6", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-825ad52df51e95d0", "graph_gold_label": "weak_supervision_needs_review", "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: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#6\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#6\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#6\nRepo: TOOTRJ/cardforge\nIssue/PR number: 6\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 5, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Train real-data plumbing and mock-removal tasks from source to UI.\n- Use as hard negatives for dashboards or apps claiming real runs without provenance.\nAssumption checks:\n- Is user-visible behavior backed by real storage/API/CI artifacts?\n- Are placeholders, sample data, or generated claims still in a production path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-2b521bfe8a71b06c", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 324923, "scanner": "foundry_dataset", "fingerprint": "b52df867908520ec79a287c7c549b08ed77c9eedffd96da0ca3ee32322a03dab", "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": 5, "mock_placeholder": 1, "deployment_env_gap": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#5", "issue_number": "5", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-e71521354e971c6b", "graph_gold_label": "weak_supervision_needs_review", "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: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#5\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#5\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#5\nRepo: TOOTRJ/cardforge\nIssue/PR number: 5\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 5, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Train real-data plumbing and mock-removal tasks from source to UI.\n- Use as hard negatives for dashboards or apps claiming real runs without provenance.\nAssumption checks:\n- Is user-visible behavior backed by real storage/API/CI artifacts?\n- Are placeholders, sample data, or generated claims still in a production path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-4dc082c5d4854394", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 324922, "scanner": "foundry_dataset", "fingerprint": "ba76b44843c941ec7892794cfe1b33d70ce35158811bef2f5140ff04e5ad689d", "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": 5, "mock_placeholder": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#14", "issue_number": "14", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-e53a3057569cb249", "graph_gold_label": "weak_supervision_needs_review", "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: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#14\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#14\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#14\nRepo: TOOTRJ/cardforge\nIssue/PR number: 14\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 5, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'security_auth_secret': 1, 'human_reported_issue_then_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Train real-data plumbing and mock-removal tasks from source to UI.\n- Use as hard negatives for dashboards or apps claiming real runs without provenance.\nAssumption checks:\n- Is user-visible behavior backed by real storage/API/CI artifacts?\n- Are placeholders, sample data, or generated claims still in a production path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-8506a3870fe7a079", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 324921, "scanner": "foundry_dataset", "fingerprint": "e8eff6b355685b04ad7b52208d325c2e2efa6e4a733a9a0d9249dbdbc3c21f69", "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": 5, "mock_placeholder": 1, "deployment_env_gap": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#13", "issue_number": "13", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-4af2c5fa6046cdf5", "graph_gold_label": "weak_supervision_needs_review", "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: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#13\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#13\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#13\nRepo: TOOTRJ/cardforge\nIssue/PR number: 13\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 5, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Train real-data plumbing and mock-removal tasks from source to UI.\n- Use as hard negatives for dashboards or apps claiming real runs without provenance.\nAssumption checks:\n- Is user-visible behavior backed by real storage/API/CI artifacts?\n- Are placeholders, sample data, or generated claims still in a production path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-02238f44285ef02c", "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": "TOOTRJ/cardforge", "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: TOOTRJ/cardforge"}, "properties": {"repobilityId": 324920, "scanner": "foundry_dataset", "fingerprint": "b4d0f16f2419722d167097c73b599e25ae39a1cded00b7f55bec735d98afdbc2", "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": 4, "data_schema": 1, "mock_placeholder": 1, "deployment_env_gap": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 1, "human_reported_issue_no_linked_fix": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"claimed_resolved_unverified": 6, "not_resolved_or_not_observed": 2}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 17, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "TOOTRJ/cardforge#10", "issue_number": "10", "quality_tiers": {"unresolved": 1, "weak_supervision": 3}, "repo_full_name": "TOOTRJ/cardforge", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-4a7d159a2bb481d6", "graph_gold_label": "weak_supervision_needs_review", "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: weak_supervision_needs_review\nRepo: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#10\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: TOOTRJ/cardforge\nThread: TOOTRJ/cardforge#10\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: TOOTRJ/cardforge#10\nRepo: TOOTRJ/cardforge\nIssue/PR number: 10\nGraph consistency label: weak_supervision_needs_review\nNodes: 17\nEdges: 21\nNode types: {'commit': 5, 'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'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: {'bug_fix': 4, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'deployment_env_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'data_schema': 1, 'human_reported_issue_no_linked_fix': 1, 'not_resolved_or_not_observed': 1}\nOutcomes: {'claimed_resolved_unverified': 6, 'not_resolved_or_not_observed': 2}\nQuality tiers: {'weak_supervision': 3, 'unresolved': 1}\nCI labels: {}\nCurriculum targets:\n- Train real-data plumbing and mock-removal tasks from source to UI.\n- Use as hard negatives for dashboards or apps claiming real runs without provenance.\nAssumption checks:\n- Is user-visible behavior backed by real storage/API/CI artifacts?\n- Are placeholders, sample data, or generated claims still in a production path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/TOOTRJ/cardforge", "source_id": "graph-query-motif_query-bc947ed57f9ee0e5", "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": "TOOTRJ/cardforge", "source_dataset": "graph_queries/mock_as_real_or_placeholder", "training_usage": "hard_negative"}}}, {"ruleId": "scanner-bead75b0f9233e05", "level": "none", "message": {"text": "No API endpoints detected"}, "properties": {"repobilityId": "0f8bb852027c38f8", "scanner": "scanner-primary", "fingerprint": "bead75b0f9233e05", "layer": "api", "severity": "info", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-1520c8ebcefb9344", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/layout/command-palette.tsx:432"}, "properties": {"repobilityId": "8fe9db21af4f0401", "scanner": "scanner-primary", "fingerprint": "1520c8ebcefb9344", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-3635166be9457003", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/layout/user-menu.tsx:88"}, "properties": {"repobilityId": "c9bf27f281078325", "scanner": "scanner-primary", "fingerprint": "3635166be9457003", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-cda7a15528a3e3cb", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/auth/pinned-cards-picker.tsx:181"}, "properties": {"repobilityId": "ebf87ad2ec1940da", "scanner": "scanner-primary", "fingerprint": "cda7a15528a3e3cb", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-0dca309de9141de8", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/billing/upgrade-modal.tsx:105"}, "properties": {"repobilityId": "82fef4f0b37b2eac", "scanner": "scanner-primary", "fingerprint": "0dca309de9141de8", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-e082ebca821cdad2", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/gallery/trending-cards-section.tsx:202"}, "properties": {"repobilityId": "b59d87ec3fa777e2", "scanner": "scanner-primary", "fingerprint": "e082ebca821cdad2", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-8a3872cf274b9712", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/creator/frame-pickers.tsx:67"}, "properties": {"repobilityId": "0e2a2e08f6acf3ff", "scanner": "scanner-primary", "fingerprint": "8a3872cf274b9712", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-8d7623fde88c35e2", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/creator/scryfall-import-dialog.tsx:412"}, "properties": {"repobilityId": "d40863c04f08b1ec", "scanner": "scanner-primary", "fingerprint": "8d7623fde88c35e2", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-12d7284a4d985c13", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/creator/liked-cards-section.tsx:106"}, "properties": {"repobilityId": "503d5120035c896d", "scanner": "scanner-primary", "fingerprint": "12d7284a4d985c13", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-87a66e82500c21c0", "level": "note", "message": {"text": "React Flow edge with `label=` but no project-wide edge-label CSS override \u2014 components/creator/panels/frame-panel.tsx:55"}, "properties": {"repobilityId": "97f9df9b37b980ee", "scanner": "scanner-primary", "fingerprint": "87a66e82500c21c0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.edge-label.no-bg"]}}, {"ruleId": "scanner-1cf5065b54f3954a", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/sets/set-card-manager.tsx:240"}, "properties": {"repobilityId": "90f892ab8f045036", "scanner": "scanner-primary", "fingerprint": "1cf5065b54f3954a", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-f936c7f11c1a7cbe", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/sets/quick-add-to-set-dialog.tsx:192"}, "properties": {"repobilityId": "a67234e3a8d7700b", "scanner": "scanner-primary", "fingerprint": "f936c7f11c1a7cbe", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-5e9ed156c6096963", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/sets/set-card-sortable.tsx:114"}, "properties": {"repobilityId": "0e28cb3afa5750ac", "scanner": "scanner-primary", "fingerprint": "5e9ed156c6096963", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-69ac15f6cb7ca614", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/sets/add-to-set-button.tsx:159"}, "properties": {"repobilityId": "f60050d801c9c90f", "scanner": "scanner-primary", "fingerprint": "69ac15f6cb7ca614", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-c96a1ee169f0f25e", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/cards/share-targets.tsx:125"}, "properties": {"repobilityId": "348d464a99e9c174", "scanner": "scanner-primary", "fingerprint": "c96a1ee169f0f25e", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-61ac41b74d6867c2", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 components/cards/gallery-card-tile.tsx:62"}, "properties": {"repobilityId": "b1937d574618c392", "scanner": "scanner-primary", "fingerprint": "61ac41b74d6867c2", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-2dba0cf24c611ac5", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 components/seo/json-ld.tsx:17"}, "properties": {"repobilityId": "d264b1e87d966d40", "scanner": "scanner-primary", "fingerprint": "2dba0cf24c611ac5", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-89ca1028b4496d35", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 app/layout.tsx:82"}, "properties": {"repobilityId": "6f16eb9b82a2dcd6", "scanner": "scanner-primary", "fingerprint": "89ca1028b4496d35", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-8712b407980525af", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 app/(app)/dashboard/page.tsx:131"}, "properties": {"repobilityId": "73048b17c3d2a98a", "scanner": "scanner-primary", "fingerprint": "8712b407980525af", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-75705d29348eaf0b", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 app/(marketing)/sets/page.tsx:194"}, "properties": {"repobilityId": "57dd5e7242708757", "scanner": "scanner-primary", "fingerprint": "75705d29348eaf0b", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-6b2ceb9db5b6564e", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 app/(marketing)/ai-mtg-card-generator/page.tsx:71"}, "properties": {"repobilityId": "e301e173d2133abd", "scanner": "scanner-primary", "fingerprint": "6b2ceb9db5b6564e", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-40196d60f6baaea8", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 app/(marketing)/profile/[username]/page.tsx:452"}, "properties": {"repobilityId": "e3180b2445c1f450", "scanner": "scanner-primary", "fingerprint": "40196d60f6baaea8", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-f165c097ef1c5e4d", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 app/(marketing)/mana-pip-editor/page.tsx:65"}, "properties": {"repobilityId": "46da42e1c430cdf6", "scanner": "scanner-primary", "fingerprint": "f165c097ef1c5e4d", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-e7ec500ccb227bbe", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 app/(marketing)/mtg-card-maker/page.tsx:74"}, "properties": {"repobilityId": "2cebf7286b2ee986", "scanner": "scanner-primary", "fingerprint": "e7ec500ccb227bbe", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-4cf011501a2f539d", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 app/(marketing)/card/[username]/[slug]/page.tsx:185"}, "properties": {"repobilityId": "5069b6c450cf36bd", "scanner": "scanner-primary", "fingerprint": "4cf011501a2f539d", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-4c199af4dd13aaaa", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in components/seo/json-ld.tsx:17"}, "properties": {"repobilityId": "ec754a0f546661b6", "scanner": "scanner-primary", "fingerprint": "4c199af4dd13aaaa", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "components/seo/json-ld.tsx"}, "region": {"startLine": 17}}}]}, {"ruleId": "scanner-1e0980a2d01c34bd", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in app/layout.tsx:82"}, "properties": {"repobilityId": "69d4743587f721a0", "scanner": "scanner-primary", "fingerprint": "1e0980a2d01c34bd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/layout.tsx"}, "region": {"startLine": 82}}}]}, {"ruleId": "scanner-c93602edc6a6a894", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in app/(marketing)/ai-mtg-card-generator/page.tsx:71"}, "properties": {"repobilityId": "12c952390752b80a", "scanner": "scanner-primary", "fingerprint": "c93602edc6a6a894", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/(marketing)/ai-mtg-card-generator/page.tsx"}, "region": {"startLine": 71}}}]}, {"ruleId": "scanner-856f6ba1474e8fe3", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in app/(marketing)/mana-pip-editor/page.tsx:65"}, "properties": {"repobilityId": "badb3c9c736f966c", "scanner": "scanner-primary", "fingerprint": "856f6ba1474e8fe3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/(marketing)/mana-pip-editor/page.tsx"}, "region": {"startLine": 65}}}]}, {"ruleId": "scanner-33c043dcbcd71bd7", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in app/(marketing)/mtg-card-maker/page.tsx:74"}, "properties": {"repobilityId": "7a17e655dd7a418b", "scanner": "scanner-primary", "fingerprint": "33c043dcbcd71bd7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/(marketing)/mtg-card-maker/page.tsx"}, "region": {"startLine": 74}}}]}, {"ruleId": "scanner-83385d0b5e3819b7", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in app/(marketing)/card/[username]/[slug]/page.tsx:185"}, "properties": {"repobilityId": "638d5529c5c92602", "scanner": "scanner-primary", "fingerprint": "83385d0b5e3819b7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "app/(marketing)/card/[username]/[slug]/page.tsx"}, "region": {"startLine": 185}}}]}, {"ruleId": "scanner-4601e3ad3bb28677", "level": "warning", "message": {"text": "No CI/CD pipelines detected"}, "properties": {"repobilityId": "c3ee439bce2bc51e", "scanner": "scanner-primary", "fingerprint": "4601e3ad3bb28677", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-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": "dd07def3fea79532", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "31ce8ed1abfe3fe0", "scanner": "scanner-primary", "fingerprint": "3ab5d313dda8e5f9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["debug", "cleanup", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-72b2a6250083a784", "level": "warning", "message": {"text": "Placeholder or mock-heavy implementation detected"}, "properties": {"repobilityId": "8d2435b445b18d7f", "scanner": "scanner-primary", "fingerprint": "72b2a6250083a784", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "incomplete", "generated-repo-pattern"]}}, {"ruleId": "scanner-9d79c4077342a7d0", "level": "warning", "message": {"text": "Runtime service client appears to use placeholder configuration"}, "properties": {"repobilityId": "fdb685d0a5f0e813", "scanner": "scanner-primary", "fingerprint": "9d79c4077342a7d0", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "runtime-config", "service-client", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "a69589908eba6f3b", "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": "ca4649de5b1fbc13", "scanner": "scanner-primary", "fingerprint": "b9088664ace7f748", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["production-readiness", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-749d4bc1bd66df5f", "level": "warning", "message": {"text": "Agent instructions exist but release-hardening basics are missing"}, "properties": {"repobilityId": "1ae8ad5cd2f92de0", "scanner": "scanner-primary", "fingerprint": "749d4bc1bd66df5f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "97e6cd06d93e5418", "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": "464859eba5d92816", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-2c5f98b152cddb6d", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/launch.json"}, "properties": {"repobilityId": "0de48c0f4ab303d8", "scanner": "scanner-primary", "fingerprint": "2c5f98b152cddb6d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/launch.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4a0172c93a2c1f87", "level": "none", "message": {"text": "Commented-code block (5 lines) in playwright.config.ts:9"}, "properties": {"repobilityId": "beec6f3fd1fe7ac3", "scanner": "scanner-primary", "fingerprint": "4a0172c93a2c1f87", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5324baebd86eeb37", "level": "none", "message": {"text": "Commented-code block (5 lines) in vitest.config.ts:7"}, "properties": {"repobilityId": "f1c19cfff1b6678e", "scanner": "scanner-primary", "fingerprint": "5324baebd86eeb37", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f6ce3f7b1bf6be6a", "level": "none", "message": {"text": "Commented-code block (6 lines) in types/card.ts:82"}, "properties": {"repobilityId": "376c242599fafb45", "scanner": "scanner-primary", "fingerprint": "f6ce3f7b1bf6be6a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a16d2fe33da947a5", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/unit/cards/validation.test.ts:14"}, "properties": {"repobilityId": "0960dfa6bf938fe2", "scanner": "scanner-primary", "fingerprint": "a16d2fe33da947a5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d67b64add3f1e670", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/e2e/marketing-auth-chrome.spec.ts:6"}, "properties": {"repobilityId": "4f9f836c86235881", "scanner": "scanner-primary", "fingerprint": "d67b64add3f1e670", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4737bb76cb17c14d", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/e2e/custom-pips.spec.ts:4"}, "properties": {"repobilityId": "8a995f2ebec50fcc", "scanner": "scanner-primary", "fingerprint": "4737bb76cb17c14d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d5e5fd644596c555", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/e2e/challenge-admin.spec.ts:3"}, "properties": {"repobilityId": "23528cf71ce06735", "scanner": "scanner-primary", "fingerprint": "d5e5fd644596c555", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a3bae8494ea3d6f3", "level": "none", "message": {"text": "Commented-code block (7 lines) in tests/e2e/create-card.spec.ts:27"}, "properties": {"repobilityId": "c74abe54514afde9", "scanner": "scanner-primary", "fingerprint": "a3bae8494ea3d6f3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-56c2ebc771300428", "level": "none", "message": {"text": "Commented-code block (6 lines) in tests/e2e/challenge-entry.spec.ts:3"}, "properties": {"repobilityId": "35cbddec12c8ee66", "scanner": "scanner-primary", "fingerprint": "56c2ebc771300428", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-94b84cdbccd29f46", "level": "none", "message": {"text": "Commented-code block (9 lines) in tests/e2e/a11y.spec.ts:9"}, "properties": {"repobilityId": "ce478f94377b8969", "scanner": "scanner-primary", "fingerprint": "94b84cdbccd29f46", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5c9b8824cda22d24", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/e2e/marketing.spec.ts:6"}, "properties": {"repobilityId": "c6d913ea2acf9525", "scanner": "scanner-primary", "fingerprint": "5c9b8824cda22d24", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8f0ad657d17bf26a", "level": "none", "message": {"text": "Commented-code block (5 lines) in tests/e2e/challenges.spec.ts:3"}, "properties": {"repobilityId": "258cea9ab05c3146", "scanner": "scanner-primary", "fingerprint": "8f0ad657d17bf26a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2d51366121bf8d3b", "level": "none", "message": {"text": "Commented-code block (5 lines) in scripts/visual-audit.mjs:1"}, "properties": {"repobilityId": "c81be83cdeae11ce", "scanner": "scanner-primary", "fingerprint": "2d51366121bf8d3b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f7d41db0bd12f89c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/visual-audit.mjs:28"}, "properties": {"repobilityId": "9ac63882a00d15fa", "scanner": "scanner-primary", "fingerprint": "f7d41db0bd12f89c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-68992242a6f0bdeb", "level": "none", "message": {"text": "Commented-code block (6 lines) in scripts/rebake-renders.mjs:6"}, "properties": {"repobilityId": "05176a7abbe368ab", "scanner": "scanner-primary", "fingerprint": "68992242a6f0bdeb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ccf36eaf26b4d6dd", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/rebake-renders.mjs:25"}, "properties": {"repobilityId": "00c896dd8710b62a", "scanner": "scanner-primary", "fingerprint": "ccf36eaf26b4d6dd", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2df63ddda2c21e73", "level": "none", "message": {"text": "Commented-code block (8 lines) in scripts/build-adventure-frame.mjs:4"}, "properties": {"repobilityId": "4a62c5ea2743da12", "scanner": "scanner-primary", "fingerprint": "2df63ddda2c21e73", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-14ed0159db48a3c9", "level": "none", "message": {"text": "Commented-code block (8 lines) in scripts/round-frame-corners.mjs:3"}, "properties": {"repobilityId": "e6eb20c050ca156e", "scanner": "scanner-primary", "fingerprint": "14ed0159db48a3c9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-093e298d0dedb29b", "level": "none", "message": {"text": "Commented-code block (5 lines) in scripts/seed-e2e.mjs:8"}, "properties": {"repobilityId": "8b96075ee23413e0", "scanner": "scanner-primary", "fingerprint": "093e298d0dedb29b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-28879d7d097ac718", "level": "none", "message": {"text": "Commented-code block (7 lines) in scripts/build-era-frames.mjs:12"}, "properties": {"repobilityId": "c4570cf0fe43185f", "scanner": "scanner-primary", "fingerprint": "28879d7d097ac718", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cca80d11cca5c1f1", "level": "none", "message": {"text": "Commented-code block (6 lines) in scripts/build-split-frame.mjs:4"}, "properties": {"repobilityId": "2fce6f5830ee4308", "scanner": "scanner-primary", "fingerprint": "cca80d11cca5c1f1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ad1c402e2b8dfb11", "level": "none", "message": {"text": "Commented-code block (6 lines) in scripts/convert-mse-frame.mjs:4"}, "properties": {"repobilityId": "f8229f4ff0951e61", "scanner": "scanner-primary", "fingerprint": "ad1c402e2b8dfb11", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dffa776afacf6de9", "level": "none", "message": {"text": "Commented-code block (7 lines) in scripts/build-showcase-frames.mjs:4"}, "properties": {"repobilityId": "556e272ae1e50d68", "scanner": "scanner-primary", "fingerprint": "dffa776afacf6de9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-622e0945a81e6d08", "level": "none", "message": {"text": "Commented-code block (6 lines) in scripts/build-flip-frame.mjs:4"}, "properties": {"repobilityId": "ec2722ea5fcafc7a", "scanner": "scanner-primary", "fingerprint": "622e0945a81e6d08", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-58e1123fd2b33f90", "level": "none", "message": {"text": "Commented-code block (7 lines) in scripts/build-aftermath-frame.mjs:4"}, "properties": {"repobilityId": "88ddd224fddf9ba8", "scanner": "scanner-primary", "fingerprint": "58e1123fd2b33f90", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8e225c776a6dbfb8", "level": "none", "message": {"text": "Commented-code block (6 lines) in components/settings/usage-bar-chart.tsx:3"}, "properties": {"repobilityId": "f5287d59c0a331e4", "scanner": "scanner-primary", "fingerprint": "8e225c776a6dbfb8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a0080ab95fd35801", "level": "none", "message": {"text": "Commented-code block (7 lines) in components/layout/command-palette.tsx:46"}, "properties": {"repobilityId": "54841169d8e0f26b", "scanner": "scanner-primary", "fingerprint": "a0080ab95fd35801", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0173d4488e981e45", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/layout/theme-toggle.tsx:16"}, "properties": {"repobilityId": "15a23b9d0c6df116", "scanner": "scanner-primary", "fingerprint": "0173d4488e981e45", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fabc4a8dd72594d6", "level": "none", "message": {"text": "Commented-code block (8 lines) in components/layout/site-header-client.tsx:11"}, "properties": {"repobilityId": "b2016b3f4f1e3c4c", "scanner": "scanner-primary", "fingerprint": "fabc4a8dd72594d6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-34e5d070a3ec5f26", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/layout/user-menu.tsx:24"}, "properties": {"repobilityId": "0b80129e487d15c3", "scanner": "scanner-primary", "fingerprint": "34e5d070a3ec5f26", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1e8129b5f22d7706", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/layout/dashboard-nav.tsx:8"}, "properties": {"repobilityId": "7bf031a92eb51c79", "scanner": "scanner-primary", "fingerprint": "1e8129b5f22d7706", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-41bf4496d6fcdb20", "level": "none", "message": {"text": "Commented-code block (6 lines) in components/layout/mobile-menu.tsx:14"}, "properties": {"repobilityId": "15ba0ef5730c7f97", "scanner": "scanner-primary", "fingerprint": "41bf4496d6fcdb20", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-958ae4b823365a2e", "level": "none", "message": {"text": "Commented-code block (6 lines) in components/auth/profile-media-uploader.tsx:14"}, "properties": {"repobilityId": "a68513302cd71820", "scanner": "scanner-primary", "fingerprint": "958ae4b823365a2e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-372d68188fe20cf9", "level": "none", "message": {"text": "Commented-code block (7 lines) in components/auth/pinned-cards-picker.tsx:13"}, "properties": {"repobilityId": "5f78a4deafc28ba1", "scanner": "scanner-primary", "fingerprint": "372d68188fe20cf9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-809a5a82948ff0f4", "level": "none", "message": {"text": "Commented-code block (6 lines) in components/ui/section-heading.tsx:3"}, "properties": {"repobilityId": "0a3ed359a0e835af", "scanner": "scanner-primary", "fingerprint": "809a5a82948ff0f4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cf01b7da3656662c", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/ui/stat-badge.tsx:3"}, "properties": {"repobilityId": "aaf7199644f9433b", "scanner": "scanner-primary", "fingerprint": "cf01b7da3656662c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f5471b51775d60a2", "level": "none", "message": {"text": "Commented-code block (6 lines) in components/ui/dialog.tsx:14"}, "properties": {"repobilityId": "9ddd0d87613bca21", "scanner": "scanner-primary", "fingerprint": "f5471b51775d60a2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3dcfcb9809ed194a", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/ui/stepper.tsx:11"}, "properties": {"repobilityId": "74c9204c20efef5d", "scanner": "scanner-primary", "fingerprint": "3dcfcb9809ed194a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-93c7107b294596fc", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/ui/step-rail.tsx:7"}, "properties": {"repobilityId": "0e40d6ca062fc73a", "scanner": "scanner-primary", "fingerprint": "93c7107b294596fc", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a0ae44b74928d95b", "level": "none", "message": {"text": "Commented-code block (6 lines) in components/ui/compass-star.tsx:3"}, "properties": {"repobilityId": "1714cd29e64c6517", "scanner": "scanner-primary", "fingerprint": "a0ae44b74928d95b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f8cabf31b0b29664", "level": "none", "message": {"text": "Commented-code block (6 lines) in components/ui/popover.tsx:8"}, "properties": {"repobilityId": "520a11f6d2fe66dd", "scanner": "scanner-primary", "fingerprint": "f8cabf31b0b29664", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b5d3cbbd949f24ca", "level": "none", "message": {"text": "Commented-code block (7 lines) in components/ui/tabs.tsx:18"}, "properties": {"repobilityId": "70d813ec1a98dd75", "scanner": "scanner-primary", "fingerprint": "b5d3cbbd949f24ca", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0183e4f65ef9bc63", "level": "none", "message": {"text": "Commented-code block (6 lines) in components/ui/starfield-backdrop.tsx:4"}, "properties": {"repobilityId": "b512fbd3905508c0", "scanner": "scanner-primary", "fingerprint": "0183e4f65ef9bc63", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-da652b2b5c97e060", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/ui/skeleton.tsx:9"}, "properties": {"repobilityId": "f5140e4340825e6b", "scanner": "scanner-primary", "fingerprint": "da652b2b5c97e060", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-283c12fd0209e95f", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/ui/icon-tile.tsx:4"}, "properties": {"repobilityId": "665f154fb72276ce", "scanner": "scanner-primary", "fingerprint": "283c12fd0209e95f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-65bfe7bb681cdd4d", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/marketing/guide-cross-links.tsx:4"}, "properties": {"repobilityId": "16a9f66ba339773c", "scanner": "scanner-primary", "fingerprint": "65bfe7bb681cdd4d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eb377e55d727a7bf", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/admin/challenge-admin.tsx:19"}, "properties": {"repobilityId": "705c07b6a97ef369", "scanner": "scanner-primary", "fingerprint": "eb377e55d727a7bf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d31ca6e111d36b17", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/gallery/gallery-filters.tsx:65"}, "properties": {"repobilityId": "034539920a77017d", "scanner": "scanner-primary", "fingerprint": "d31ca6e111d36b17", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8a242f800a80c16a", "level": "none", "message": {"text": "Commented-code block (9 lines) in components/gallery/trending-cards-section.tsx:15"}, "properties": {"repobilityId": "164617adeeac9e71", "scanner": "scanner-primary", "fingerprint": "8a242f800a80c16a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-57f28d7a26548398", "level": "none", "message": {"text": "Commented-code block (7 lines) in components/creator/dashboard-card-tile.tsx:12"}, "properties": {"repobilityId": "51ed7a7b84b97cd5", "scanner": "scanner-primary", "fingerprint": "57f28d7a26548398", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9b2fab071d8ee88a", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/creator/scryfall-import-dialog.tsx:35"}, "properties": {"repobilityId": "4ef6916f48e2bbf4", "scanner": "scanner-primary", "fingerprint": "9b2fab071d8ee88a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3933668045792f09", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/creator/custom-pip-dialog.tsx:15"}, "properties": {"repobilityId": "f965eb503240fd95", "scanner": "scanner-primary", "fingerprint": "3933668045792f09", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ccf118d9e6746682", "level": "none", "message": {"text": "Commented-code block (7 lines) in components/creator/art-uploader.tsx:31"}, "properties": {"repobilityId": "62ebedebdd9b21f8", "scanner": "scanner-primary", "fingerprint": "ccf118d9e6746682", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bcbb74251a5587e5", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/creator/card-creator-form.tsx:286"}, "properties": {"repobilityId": "49d3eb28e71f8a56", "scanner": "scanner-primary", "fingerprint": "bcbb74251a5587e5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e1d6f600267aa7ca", "level": "none", "message": {"text": "Commented-code block (7 lines) in components/creator/rules-symbol-toolbar.tsx:9"}, "properties": {"repobilityId": "c8b2bde7ca1cdc73", "scanner": "scanner-primary", "fingerprint": "e1d6f600267aa7ca", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-440b18bb6b5e949a", "level": "none", "message": {"text": "Commented-code block (6 lines) in components/creator/liked-cards-section.tsx:12"}, "properties": {"repobilityId": "5a195f2969879d4c", "scanner": "scanner-primary", "fingerprint": "440b18bb6b5e949a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ad601670f3a92dfa", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/creator/panels/layout-panel.tsx:3"}, "properties": {"repobilityId": "ca8b4e485319bcc3", "scanner": "scanner-primary", "fingerprint": "ad601670f3a92dfa", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-064c624bc866b17d", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/creator/panels/text-panel.tsx:3"}, "properties": {"repobilityId": "adf1cb09637eeced", "scanner": "scanner-primary", "fingerprint": "064c624bc866b17d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7ad5f6bdd16fa4cd", "level": "none", "message": {"text": "Commented-code block (6 lines) in components/sets/set-card-manager.tsx:58"}, "properties": {"repobilityId": "7470d59ddcd05863", "scanner": "scanner-primary", "fingerprint": "7ad5f6bdd16fa4cd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-98d88c3f4d455fd4", "level": "none", "message": {"text": "Commented-code block (9 lines) in components/sets/set-card-sortable.tsx:15"}, "properties": {"repobilityId": "7bbb98ecc16d1ef8", "scanner": "scanner-primary", "fingerprint": "98d88c3f4d455fd4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9cac8cf4be27ded5", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/cards/quick-like-button.tsx:12"}, "properties": {"repobilityId": "0bb6924e371cbc0e", "scanner": "scanner-primary", "fingerprint": "9cac8cf4be27ded5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-de85226bea32ee21", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/cards/oracle-text.tsx:6"}, "properties": {"repobilityId": "952b4aceff068a9c", "scanner": "scanner-primary", "fingerprint": "de85226bea32ee21", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d33f51a2704f7c4a", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/cards/frame-layer.tsx:5"}, "properties": {"repobilityId": "c25ffa0d446cf3c1", "scanner": "scanner-primary", "fingerprint": "d33f51a2704f7c4a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e33a8a16ef9f015b", "level": "none", "message": {"text": "Commented-code block (6 lines) in components/cards/card-comments.tsx:8"}, "properties": {"repobilityId": "a6c5bd934f35b596", "scanner": "scanner-primary", "fingerprint": "e33a8a16ef9f015b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-289c7e0bff5d4e11", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/cards/download-modal.tsx:13"}, "properties": {"repobilityId": "d95679546a94bddc", "scanner": "scanner-primary", "fingerprint": "289c7e0bff5d4e11", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d0a911c31a1aa03d", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/cards/mana-cost-picker.tsx:12"}, "properties": {"repobilityId": "e2aac4dccaf3e8db", "scanner": "scanner-primary", "fingerprint": "d0a911c31a1aa03d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8bafa16cbe312b3f", "level": "none", "message": {"text": "Commented-code block (8 lines) in components/cards/card-preview.tsx:57"}, "properties": {"repobilityId": "544855535edccc0b", "scanner": "scanner-primary", "fingerprint": "8bafa16cbe312b3f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4961151579f3aee7", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/cards/mana-cost-glyphs.tsx:4"}, "properties": {"repobilityId": "c6f26067e9ad01bb", "scanner": "scanner-primary", "fingerprint": "4961151579f3aee7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ddbe67c5184f6e00", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/cards/baked-card-thumbnail.tsx:11"}, "properties": {"repobilityId": "afb6699ad739d583", "scanner": "scanner-primary", "fingerprint": "ddbe67c5184f6e00", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-03416b697fd0e8b7", "level": "none", "message": {"text": "Commented-code block (9 lines) in components/cards/set-symbol.tsx:4"}, "properties": {"repobilityId": "453fc64de22c0959", "scanner": "scanner-primary", "fingerprint": "03416b697fd0e8b7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9bd391137caf8b2f", "level": "none", "message": {"text": "Commented-code block (7 lines) in components/cards/card-hover-effect.tsx:24"}, "properties": {"repobilityId": "118bbf25c18f4024", "scanner": "scanner-primary", "fingerprint": "9bd391137caf8b2f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5ba338461e7886d6", "level": "none", "message": {"text": "Commented-code block (6 lines) in components/profile/social-icon.tsx:5"}, "properties": {"repobilityId": "9df0bb02680a199a", "scanner": "scanner-primary", "fingerprint": "5ba338461e7886d6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2ff2ffac28e0726b", "level": "none", "message": {"text": "Commented-code block (5 lines) in components/seo/json-ld.tsx:6"}, "properties": {"repobilityId": "e5326a117c2e3343", "scanner": "scanner-primary", "fingerprint": "2ff2ffac28e0726b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a91efb26191b3414", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/sitemap.ts:18"}, "properties": {"repobilityId": "f14445b2f3ff8269", "scanner": "scanner-primary", "fingerprint": "a91efb26191b3414", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-75cfc1926c565108", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/layout.tsx:167"}, "properties": {"repobilityId": "888cc152621085a3", "scanner": "scanner-primary", "fingerprint": "75cfc1926c565108", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-55f9aea46305ada5", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/api/ai/random-card/route.ts:26"}, "properties": {"repobilityId": "7dc973449ea215b4", "scanner": "scanner-primary", "fingerprint": "55f9aea46305ada5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2a49a3332812e0b4", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/api/ai/generate-deck/route.ts:18"}, "properties": {"repobilityId": "8da9b82fca44c0fa", "scanner": "scanner-primary", "fingerprint": "2a49a3332812e0b4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8fb08b303cfa71a2", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/api/admin/rebake/route.ts:14"}, "properties": {"repobilityId": "65a54e0ed57f3535", "scanner": "scanner-primary", "fingerprint": "8fb08b303cfa71a2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-32370b25498e340d", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/api/dev/render/route.ts:9"}, "properties": {"repobilityId": "5c833fac5d17110f", "scanner": "scanner-primary", "fingerprint": "32370b25498e340d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eeb8cf4965f79003", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/api/me/route.ts:21"}, "properties": {"repobilityId": "7893b59f25044d14", "scanner": "scanner-primary", "fingerprint": "eeb8cf4965f79003", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-aa8ae0bce7dc376e", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/api/cron/refill-credits/route.ts:13"}, "properties": {"repobilityId": "b7e68aeed28232c1", "scanner": "scanner-primary", "fingerprint": "aa8ae0bce7dc376e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6dd01e2ac26b30a3", "level": "none", "message": {"text": "Commented-code block (8 lines) in app/api/cards/[id]/og/route.ts:55"}, "properties": {"repobilityId": "dd902ab7a41cdb01", "scanner": "scanner-primary", "fingerprint": "6dd01e2ac26b30a3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-885b43660f6f1c03", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/api/cards/[id]/pdf/route.ts:31"}, "properties": {"repobilityId": "d26f25432aef57d2", "scanner": "scanner-primary", "fingerprint": "885b43660f6f1c03", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-098480241bb5dfe2", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/api/cards/[id]/png/route.ts:24"}, "properties": {"repobilityId": "7e44d398116e5c44", "scanner": "scanner-primary", "fingerprint": "098480241bb5dfe2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f6ab1a345b8ef3af", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/api/scryfall/import-art/route.ts:19"}, "properties": {"repobilityId": "4c02bd4c08725b86", "scanner": "scanner-primary", "fingerprint": "f6ab1a345b8ef3af", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d82d0ddc4e54f34c", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/(app)/settings/actions.ts:145"}, "properties": {"repobilityId": "678070fcf3cda14e", "scanner": "scanner-primary", "fingerprint": "d82d0ddc4e54f34c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-79b5eb2b237dc090", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/(app)/dashboard/page.tsx:201"}, "properties": {"repobilityId": "e51aeb85d64e6c3d", "scanner": "scanner-primary", "fingerprint": "79b5eb2b237dc090", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6830a49f8ffe3e76", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/(app)/card/[username]/edit/page.tsx:26"}, "properties": {"repobilityId": "e1fbe87c09f1b6bf", "scanner": "scanner-primary", "fingerprint": "6830a49f8ffe3e76", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ed2f392d2bb2233c", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/(auth)/actions.ts:17"}, "properties": {"repobilityId": "6555fa1aa646ce7e", "scanner": "scanner-primary", "fingerprint": "ed2f392d2bb2233c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-606ece1afc252e07", "level": "none", "message": {"text": "Commented-code block (7 lines) in app/(marketing)/layout.tsx:3"}, "properties": {"repobilityId": "7d90c266dead03f8", "scanner": "scanner-primary", "fingerprint": "606ece1afc252e07", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8ca4a3ee985e8f99", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/(marketing)/challenges/[slug]/page.tsx:193"}, "properties": {"repobilityId": "b45c6a4c065da62d", "scanner": "scanner-primary", "fingerprint": "8ca4a3ee985e8f99", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dd5359ff5594ae11", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/(marketing)/gallery/page.tsx:187"}, "properties": {"repobilityId": "1c7644167e44a6d1", "scanner": "scanner-primary", "fingerprint": "dd5359ff5594ae11", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3b864845b8bfb39c", "level": "none", "message": {"text": "Commented-code block (6 lines) in app/(marketing)/ai-mtg-card-generator/page.tsx:12"}, "properties": {"repobilityId": "a9b288e74b0afa8e", "scanner": "scanner-primary", "fingerprint": "3b864845b8bfb39c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-48eb0ad10c1c4b60", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/(marketing)/profile/[username]/page.tsx:462"}, "properties": {"repobilityId": "748773f0ded2cda0", "scanner": "scanner-primary", "fingerprint": "48eb0ad10c1c4b60", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-618a98360f0ea598", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/(marketing)/articles/[slug]/page.tsx:13"}, "properties": {"repobilityId": "242dc01e26c25aa2", "scanner": "scanner-primary", "fingerprint": "618a98360f0ea598", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2f18f442cfdd1584", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/(marketing)/card/[username]/page.tsx:15"}, "properties": {"repobilityId": "12328d95b9475827", "scanner": "scanner-primary", "fingerprint": "2f18f442cfdd1584", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0ab6881420befc61", "level": "none", "message": {"text": "Commented-code block (8 lines) in app/(marketing)/set/[slug]/booster/page.tsx:14"}, "properties": {"repobilityId": "ccd465a034488192", "scanner": "scanner-primary", "fingerprint": "0ab6881420befc61", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1889e998b293d75d", "level": "none", "message": {"text": "Commented-code block (5 lines) in app/(marketing)/faq/page.tsx:12"}, "properties": {"repobilityId": "d6ecbc900a991d58", "scanner": "scanner-primary", "fingerprint": "1889e998b293d75d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-31fae056bdcea20b", "level": "none", "message": {"text": "Commented-code block (9 lines) in lib/theme-shared.ts:5"}, "properties": {"repobilityId": "9371c386332354e8", "scanner": "scanner-primary", "fingerprint": "31fae056bdcea20b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a9e0927eee7481ae", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/theme-actions.ts:14"}, "properties": {"repobilityId": "867c6c2ceef5045f", "scanner": "scanner-primary", "fingerprint": "a9e0927eee7481ae", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cb75c99732cb8ab3", "level": "none", "message": {"text": "Commented-code block (6 lines) in lib/site-config.ts:4"}, "properties": {"repobilityId": "b6fe9ba60e3026b5", "scanner": "scanner-primary", "fingerprint": "cb75c99732cb8ab3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3508dc243ce84f25", "level": "none", "message": {"text": "Commented-code block (6 lines) in lib/ai/random-card.ts:20"}, "properties": {"repobilityId": "c6ba4f61963ec9d1", "scanner": "scanner-primary", "fingerprint": "3508dc243ce84f25", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e7d62c10ade94688", "level": "none", "message": {"text": "Commented-code block (6 lines) in lib/ai/schemas.ts:64"}, "properties": {"repobilityId": "a4019f5873ffde5b", "scanner": "scanner-primary", "fingerprint": "e7d62c10ade94688", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fa3e9d354fe866e9", "level": "none", "message": {"text": "Commented-code block (9 lines) in lib/ai/random-art.ts:11"}, "properties": {"repobilityId": "58588767e4ad56f5", "scanner": "scanner-primary", "fingerprint": "fa3e9d354fe866e9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a757c4f85ae5e0cb", "level": "none", "message": {"text": "Commented-code block (6 lines) in lib/ai/rate-limit.ts:6"}, "properties": {"repobilityId": "ebb453de1298f437", "scanner": "scanner-primary", "fingerprint": "a757c4f85ae5e0cb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e7b9e6aebbcb2f1c", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/ai/card-assistant.ts:151"}, "properties": {"repobilityId": "b5b6dbb8b5338492", "scanner": "scanner-primary", "fingerprint": "e7b9e6aebbcb2f1c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9241fefac419985e", "level": "none", "message": {"text": "Commented-code block (8 lines) in lib/ai/deck-gen.ts:15"}, "properties": {"repobilityId": "a9b764d45ddf123c", "scanner": "scanner-primary", "fingerprint": "9241fefac419985e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-55cd79aa1ffbbb62", "level": "none", "message": {"text": "Commented-code block (6 lines) in lib/auth/schemas.ts:32"}, "properties": {"repobilityId": "4cf860c40aef62e2", "scanner": "scanner-primary", "fingerprint": "55cd79aa1ffbbb62", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d2e11e74cf61d7db", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/moderation/image-scan.ts:5"}, "properties": {"repobilityId": "f6332eb0fac5bc29", "scanner": "scanner-primary", "fingerprint": "d2e11e74cf61d7db", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bf033adc65b8adfb", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/moderation/notify.ts:5"}, "properties": {"repobilityId": "0d01f791031f0cba", "scanner": "scanner-primary", "fingerprint": "bf033adc65b8adfb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-191de9023ea74f1c", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/challenges/actions.ts:10"}, "properties": {"repobilityId": "821ec945df4da0b4", "scanner": "scanner-primary", "fingerprint": "191de9023ea74f1c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0b9d4bb2b03f3373", "level": "none", "message": {"text": "Commented-code block (8 lines) in lib/challenges/queries.ts:6"}, "properties": {"repobilityId": "8ca75aa6a6e74aa3", "scanner": "scanner-primary", "fingerprint": "0b9d4bb2b03f3373", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1480afaf34732c1d", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/billing/plans.ts:103"}, "properties": {"repobilityId": "f14caf085625ab68", "scanner": "scanner-primary", "fingerprint": "1480afaf34732c1d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b59427ec4633d1a8", "level": "none", "message": {"text": "Commented-code block (6 lines) in lib/creator/frame-picker.ts:1"}, "properties": {"repobilityId": "9a06fe8421d31187", "scanner": "scanner-primary", "fingerprint": "b59427ec4633d1a8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d6c0a4b0cc35fa92", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/validation/card.ts:11"}, "properties": {"repobilityId": "d6dddc748065ca58", "scanner": "scanner-primary", "fingerprint": "d6c0a4b0cc35fa92", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-35e6eb0f48d66c83", "level": "none", "message": {"text": "Commented-code block (7 lines) in lib/sets/actions.ts:300"}, "properties": {"repobilityId": "0e8462e7a2803165", "scanner": "scanner-primary", "fingerprint": "35e6eb0f48d66c83", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d09bacef939d5cac", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/sets/likes.ts:7"}, "properties": {"repobilityId": "4ada060e3be38987", "scanner": "scanner-primary", "fingerprint": "d09bacef939d5cac", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1fc683af9a4a845e", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/content/articles.ts:10"}, "properties": {"repobilityId": "616f9f624461e2e2", "scanner": "scanner-primary", "fingerprint": "1fc683af9a4a845e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-2adf3e688373eac3", "level": "none", "message": {"text": "Commented-code block (6 lines) in lib/supabase/public.ts:10"}, "properties": {"repobilityId": "2f1b4e5020b249fc", "scanner": "scanner-primary", "fingerprint": "2adf3e688373eac3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-91b214dac05ce6b0", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/supabase/env.ts:4"}, "properties": {"repobilityId": "75ba88a31614b2a8", "scanner": "scanner-primary", "fingerprint": "91b214dac05ce6b0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-03693a04fb9ef3ed", "level": "none", "message": {"text": "Commented-code block (6 lines) in lib/supabase/session-cookie.ts:3"}, "properties": {"repobilityId": "ad6a2ec9033a5041", "scanner": "scanner-primary", "fingerprint": "03693a04fb9ef3ed", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a94cf21f67a26209", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/supabase/admin.ts:6"}, "properties": {"repobilityId": "d869161fd3404374", "scanner": "scanner-primary", "fingerprint": "a94cf21f67a26209", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8107caaf8c49876c", "level": "none", "message": {"text": "Commented-code block (7 lines) in lib/cards/layout-version.ts:5"}, "properties": {"repobilityId": "5678067112d2457e", "scanner": "scanner-primary", "fingerprint": "8107caaf8c49876c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cc74fe93fdce9641", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/cards/bake-render.ts:26"}, "properties": {"repobilityId": "f170b2ee8fb2fbe7", "scanner": "scanner-primary", "fingerprint": "cc74fe93fdce9641", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b5f00d8577eac1a8", "level": "none", "message": {"text": "Commented-code block (8 lines) in lib/cards/card-display.ts:47"}, "properties": {"repobilityId": "f80a83e759db1f03", "scanner": "scanner-primary", "fingerprint": "b5f00d8577eac1a8", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3eb37793f82ebf29", "level": "none", "message": {"text": "Commented-code block (6 lines) in lib/cards/render-tiers.ts:6"}, "properties": {"repobilityId": "5a3fed640cc78c27", "scanner": "scanner-primary", "fingerprint": "3eb37793f82ebf29", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3ef65b3a09bce313", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/cards/comments-actions.ts:11"}, "properties": {"repobilityId": "559e097050cb92ab", "scanner": "scanner-primary", "fingerprint": "3ef65b3a09bce313", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-acbd8fd8347cfe0d", "level": "none", "message": {"text": "Commented-code block (7 lines) in lib/cards/bake-core.ts:17"}, "properties": {"repobilityId": "9cccdb4377844ea7", "scanner": "scanner-primary", "fingerprint": "acbd8fd8347cfe0d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-dbcc433c0bf9f48c", "level": "none", "message": {"text": "Commented-code block (6 lines) in lib/cards/template-layout.ts:1"}, "properties": {"repobilityId": "0ca49485f2f95648", "scanner": "scanner-primary", "fingerprint": "dbcc433c0bf9f48c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1db696e8958a6156", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/cards/actions.ts:509"}, "properties": {"repobilityId": "ad0391b74cce5aae", "scanner": "scanner-primary", "fingerprint": "1db696e8958a6156", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-976ef279dd22d610", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/cards/rules-text.ts:1"}, "properties": {"repobilityId": "9a41f40f1e77420d", "scanner": "scanner-primary", "fingerprint": "976ef279dd22d610", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-16925bedab5d2042", "level": "none", "message": {"text": "Commented-code block (6 lines) in lib/cards/source-queries.ts:7"}, "properties": {"repobilityId": "c06a38bfcd2ddc09", "scanner": "scanner-primary", "fingerprint": "16925bedab5d2042", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-95cd26a2b1c46497", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/cards/queries.ts:440"}, "properties": {"repobilityId": "78ab5e0e8b376c5f", "scanner": "scanner-primary", "fingerprint": "95cd26a2b1c46497", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ad6d2b7e0ae777d5", "level": "none", "message": {"text": "Commented-code block (7 lines) in lib/cards/upload-art-server.ts:17"}, "properties": {"repobilityId": "87b8bff0dcf3bd18", "scanner": "scanner-primary", "fingerprint": "ad6d2b7e0ae777d5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a70add2ed1bddbb2", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/profile/upload-server.ts:10"}, "properties": {"repobilityId": "3c4ea549fffe64e0", "scanner": "scanner-primary", "fingerprint": "a70add2ed1bddbb2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5f7e963c4470e646", "level": "none", "message": {"text": "Commented-code block (6 lines) in lib/scryfall/import-mapper.ts:14"}, "properties": {"repobilityId": "b32db96deddb5033", "scanner": "scanner-primary", "fingerprint": "5f7e963c4470e646", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bf574765b49105da", "level": "none", "message": {"text": "Commented-code block (8 lines) in lib/scryfall/usage-queries.ts:9"}, "properties": {"repobilityId": "eb6d6fc3a02944f5", "scanner": "scanner-primary", "fingerprint": "bf574765b49105da", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fb80379622ad8d1b", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/scryfall/client.ts:22"}, "properties": {"repobilityId": "8b150edf07a13bbe", "scanner": "scanner-primary", "fingerprint": "fb80379622ad8d1b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b960f7d3b4a1de06", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 lib/scryfall/client.ts:52"}, "properties": {"repobilityId": "9d29fefc4c997b4f", "scanner": "scanner-primary", "fingerprint": "b960f7d3b4a1de06", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-6cc1c2a2fb537858", "level": "none", "message": {"text": "Commented-code block (7 lines) in lib/og/shell.tsx:3"}, "properties": {"repobilityId": "9dfe885a3cf470c1", "scanner": "scanner-primary", "fingerprint": "6cc1c2a2fb537858", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-91159ed95380bfb3", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/stripe/webhook-handlers.ts:16"}, "properties": {"repobilityId": "cff07c979edfadce", "scanner": "scanner-primary", "fingerprint": "91159ed95380bfb3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-69bf5aea06efcd41", "level": "none", "message": {"text": "Commented-code block (7 lines) in lib/render/card-frames.ts:10"}, "properties": {"repobilityId": "80d97849131134cd", "scanner": "scanner-primary", "fingerprint": "69bf5aea06efcd41", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5e1cbe5d437672b4", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/render/card-image.tsx:6"}, "properties": {"repobilityId": "80879d040d4bbc5e", "scanner": "scanner-primary", "fingerprint": "5e1cbe5d437672b4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-182ed9d4aa77fbc9", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/render/card-fonts.ts:6"}, "properties": {"repobilityId": "0d9828d3e5447a85", "scanner": "scanner-primary", "fingerprint": "182ed9d4aa77fbc9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-341063e88605e688", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/pips/actions.ts:179"}, "properties": {"repobilityId": "1a47b0bb635d499f", "scanner": "scanner-primary", "fingerprint": "341063e88605e688", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7e3aa6f203e73d36", "level": "none", "message": {"text": "Commented-code block (5 lines) in lib/pips/queries.ts:11"}, "properties": {"repobilityId": "be1155bc90e058f1", "scanner": "scanner-primary", "fingerprint": "7e3aa6f203e73d36", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8e047ab7af03962f", "level": "note", "message": {"text": "7 env vars used in code but missing from .env.example"}, "properties": {"repobilityId": "5a0455f6498c27ad", "scanner": "scanner-primary", "fingerprint": "8e047ab7af03962f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "config-drift"]}}]}]}